diff --git a/MODULE.bazel b/MODULE.bazel index b24546d4a3c1..9b326127ce7b 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -254,11 +254,11 @@ use_repo( ) go_sdk = use_extension("@rules_go//go:extensions.bzl", "go_sdk") -go_sdk.download(version = "1.25.0") +go_sdk.download(version = "1.26.0") go_deps = use_extension("@gazelle//:extensions.bzl", "go_deps") go_deps.from_file(go_mod = "//go/extractor:go.mod") -use_repo(go_deps, "org_golang_x_mod", "org_golang_x_tools") +use_repo(go_deps, "com_github_stretchr_testify", "org_golang_x_mod", "org_golang_x_tools") ripunzip_archive = use_repo_rule("//misc/ripunzip:ripunzip.bzl", "ripunzip_archive") diff --git a/actions/ql/lib/CHANGELOG.md b/actions/ql/lib/CHANGELOG.md index d2e85ddb6a27..1b41f2f2f5e0 100644 --- a/actions/ql/lib/CHANGELOG.md +++ b/actions/ql/lib/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.4.28 + +No user-facing changes. + ## 0.4.27 ### Bug Fixes diff --git a/actions/ql/lib/change-notes/released/0.4.28.md b/actions/ql/lib/change-notes/released/0.4.28.md new file mode 100644 index 000000000000..af10bae2ab56 --- /dev/null +++ b/actions/ql/lib/change-notes/released/0.4.28.md @@ -0,0 +1,3 @@ +## 0.4.28 + +No user-facing changes. diff --git a/actions/ql/lib/codeql-pack.release.yml b/actions/ql/lib/codeql-pack.release.yml index 5e24b634389f..ff6beb81526d 100644 --- a/actions/ql/lib/codeql-pack.release.yml +++ b/actions/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.4.27 +lastReleaseVersion: 0.4.28 diff --git a/actions/ql/lib/qlpack.yml b/actions/ql/lib/qlpack.yml index aa29568caf7c..a9d5b7e61f63 100644 --- a/actions/ql/lib/qlpack.yml +++ b/actions/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/actions-all -version: 0.4.27 +version: 0.4.29-dev library: true warnOnImplicitThis: true dependencies: diff --git a/actions/ql/src/CHANGELOG.md b/actions/ql/src/CHANGELOG.md index ebf6b7214c99..c92b28841fab 100644 --- a/actions/ql/src/CHANGELOG.md +++ b/actions/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.6.20 + +No user-facing changes. + ## 0.6.19 No user-facing changes. diff --git a/actions/ql/src/change-notes/released/0.6.20.md b/actions/ql/src/change-notes/released/0.6.20.md new file mode 100644 index 000000000000..35c1118ff451 --- /dev/null +++ b/actions/ql/src/change-notes/released/0.6.20.md @@ -0,0 +1,3 @@ +## 0.6.20 + +No user-facing changes. diff --git a/actions/ql/src/codeql-pack.release.yml b/actions/ql/src/codeql-pack.release.yml index 2baec50a823b..e30c5c64b1b5 100644 --- a/actions/ql/src/codeql-pack.release.yml +++ b/actions/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.6.19 +lastReleaseVersion: 0.6.20 diff --git a/actions/ql/src/qlpack.yml b/actions/ql/src/qlpack.yml index 7b9f281601a7..f4e731dc26da 100644 --- a/actions/ql/src/qlpack.yml +++ b/actions/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/actions-queries -version: 0.6.19 +version: 0.6.21-dev library: false warnOnImplicitThis: true groups: [actions, queries] diff --git a/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/old.dbscheme b/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/old.dbscheme new file mode 100644 index 000000000000..7e7c2f55670f --- /dev/null +++ b/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/old.dbscheme @@ -0,0 +1,2517 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +/** + * Gives the TRAP filename that `trap` is associated with. + * For debugging only. + */ +trap_filename( + int trap: @trap, + string filename: string ref +); + +/** + * In `build-mode: none` overlay mode, indicates that `source_file` + * (`/path/to/foo.c`) uses the TRAP file `trap_file`; i.e. it is the + * TRAP file corresponding to `foo.c`, something it transitively + * includes, or a template instantiation it transitively uses. + */ +source_file_uses_trap( + string source_file: string ref, + int trap_file: @trap ref +); + +/** + * Holds if there is a definition of `element` in TRAP file `trap_file`. + */ +in_trap( + int element: @element ref, + int trap_file: @trap ref +); + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 17 = @ppd_embed +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +embeds( + unique int id: @ppd_embed ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/semmlecode.dbscheme b/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/semmlecode.dbscheme new file mode 100644 index 000000000000..9439176c1d13 --- /dev/null +++ b/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/semmlecode.dbscheme @@ -0,0 +1,2489 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 17 = @ppd_embed +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +embeds( + unique int id: @ppd_embed ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/upgrade.properties b/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/upgrade.properties new file mode 100644 index 000000000000..2f526418ae81 --- /dev/null +++ b/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/upgrade.properties @@ -0,0 +1,5 @@ +description: Add trap_filename, source_file_uses_trap and in_trap relations +compatibility: full +trap_filename.rel: delete +source_file_uses_trap.rel: delete +in_trap.rel: delete diff --git a/cpp/ql/lib/CHANGELOG.md b/cpp/ql/lib/CHANGELOG.md index 6f256c9499b4..91f4b009b2be 100644 --- a/cpp/ql/lib/CHANGELOG.md +++ b/cpp/ql/lib/CHANGELOG.md @@ -1,3 +1,9 @@ +## 7.1.1 + +### Minor Analysis Improvements + +* Added remote flow source models for the `winhttp.h` windows header and the Azure SDK core library for C/C++. + ## 7.1.0 ### New Features diff --git a/cpp/ql/lib/change-notes/released/7.1.1.md b/cpp/ql/lib/change-notes/released/7.1.1.md new file mode 100644 index 000000000000..16bba7ca5084 --- /dev/null +++ b/cpp/ql/lib/change-notes/released/7.1.1.md @@ -0,0 +1,5 @@ +## 7.1.1 + +### Minor Analysis Improvements + +* Added remote flow source models for the `winhttp.h` windows header and the Azure SDK core library for C/C++. diff --git a/cpp/ql/lib/codeql-pack.release.yml b/cpp/ql/lib/codeql-pack.release.yml index dcaaa76112a6..8e970df6cae3 100644 --- a/cpp/ql/lib/codeql-pack.release.yml +++ b/cpp/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 7.1.0 +lastReleaseVersion: 7.1.1 diff --git a/cpp/ql/lib/ext/Windows.model.yml b/cpp/ql/lib/ext/Windows.model.yml index ccebfc9f3401..a2ec30d95bda 100644 --- a/cpp/ql/lib/ext/Windows.model.yml +++ b/cpp/ql/lib/ext/Windows.model.yml @@ -24,6 +24,13 @@ extensions: - ["", "", False, "MapViewOfFileNuma2", "", "", "ReturnValue[*]", "local", "manual"] # ntifs.h - ["", "", False, "NtReadFile", "", "", "Argument[*5]", "local", "manual"] + # winhttp.h + - ["", "", False, "WinHttpReadData", "", "", "Argument[*1]", "remote", "manual"] + - ["", "", False, "WinHttpReadDataEx", "", "", "Argument[*1]", "remote", "manual"] + - ["", "", False, "WinHttpQueryHeaders", "", "", "Argument[*3]", "remote", "manual"] + - ["", "", False, "WinHttpQueryHeadersEx", "", "", "Argument[*5]", "remote", "manual"] + - ["", "", False, "WinHttpQueryHeadersEx", "", "", "Argument[*6]", "remote", "manual"] + - ["", "", False, "WinHttpQueryHeadersEx", "", "", "Argument[**8]", "remote", "manual"] - addsTo: pack: codeql/cpp-all extensible: summaryModel @@ -46,4 +53,6 @@ extensions: - ["", "", False, "RtlMoveMemory", "", "", "Argument[*@1]", "Argument[*@0]", "value", "manual"] - ["", "", False, "RtlMoveVolatileMemory", "", "", "Argument[*@1]", "Argument[*@0]", "value", "manual"] # winternl.h - - ["", "", False, "RtlInitUnicodeString", "", "", "Argument[*1]", "Argument[*0].Field[*Buffer]", "value", "manual"] \ No newline at end of file + - ["", "", False, "RtlInitUnicodeString", "", "", "Argument[*1]", "Argument[*0].Field[*Buffer]", "value", "manual"] + # winhttp.h + - ["", "", False, "WinHttpCrackUrl", "", "", "Argument[*0]", "Argument[*3]", "taint", "manual"] \ No newline at end of file diff --git a/cpp/ql/lib/ext/azure.core.model.yml b/cpp/ql/lib/ext/azure.core.model.yml new file mode 100644 index 000000000000..7c5280b0f180 --- /dev/null +++ b/cpp/ql/lib/ext/azure.core.model.yml @@ -0,0 +1,41 @@ +extensions: + - addsTo: + pack: codeql/cpp-all + extensible: sourceModel + data: # namespace, type, subtypes, name, signature, ext, output, kind, provenance + - ["Azure::Core::Http", "RawResponse", True, "GetHeaders", "", "", "ReturnValue[*]", "remote", "manual"] + - ["Azure::Core::Http", "RawResponse", True, "GetBody", "", "", "ReturnValue[*]", "remote", "manual"] + - ["Azure::Core::Http", "RawResponse", True, "ExtractBodyStream", "", "", "ReturnValue[*]", "remote", "manual"] + - ["Azure::Core::Http", "Request", True, "GetHeaders", "", "", "ReturnValue", "remote", "manual"] + - ["Azure::Core::Http", "Request", True, "GetHeader", "", "", "ReturnValue", "remote", "manual"] + - ["Azure::Core::Http", "Request", True, "GetBodyStream", "", "", "ReturnValue[*]", "remote", "manual"] + + - addsTo: + pack: codeql/cpp-all + extensible: summaryModel + data: # namespace, type, subtypes, name, signature, ext, input, output, kind, provenance + - ["Azure::Core", "Url", True, "Url", "", "", "Argument[*0]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "SetScheme", "", "", "Argument[*0]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "SetHost", "", "", "Argument[*0]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "SetPort", "", "", "Argument[0]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "SetPath", "", "", "Argument[*0]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "SetQueryParameters", "", "", "Argument[0]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "AppendPath", "", "", "Argument[*0]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "AppendQueryParameter", "", "", "Argument[*1]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "GetHost", "", "", "Argument[-1]", "ReturnValue[*]", "taint", "manual"] + - ["Azure::Core", "Url", True, "GetPath", "", "", "Argument[-1]", "ReturnValue[*]", "taint", "manual"] + - ["Azure::Core", "Url", True, "GetPort", "", "", "Argument[-1]", "ReturnValue", "taint", "manual"] + - ["Azure::Core", "Url", True, "GetQueryParameters", "", "", "Argument[-1]", "ReturnValue", "taint", "manual"] + - ["Azure::Core", "Url", True, "GetScheme", "", "", "Argument[-1]", "ReturnValue[*]", "taint", "manual"] + - ["Azure::Core", "Url", True, "GetRelativeUrl", "", "", "Argument[-1]", "ReturnValue", "taint", "manual"] + - ["Azure::Core", "Url", True, "GetAbsoluteUrl", "", "", "Argument[-1]", "ReturnValue", "taint", "manual"] + - ["Azure::Core", "Url", True, "Decode", "", "", "Argument[*0]", "ReturnValue", "taint", "manual"] + - ["Azure::Core", "Url", True, "Encode", "", "", "Argument[*0]", "ReturnValue", "taint", "manual"] + - ["Azure::Core::IO", "BodyStream", True, "Read", "", "", "Argument[-1]", "Argument[*0]", "taint", "manual"] + - ["Azure::Core::IO", "BodyStream", True, "ReadToCount", "", "", "Argument[-1]", "Argument[*0]", "taint", "manual"] + - ["Azure::Core::IO", "BodyStream", True, "ReadToEnd", "", "", "Argument[-1]", "ReturnValue.Element", "taint", "manual"] + - ["Azure", "Nullable", True, "Nullable", "", "", "Argument[0]", "Argument[-1]", "taint", "manual"] + - ["Azure", "Nullable", True, "operator=", "", "", "Argument[*0]", "Argument[-1]", "value", "manual"] + - ["Azure", "Nullable", True, "Value", "", "", "Argument[-1]", "ReturnValue[*]", "taint", "manual"] + - ["Azure", "Nullable", True, "operator->", "", "", "Argument[-1]", "ReturnValue[*]", "taint", "manual"] + - ["Azure", "Nullable", True, "operator*", "", "", "Argument[-1]", "ReturnValue[*]", "taint", "manual"] \ No newline at end of file diff --git a/cpp/ql/lib/qlpack.yml b/cpp/ql/lib/qlpack.yml index ac07194106ad..31ce003aadc6 100644 --- a/cpp/ql/lib/qlpack.yml +++ b/cpp/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/cpp-all -version: 7.1.0 +version: 7.1.2-dev groups: cpp dbscheme: semmlecode.cpp.dbscheme extractor: cpp diff --git a/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll b/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll index 8035a09809af..7e98177f3236 100644 --- a/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll +++ b/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll @@ -64,17 +64,27 @@ private string getMultiLocationFilePath(@element e) { overlay[local] private predicate isBase() { not isOverlay() } +/** + * Holds if `path` was extracted in the overlay database. + */ +overlay[local] +private predicate overlayHasFile(string path) { + isOverlay() and + files(_, path) and + path != "" +} + /** * Discards an element from the base variant if: - * - It has a single location in a changed file, or - * - All of its locations are in changed files. + * - It has a single location in a file extracted in the overlay, or + * - All of its locations are in files extracted in the overlay. */ overlay[discard_entity] private predicate discardElement(@element e) { isBase() and ( - overlayChangedFiles(getSingleLocationFilePath(e)) + overlayHasFile(getSingleLocationFilePath(e)) or - forex(string path | path = getMultiLocationFilePath(e) | overlayChangedFiles(path)) + forex(string path | path = getMultiLocationFilePath(e) | overlayHasFile(path)) ) } diff --git a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll index c66c76e60d78..9bc3a80e3e0c 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll @@ -1726,9 +1726,7 @@ private module Cached { SsaImpl::ssaFlow(n, succ) and bb1 = n.getBasicBlock() and bb2 = succ.getBasicBlock() and - bb1 != bb2 and - bb2.dominates(bb1) and - bb1.getASuccessor+() = bb2 + bb2.strictlyDominates(bb1) ) } diff --git a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll index 83f19062b907..7dfebc56fe18 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll @@ -390,7 +390,7 @@ class TranslatedDeclStmt extends TranslatedStmt { override TranslatedElement getLastChild() { result = this.getChild(this.getChildCount() - 1) } - private int getChildCount() { result = count(this.getDeclarationEntry(_)) } + private int getChildCount() { result = count(int i | exists(this.getDeclarationEntry(i))) } IRDeclarationEntry getIRDeclarationEntry(int index) { result.hasIndex(index) and diff --git a/cpp/ql/lib/semmle/code/cpp/models/Models.qll b/cpp/ql/lib/semmle/code/cpp/models/Models.qll index 83bda3e2a44e..09f0a0df9668 100644 --- a/cpp/ql/lib/semmle/code/cpp/models/Models.qll +++ b/cpp/ql/lib/semmle/code/cpp/models/Models.qll @@ -57,3 +57,4 @@ private import implementations.CAtlFile private import implementations.CAtlFileMapping private import implementations.CAtlTemporaryFile private import implementations.CRegKey +private import implementations.WinHttp diff --git a/cpp/ql/lib/semmle/code/cpp/models/implementations/WinHttp.qll b/cpp/ql/lib/semmle/code/cpp/models/implementations/WinHttp.qll new file mode 100644 index 000000000000..fb28e6ebe451 --- /dev/null +++ b/cpp/ql/lib/semmle/code/cpp/models/implementations/WinHttp.qll @@ -0,0 +1,50 @@ +private import cpp +private import semmle.code.cpp.ir.dataflow.FlowSteps +private import semmle.code.cpp.dataflow.new.DataFlow + +/** The `WINHTTP_HEADER_NAME` class from `winhttp.h`. */ +class WinHttpHeaderName extends Class { + WinHttpHeaderName() { this.hasGlobalName("_WINHTTP_HEADER_NAME") } +} + +/** The `WINHTTP_EXTENDED_HEADER` class from `winhttp.h`. */ +class WinHttpExtendedHeader extends Class { + WinHttpExtendedHeader() { this.hasGlobalName("_WINHTTP_EXTENDED_HEADER") } +} + +private class WinHttpHeaderNameInheritingContent extends TaintInheritingContent, + DataFlow::FieldContent +{ + WinHttpHeaderNameInheritingContent() { + this.getIndirectionIndex() = 2 and + ( + this.getAField().getDeclaringType() instanceof WinHttpHeaderName + or + // The extended header looks like: + // struct WINHTTP_EXTENDED_HEADER { + // union { [...] }; + // union { [...] }; + // }; + // So the first declaring type is the anonymous unions, and the declaring + // type of those anonymous unions is the `WINHTTP_EXTENDED_HEADER` struct. + this.getAField().getDeclaringType().getDeclaringType() instanceof WinHttpExtendedHeader + ) + } +} + +/** The `URL_COMPONENTS` class from `winhttp.h`. */ +class WinHttpUrlComponents extends Class { + WinHttpUrlComponents() { this.hasGlobalName("_WINHTTP_URL_COMPONENTS") } +} + +private class WinHttpUrlComponentsInheritingContent extends TaintInheritingContent, + DataFlow::FieldContent +{ + WinHttpUrlComponentsInheritingContent() { + exists(Field f | f = this.getField() and f.getDeclaringType() instanceof WinHttpUrlComponents | + if f.getType().getUnspecifiedType() instanceof PointerType + then this.getIndirectionIndex() = 2 + else this.getIndirectionIndex() = 1 + ) + } +} diff --git a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/RangeAnalysisUtils.qll b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/RangeAnalysisUtils.qll index 2423a3a71a0a..03dbc56dc99c 100644 --- a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/RangeAnalysisUtils.qll +++ b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/RangeAnalysisUtils.qll @@ -404,7 +404,7 @@ predicate cmpWithLinearBound( * For example, if `t` is a signed 32-bit type then holds if `lb` is * `-2^31` and `ub` is `2^31 - 1`. */ -private predicate typeBounds(ArithmeticType t, float lb, float ub) { +private predicate typeBounds0(ArithmeticType t, float lb, float ub) { exists(IntegralType integralType, float limit | integralType = t and limit = 2.pow(8 * integralType.getSize()) | @@ -423,6 +423,42 @@ private predicate typeBounds(ArithmeticType t, float lb, float ub) { t instanceof FloatingPointType and lb = -(1.0 / 0.0) and ub = 1.0 / 0.0 } +/** + * Gets the underlying type for an enumeration `e`. + * + * If the enumeration does not have an explicit type we approximate it using + * the following rules: + * - The result type is always `signed`, and + * - if the largest value fits in an `int` the result is `int`. Otherwise, the + * result is `long`. + */ +private IntegralType getUnderlyingTypeForEnum(Enum e) { + result = e.getExplicitUnderlyingType() + or + not e.hasExplicitUnderlyingType() and + result.isSigned() and + exists(IntType intType | + if max(e.getAnEnumConstant().getValue().toFloat()) >= 2.pow(8 * intType.getSize() - 1) + then result instanceof LongType + else result = intType + ) +} + +/** + * Holds if `lb` and `ub` are the lower and upper bounds of the unspecified + * type `t`. + * + * For example, if `t` is a signed 32-bit type then holds if `lb` is + * `-2^31` and `ub` is `2^31 - 1`. + * + * Unlike `typeBounds0`, this predicate also handles `Enum` types. + */ +private predicate typeBounds(Type t, float lb, float ub) { + typeBounds0(t, lb, ub) + or + typeBounds0(getUnderlyingTypeForEnum(t), lb, ub) +} + private Type stripReference(Type t) { if t instanceof ReferenceType then result = t.(ReferenceType).getBaseType() else result = t } diff --git a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/SimpleRangeAnalysis.qll b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/SimpleRangeAnalysis.qll index c3c3c2dd3e7e..90f6a8272558 100644 --- a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/SimpleRangeAnalysis.qll +++ b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/SimpleRangeAnalysis.qll @@ -512,8 +512,8 @@ private module BoundsEstimate { */ float getBoundsLimit() { // This limit is arbitrary, but low enough that it prevents timeouts on - // specific observed customer databases (and the in the tests). - result = 2.0.pow(40) + // specific observed customer databases (and in the tests). + result = 2.0.pow(29) } /** Gets the maximum number of bounds possible for `t` when widening is used. */ diff --git a/cpp/ql/lib/semmlecode.cpp.dbscheme b/cpp/ql/lib/semmlecode.cpp.dbscheme index 9439176c1d13..7e7c2f55670f 100644 --- a/cpp/ql/lib/semmlecode.cpp.dbscheme +++ b/cpp/ql/lib/semmlecode.cpp.dbscheme @@ -236,6 +236,34 @@ extractor_version( string frontend_version: string ref ) +/** + * Gives the TRAP filename that `trap` is associated with. + * For debugging only. + */ +trap_filename( + int trap: @trap, + string filename: string ref +); + +/** + * In `build-mode: none` overlay mode, indicates that `source_file` + * (`/path/to/foo.c`) uses the TRAP file `trap_file`; i.e. it is the + * TRAP file corresponding to `foo.c`, something it transitively + * includes, or a template instantiation it transitively uses. + */ +source_file_uses_trap( + string source_file: string ref, + int trap_file: @trap ref +); + +/** + * Holds if there is a definition of `element` in TRAP file `trap_file`. + */ +in_trap( + int element: @element ref, + int trap_file: @trap ref +); + pch_uses( int pch: @pch ref, int compilation: @compilation ref, diff --git a/cpp/ql/lib/semmlecode.cpp.dbscheme.stats b/cpp/ql/lib/semmlecode.cpp.dbscheme.stats index ee25206a25d1..1c53061ef50a 100644 --- a/cpp/ql/lib/semmlecode.cpp.dbscheme.stats +++ b/cpp/ql/lib/semmlecode.cpp.dbscheme.stats @@ -2,7 +2,7 @@ @compilation - 12591 + 12592 @externalDataElement @@ -10,19 +10,23 @@ @file - 64946 + 64952 @folder - 12339 + 12340 @diagnostic 357 + + @trap + 1 + @location_default - 46837407 + 46837429 @pch @@ -30,7 +34,7 @@ @macro_expansion - 40306104 + 40306124 @other_macro_reference @@ -38,7 +42,7 @@ @normal_function - 2734629 + 2734381 @unknown_function @@ -46,7 +50,7 @@ @constructor - 694334 + 694333 @destructor @@ -70,15 +74,15 @@ @fun_decl - 4193289 + 4193664 @var_decl - 9367854 + 9368481 @type_decl - 1629527 + 1629528 @namespace_decl @@ -86,7 +90,7 @@ @using_declaration - 266844 + 266868 @using_directive @@ -98,11 +102,11 @@ @static_assert - 172749 + 172750 @parameter - 7011797 + 7010805 @membervariable @@ -110,11 +114,11 @@ @globalvariable - 492566 + 492567 @localvariable - 724695 + 724674 @enumconstant @@ -354,11 +358,11 @@ @pointer - 451498 + 451499 @type_with_specifiers - 691559 + 691560 @array @@ -366,7 +370,7 @@ @routineptr - 679848 + 679846 @reference @@ -392,10 +396,6 @@ @scalable_vector 1 - - @decltype - 101757 - @typeof 811 @@ -474,11 +474,15 @@ @remove_reference - 5706 + 5705 + + + @decltype + 101757 @struct - 976596 + 976682 @union @@ -490,11 +494,11 @@ @template_parameter - 864417 + 864494 @alias - 1755743 + 1755899 @unknown_usertype @@ -506,11 +510,11 @@ @template_template_parameter - 6090 + 6091 @proxy_class - 48241 + 48246 @scoped_enum @@ -518,7 +522,7 @@ @template_struct - 211176 + 211194 @template_class @@ -530,11 +534,11 @@ @mangledname - 6349607 + 6349610 @type_mention - 5911106 + 5911109 @concept_template @@ -542,11 +546,11 @@ @routinetype - 600578 + 600577 @ptrtomember - 9677 + 9678 @specifier @@ -578,7 +582,7 @@ @attribute_arg_constant_expr - 71584 + 71632 @attribute_arg_expr @@ -598,19 +602,19 @@ @derivation - 473788 + 473787 @frienddecl - 767816 + 767814 @comment - 11208571 + 11208576 @namespace - 8615 + 8616 @specialnamequalifyingelement @@ -618,15 +622,15 @@ @namequalifier - 3042586 + 3042541 @value - 13541557 + 13541563 @initialiser - 2244826 + 2244830 @address_of @@ -634,15 +638,15 @@ @indirect - 402173 + 402174 @array_to_pointer - 1953950 + 1953951 @parexpr - 4915709 + 4915711 @arithnegexpr @@ -654,7 +658,7 @@ @complementexpr - 38187 + 38188 @notexpr @@ -662,7 +666,7 @@ @postincrexpr - 84578 + 84579 @postdecrexpr @@ -678,11 +682,11 @@ @conditionalexpr - 897971 + 897972 @addexpr - 580446 + 580447 @subexpr @@ -698,7 +702,7 @@ @remexpr - 15908 + 15907 @paddexpr @@ -734,7 +738,7 @@ @eqexpr - 643439 + 643440 @neexpr @@ -814,7 +818,7 @@ @orlogicalexpr - 1103651 + 1103652 @commaexpr @@ -826,7 +830,7 @@ @callexpr - 238857 + 238856 @vastartexpr @@ -846,7 +850,7 @@ @varaccess - 8255498 + 8255502 @runtime_sizeof @@ -862,7 +866,7 @@ @routineexpr - 5726204 + 5726119 @type_operand @@ -878,7 +882,7 @@ @literal - 7985020 + 7985002 @aggregateliteral @@ -886,11 +890,11 @@ @c_style_cast - 6027719 + 6027721 @temp_init - 980662 + 980663 @errorexpr @@ -898,11 +902,11 @@ @reference_to - 1880186 + 1880187 @ref_indirect - 2094072 + 2094067 @vacuous_destructor_call @@ -962,7 +966,7 @@ @thisaccess - 1553672 + 1553675 @new_expr @@ -978,7 +982,7 @@ @condition_decl - 407684 + 407678 @braced_init_list @@ -1118,7 +1122,7 @@ @dtorfielddestruct - 39567 + 39566 @static_cast @@ -1134,7 +1138,7 @@ @dynamic_cast - 788 + 789 @lambdaexpr @@ -1418,7 +1422,7 @@ @reuseexpr - 844478 + 844466 @istriviallycopyassignable @@ -1530,7 +1534,7 @@ @concept_id - 90160 + 90159 @isinvocable @@ -1550,11 +1554,11 @@ @stmt_expr - 2031827 + 2031828 @stmt_if - 990318 + 990319 @stmt_while @@ -1562,19 +1566,19 @@ @stmt_goto - 157264 + 157278 @stmt_label - 77727 + 77734 @stmt_return - 1238149 + 1238238 @stmt_block - 1724481 + 1724482 @stmt_end_test_while @@ -1586,11 +1590,11 @@ @stmt_switch_case - 833624 + 833612 @stmt_switch - 410623 + 410617 @stmt_asm @@ -1598,11 +1602,11 @@ @stmt_decl - 770029 + 770031 @stmt_empty - 428127 + 428121 @stmt_continue @@ -1610,7 +1614,7 @@ @stmt_break - 137506 + 137507 @stmt_try_block @@ -1674,7 +1678,7 @@ @ppd_elif - 21827 + 21829 @ppd_else @@ -1686,15 +1690,15 @@ @ppd_plain_include - 317263 + 317291 @ppd_define - 2743340 + 2743342 @ppd_undef - 100180 + 100181 @ppd_pragma @@ -1768,11 +1772,11 @@ compilations - 12591 + 12592 id - 12591 + 12592 cwd @@ -1790,7 +1794,7 @@ 1 2 - 12591 + 12592 @@ -1816,11 +1820,11 @@ compilation_args - 1008080 + 1008169 id - 12591 + 12592 num @@ -1828,7 +1832,7 @@ arg - 29149 + 29151 @@ -1887,7 +1891,7 @@ 98 99 - 1335 + 1336 100 @@ -2156,12 +2160,12 @@ 1 2 - 13349 + 13350 2 3 - 12633 + 12634 3 @@ -2187,12 +2191,12 @@ 1 2 - 19303 + 19304 2 3 - 8688 + 8689 3 @@ -2207,11 +2211,11 @@ compilation_expanded_args - 1008080 + 1008169 id - 12591 + 12592 num @@ -2219,7 +2223,7 @@ arg - 29149 + 29151 @@ -2278,7 +2282,7 @@ 98 99 - 1335 + 1336 100 @@ -2547,12 +2551,12 @@ 1 2 - 13349 + 13350 2 3 - 12633 + 12634 3 @@ -2578,12 +2582,12 @@ 1 2 - 19303 + 19304 2 3 - 8688 + 8689 3 @@ -2908,7 +2912,7 @@ seconds - 18516 + 15412 @@ -2989,12 +2993,12 @@ 3 4 - 980 + 1034 4 5 - 381 + 326 5 @@ -3003,8 +3007,8 @@ 8 - 10 - 217 + 9 + 163 10 @@ -3013,28 +3017,23 @@ 11 - 15 + 13 217 - 16 - 18 - 108 - - - 18 - 19 + 14 + 17 217 - 20 - 54 + 17 + 21 217 - 133 - 134 - 54 + 24 + 94 + 217 @@ -3102,47 +3101,47 @@ 3 4 - 1797 + 1143 4 5 - 599 + 1252 5 6 - 217 + 163 6 7 - 544 + 653 7 - 8 + 9 217 - 8 - 9 - 326 + 9 + 10 + 217 - 9 - 18 + 10 + 15 381 - 22 - 49 + 16 + 45 381 - 94 - 95 - 54 + 50 + 94 + 108 @@ -3198,13 +3197,13 @@ 54 - 187 - 188 + 148 + 149 54 - 197 - 198 + 160 + 161 54 @@ -3221,22 +3220,22 @@ 1 2 - 12362 + 9421 2 3 - 3757 + 3104 3 4 - 1688 + 1797 4 - 39 - 708 + 44 + 1089 @@ -3252,27 +3251,32 @@ 1 2 - 11273 + 8604 2 3 - 4302 + 2668 3 4 - 1470 + 1851 4 - 44 - 1416 + 5 + 925 - 63 - 64 - 54 + 5 + 15 + 1198 + + + 43 + 73 + 163 @@ -3288,12 +3292,12 @@ 1 2 - 15630 + 13560 2 3 - 2886 + 1851 @@ -3569,19 +3573,19 @@ compilation_finished - 12591 + 12592 id - 12591 + 12592 cpu_seconds - 9656 + 9489 elapsed_seconds - 210 + 231 @@ -3595,7 +3599,7 @@ 1 2 - 12591 + 12592 @@ -3611,7 +3615,7 @@ 1 2 - 12591 + 12592 @@ -3627,17 +3631,17 @@ 1 2 - 8394 + 7953 2 3 - 809 + 1052 3 - 32 - 452 + 29 + 483 @@ -3653,12 +3657,12 @@ 1 2 - 9046 + 8847 2 3 - 610 + 641 @@ -3674,76 +3678,46 @@ 1 2 - 42 + 73 2 - 3 - 10 - - - 3 - 4 - 10 + 5 + 21 5 - 6 - 10 - - - 7 - 8 + 9 21 10 11 - 10 - - - 11 - 12 21 - 15 - 16 - 10 - - - 20 - 21 - 10 - - - 31 - 32 - 10 - - - 61 - 62 - 10 + 12 + 14 + 21 - 172 - 173 - 10 + 19 + 33 + 21 - 231 - 232 - 10 + 60 + 179 + 21 - 286 - 287 - 10 + 233 + 293 + 21 - 321 - 322 + 312 + 313 10 @@ -3760,76 +3734,46 @@ 1 2 - 42 + 73 2 - 3 - 10 - - - 3 - 4 - 10 + 5 + 21 5 - 6 - 10 - - - 7 - 8 + 9 21 10 11 - 10 - - - 11 - 12 21 - 15 - 16 - 10 - - - 20 - 21 - 10 + 12 + 14 + 21 - 31 + 18 32 - 10 - - - 61 - 62 - 10 + 21 - 165 - 166 - 10 + 59 + 154 + 21 168 - 169 - 10 - - - 216 - 217 - 10 + 219 + 21 - 240 - 241 + 245 + 246 10 @@ -4067,11 +4011,11 @@ locations_default - 46837407 + 46837429 id - 46837407 + 46837429 file @@ -4079,7 +4023,7 @@ beginLine - 7483207 + 7483211 beginColumn @@ -4087,7 +4031,7 @@ endLine - 7484203 + 7484207 endColumn @@ -4105,7 +4049,7 @@ 1 2 - 46837407 + 46837429 @@ -4121,7 +4065,7 @@ 1 2 - 46837407 + 46837429 @@ -4137,7 +4081,7 @@ 1 2 - 46837407 + 46837429 @@ -4153,7 +4097,7 @@ 1 2 - 46837407 + 46837429 @@ -4169,7 +4113,7 @@ 1 2 - 46837407 + 46837429 @@ -4570,12 +4514,12 @@ 1 2 - 4945829 + 4945831 2 3 - 778673 + 778674 3 @@ -4590,7 +4534,7 @@ 12 96 - 561386 + 561387 96 @@ -4611,12 +4555,12 @@ 1 2 - 5008053 + 5008055 2 3 - 1216856 + 1216857 3 @@ -4647,7 +4591,7 @@ 1 2 - 5629548 + 5629551 2 @@ -4662,7 +4606,7 @@ 7 25 - 564995 + 564996 25 @@ -4683,7 +4627,7 @@ 1 2 - 7018144 + 7018147 2 @@ -4704,7 +4648,7 @@ 1 2 - 5014275 + 5014278 2 @@ -5125,17 +5069,17 @@ 1 2 - 4943589 + 4943591 2 3 - 782033 + 782034 3 4 - 541972 + 541973 4 @@ -5166,17 +5110,17 @@ 1 2 - 5005066 + 5005068 2 3 - 1220465 + 1220466 3 6 - 631077 + 631078 6 @@ -5202,7 +5146,7 @@ 1 2 - 7035318 + 7035321 2 @@ -5223,7 +5167,7 @@ 1 2 - 5628179 + 5628182 2 @@ -5238,12 +5182,12 @@ 7 25 - 568355 + 568356 25 89 - 224504 + 224505 @@ -5259,7 +5203,7 @@ 1 2 - 5012782 + 5012784 2 @@ -5599,15 +5543,15 @@ files - 64946 + 64952 id - 64946 + 64952 name - 64946 + 64952 @@ -5621,7 +5565,7 @@ 1 2 - 64946 + 64952 @@ -5637,7 +5581,7 @@ 1 2 - 64946 + 64952 @@ -5647,15 +5591,15 @@ folders - 12339 + 12340 id - 12339 + 12340 name - 12339 + 12340 @@ -5669,7 +5613,7 @@ 1 2 - 12339 + 12340 @@ -5685,7 +5629,7 @@ 1 2 - 12339 + 12340 @@ -5695,15 +5639,15 @@ containerparent - 77264 + 77271 parent - 12339 + 12340 child - 77264 + 77271 @@ -5717,7 +5661,7 @@ 1 2 - 6006 + 6007 2 @@ -5752,7 +5696,7 @@ 44 151 - 262 + 263 @@ -5768,7 +5712,7 @@ 1 2 - 77264 + 77271 @@ -5778,11 +5722,11 @@ numlines - 805927 + 805928 element_id - 804807 + 804808 num_lines @@ -5808,7 +5752,7 @@ 1 2 - 803687 + 803688 2 @@ -5829,7 +5773,7 @@ 1 2 - 803687 + 803688 2 @@ -6872,6 +6816,150 @@ + + trap_filename + 1 + + + trap + 1 + + + filename + 1 + + + + + trap + filename + + + 12 + + + 1 + 2 + 1 + + + + + + + filename + trap + + + 12 + + + 1 + 2 + 1 + + + + + + + + + source_file_uses_trap + 1 + + + source_file + 1 + + + trap_file + 1 + + + + + source_file + trap_file + + + 12 + + + 1 + 2 + 1 + + + + + + + trap_file + source_file + + + 12 + + + 1 + 2 + 1 + + + + + + + + + in_trap + 1 + + + element + 1 + + + trap_file + 1 + + + + + element + trap_file + + + 12 + + + 1 + 2 + 1 + + + + + + + trap_file + element + + + 12 + + + 1 + 2 + 1 + + + + + + + pch_uses 4121 @@ -7256,11 +7344,11 @@ fileannotations - 4183401 + 4183771 id - 5743 + 5744 kind @@ -7268,11 +7356,11 @@ name - 58477 + 58482 value - 39352 + 39356 @@ -7291,7 +7379,7 @@ 2 3 - 5543 + 5544 @@ -7517,7 +7605,7 @@ 1 2 - 10982 + 10983 2 @@ -7527,7 +7615,7 @@ 3 5 - 5038 + 5039 5 @@ -7537,12 +7625,12 @@ 7 9 - 4575 + 4576 9 16 - 4312 + 4313 16 @@ -7557,7 +7645,7 @@ 27 47 - 4817 + 4818 47 @@ -7588,7 +7676,7 @@ 1 2 - 58477 + 58482 @@ -7604,7 +7692,7 @@ 1 2 - 11539 + 11540 2 @@ -7619,7 +7707,7 @@ 4 6 - 4049 + 4050 6 @@ -7649,7 +7737,7 @@ 41 95 - 4449 + 4450 95 @@ -7680,7 +7768,7 @@ 4 5 - 3176 + 3177 5 @@ -7690,7 +7778,7 @@ 8 14 - 2955 + 2956 14 @@ -7705,7 +7793,7 @@ 24 51 - 3523 + 3524 51 @@ -7751,7 +7839,7 @@ 1 2 - 39342 + 39345 2 @@ -7797,7 +7885,7 @@ 14 18 - 3439 + 3440 18 @@ -7807,7 +7895,7 @@ 28 34 - 3134 + 3135 34 @@ -7817,7 +7905,7 @@ 41 66 - 2976 + 2977 66 @@ -7827,7 +7915,7 @@ 92 113 - 2976 + 2977 113 @@ -7847,15 +7935,15 @@ inmacroexpansion - 150011348 + 150011419 id - 24673488 + 24673500 inv - 3705719 + 3705721 @@ -7869,32 +7957,32 @@ 1 3 - 2209721 + 2209722 3 5 - 1475128 + 1475129 5 6 - 1620534 + 1620535 6 7 - 6583216 + 6583219 7 8 - 8719889 + 8719893 8 9 - 3557411 + 3557413 9 @@ -7920,7 +8008,7 @@ 2 3 - 743308 + 743309 3 @@ -7955,7 +8043,7 @@ 11 337 - 307829 + 307830 339 @@ -7975,15 +8063,15 @@ affectedbymacroexpansion - 48740809 + 48740832 id - 7045460 + 7045463 inv - 3803509 + 3803511 @@ -7997,7 +8085,7 @@ 1 2 - 3847103 + 3847105 2 @@ -8017,7 +8105,7 @@ 5 12 - 535214 + 535215 12 @@ -8048,7 +8136,7 @@ 4 7 - 316639 + 316640 7 @@ -8113,11 +8201,11 @@ macroinvocations - 40387470 + 40387489 id - 40387470 + 40387489 macro_id @@ -8125,7 +8213,7 @@ location - 5925539 + 5925541 kind @@ -8143,7 +8231,7 @@ 1 2 - 40387470 + 40387489 @@ -8159,7 +8247,7 @@ 1 2 - 40387470 + 40387489 @@ -8175,7 +8263,7 @@ 1 2 - 40387470 + 40387489 @@ -8191,7 +8279,7 @@ 1 2 - 61105 + 61106 2 @@ -8319,7 +8407,7 @@ 1 2 - 5261596 + 5261599 2 @@ -8345,7 +8433,7 @@ 1 2 - 5903373 + 5903376 2 @@ -8366,7 +8454,7 @@ 1 2 - 5925539 + 5925541 @@ -8439,15 +8527,15 @@ macroparent - 33684436 + 33684452 id - 33684436 + 33684452 parent_id - 15941258 + 15941266 @@ -8461,7 +8549,7 @@ 1 2 - 33684436 + 33684452 @@ -8477,22 +8565,22 @@ 1 2 - 7815086 + 7815090 2 3 - 1595835 + 1595836 3 4 - 4707394 + 4707397 4 5 - 1296895 + 1296896 5 @@ -8507,15 +8595,15 @@ macrolocationbind - 6022277 + 6022573 id - 4208236 + 4208559 location - 2272393 + 2272360 @@ -8529,22 +8617,22 @@ 1 2 - 3284816 + 3285153 2 3 - 489028 + 489021 3 4 - 8602 + 8601 4 5 - 412639 + 412633 5 @@ -8565,12 +8653,12 @@ 1 2 - 1332220 + 1332200 2 3 - 481413 + 481406 3 @@ -8580,12 +8668,12 @@ 4 5 - 426926 + 426920 5 522 - 24047 + 24046 @@ -8595,11 +8683,11 @@ macro_argument_unexpanded - 82169662 + 82174179 invocation - 26182114 + 26181675 argument_index @@ -8607,7 +8695,7 @@ text - 341868 + 341898 @@ -8621,22 +8709,22 @@ 1 2 - 9643579 + 9641676 2 3 - 9733520 + 9734381 3 4 - 4982515 + 4982956 4 67 - 1822499 + 1822661 @@ -8652,22 +8740,22 @@ 1 2 - 9825469 + 9823583 2 3 - 9751034 + 9751897 3 4 - 4826449 + 4826877 4 67 - 1779160 + 1779317 @@ -8692,7 +8780,7 @@ 646904 - 2488947 + 2488685 31 @@ -8735,52 +8823,52 @@ 1 2 - 39542 + 39545 2 3 - 62074 + 62080 3 4 - 20933 + 20935 4 5 - 34440 + 34443 5 6 - 39089 + 39093 6 9 - 30748 + 30750 9 15 - 28875 + 28878 15 26 - 25772 + 25774 26 57 - 27024 + 27026 57 517 - 25909 + 25911 518 @@ -8801,17 +8889,17 @@ 1 2 - 242187 + 242208 2 3 - 89509 + 89517 3 9 - 10172 + 10173 @@ -8821,11 +8909,11 @@ macro_argument_expanded - 82169662 + 82174179 invocation - 26182114 + 26181675 argument_index @@ -8833,7 +8921,7 @@ text - 207052 + 207070 @@ -8847,22 +8935,22 @@ 1 2 - 9643579 + 9641676 2 3 - 9733520 + 9734381 3 4 - 4982515 + 4982956 4 67 - 1822499 + 1822661 @@ -8878,22 +8966,22 @@ 1 2 - 12591345 + 12589703 2 3 - 8396151 + 8396895 3 4 - 4208269 + 4208641 4 9 - 986347 + 986434 @@ -8918,7 +9006,7 @@ 646904 - 2488947 + 2488685 31 @@ -8961,22 +9049,22 @@ 1 2 - 21743 + 21745 2 3 - 26750 + 26753 3 4 - 43297 + 43301 4 5 - 15842 + 15843 5 @@ -8986,32 +9074,32 @@ 6 7 - 18324 + 18326 7 10 - 18882 + 18883 10 19 - 18251 + 18252 19 51 - 15694 + 15696 51 251 - 15547 + 15548 251 - 1169678 - 9467 + 1169416 + 9468 @@ -9027,17 +9115,17 @@ 1 2 - 104625 + 104634 2 3 - 88551 + 88559 3 66 - 13875 + 13876 @@ -9047,15 +9135,15 @@ functions - 4043204 + 4042957 id - 4043204 + 4042957 name - 1689262 + 1689263 kind @@ -9073,7 +9161,7 @@ 1 2 - 4043204 + 4042957 @@ -9089,7 +9177,7 @@ 1 2 - 4043204 + 4042957 @@ -9105,12 +9193,12 @@ 1 2 - 1441361 + 1441611 2 4 - 140377 + 140128 4 @@ -9131,7 +9219,7 @@ 1 2 - 1686400 + 1686401 2 @@ -9180,8 +9268,8 @@ 124 - 21974 - 21975 + 21972 + 21973 124 @@ -9238,26 +9326,26 @@ builtin_functions - 30800 + 30803 id - 30800 + 30803 function_entry_point - 1134648 + 1134646 id - 1130925 + 1130923 entry_point - 1134648 + 1134646 @@ -9271,7 +9359,7 @@ 1 2 - 1127744 + 1127741 2 @@ -9292,7 +9380,7 @@ 1 2 - 1134648 + 1134646 @@ -9302,15 +9390,15 @@ function_return_type - 4060503 + 4060256 id - 4043204 + 4042957 return_type - 617761 + 617762 @@ -9324,7 +9412,7 @@ 1 2 - 4025906 + 4025659 2 @@ -9656,33 +9744,33 @@ function_deleted - 87800 + 87799 id - 87800 + 87799 function_defaulted - 51526 + 51525 id - 51526 + 51525 function_prototyped - 4041711 + 4041464 id - 4041711 + 4041464 @@ -9840,15 +9928,15 @@ fun_decls - 4199263 + 4199638 id - 4193289 + 4193664 function - 4018688 + 4018441 type_id @@ -9856,11 +9944,11 @@ name - 1687769 + 1687770 location - 2806436 + 2806437 @@ -9874,7 +9962,7 @@ 1 2 - 4193289 + 4193664 @@ -9890,7 +9978,7 @@ 1 2 - 4187316 + 4187691 2 @@ -9911,7 +9999,7 @@ 1 2 - 4193289 + 4193664 @@ -9927,7 +10015,7 @@ 1 2 - 4193289 + 4193664 @@ -9943,12 +10031,12 @@ 1 2 - 3858647 + 3857778 2 5 - 160040 + 160662 @@ -9964,7 +10052,7 @@ 1 2 - 4000394 + 4000147 2 @@ -9985,7 +10073,7 @@ 1 2 - 4018688 + 4018441 @@ -10001,12 +10089,12 @@ 1 2 - 3878435 + 3877814 2 4 - 140253 + 140626 @@ -10022,7 +10110,7 @@ 1 2 - 294444 + 294445 2 @@ -10032,7 +10120,7 @@ 3 5 - 48285 + 48286 5 @@ -10041,7 +10129,7 @@ 364 - 10295 + 10296 1244 @@ -10076,7 +10164,7 @@ 45797 - 1485 + 1483 9907 248 @@ -10094,7 +10182,7 @@ 1 2 - 490326 + 490327 2 @@ -10156,7 +10244,7 @@ 1 2 - 1328362 + 1328363 2 @@ -10166,12 +10254,12 @@ 3 11 - 129550 + 129426 11 - 3167 - 36463 + 3169 + 36587 @@ -10187,12 +10275,12 @@ 1 2 - 1440863 + 1441113 2 4 - 140875 + 140626 4 @@ -10213,7 +10301,7 @@ 1 2 - 1598166 + 1598167 2 @@ -10234,7 +10322,7 @@ 1 2 - 1363954 + 1363955 2 @@ -10260,12 +10348,12 @@ 1 2 - 2413303 + 2413180 2 3 - 252008 + 252132 3 @@ -10286,12 +10374,12 @@ 1 2 - 2431971 + 2431847 2 3 - 233838 + 233963 3 @@ -10312,7 +10400,7 @@ 1 2 - 2692317 + 2692318 2 @@ -10333,7 +10421,7 @@ 1 2 - 2767359 + 2767360 2 @@ -10348,11 +10436,11 @@ fun_def - 1418836 + 1418837 id - 1418836 + 1418837 @@ -10381,7 +10469,7 @@ fun_decl_specifiers - 4269576 + 4269578 id @@ -10413,7 +10501,7 @@ 3 4 - 1097510 + 1097511 4 @@ -10679,11 +10767,11 @@ fun_decl_empty_noexcept - 1160854 + 1160979 fun_decl - 1160854 + 1160979 @@ -10949,11 +11037,11 @@ param_decl_bind - 7294544 + 7295169 id - 7294544 + 7295169 index @@ -10961,7 +11049,7 @@ fun_decl - 3523881 + 3524256 @@ -10975,7 +11063,7 @@ 1 2 - 7294544 + 7295169 @@ -10991,7 +11079,7 @@ 1 2 - 7294544 + 7295169 @@ -11026,12 +11114,12 @@ 343 - 16218 + 16219 622 - 28316 - 28317 + 28319 + 28320 124 @@ -11067,12 +11155,12 @@ 343 - 16218 + 16219 622 - 28316 - 28317 + 28319 + 28320 124 @@ -11089,7 +11177,7 @@ 1 2 - 1505701 + 1505951 2 @@ -11099,7 +11187,7 @@ 3 4 - 600712 + 600837 4 @@ -11125,7 +11213,7 @@ 1 2 - 1505701 + 1505951 2 @@ -11135,7 +11223,7 @@ 3 4 - 600712 + 600837 4 @@ -11155,19 +11243,19 @@ var_decls - 9374326 + 9374952 id - 9367854 + 9368481 variable - 9027363 + 9026372 type_id - 1452935 + 1452936 name @@ -11175,7 +11263,7 @@ location - 6259506 + 6259509 @@ -11189,7 +11277,7 @@ 1 2 - 9367854 + 9368481 @@ -11205,7 +11293,7 @@ 1 2 - 9361383 + 9362010 2 @@ -11226,7 +11314,7 @@ 1 2 - 9367854 + 9368481 @@ -11242,7 +11330,7 @@ 1 2 - 9367854 + 9368481 @@ -11258,12 +11346,12 @@ 1 2 - 8704295 + 8701686 2 5 - 323068 + 324686 @@ -11279,7 +11367,7 @@ 1 2 - 8974348 + 8973357 2 @@ -11300,7 +11388,7 @@ 1 2 - 8922205 + 8921213 2 @@ -11321,12 +11409,12 @@ 1 2 - 8783071 + 8780711 2 4 - 244292 + 245661 @@ -11397,7 +11485,7 @@ 11 - 2872 + 2870 80891 @@ -11505,7 +11593,7 @@ 25 - 27136 + 27138 31236 @@ -11522,12 +11610,12 @@ 1 2 - 475766 + 476015 2 3 - 164894 + 164769 3 @@ -11537,7 +11625,7 @@ 4 8 - 72180 + 72055 8 @@ -11630,16 +11718,16 @@ 1 2 - 5758601 + 5758231 2 20 - 470788 + 471161 20 - 2940 + 2942 30116 @@ -11656,12 +11744,12 @@ 1 2 - 5839244 + 5838873 2 2935 - 420262 + 420635 @@ -11677,7 +11765,7 @@ 1 2 - 5961701 + 5961704 2 @@ -11698,7 +11786,7 @@ 1 2 - 6247186 + 6247189 2 @@ -11713,11 +11801,11 @@ var_def - 3763195 + 3763197 id - 3763195 + 3763197 @@ -11735,11 +11823,11 @@ var_decl_specifiers - 488708 + 488709 id - 488708 + 488709 name @@ -11757,7 +11845,7 @@ 1 2 - 488708 + 488709 @@ -11867,15 +11955,15 @@ type_decls - 1629527 + 1629528 id - 1629527 + 1629528 type_id - 1610611 + 1610612 location @@ -11893,7 +11981,7 @@ 1 2 - 1629527 + 1629528 @@ -11909,7 +11997,7 @@ 1 2 - 1629527 + 1629528 @@ -11925,7 +12013,7 @@ 1 2 - 1594308 + 1594309 2 @@ -11967,7 +12055,7 @@ 1 2 - 1521630 + 1521631 2 @@ -11988,7 +12076,7 @@ 1 2 - 1521755 + 1521756 2 @@ -12464,19 +12552,19 @@ usings - 270978 + 271002 id - 270978 + 271002 element_id - 58813 + 58818 location - 26740 + 26742 kind @@ -12494,7 +12582,7 @@ 1 2 - 270978 + 271002 @@ -12510,7 +12598,7 @@ 1 2 - 270978 + 271002 @@ -12526,7 +12614,7 @@ 1 2 - 270978 + 271002 @@ -12542,12 +12630,12 @@ 1 2 - 51113 + 51118 2 5 - 5364 + 5365 5 @@ -12568,12 +12656,12 @@ 1 2 - 51113 + 51118 2 5 - 5364 + 5365 5 @@ -12594,7 +12682,7 @@ 1 2 - 58813 + 58818 @@ -12610,7 +12698,7 @@ 1 2 - 21091 + 21093 2 @@ -12641,7 +12729,7 @@ 1 2 - 21091 + 21093 2 @@ -12672,7 +12760,7 @@ 1 2 - 26740 + 26742 @@ -12745,15 +12833,15 @@ using_container - 577796 + 577847 parent - 21806 + 21808 child - 270978 + 271002 @@ -12797,7 +12885,7 @@ 145 146 - 2608 + 2609 146 @@ -12818,27 +12906,27 @@ 1 2 - 96210 + 96218 2 3 - 119794 + 119805 3 4 - 20018 + 20020 4 5 - 26603 + 26605 5 65 - 8352 + 8353 @@ -12848,15 +12936,15 @@ static_asserts - 172749 + 172750 id - 172749 + 172750 condition - 172749 + 172750 message @@ -12882,7 +12970,7 @@ 1 2 - 172749 + 172750 @@ -12898,7 +12986,7 @@ 1 2 - 172749 + 172750 @@ -12914,7 +13002,7 @@ 1 2 - 172749 + 172750 @@ -12930,7 +13018,7 @@ 1 2 - 172749 + 172750 @@ -12946,7 +13034,7 @@ 1 2 - 172749 + 172750 @@ -12962,7 +13050,7 @@ 1 2 - 172749 + 172750 @@ -12978,7 +13066,7 @@ 1 2 - 172749 + 172750 @@ -12994,7 +13082,7 @@ 1 2 - 172749 + 172750 @@ -13456,15 +13544,15 @@ params - 7052243 + 7051250 id - 7011797 + 7010805 function - 3400304 + 3400056 index @@ -13472,7 +13560,7 @@ type_id - 1217354 + 1217355 @@ -13486,7 +13574,7 @@ 1 2 - 7011797 + 7010805 @@ -13502,7 +13590,7 @@ 1 2 - 7011797 + 7010805 @@ -13518,7 +13606,7 @@ 1 2 - 6971351 + 6970359 2 @@ -13539,12 +13627,12 @@ 1 2 - 1470855 + 1470856 2 3 - 924776 + 924652 3 @@ -13559,7 +13647,7 @@ 5 65 - 145977 + 145853 @@ -13575,12 +13663,12 @@ 1 2 - 1470855 + 1470856 2 3 - 924776 + 924652 3 @@ -13595,7 +13683,7 @@ 5 65 - 145977 + 145853 @@ -13611,12 +13699,12 @@ 1 2 - 1778616 + 1778617 2 3 - 1029312 + 1029188 3 @@ -13626,7 +13714,7 @@ 4 11 - 154938 + 154813 @@ -13660,13 +13748,13 @@ 622 - 322 - 15505 + 321 + 15503 622 - 27323 - 27324 + 27321 + 27322 124 @@ -13701,13 +13789,13 @@ 622 - 322 - 15505 + 321 + 15503 622 - 27323 - 27324 + 27321 + 27322 124 @@ -13801,7 +13889,7 @@ 1 2 - 817501 + 817502 2 @@ -13861,7 +13949,7 @@ new - 150382 + 150383 old @@ -13935,7 +14023,7 @@ membervariables - 1502978 + 1502979 id @@ -14111,11 +14199,11 @@ globalvariables - 492566 + 492567 id - 492566 + 492567 type_id @@ -14137,7 +14225,7 @@ 1 2 - 492566 + 492567 @@ -14153,7 +14241,7 @@ 1 2 - 492566 + 492567 @@ -14297,19 +14385,19 @@ localvariables - 724695 + 724674 id - 724695 + 724674 type_id - 53298 + 53296 name - 101409 + 101406 @@ -14323,7 +14411,7 @@ 1 2 - 724695 + 724674 @@ -14339,7 +14427,7 @@ 1 2 - 724695 + 724674 @@ -14355,7 +14443,7 @@ 1 2 - 28789 + 28788 2 @@ -14401,12 +14489,12 @@ 1 2 - 38248 + 38247 2 3 - 6704 + 6703 3 @@ -14432,7 +14520,7 @@ 1 2 - 62402 + 62400 2 @@ -14473,12 +14561,12 @@ 1 2 - 84399 + 84396 2 3 - 8393 + 8392 3 @@ -16213,15 +16301,15 @@ derivedtypes - 3023723 + 3023724 id - 3023723 + 3023724 name - 1457166 + 1457167 kind @@ -16243,7 +16331,7 @@ 1 2 - 3023723 + 3023724 @@ -16259,7 +16347,7 @@ 1 2 - 3023723 + 3023724 @@ -16275,7 +16363,7 @@ 1 2 - 3023723 + 3023724 @@ -16291,7 +16379,7 @@ 1 2 - 1340931 + 1340932 2 @@ -16317,7 +16405,7 @@ 1 2 - 1457166 + 1457167 @@ -16513,7 +16601,7 @@ 1 2 - 1315917 + 1315918 2 @@ -16544,7 +16632,7 @@ 1 2 - 1316290 + 1316291 2 @@ -16569,11 +16657,11 @@ pointerishsize - 2242062 + 2242063 id - 2242062 + 2242063 size @@ -16595,7 +16683,7 @@ 1 2 - 2242062 + 2242063 @@ -16611,7 +16699,7 @@ 1 2 - 2242062 + 2242063 @@ -17134,15 +17222,15 @@ typedefbase - 1755743 + 1755899 id - 1755743 + 1755899 type_id - 834216 + 834290 @@ -17156,7 +17244,7 @@ 1 2 - 1755743 + 1755899 @@ -17172,22 +17260,22 @@ 1 2 - 659332 + 659390 2 3 - 80757 + 80764 3 6 - 63915 + 63921 6 4525 - 30211 + 30214 @@ -17197,7 +17285,7 @@ decltypes - 814570 + 814571 id @@ -17205,7 +17293,7 @@ expr - 814570 + 814571 kind @@ -17335,7 +17423,7 @@ 1 2 - 814570 + 814571 @@ -17351,7 +17439,7 @@ 1 2 - 814570 + 814571 @@ -17367,7 +17455,7 @@ 1 2 - 814570 + 814571 @@ -17383,7 +17471,7 @@ 1 2 - 814570 + 814571 @@ -17645,11 +17733,11 @@ type_operators - 7937 + 7936 id - 7937 + 7936 arg_type @@ -17675,7 +17763,7 @@ 1 2 - 7937 + 7936 @@ -17691,7 +17779,7 @@ 1 2 - 7937 + 7936 @@ -17707,7 +17795,7 @@ 1 2 - 7937 + 7936 @@ -17961,15 +18049,15 @@ usertypes - 4137505 + 4137871 id - 4137505 + 4137871 name - 915352 + 915412 kind @@ -17987,7 +18075,7 @@ 1 2 - 4137505 + 4137871 @@ -18003,7 +18091,7 @@ 1 2 - 4137505 + 4137871 @@ -18019,22 +18107,22 @@ 1 2 - 652073 + 652110 2 3 - 158105 + 158098 3 8 - 70321 + 70349 8 32667 - 34850 + 34853 @@ -18050,12 +18138,12 @@ 1 2 - 863818 + 863873 2 10 - 51534 + 51538 @@ -18190,8 +18278,8 @@ 10 - 12189 - 12190 + 12187 + 12188 10 @@ -18207,11 +18295,11 @@ usertypesize - 1359595 + 1359715 id - 1359595 + 1359715 size @@ -18233,7 +18321,7 @@ 1 2 - 1359595 + 1359715 @@ -18249,7 +18337,7 @@ 1 2 - 1359595 + 1359715 @@ -18507,11 +18595,11 @@ usertype_alias_kind - 1755743 + 1755899 id - 1755743 + 1755899 alias_kind @@ -18529,7 +18617,7 @@ 1 2 - 1755743 + 1755899 @@ -18560,11 +18648,11 @@ nontype_template_parameters - 761283 + 761282 id - 761283 + 761282 @@ -18644,15 +18732,15 @@ mangled_name - 7910439 + 7910194 id - 7910439 + 7910194 mangled_name - 6349607 + 6349610 is_complete @@ -18670,7 +18758,7 @@ 1 2 - 7910439 + 7910194 @@ -18686,7 +18774,7 @@ 1 2 - 7910439 + 7910194 @@ -18702,12 +18790,12 @@ 1 2 - 6016209 + 6016461 2 1120 - 333397 + 333148 @@ -18723,7 +18811,7 @@ 1 2 - 6349607 + 6349610 @@ -18742,8 +18830,8 @@ 124 - 63558 - 63559 + 63556 + 63557 124 @@ -18775,59 +18863,59 @@ is_pod_class - 590966 + 590965 id - 590966 + 590965 is_standard_layout_class - 1120532 + 1120631 id - 1120532 + 1120631 is_complete - 1341502 + 1341620 id - 1341502 + 1341620 is_class_template - 231183 + 231204 id - 231183 + 231204 class_instantiation - 1122152 + 1122283 to - 1119154 + 1119253 from - 71521 + 71527 @@ -18841,12 +18929,12 @@ 1 2 - 1117061 + 1117128 2 8 - 2093 + 2125 @@ -18862,12 +18950,12 @@ 1 2 - 20386 + 20388 2 3 - 12833 + 12834 3 @@ -18892,17 +18980,17 @@ 10 17 - 5901 + 5891 17 - 52 - 5396 + 51 + 5365 - 52 + 51 4223 - 3513 + 3555 @@ -18912,11 +19000,11 @@ class_template_argument - 2887353 + 2887609 type_id - 1362193 + 1362314 index @@ -18924,7 +19012,7 @@ arg_type - 818753 + 818825 @@ -18938,27 +19026,27 @@ 1 2 - 577723 + 577774 2 3 - 408634 + 408671 3 4 - 249939 + 249962 4 7 - 102679 + 102688 7 113 - 23216 + 23218 @@ -18974,22 +19062,22 @@ 1 2 - 606156 + 606210 2 3 - 422573 + 422610 3 4 - 250770 + 250793 4 113 - 82692 + 82699 @@ -19097,22 +19185,22 @@ 1 2 - 511556 + 511601 2 3 - 166889 + 166904 3 5 - 74918 + 74925 5 46 - 61412 + 61417 46 @@ -19133,17 +19221,17 @@ 1 2 - 720870 + 720934 2 3 - 79589 + 79596 3 22 - 18293 + 18294 @@ -19153,7 +19241,7 @@ class_template_argument_value - 506789 + 506788 type_id @@ -19165,7 +19253,7 @@ arg_value - 506653 + 506652 @@ -19184,7 +19272,7 @@ 2 3 - 43087 + 43086 3 @@ -19348,7 +19436,7 @@ 1 2 - 506518 + 506517 2 @@ -19369,7 +19457,7 @@ 1 2 - 506653 + 506652 @@ -19379,15 +19467,15 @@ is_proxy_class_for - 48241 + 48246 id - 48241 + 48246 templ_param_id - 45580 + 45584 @@ -19401,7 +19489,7 @@ 1 2 - 48241 + 48246 @@ -19417,7 +19505,7 @@ 1 2 - 44865 + 44869 2 @@ -19432,11 +19520,11 @@ type_mentions - 5911106 + 5911109 id - 5911106 + 5911109 type_id @@ -19444,7 +19532,7 @@ location - 5854793 + 5854796 kind @@ -19462,7 +19550,7 @@ 1 2 - 5911106 + 5911109 @@ -19478,7 +19566,7 @@ 1 2 - 5911106 + 5911109 @@ -19494,7 +19582,7 @@ 1 2 - 5911106 + 5911109 @@ -19628,7 +19716,7 @@ 1 2 - 5809100 + 5809102 2 @@ -19649,7 +19737,7 @@ 1 2 - 5809100 + 5809102 2 @@ -19670,7 +19758,7 @@ 1 2 - 5854793 + 5854796 @@ -19728,22 +19816,22 @@ is_function_template - 1328113 + 1328114 id - 1328113 + 1328114 function_instantiation - 967580 + 967578 to - 967580 + 967578 from @@ -19761,7 +19849,7 @@ 1 2 - 967580 + 967578 @@ -19777,7 +19865,7 @@ 1 2 - 109833 + 109832 2 @@ -19807,11 +19895,11 @@ function_template_argument - 2468689 + 2468684 function_id - 1443873 + 1443870 index @@ -19819,7 +19907,7 @@ arg_type - 296058 + 296057 @@ -19833,7 +19921,7 @@ 1 2 - 777936 + 777934 2 @@ -19864,12 +19952,12 @@ 1 2 - 796958 + 796956 2 3 - 408599 + 408598 3 @@ -20083,7 +20171,7 @@ function_template_argument_value - 449825 + 449824 function_id @@ -20095,7 +20183,7 @@ arg_value - 447151 + 447150 @@ -20288,7 +20376,7 @@ 1 2 - 444477 + 444476 2 @@ -20309,7 +20397,7 @@ 1 2 - 447151 + 447150 @@ -20330,11 +20418,11 @@ variable_instantiation - 427355 + 427356 to - 427355 + 427356 from @@ -20352,7 +20440,7 @@ 1 2 - 427355 + 427356 @@ -20449,7 +20537,7 @@ 2 3 - 189534 + 189535 3 @@ -20480,7 +20568,7 @@ 2 3 - 179827 + 179828 3 @@ -20888,11 +20976,11 @@ template_template_argument - 9635 + 9636 type_id - 6090 + 6091 index @@ -20900,7 +20988,7 @@ arg_type - 9046 + 9047 @@ -20914,7 +21002,7 @@ 1 2 - 4996 + 4997 2 @@ -20945,7 +21033,7 @@ 1 2 - 5017 + 5018 2 @@ -21119,7 +21207,7 @@ 1 2 - 9025 + 9026 2 @@ -21366,11 +21454,11 @@ concept_instantiation - 90160 + 90159 to - 90160 + 90159 from @@ -21388,7 +21476,7 @@ 1 2 - 90160 + 90159 @@ -21484,22 +21572,22 @@ is_type_constraint - 36789 + 36788 concept_id - 36789 + 36788 concept_template_argument - 112705 + 112704 concept_id - 76152 + 76151 index @@ -21521,7 +21609,7 @@ 1 2 - 46335 + 46334 2 @@ -21655,7 +21743,7 @@ 1 2 - 10361 + 10360 2 @@ -21857,15 +21945,15 @@ routinetypes - 600578 + 600577 id - 600578 + 600577 return_type - 282012 + 282011 @@ -21879,7 +21967,7 @@ 1 2 - 600578 + 600577 @@ -22281,11 +22369,11 @@ ptrtomembers - 9677 + 9678 id - 9677 + 9678 type_id @@ -22307,7 +22395,7 @@ 1 2 - 9677 + 9678 @@ -22323,7 +22411,7 @@ 1 2 - 9677 + 9678 @@ -22339,7 +22427,7 @@ 1 2 - 7731 + 7732 2 @@ -22360,7 +22448,7 @@ 1 2 - 7731 + 7732 2 @@ -22598,11 +22686,11 @@ funspecifiers - 9694656 + 9693167 func_id - 4002634 + 4002387 spec_id @@ -22620,17 +22708,17 @@ 1 2 - 1526110 + 1527356 2 3 - 506256 + 504514 3 4 - 1033917 + 1034166 4 @@ -22734,8 +22822,8 @@ 124 - 15137 - 15138 + 15135 + 15136 124 @@ -22744,8 +22832,8 @@ 124 - 22777 - 22778 + 22767 + 22768 124 @@ -22756,11 +22844,11 @@ varspecifiers - 3078853 + 3078855 var_id - 2314865 + 2314866 spec_id @@ -22778,7 +22866,7 @@ 1 2 - 1654292 + 1654293 2 @@ -23424,7 +23512,7 @@ 1 2 - 641033 + 641034 2 @@ -24154,15 +24242,15 @@ attribute_arg_constant - 71584 + 71632 arg - 71584 + 71632 constant - 71584 + 71632 @@ -24176,7 +24264,7 @@ 1 2 - 71584 + 71632 @@ -24192,7 +24280,7 @@ 1 2 - 71584 + 71632 @@ -24374,7 +24462,7 @@ spec_id - 615272 + 615273 @@ -24613,15 +24701,15 @@ unspecifiedtype - 7228462 + 7228465 type_id - 7228462 + 7228465 unspecified_type_id - 3955717 + 3955719 @@ -24635,7 +24723,7 @@ 1 2 - 7228462 + 7228465 @@ -24651,12 +24739,12 @@ 1 2 - 2475279 + 2475280 2 3 - 1114435 + 1114436 3 @@ -24676,11 +24764,11 @@ member - 4182338 + 4182091 parent - 541972 + 541973 index @@ -24688,7 +24776,7 @@ child - 4177733 + 4177486 @@ -24773,7 +24861,7 @@ 2 3 - 83255 + 83256 3 @@ -24966,7 +25054,7 @@ 1 2 - 4177733 + 4177486 @@ -24982,7 +25070,7 @@ 1 2 - 4173128 + 4172881 2 @@ -24997,15 +25085,15 @@ enclosingfunction - 114976 + 114986 child - 114976 + 114986 parent - 69091 + 69097 @@ -25019,7 +25107,7 @@ 1 2 - 114976 + 114986 @@ -25035,12 +25123,12 @@ 1 2 - 37469 + 37473 2 3 - 24478 + 24480 3 @@ -25060,15 +25148,15 @@ derivations - 473788 + 473787 derivation - 473788 + 473787 sub - 452194 + 452193 index @@ -25076,7 +25164,7 @@ super - 234017 + 234016 location @@ -25094,7 +25182,7 @@ 1 2 - 473788 + 473787 @@ -25110,7 +25198,7 @@ 1 2 - 473788 + 473787 @@ -25126,7 +25214,7 @@ 1 2 - 473788 + 473787 @@ -25142,7 +25230,7 @@ 1 2 - 473788 + 473787 @@ -25158,7 +25246,7 @@ 1 2 - 435778 + 435777 2 @@ -25179,7 +25267,7 @@ 1 2 - 435778 + 435777 2 @@ -25200,7 +25288,7 @@ 1 2 - 435778 + 435777 2 @@ -25221,7 +25309,7 @@ 1 2 - 435778 + 435777 2 @@ -25381,7 +25469,7 @@ 1 2 - 224269 + 224268 2 @@ -25402,7 +25490,7 @@ 1 2 - 224269 + 224268 2 @@ -25423,7 +25511,7 @@ 1 2 - 233577 + 233576 2 @@ -25444,7 +25532,7 @@ 1 2 - 228703 + 228702 2 @@ -25578,11 +25666,11 @@ derspecifiers - 475548 + 475547 der_id - 473348 + 473347 spec_id @@ -25600,7 +25688,7 @@ 1 2 - 471148 + 471147 2 @@ -25646,11 +25734,11 @@ direct_base_offsets - 447049 + 447048 der_id - 447049 + 447048 offset @@ -25668,7 +25756,7 @@ 1 2 - 447049 + 447048 @@ -25865,19 +25953,19 @@ frienddecls - 767816 + 767814 id - 767816 + 767814 type_id - 54358 + 54357 decl_id - 100626 + 100728 location @@ -25895,7 +25983,7 @@ 1 2 - 767816 + 767814 @@ -25911,7 +25999,7 @@ 1 2 - 767816 + 767814 @@ -25927,7 +26015,7 @@ 1 2 - 767816 + 767814 @@ -26066,12 +26154,12 @@ 1 2 - 67287 + 67490 2 3 - 8258 + 8157 3 @@ -26085,13 +26173,13 @@ 24 - 127 - 7547 + 136 + 7649 - 135 + 136 191 - 710 + 609 @@ -26107,12 +26195,12 @@ 1 2 - 67287 + 67490 2 3 - 8258 + 8157 3 @@ -26126,13 +26214,13 @@ 24 - 127 - 7547 + 136 + 7649 - 135 + 136 191 - 710 + 609 @@ -26148,7 +26236,7 @@ 1 2 - 99408 + 99509 2 @@ -26215,7 +26303,7 @@ 2 - 2841 + 2844 338 @@ -26226,19 +26314,19 @@ comments - 11208571 + 11208576 id - 11208571 + 11208576 contents - 4294963 + 4294965 location - 11208571 + 11208576 @@ -26252,7 +26340,7 @@ 1 2 - 11208571 + 11208576 @@ -26268,7 +26356,7 @@ 1 2 - 11208571 + 11208576 @@ -26284,7 +26372,7 @@ 1 2 - 3920498 + 3920500 2 @@ -26310,7 +26398,7 @@ 1 2 - 3920498 + 3920500 2 @@ -26336,7 +26424,7 @@ 1 2 - 11208571 + 11208576 @@ -26352,7 +26440,7 @@ 1 2 - 11208571 + 11208576 @@ -26362,15 +26450,15 @@ commentbinding - 3905315 + 3905317 id - 3342684 + 3342686 element - 3740172 + 3740174 @@ -26384,7 +26472,7 @@ 1 2 - 3281207 + 3281208 2 @@ -26405,7 +26493,7 @@ 1 2 - 3575029 + 3575031 2 @@ -26420,15 +26508,15 @@ exprconv - 9634070 + 9634074 converted - 9633964 + 9633969 conversion - 9634070 + 9634074 @@ -26442,7 +26530,7 @@ 1 2 - 9633859 + 9633863 2 @@ -26463,7 +26551,7 @@ 1 2 - 9634070 + 9634074 @@ -26473,22 +26561,22 @@ compgenerated - 9923433 + 9923438 id - 9923433 + 9923438 synthetic_destructor_call - 1666648 + 1666623 element - 1241201 + 1241183 i @@ -26496,7 +26584,7 @@ destructor_call - 1666648 + 1666623 @@ -26510,12 +26598,12 @@ 1 2 - 826180 + 826168 2 3 - 408242 + 408236 3 @@ -26536,12 +26624,12 @@ 1 2 - 826180 + 826168 2 3 - 408242 + 408236 3 @@ -26694,7 +26782,7 @@ 1 2 - 1666648 + 1666623 @@ -26710,7 +26798,7 @@ 1 2 - 1666648 + 1666623 @@ -26720,15 +26808,15 @@ namespaces - 8615 + 8616 id - 8615 + 8616 name - 4554 + 4555 @@ -26742,7 +26830,7 @@ 1 2 - 8615 + 8616 @@ -26758,12 +26846,12 @@ 1 2 - 3723 + 3724 2 3 - 525 + 526 3 @@ -26789,7 +26877,7 @@ namespacembrs - 2110396 + 2110397 parentid @@ -26797,7 +26885,7 @@ memberid - 2110396 + 2110397 @@ -26887,7 +26975,7 @@ 1 2 - 2110396 + 2110397 @@ -26897,11 +26985,11 @@ exprparents - 19456287 + 19456296 expr_id - 19456287 + 19456296 child_index @@ -26909,7 +26997,7 @@ parent_id - 12941374 + 12941380 @@ -26923,7 +27011,7 @@ 1 2 - 19456287 + 19456296 @@ -26939,7 +27027,7 @@ 1 2 - 19456287 + 19456296 @@ -27057,12 +27145,12 @@ 1 2 - 7395561 + 7395565 2 3 - 5083213 + 5083216 3 @@ -27083,12 +27171,12 @@ 1 2 - 7395561 + 7395565 2 3 - 5083213 + 5083216 3 @@ -27103,22 +27191,22 @@ expr_isload - 6898013 + 6898025 expr_id - 6898013 + 6898025 conversionkinds - 6051175 + 6051177 expr_id - 6051175 + 6051177 kind @@ -27136,7 +27224,7 @@ 1 2 - 6051175 + 6051177 @@ -27180,8 +27268,8 @@ 1 - 5832065 - 5832066 + 5832067 + 5832068 1 @@ -27192,11 +27280,11 @@ iscall - 5790816 + 5790730 caller - 5790816 + 5790730 kind @@ -27214,7 +27302,7 @@ 1 2 - 5790816 + 5790730 @@ -27376,23 +27464,23 @@ namequalifiers - 3042586 + 3042541 id - 3042586 + 3042541 qualifiableelement - 3042586 + 3042541 qualifyingelement - 47729 + 47728 location - 554605 + 554597 @@ -27406,7 +27494,7 @@ 1 2 - 3042586 + 3042541 @@ -27422,7 +27510,7 @@ 1 2 - 3042586 + 3042541 @@ -27438,7 +27526,7 @@ 1 2 - 3042586 + 3042541 @@ -27454,7 +27542,7 @@ 1 2 - 3042586 + 3042541 @@ -27470,7 +27558,7 @@ 1 2 - 3042586 + 3042541 @@ -27486,7 +27574,7 @@ 1 2 - 3042586 + 3042541 @@ -27605,17 +27693,17 @@ 1 2 - 79413 + 79412 2 6 - 41015 + 41014 6 7 - 397795 + 397789 7 @@ -27636,17 +27724,17 @@ 1 2 - 79413 + 79412 2 6 - 41015 + 41014 6 7 - 397795 + 397789 7 @@ -27667,7 +27755,7 @@ 1 2 - 114958 + 114956 2 @@ -27677,7 +27765,7 @@ 4 5 - 414055 + 414049 5 @@ -27692,11 +27780,11 @@ varbind - 8255498 + 8255502 expr - 8255498 + 8255502 var @@ -27714,7 +27802,7 @@ 1 2 - 8255498 + 8255502 @@ -27730,7 +27818,7 @@ 1 2 - 171553 + 171554 2 @@ -27760,7 +27848,7 @@ 7 9 - 80823 + 80824 9 @@ -27785,15 +27873,15 @@ funbind - 5806089 + 5806003 expr - 5803622 + 5803536 fun - 275286 + 275282 @@ -27807,7 +27895,7 @@ 1 2 - 5801155 + 5801069 2 @@ -27828,12 +27916,12 @@ 1 2 - 181071 + 181068 2 3 - 38312 + 38311 3 @@ -27848,7 +27936,7 @@ 8 37798 - 16067 + 16066 @@ -27984,11 +28072,11 @@ expr_deallocator - 53478 + 53477 expr - 53478 + 53477 func @@ -28010,7 +28098,7 @@ 1 2 - 53478 + 53477 @@ -28026,7 +28114,7 @@ 1 2 - 53478 + 53477 @@ -28131,15 +28219,15 @@ expr_cond_guard - 897971 + 897972 cond - 897971 + 897972 guard - 897971 + 897972 @@ -28153,7 +28241,7 @@ 1 2 - 897971 + 897972 @@ -28169,7 +28257,7 @@ 1 2 - 897971 + 897972 @@ -28179,15 +28267,15 @@ expr_cond_true - 897967 + 897968 cond - 897967 + 897968 true - 897967 + 897968 @@ -28201,7 +28289,7 @@ 1 2 - 897967 + 897968 @@ -28217,7 +28305,7 @@ 1 2 - 897967 + 897968 @@ -28227,15 +28315,15 @@ expr_cond_false - 897971 + 897972 cond - 897971 + 897972 false - 897971 + 897972 @@ -28249,7 +28337,7 @@ 1 2 - 897971 + 897972 @@ -28265,7 +28353,7 @@ 1 2 - 897971 + 897972 @@ -28275,11 +28363,11 @@ values - 13541557 + 13541563 id - 13541557 + 13541563 str @@ -28297,7 +28385,7 @@ 1 2 - 13541557 + 13541563 @@ -28343,11 +28431,11 @@ valuetext - 6637698 + 6637568 id - 6637698 + 6637568 text @@ -28365,7 +28453,7 @@ 1 2 - 6637698 + 6637568 @@ -28395,7 +28483,7 @@ 7 - 593717 + 593723 27872 @@ -28406,15 +28494,15 @@ valuebind - 13649707 + 13649714 val - 13541557 + 13541563 expr - 13649707 + 13649714 @@ -28428,7 +28516,7 @@ 1 2 - 13451399 + 13451406 2 @@ -28449,7 +28537,7 @@ 1 2 - 13649707 + 13649714 @@ -28851,23 +28939,23 @@ initialisers - 2244826 + 2244830 init - 2244826 + 2244830 var - 978848 + 978850 expr - 2244826 + 2244830 location - 515723 + 515724 @@ -28881,7 +28969,7 @@ 1 2 - 2244826 + 2244830 @@ -28897,7 +28985,7 @@ 1 2 - 2244826 + 2244830 @@ -28913,7 +29001,7 @@ 1 2 - 2244826 + 2244830 @@ -28929,7 +29017,7 @@ 1 2 - 868819 + 868820 2 @@ -28955,7 +29043,7 @@ 1 2 - 868819 + 868820 2 @@ -28981,7 +29069,7 @@ 1 2 - 978840 + 978842 2 @@ -29002,7 +29090,7 @@ 1 2 - 2244826 + 2244830 @@ -29018,7 +29106,7 @@ 1 2 - 2244826 + 2244830 @@ -29034,7 +29122,7 @@ 1 2 - 2244826 + 2244830 @@ -29050,7 +29138,7 @@ 1 2 - 414196 + 414197 2 @@ -29081,7 +29169,7 @@ 1 2 - 443422 + 443423 2 @@ -29107,7 +29195,7 @@ 1 2 - 414196 + 414197 2 @@ -29143,15 +29231,15 @@ expr_ancestor - 1672611 + 1672586 exp - 1672611 + 1672586 ancestor - 837120 + 837108 @@ -29165,7 +29253,7 @@ 1 2 - 1672611 + 1672586 @@ -29186,7 +29274,7 @@ 2 3 - 810049 + 810037 3 @@ -29201,11 +29289,11 @@ exprs - 25213250 + 25213262 id - 25213250 + 25213262 kind @@ -29213,7 +29301,7 @@ location - 10586806 + 10586811 @@ -29227,7 +29315,7 @@ 1 2 - 25213250 + 25213262 @@ -29243,7 +29331,7 @@ 1 2 - 25213250 + 25213262 @@ -29421,7 +29509,7 @@ 1 2 - 8904640 + 8904644 2 @@ -29452,7 +29540,7 @@ 1 2 - 9044058 + 9044063 2 @@ -29462,7 +29550,7 @@ 3 32 - 768383 + 768384 @@ -29472,15 +29560,15 @@ expr_reuse - 844478 + 844466 reuse - 844478 + 844466 original - 844478 + 844466 value_category @@ -29498,7 +29586,7 @@ 1 2 - 844478 + 844466 @@ -29514,7 +29602,7 @@ 1 2 - 844478 + 844466 @@ -29530,7 +29618,7 @@ 1 2 - 844478 + 844466 @@ -29546,7 +29634,7 @@ 1 2 - 844478 + 844466 @@ -29598,11 +29686,11 @@ expr_types - 25213250 + 25213262 id - 25213250 + 25213262 typeid @@ -29624,7 +29712,7 @@ 1 2 - 25213250 + 25213262 @@ -29640,7 +29728,7 @@ 1 2 - 25213250 + 25213262 @@ -29906,11 +29994,11 @@ param_ref_to_this - 24952 + 24951 expr - 24952 + 24951 @@ -31253,15 +31341,15 @@ condition_decl_bind - 407684 + 407678 expr - 407684 + 407678 decl - 407684 + 407678 @@ -31275,7 +31363,7 @@ 1 2 - 407684 + 407678 @@ -31291,7 +31379,7 @@ 1 2 - 407684 + 407678 @@ -33133,11 +33221,11 @@ stmts - 6349654 + 6349665 id - 6349654 + 6349665 kind @@ -33145,7 +33233,7 @@ location - 2676166 + 2676171 @@ -33159,7 +33247,7 @@ 1 2 - 6349654 + 6349665 @@ -33175,7 +33263,7 @@ 1 2 - 6349654 + 6349665 @@ -33413,7 +33501,7 @@ 1 2 - 2218094 + 2218098 2 @@ -33444,7 +33532,7 @@ 1 2 - 2593460 + 2593464 2 @@ -33614,15 +33702,15 @@ if_then - 990318 + 990319 if_stmt - 990318 + 990319 then_id - 990318 + 990319 @@ -33636,7 +33724,7 @@ 1 2 - 990318 + 990319 @@ -33652,7 +33740,7 @@ 1 2 - 990318 + 990319 @@ -33662,15 +33750,15 @@ if_else - 435785 + 435779 if_stmt - 435785 + 435779 else_id - 435785 + 435779 @@ -33684,7 +33772,7 @@ 1 2 - 435785 + 435779 @@ -33700,7 +33788,7 @@ 1 2 - 435785 + 435779 @@ -34094,11 +34182,11 @@ switch_case - 833624 + 833612 switch_stmt - 410623 + 410617 index @@ -34106,7 +34194,7 @@ case_id - 833624 + 833612 @@ -34125,12 +34213,12 @@ 2 3 - 407748 + 407742 3 19 - 2853 + 2852 @@ -34151,12 +34239,12 @@ 2 3 - 407748 + 407742 3 19 - 2853 + 2852 @@ -34314,7 +34402,7 @@ 1 2 - 833624 + 833612 @@ -34330,7 +34418,7 @@ 1 2 - 833624 + 833612 @@ -34340,15 +34428,15 @@ switch_body - 410623 + 410617 switch_stmt - 410623 + 410617 body_id - 410623 + 410617 @@ -34362,7 +34450,7 @@ 1 2 - 410623 + 410617 @@ -34378,7 +34466,7 @@ 1 2 - 410623 + 410617 @@ -34580,11 +34668,11 @@ stmtparents - 5611093 + 5611103 id - 5611093 + 5611103 index @@ -34592,7 +34680,7 @@ parent - 2374340 + 2374344 @@ -34606,7 +34694,7 @@ 1 2 - 5611093 + 5611103 @@ -34622,7 +34710,7 @@ 1 2 - 5611093 + 5611103 @@ -34760,22 +34848,22 @@ 1 2 - 1355057 + 1355059 2 3 - 515763 + 515764 3 4 - 151046 + 151047 4 6 - 155241 + 155242 6 @@ -34801,22 +34889,22 @@ 1 2 - 1355057 + 1355059 2 3 - 515763 + 515764 3 4 - 151046 + 151047 4 6 - 155241 + 155242 6 @@ -34847,11 +34935,11 @@ stmt_decl_bind - 723619 + 723620 stmt - 713083 + 713084 num @@ -34859,7 +34947,7 @@ decl - 723619 + 723620 @@ -34873,7 +34961,7 @@ 1 2 - 705641 + 705642 2 @@ -34894,7 +34982,7 @@ 1 2 - 705641 + 705642 2 @@ -35027,7 +35115,7 @@ 1 2 - 723619 + 723620 @@ -35043,7 +35131,7 @@ 1 2 - 723619 + 723620 @@ -35053,11 +35141,11 @@ stmt_decl_entry_bind - 723619 + 723620 stmt - 713083 + 713084 num @@ -35065,7 +35153,7 @@ decl_entry - 723619 + 723620 @@ -35079,7 +35167,7 @@ 1 2 - 705641 + 705642 2 @@ -35100,7 +35188,7 @@ 1 2 - 705641 + 705642 2 @@ -35233,7 +35321,7 @@ 1 2 - 723619 + 723620 @@ -35249,7 +35337,7 @@ 1 2 - 723619 + 723620 @@ -35259,15 +35347,15 @@ blockscope - 1640354 + 1640355 block - 1640354 + 1640355 enclosing - 1423689 + 1423690 @@ -35281,7 +35369,7 @@ 1 2 - 1640354 + 1640355 @@ -35498,11 +35586,11 @@ preprocdirects - 5395212 + 5395214 id - 5395212 + 5395214 kind @@ -35510,7 +35598,7 @@ location - 5392101 + 5392103 @@ -35524,7 +35612,7 @@ 1 2 - 5395212 + 5395214 @@ -35540,7 +35628,7 @@ 1 2 - 5395212 + 5395214 @@ -35688,7 +35776,7 @@ 1 2 - 5391976 + 5391979 26 @@ -35709,7 +35797,7 @@ 1 2 - 5392101 + 5392103 @@ -35741,7 +35829,7 @@ 1 2 - 648002 + 648003 2 @@ -35777,11 +35865,11 @@ preproctrue - 438182 + 438183 branch - 438182 + 438183 @@ -35799,19 +35887,19 @@ preproctext - 4341756 + 4341758 id - 4341756 + 4341758 head - 2947934 + 2947935 body - 1679306 + 1679307 @@ -35825,7 +35913,7 @@ 1 2 - 4341756 + 4341758 @@ -35841,7 +35929,7 @@ 1 2 - 4341756 + 4341758 @@ -35857,7 +35945,7 @@ 1 2 - 2749812 + 2749813 2 @@ -35878,7 +35966,7 @@ 1 2 - 2866918 + 2866919 2 @@ -35925,7 +36013,7 @@ 1 2 - 1535693 + 1535694 2 @@ -35945,15 +36033,15 @@ includes - 317337 + 317365 id - 317337 + 317365 included - 58456 + 58461 @@ -35967,7 +36055,7 @@ 1 2 - 317337 + 317365 @@ -35983,17 +36071,17 @@ 1 2 - 28928 + 28930 2 3 - 9404 + 9405 3 4 - 4933 + 4934 4 @@ -36119,11 +36207,11 @@ link_parent - 30224787 + 30224721 element - 3843719 + 3843710 link_target @@ -36141,7 +36229,7 @@ 1 2 - 527063 + 527062 2 @@ -36151,7 +36239,7 @@ 9 10 - 3289882 + 3289875 diff --git a/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/old.dbscheme b/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/old.dbscheme new file mode 100644 index 000000000000..9439176c1d13 --- /dev/null +++ b/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/old.dbscheme @@ -0,0 +1,2489 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 17 = @ppd_embed +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +embeds( + unique int id: @ppd_embed ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/semmlecode.cpp.dbscheme b/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/semmlecode.cpp.dbscheme new file mode 100644 index 000000000000..7e7c2f55670f --- /dev/null +++ b/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/semmlecode.cpp.dbscheme @@ -0,0 +1,2517 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +/** + * Gives the TRAP filename that `trap` is associated with. + * For debugging only. + */ +trap_filename( + int trap: @trap, + string filename: string ref +); + +/** + * In `build-mode: none` overlay mode, indicates that `source_file` + * (`/path/to/foo.c`) uses the TRAP file `trap_file`; i.e. it is the + * TRAP file corresponding to `foo.c`, something it transitively + * includes, or a template instantiation it transitively uses. + */ +source_file_uses_trap( + string source_file: string ref, + int trap_file: @trap ref +); + +/** + * Holds if there is a definition of `element` in TRAP file `trap_file`. + */ +in_trap( + int element: @element ref, + int trap_file: @trap ref +); + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 17 = @ppd_embed +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +embeds( + unique int id: @ppd_embed ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/upgrade.properties b/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/upgrade.properties new file mode 100644 index 000000000000..a50cc3b23134 --- /dev/null +++ b/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/upgrade.properties @@ -0,0 +1,2 @@ +description: Add trap_filename, source_file_uses_trap and in_trap relations +compatibility: full diff --git a/cpp/ql/src/CHANGELOG.md b/cpp/ql/src/CHANGELOG.md index 61792c6a700b..640b66a910dd 100644 --- a/cpp/ql/src/CHANGELOG.md +++ b/cpp/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.5.11 + +No user-facing changes. + ## 1.5.10 No user-facing changes. diff --git a/cpp/ql/src/change-notes/released/1.5.11.md b/cpp/ql/src/change-notes/released/1.5.11.md new file mode 100644 index 000000000000..5f42fc9133da --- /dev/null +++ b/cpp/ql/src/change-notes/released/1.5.11.md @@ -0,0 +1,3 @@ +## 1.5.11 + +No user-facing changes. diff --git a/cpp/ql/src/codeql-pack.release.yml b/cpp/ql/src/codeql-pack.release.yml index fda54b31bffb..7e8e8103d99a 100644 --- a/cpp/ql/src/codeql-pack.release.yml +++ b/cpp/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.5.10 +lastReleaseVersion: 1.5.11 diff --git a/cpp/ql/src/qlpack.yml b/cpp/ql/src/qlpack.yml index 232836a053d8..d8620439fe62 100644 --- a/cpp/ql/src/qlpack.yml +++ b/cpp/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/cpp-queries -version: 1.5.10 +version: 1.5.12-dev groups: - cpp - queries diff --git a/cpp/ql/test/library-tests/dataflow/external-models/azure.cpp b/cpp/ql/test/library-tests/dataflow/external-models/azure.cpp new file mode 100644 index 000000000000..14407a8b5bed --- /dev/null +++ b/cpp/ql/test/library-tests/dataflow/external-models/azure.cpp @@ -0,0 +1,297 @@ +using uint16_t = unsigned short; +using int64_t = long long; +using size_t = unsigned long; +using uint8_t = unsigned char; +using int32_t = int; +using uint32_t = unsigned int; + +namespace std +{ + class string + { + public: + string(); + string(const char *); + ~string(); + }; + + template + class map + { + public: + map(); + ~map(); + + V& operator[](const K& key); + }; + + template + class vector + { + public: + vector(); + ~vector(); + + T& operator[](size_t); + }; + + template + class unique_ptr { + public: + unique_ptr(); + ~unique_ptr(); + + T* get(); + }; +} + +namespace Azure +{ + template + class Nullable + { + public: + Nullable(); + Nullable(const T); + Nullable(const Nullable &); + ~Nullable(); + Nullable (Nullable &&); + Nullable & operator= (const Nullable &); + bool HasValue() const; + const T & Value () const; + T& Value (); + const T * operator-> () const; + T * operator-> (); + const T & operator* () const; + T & operator* (); + }; + + namespace Core + { + class Url + { + public: + Url(); + Url(const std::string &); + void AppendPath(const std::string &encodedPath); + void AppendQueryParameter(const std::string &encodedKey, + const std::string &encodedValue); + + static std::string Url::Decode(const std::string &value); + static std::string Url::Encode(const std::string &value, + const std::string &doNotEncodeSymbols = ""); + + std::string Url::GetAbsoluteUrl() const; + const std::string &GetHost() const; + const std::string &GetPath() const; + uint16_t GetPort() const; + std::map GetQueryParameters() const; + std::string Url::GetRelativeUrl() const; + const std::string &GetScheme() const; + void RemoveQueryParameter(const std::string &encodedKey); + void SetHost(const std::string &encodedHost); + void SetPath(const std::string &encodedPath); + void SetPort(uint16_t port); + void SetQueryParameters(std::map queryParameters); + void SetScheme(const std::string &scheme); + }; + + class Context + { + public: + Context(); + }; + + namespace IO + { + class BodyStream + { + public: + virtual ~BodyStream(); + virtual int64_t Length() const = 0; + virtual void Rewind(); + size_t Read(uint8_t *buffer, size_t count, Azure::Core::Context const &context = Azure::Core::Context()); + size_t ReadToCount(uint8_t *buffer, size_t count, Azure::Core::Context const &context = Azure::Core::Context()); + std::vector ReadToEnd(Azure::Core::Context const &context = Azure::Core::Context()); + }; + } + + enum class HttpStatusCode { + None = 0, + Continue = 100, + SwitchingProtocols = 101, + Processing = 102, + EarlyHints = 103, + OK = 200, + Created = 201, + Accepted = 202, + NonAuthoritativeInformation = 203, + NoContent = 204, + ResetContent = 205, + PartialContent = 206, + MultiStatus = 207, + AlreadyReported = 208, + IMUsed = 226, + MultipleChoices = 300, + MovedPermanently = 301, + Found = 302, + SeeOther = 303, + NotModified = 304, + UseProxy = 305, + TemporaryRedirect = 307, + PermanentRedirect = 308, + BadRequest = 400, + Unauthorized = 401, + PaymentRequired = 402, + Forbidden = 403, + NotFound = 404, + MethodNotAllowed = 405, + NotAcceptable = 406, + ProxyAuthenticationRequired = 407, + RequestTimeout = 408, + Conflict = 409, + Gone = 410, + LengthRequired = 411, + PreconditionFailed = 412, + PayloadTooLarge = 413, + URITooLong = 414, + UnsupportedMediaType = 415, + RangeNotSatisfiable = 416, + ExpectationFailed = 417, + MisdirectedRequest = 421, + UnprocessableEntity = 422, + Locked = 423, + FailedDependency = 424, + TooEarly = 425, + UpgradeRequired = 426, + PreconditionRequired = 428, + TooManyRequests = 429, + RequestHeaderFieldsTooLarge = 431, + UnavailableForLegalReasons = 451, + InternalServerError = 500, + NotImplemented = 501, + BadGateway = 502, + ServiceUnavailable = 503, + GatewayTimeout = 504, + HTTPVersionNotSupported = 505, + VariantAlsoNegotiates = 506, + InsufficientStorage = 507, + LoopDetected = 508, + NotExtended = 510, + NetworkAuthenticationRequired = 511 + }; + + namespace Http + { + class HttpMethod + { + public: + HttpMethod(std::string value); + bool operator==(const HttpMethod &other) const; + bool operator!=(const HttpMethod &other) const; + const std::string &ToString() const; + }; + + extern const HttpMethod Get; + extern const HttpMethod Head; + extern const HttpMethod Post; + extern const HttpMethod Put; + extern const HttpMethod Delete; + extern const HttpMethod Patch; + extern const HttpMethod Options; + + class Request + { + public: + explicit Request(HttpMethod httpMethod, + Url url); + explicit Request(HttpMethod httpMethod, + Url url, + bool shouldBufferResponse); + explicit Request(HttpMethod httpMethod, + Url url, + IO::BodyStream *bodyStream); + explicit Request(HttpMethod httpMethod, + Url url, + IO::BodyStream *bodyStream, + bool shouldBufferResponse); + std::map GetHeaders () const; + Azure::Nullable GetHeader(std::string const &name); + IO::BodyStream * GetBodyStream(); + Azure::Core::IO::BodyStream const* GetBodyStream () const; + }; + + class RawResponse { + public: + RawResponse (int32_t majorVersion, int32_t minorVersion, HttpStatusCode statusCode, std::string const &reasonPhrase); + RawResponse (RawResponse const &response); + RawResponse (RawResponse &&response); + ~RawResponse (); + void SetHeader (std::string const &name, std::string const &value); + void SetBodyStream (std::unique_ptr< Azure::Core::IO::BodyStream > stream); + void SetBody (std::vector< uint8_t > body); + uint32_t GetMajorVersion () const; + uint32_t GetMinorVersion () const; + HttpStatusCode GetStatusCode () const; + std::string const & GetReasonPhrase () const; + std::map& GetHeaders () const; + std::unique_ptr ExtractBodyStream (); + std::vector & GetBody (); + std::vector const& GetBody() const; + }; + } + } +} + +void sink(char); +void sink(std::string); +void sink(std::vector); +void sink(Azure::Nullable); + +void test_BodyStream() { + Azure::Core::Http::Request request(Azure::Core::Http::Get, Azure::Core::Url("http://example.com")); + Azure::Core::IO::BodyStream * resp = request.GetBodyStream(); + + { + unsigned char buffer[1024]; + resp->Read(buffer, sizeof(buffer)); + sink(*buffer); // $ ir + } + { + unsigned char buffer[1024]; + resp->ReadToCount(buffer, sizeof(buffer)); + sink(*buffer); // $ ir + } + { + std::vector vec = resp->ReadToEnd(); + sink(vec); // $ ir + } +} + +void test_RawResponse(Azure::Core::Http::RawResponse& resp) { + { + std::map body = resp.GetHeaders(); + sink(body["Content-Type"]); // $ ir + } + { + std::vector body = resp.GetBody(); + sink(body); // $ ir + } + { + std::unique_ptr bodyStream = resp.ExtractBodyStream(); + sink(bodyStream.get()->ReadToEnd()); // $ ir + } +} + +void test_GetHeader() { + Azure::Core::Http::Request request(Azure::Core::Http::Get, Azure::Core::Url("http://example.com")); + { + auto headerValue = request.GetHeader("Content-Type").Value(); + sink(headerValue); // $ ir + } + { + std::map headers = request.GetHeaders(); + std::string contentType = headers["Content-Type"]; + sink(contentType); // $ ir + } +} \ No newline at end of file diff --git a/cpp/ql/test/library-tests/dataflow/external-models/flow.expected b/cpp/ql/test/library-tests/dataflow/external-models/flow.expected index d47ae8950fb3..1e46060c97ed 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/flow.expected +++ b/cpp/ql/test/library-tests/dataflow/external-models/flow.expected @@ -14,45 +14,111 @@ models | 13 | Source: ; ; false; NtReadFile; ; ; Argument[*5]; local; manual | | 14 | Source: ; ; false; ReadFile; ; ; Argument[*1]; local; manual | | 15 | Source: ; ; false; ReadFileEx; ; ; Argument[*1]; local; manual | -| 16 | Source: ; ; false; ymlSource; ; ; ReturnValue; local; manual | -| 17 | Source: boost::asio; ; false; read_until; ; ; Argument[*1]; remote; manual | -| 18 | Summary: ; ; false; CommandLineToArgvA; ; ; Argument[*0]; ReturnValue[**]; taint; manual | -| 19 | Summary: ; ; false; CreateRemoteThread; ; ; Argument[@4]; Argument[3].Parameter[@0]; value; manual | -| 20 | Summary: ; ; false; CreateRemoteThreadEx; ; ; Argument[@4]; Argument[3].Parameter[@0]; value; manual | -| 21 | Summary: ; ; false; CreateThread; ; ; Argument[@3]; Argument[2].Parameter[@0]; value; manual | -| 22 | Summary: ; ; false; ReadFileEx; ; ; Argument[*3].Field[@hEvent]; Argument[4].Parameter[*2].Field[@hEvent]; value; manual | -| 23 | Summary: ; ; false; RtlCopyDeviceMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 24 | Summary: ; ; false; RtlCopyMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 25 | Summary: ; ; false; RtlCopyMemoryNonTemporal; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 26 | Summary: ; ; false; RtlCopyUnicodeString; ; ; Argument[*1].Field[*Buffer]; Argument[*0].Field[*Buffer]; value; manual | -| 27 | Summary: ; ; false; RtlCopyVolatileMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 28 | Summary: ; ; false; RtlInitUnicodeString; ; ; Argument[*1]; Argument[*0].Field[*Buffer]; value; manual | -| 29 | Summary: ; ; false; RtlMoveMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 30 | Summary: ; ; false; RtlMoveVolatileMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 31 | Summary: ; ; false; callWithArgument; ; ; Argument[1]; Argument[0].Parameter[0]; value; manual | -| 32 | Summary: ; ; false; callWithNonTypeTemplate; (const T &); ; Argument[*0]; ReturnValue; value; manual | -| 33 | Summary: ; ; false; pthread_create; ; ; Argument[@3]; Argument[2].Parameter[@0]; value; manual | -| 34 | Summary: ; ; false; ymlStepGenerated; ; ; Argument[0]; ReturnValue; taint; df-generated | -| 35 | Summary: ; ; false; ymlStepManual; ; ; Argument[0]; ReturnValue; taint; manual | -| 36 | Summary: ; ; false; ymlStepManual_with_body; ; ; Argument[0]; ReturnValue; taint; manual | -| 37 | Summary: boost::asio; ; false; buffer; ; ; Argument[*0]; ReturnValue; taint; manual | +| 16 | Source: ; ; false; WinHttpQueryHeaders; ; ; Argument[*3]; remote; manual | +| 17 | Source: ; ; false; WinHttpQueryHeadersEx; ; ; Argument[**8]; remote; manual | +| 18 | Source: ; ; false; WinHttpQueryHeadersEx; ; ; Argument[*5]; remote; manual | +| 19 | Source: ; ; false; WinHttpQueryHeadersEx; ; ; Argument[*6]; remote; manual | +| 20 | Source: ; ; false; WinHttpReadData; ; ; Argument[*1]; remote; manual | +| 21 | Source: ; ; false; WinHttpReadDataEx; ; ; Argument[*1]; remote; manual | +| 22 | Source: ; ; false; ymlSource; ; ; ReturnValue; local; manual | +| 23 | Source: Azure::Core::Http; RawResponse; true; ExtractBodyStream; ; ; ReturnValue[*]; remote; manual | +| 24 | Source: Azure::Core::Http; RawResponse; true; GetBody; ; ; ReturnValue[*]; remote; manual | +| 25 | Source: Azure::Core::Http; RawResponse; true; GetHeaders; ; ; ReturnValue[*]; remote; manual | +| 26 | Source: Azure::Core::Http; Request; true; GetBodyStream; ; ; ReturnValue[*]; remote; manual | +| 27 | Source: Azure::Core::Http; Request; true; GetHeader; ; ; ReturnValue; remote; manual | +| 28 | Source: Azure::Core::Http; Request; true; GetHeaders; ; ; ReturnValue; remote; manual | +| 29 | Source: boost::asio; ; false; read_until; ; ; Argument[*1]; remote; manual | +| 30 | Summary: ; ; false; CommandLineToArgvA; ; ; Argument[*0]; ReturnValue[**]; taint; manual | +| 31 | Summary: ; ; false; CreateRemoteThread; ; ; Argument[@4]; Argument[3].Parameter[@0]; value; manual | +| 32 | Summary: ; ; false; CreateRemoteThreadEx; ; ; Argument[@4]; Argument[3].Parameter[@0]; value; manual | +| 33 | Summary: ; ; false; CreateThread; ; ; Argument[@3]; Argument[2].Parameter[@0]; value; manual | +| 34 | Summary: ; ; false; ReadFileEx; ; ; Argument[*3].Field[@hEvent]; Argument[4].Parameter[*2].Field[@hEvent]; value; manual | +| 35 | Summary: ; ; false; RtlCopyDeviceMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 36 | Summary: ; ; false; RtlCopyMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 37 | Summary: ; ; false; RtlCopyMemoryNonTemporal; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 38 | Summary: ; ; false; RtlCopyUnicodeString; ; ; Argument[*1].Field[*Buffer]; Argument[*0].Field[*Buffer]; value; manual | +| 39 | Summary: ; ; false; RtlCopyVolatileMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 40 | Summary: ; ; false; RtlInitUnicodeString; ; ; Argument[*1]; Argument[*0].Field[*Buffer]; value; manual | +| 41 | Summary: ; ; false; RtlMoveMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 42 | Summary: ; ; false; RtlMoveVolatileMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 43 | Summary: ; ; false; WinHttpCrackUrl; ; ; Argument[*0]; Argument[*3]; taint; manual | +| 44 | Summary: ; ; false; callWithArgument; ; ; Argument[1]; Argument[0].Parameter[0]; value; manual | +| 45 | Summary: ; ; false; callWithNonTypeTemplate; (const T &); ; Argument[*0]; ReturnValue; value; manual | +| 46 | Summary: ; ; false; pthread_create; ; ; Argument[@3]; Argument[2].Parameter[@0]; value; manual | +| 47 | Summary: ; ; false; ymlStepGenerated; ; ; Argument[0]; ReturnValue; taint; df-generated | +| 48 | Summary: ; ; false; ymlStepManual; ; ; Argument[0]; ReturnValue; taint; manual | +| 49 | Summary: ; ; false; ymlStepManual_with_body; ; ; Argument[0]; ReturnValue; taint; manual | +| 50 | Summary: Azure::Core::IO; BodyStream; true; Read; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 51 | Summary: Azure::Core::IO; BodyStream; true; ReadToCount; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 52 | Summary: Azure::Core::IO; BodyStream; true; ReadToEnd; ; ; Argument[-1]; ReturnValue.Element; taint; manual | +| 53 | Summary: Azure; Nullable; true; Value; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 54 | Summary: boost::asio; ; false; buffer; ; ; Argument[*0]; ReturnValue; taint; manual | edges -| asio_streams.cpp:56:18:56:23 | [summary param] *0 in buffer | asio_streams.cpp:56:18:56:23 | [summary] to write: ReturnValue in buffer | provenance | MaD:37 | -| asio_streams.cpp:87:34:87:44 | read_until output argument | asio_streams.cpp:91:7:91:17 | recv_buffer | provenance | Src:MaD:17 | -| asio_streams.cpp:87:34:87:44 | read_until output argument | asio_streams.cpp:93:29:93:39 | *recv_buffer | provenance | Src:MaD:17 Sink:MaD:2 | +| asio_streams.cpp:56:18:56:23 | [summary param] *0 in buffer | asio_streams.cpp:56:18:56:23 | [summary] to write: ReturnValue in buffer | provenance | MaD:54 | +| asio_streams.cpp:87:34:87:44 | read_until output argument | asio_streams.cpp:91:7:91:17 | recv_buffer | provenance | Src:MaD:29 | +| asio_streams.cpp:87:34:87:44 | read_until output argument | asio_streams.cpp:93:29:93:39 | *recv_buffer | provenance | Src:MaD:29 Sink:MaD:2 | | asio_streams.cpp:97:37:97:44 | call to source | asio_streams.cpp:98:7:98:14 | send_str | provenance | TaintFunction | | asio_streams.cpp:97:37:97:44 | call to source | asio_streams.cpp:100:64:100:71 | *send_str | provenance | TaintFunction | | asio_streams.cpp:100:44:100:62 | call to buffer | asio_streams.cpp:100:44:100:62 | call to buffer | provenance | | | asio_streams.cpp:100:44:100:62 | call to buffer | asio_streams.cpp:101:7:101:17 | send_buffer | provenance | | | asio_streams.cpp:100:44:100:62 | call to buffer | asio_streams.cpp:103:29:103:39 | *send_buffer | provenance | Sink:MaD:2 | | asio_streams.cpp:100:64:100:71 | *send_str | asio_streams.cpp:56:18:56:23 | [summary param] *0 in buffer | provenance | | -| asio_streams.cpp:100:64:100:71 | *send_str | asio_streams.cpp:100:44:100:62 | call to buffer | provenance | MaD:37 | -| test.cpp:4:5:4:17 | [summary param] 0 in ymlStepManual | test.cpp:4:5:4:17 | [summary] to write: ReturnValue in ymlStepManual | provenance | MaD:35 | -| test.cpp:5:5:5:20 | [summary param] 0 in ymlStepGenerated | test.cpp:5:5:5:20 | [summary] to write: ReturnValue in ymlStepGenerated | provenance | MaD:34 | -| test.cpp:6:5:6:27 | [summary param] 0 in ymlStepManual_with_body | test.cpp:6:5:6:27 | [summary] to write: ReturnValue in ymlStepManual_with_body | provenance | MaD:36 | +| asio_streams.cpp:100:64:100:71 | *send_str | asio_streams.cpp:100:44:100:62 | call to buffer | provenance | MaD:54 | +| azure.cpp:62:10:62:14 | [summary param] this in Value | azure.cpp:62:10:62:14 | [summary] to write: ReturnValue[*] in Value | provenance | MaD:53 | +| azure.cpp:113:16:113:19 | [summary param] this in Read | azure.cpp:113:16:113:19 | [summary param] *0 in Read [Return] | provenance | MaD:50 | +| azure.cpp:114:16:114:26 | [summary param] this in ReadToCount | azure.cpp:114:16:114:26 | [summary param] *0 in ReadToCount [Return] | provenance | MaD:51 | +| azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | azure.cpp:115:30:115:38 | [summary] to write: ReturnValue.Element in ReadToEnd | provenance | MaD:52 | +| azure.cpp:115:30:115:38 | [summary] to write: ReturnValue.Element in ReadToEnd | azure.cpp:115:30:115:38 | [summary] to write: ReturnValue in ReadToEnd [element] | provenance | | +| azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:253:48:253:60 | *call to GetBodyStream | provenance | Src:MaD:26 | +| azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:257:5:257:8 | *resp | provenance | | +| azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:262:5:262:8 | *resp | provenance | | +| azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:266:38:266:41 | *resp | provenance | | +| azure.cpp:257:5:257:8 | *resp | azure.cpp:113:16:113:19 | [summary param] this in Read | provenance | | +| azure.cpp:257:5:257:8 | *resp | azure.cpp:257:16:257:21 | Read output argument | provenance | MaD:50 | +| azure.cpp:257:16:257:21 | Read output argument | azure.cpp:258:10:258:16 | * ... | provenance | | +| azure.cpp:262:5:262:8 | *resp | azure.cpp:114:16:114:26 | [summary param] this in ReadToCount | provenance | | +| azure.cpp:262:5:262:8 | *resp | azure.cpp:262:23:262:28 | ReadToCount output argument | provenance | MaD:51 | +| azure.cpp:262:23:262:28 | ReadToCount output argument | azure.cpp:263:10:263:16 | * ... | provenance | | +| azure.cpp:266:38:266:41 | *resp | azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | provenance | | +| azure.cpp:266:38:266:41 | *resp | azure.cpp:266:44:266:52 | call to ReadToEnd [element] | provenance | MaD:52 | +| azure.cpp:266:44:266:52 | call to ReadToEnd [element] | azure.cpp:266:44:266:52 | call to ReadToEnd [element] | provenance | | +| azure.cpp:266:44:266:52 | call to ReadToEnd [element] | azure.cpp:267:10:267:12 | vec [element] | provenance | | +| azure.cpp:267:10:267:12 | vec [element] | azure.cpp:267:10:267:12 | vec | provenance | | +| azure.cpp:273:62:273:64 | call to GetHeaders | azure.cpp:273:62:273:64 | call to GetHeaders | provenance | Src:MaD:25 | +| azure.cpp:273:62:273:64 | call to GetHeaders | azure.cpp:274:14:274:29 | call to operator[] | provenance | TaintFunction | +| azure.cpp:273:62:273:64 | call to GetHeaders | azure.cpp:274:14:274:29 | call to operator[] | provenance | TaintFunction | +| azure.cpp:273:62:273:64 | call to GetHeaders | azure.cpp:274:14:274:29 | call to operator[] | provenance | TaintFunction | +| azure.cpp:274:14:274:29 | call to operator[] | azure.cpp:274:10:274:29 | call to operator[] | provenance | | +| azure.cpp:274:14:274:29 | call to operator[] | azure.cpp:274:14:274:29 | call to operator[] | provenance | | +| azure.cpp:277:45:277:47 | call to GetBody | azure.cpp:277:45:277:47 | call to GetBody | provenance | Src:MaD:24 | +| azure.cpp:277:45:277:47 | call to GetBody | azure.cpp:278:10:278:13 | body | provenance | | +| azure.cpp:277:45:277:47 | call to GetBody | azure.cpp:278:10:278:13 | body | provenance | | +| azure.cpp:278:10:278:13 | body | azure.cpp:278:10:278:13 | body | provenance | | +| azure.cpp:281:68:281:84 | *call to ExtractBodyStream | azure.cpp:281:68:281:84 | *call to ExtractBodyStream | provenance | Src:MaD:23 | +| azure.cpp:281:68:281:84 | *call to ExtractBodyStream | azure.cpp:282:21:282:23 | *call to get | provenance | | +| azure.cpp:282:21:282:23 | *call to get | azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | provenance | | +| azure.cpp:282:21:282:23 | *call to get | azure.cpp:282:28:282:36 | call to ReadToEnd [element] | provenance | MaD:52 | +| azure.cpp:282:28:282:36 | call to ReadToEnd [element] | azure.cpp:282:10:282:38 | call to ReadToEnd | provenance | | +| azure.cpp:282:28:282:36 | call to ReadToEnd [element] | azure.cpp:282:28:282:36 | call to ReadToEnd [element] | provenance | | +| azure.cpp:289:24:289:56 | call to GetHeader | azure.cpp:62:10:62:14 | [summary param] this in Value | provenance | | +| azure.cpp:289:24:289:56 | call to GetHeader | azure.cpp:289:63:289:65 | call to Value | provenance | MaD:53 | +| azure.cpp:289:32:289:40 | call to GetHeader | azure.cpp:289:24:289:56 | call to GetHeader | provenance | | +| azure.cpp:289:32:289:40 | call to GetHeader | azure.cpp:289:32:289:40 | call to GetHeader | provenance | Src:MaD:27 | +| azure.cpp:289:63:289:65 | call to Value | azure.cpp:289:63:289:65 | call to Value | provenance | | +| azure.cpp:289:63:289:65 | call to Value | azure.cpp:290:10:290:20 | headerValue | provenance | | +| azure.cpp:289:63:289:65 | call to Value | azure.cpp:290:10:290:20 | headerValue | provenance | | +| azure.cpp:290:10:290:20 | headerValue | azure.cpp:290:10:290:20 | headerValue | provenance | | +| azure.cpp:293:58:293:67 | call to GetHeaders | azure.cpp:293:58:293:67 | call to GetHeaders | provenance | Src:MaD:28 | +| azure.cpp:293:58:293:67 | call to GetHeaders | azure.cpp:294:38:294:53 | call to operator[] | provenance | TaintFunction | +| azure.cpp:294:38:294:53 | call to operator[] | azure.cpp:295:10:295:20 | contentType | provenance | | +| azure.cpp:294:38:294:53 | call to operator[] | azure.cpp:295:10:295:20 | contentType | provenance | | +| azure.cpp:295:10:295:20 | contentType | azure.cpp:295:10:295:20 | contentType | provenance | | +| test.cpp:4:5:4:17 | [summary param] 0 in ymlStepManual | test.cpp:4:5:4:17 | [summary] to write: ReturnValue in ymlStepManual | provenance | MaD:48 | +| test.cpp:5:5:5:20 | [summary param] 0 in ymlStepGenerated | test.cpp:5:5:5:20 | [summary] to write: ReturnValue in ymlStepGenerated | provenance | MaD:47 | +| test.cpp:6:5:6:27 | [summary param] 0 in ymlStepManual_with_body | test.cpp:6:5:6:27 | [summary] to write: ReturnValue in ymlStepManual_with_body | provenance | MaD:49 | | test.cpp:7:47:7:52 | value2 | test.cpp:7:64:7:69 | value2 | provenance | | | test.cpp:7:64:7:69 | value2 | test.cpp:7:5:7:30 | *ymlStepGenerated_with_body | provenance | | -| test.cpp:10:10:10:18 | call to ymlSource | test.cpp:10:10:10:18 | call to ymlSource | provenance | Src:MaD:16 | +| test.cpp:10:10:10:18 | call to ymlSource | test.cpp:10:10:10:18 | call to ymlSource | provenance | Src:MaD:22 | | test.cpp:10:10:10:18 | call to ymlSource | test.cpp:14:10:14:10 | x | provenance | Sink:MaD:1 | | test.cpp:10:10:10:18 | call to ymlSource | test.cpp:17:24:17:24 | x | provenance | | | test.cpp:10:10:10:18 | call to ymlSource | test.cpp:21:27:21:27 | x | provenance | | @@ -61,15 +127,15 @@ edges | test.cpp:17:10:17:22 | call to ymlStepManual | test.cpp:17:10:17:22 | call to ymlStepManual | provenance | | | test.cpp:17:10:17:22 | call to ymlStepManual | test.cpp:18:10:18:10 | y | provenance | Sink:MaD:1 | | test.cpp:17:24:17:24 | x | test.cpp:4:5:4:17 | [summary param] 0 in ymlStepManual | provenance | | -| test.cpp:17:24:17:24 | x | test.cpp:17:10:17:22 | call to ymlStepManual | provenance | MaD:35 | +| test.cpp:17:24:17:24 | x | test.cpp:17:10:17:22 | call to ymlStepManual | provenance | MaD:48 | | test.cpp:21:10:21:25 | call to ymlStepGenerated | test.cpp:21:10:21:25 | call to ymlStepGenerated | provenance | | | test.cpp:21:10:21:25 | call to ymlStepGenerated | test.cpp:22:10:22:10 | z | provenance | Sink:MaD:1 | | test.cpp:21:27:21:27 | x | test.cpp:5:5:5:20 | [summary param] 0 in ymlStepGenerated | provenance | | -| test.cpp:21:27:21:27 | x | test.cpp:21:10:21:25 | call to ymlStepGenerated | provenance | MaD:34 | +| test.cpp:21:27:21:27 | x | test.cpp:21:10:21:25 | call to ymlStepGenerated | provenance | MaD:47 | | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | provenance | | | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | test.cpp:26:10:26:11 | y2 | provenance | Sink:MaD:1 | | test.cpp:25:35:25:35 | x | test.cpp:6:5:6:27 | [summary param] 0 in ymlStepManual_with_body | provenance | | -| test.cpp:25:35:25:35 | x | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | provenance | MaD:36 | +| test.cpp:25:35:25:35 | x | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | provenance | MaD:49 | | test.cpp:32:11:32:36 | call to ymlStepGenerated_with_body | test.cpp:32:11:32:36 | call to ymlStepGenerated_with_body | provenance | | | test.cpp:32:11:32:36 | call to ymlStepGenerated_with_body | test.cpp:33:10:33:11 | z2 | provenance | Sink:MaD:1 | | test.cpp:32:41:32:41 | x | test.cpp:7:47:7:52 | value2 | provenance | | @@ -77,16 +143,16 @@ edges | test.cpp:46:30:46:32 | *arg [x] | test.cpp:47:12:47:19 | *arg [x] | provenance | | | test.cpp:47:12:47:19 | *arg [x] | test.cpp:48:13:48:13 | *s [x] | provenance | | | test.cpp:48:13:48:13 | *s [x] | test.cpp:48:16:48:16 | x | provenance | Sink:MaD:1 | -| test.cpp:52:5:52:18 | [summary param] *3 in pthread_create [x] | test.cpp:52:5:52:18 | [summary] to write: Argument[2].Parameter[*0] in pthread_create [x] | provenance | MaD:33 | +| test.cpp:52:5:52:18 | [summary param] *3 in pthread_create [x] | test.cpp:52:5:52:18 | [summary] to write: Argument[2].Parameter[*0] in pthread_create [x] | provenance | MaD:46 | | test.cpp:52:5:52:18 | [summary] to write: Argument[2].Parameter[*0] in pthread_create [x] | test.cpp:46:30:46:32 | *arg [x] | provenance | | | test.cpp:56:2:56:2 | *s [post update] [x] | test.cpp:59:55:59:64 | *& ... [x] | provenance | | | test.cpp:56:2:56:18 | ... = ... | test.cpp:56:2:56:2 | *s [post update] [x] | provenance | | -| test.cpp:56:8:56:16 | call to ymlSource | test.cpp:56:2:56:18 | ... = ... | provenance | Src:MaD:16 | +| test.cpp:56:8:56:16 | call to ymlSource | test.cpp:56:2:56:18 | ... = ... | provenance | Src:MaD:22 | | test.cpp:59:55:59:64 | *& ... [x] | test.cpp:52:5:52:18 | [summary param] *3 in pthread_create [x] | provenance | | -| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:31 | -| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:31 | -| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:31 | -| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:31 | +| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:44 | +| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:44 | +| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:44 | +| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:44 | | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | test.cpp:68:22:68:22 | y | provenance | | | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | test.cpp:74:22:74:22 | y | provenance | | | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | test.cpp:82:22:82:22 | y | provenance | | @@ -95,7 +161,7 @@ edges | test.cpp:74:22:74:22 | y | test.cpp:75:11:75:11 | y | provenance | Sink:MaD:1 | | test.cpp:82:22:82:22 | y | test.cpp:83:11:83:11 | y | provenance | Sink:MaD:1 | | test.cpp:88:22:88:22 | y | test.cpp:89:11:89:11 | y | provenance | Sink:MaD:1 | -| test.cpp:94:10:94:18 | call to ymlSource | test.cpp:94:10:94:18 | call to ymlSource | provenance | Src:MaD:16 | +| test.cpp:94:10:94:18 | call to ymlSource | test.cpp:94:10:94:18 | call to ymlSource | provenance | Src:MaD:22 | | test.cpp:94:10:94:18 | call to ymlSource | test.cpp:97:26:97:26 | x | provenance | | | test.cpp:94:10:94:18 | call to ymlSource | test.cpp:101:26:101:26 | x | provenance | | | test.cpp:94:10:94:18 | call to ymlSource | test.cpp:103:63:103:63 | x | provenance | | @@ -104,28 +170,28 @@ edges | test.cpp:101:26:101:26 | x | test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | provenance | | | test.cpp:103:63:103:63 | x | test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | provenance | | | test.cpp:104:62:104:62 | x | test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | provenance | | -| test.cpp:111:3:111:25 | [summary param] *0 in callWithNonTypeTemplate | test.cpp:111:3:111:25 | [summary] to write: ReturnValue in callWithNonTypeTemplate | provenance | MaD:32 | -| test.cpp:114:10:114:18 | call to ymlSource | test.cpp:114:10:114:18 | call to ymlSource | provenance | Src:MaD:16 | +| test.cpp:111:3:111:25 | [summary param] *0 in callWithNonTypeTemplate | test.cpp:111:3:111:25 | [summary] to write: ReturnValue in callWithNonTypeTemplate | provenance | MaD:45 | +| test.cpp:114:10:114:18 | call to ymlSource | test.cpp:114:10:114:18 | call to ymlSource | provenance | Src:MaD:22 | | test.cpp:114:10:114:18 | call to ymlSource | test.cpp:118:44:118:44 | *x | provenance | | | test.cpp:118:11:118:42 | call to callWithNonTypeTemplate | test.cpp:118:11:118:42 | call to callWithNonTypeTemplate | provenance | | | test.cpp:118:11:118:42 | call to callWithNonTypeTemplate | test.cpp:119:10:119:11 | y2 | provenance | Sink:MaD:1 | | test.cpp:118:44:118:44 | *x | test.cpp:111:3:111:25 | [summary param] *0 in callWithNonTypeTemplate | provenance | | -| test.cpp:118:44:118:44 | *x | test.cpp:118:11:118:42 | call to callWithNonTypeTemplate | provenance | MaD:32 | -| windows.cpp:17:8:17:25 | [summary param] *0 in CommandLineToArgvA | windows.cpp:17:8:17:25 | [summary] to write: ReturnValue[**] in CommandLineToArgvA | provenance | MaD:18 | +| test.cpp:118:44:118:44 | *x | test.cpp:118:11:118:42 | call to callWithNonTypeTemplate | provenance | MaD:45 | +| windows.cpp:17:8:17:25 | [summary param] *0 in CommandLineToArgvA | windows.cpp:17:8:17:25 | [summary] to write: ReturnValue[**] in CommandLineToArgvA | provenance | MaD:30 | | windows.cpp:22:15:22:29 | *call to GetCommandLineA | windows.cpp:22:15:22:29 | *call to GetCommandLineA | provenance | Src:MaD:3 | | windows.cpp:22:15:22:29 | *call to GetCommandLineA | windows.cpp:24:8:24:11 | * ... | provenance | | | windows.cpp:22:15:22:29 | *call to GetCommandLineA | windows.cpp:27:36:27:38 | *cmd | provenance | | | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | provenance | | | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | windows.cpp:30:8:30:15 | * ... | provenance | | | windows.cpp:27:36:27:38 | *cmd | windows.cpp:17:8:17:25 | [summary param] *0 in CommandLineToArgvA | provenance | | -| windows.cpp:27:36:27:38 | *cmd | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | provenance | MaD:18 | +| windows.cpp:27:36:27:38 | *cmd | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | provenance | MaD:30 | | windows.cpp:34:17:34:38 | *call to GetEnvironmentStringsA | windows.cpp:34:17:34:38 | *call to GetEnvironmentStringsA | provenance | Src:MaD:4 | | windows.cpp:34:17:34:38 | *call to GetEnvironmentStringsA | windows.cpp:36:10:36:13 | * ... | provenance | | | windows.cpp:39:36:39:38 | GetEnvironmentVariableA output argument | windows.cpp:41:10:41:13 | * ... | provenance | Src:MaD:5 | | windows.cpp:90:6:90:15 | [summary param] *3 in ReadFileEx [*hEvent] | windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[*hEvent] in ReadFileEx | provenance | | | windows.cpp:90:6:90:15 | [summary param] *3 in ReadFileEx [hEvent] | windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[hEvent] in ReadFileEx | provenance | | -| windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[*hEvent] in ReadFileEx | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2].Field[*hEvent] in ReadFileEx | provenance | MaD:22 | -| windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[hEvent] in ReadFileEx | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2].Field[hEvent] in ReadFileEx | provenance | MaD:22 | +| windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[*hEvent] in ReadFileEx | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2].Field[*hEvent] in ReadFileEx | provenance | MaD:34 | +| windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[hEvent] in ReadFileEx | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2].Field[hEvent] in ReadFileEx | provenance | MaD:34 | | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2] in ReadFileEx [*hEvent] | windows.cpp:147:16:147:27 | *lpOverlapped [*hEvent] | provenance | | | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2] in ReadFileEx [hEvent] | windows.cpp:157:16:157:27 | *lpOverlapped [hEvent] | provenance | | | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2].Field[*hEvent] in ReadFileEx | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2] in ReadFileEx [*hEvent] | provenance | | @@ -173,11 +239,11 @@ edges | windows.cpp:332:23:332:40 | *call to MapViewOfFileNuma2 | windows.cpp:332:23:332:40 | *call to MapViewOfFileNuma2 | provenance | Src:MaD:12 | | windows.cpp:332:23:332:40 | *call to MapViewOfFileNuma2 | windows.cpp:333:20:333:52 | *pMapView | provenance | | | windows.cpp:333:20:333:52 | *pMapView | windows.cpp:335:10:335:16 | * ... | provenance | | -| windows.cpp:349:8:349:19 | [summary param] *3 in CreateThread [x] | windows.cpp:349:8:349:19 | [summary] to write: Argument[2].Parameter[*0] in CreateThread [x] | provenance | MaD:21 | +| windows.cpp:349:8:349:19 | [summary param] *3 in CreateThread [x] | windows.cpp:349:8:349:19 | [summary] to write: Argument[2].Parameter[*0] in CreateThread [x] | provenance | MaD:33 | | windows.cpp:349:8:349:19 | [summary] to write: Argument[2].Parameter[*0] in CreateThread [x] | windows.cpp:403:26:403:36 | *lpParameter [x] | provenance | | -| windows.cpp:357:8:357:25 | [summary param] *4 in CreateRemoteThread [x] | windows.cpp:357:8:357:25 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThread [x] | provenance | MaD:19 | +| windows.cpp:357:8:357:25 | [summary param] *4 in CreateRemoteThread [x] | windows.cpp:357:8:357:25 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThread [x] | provenance | MaD:31 | | windows.cpp:357:8:357:25 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThread [x] | windows.cpp:410:26:410:36 | *lpParameter [x] | provenance | | -| windows.cpp:387:8:387:27 | [summary param] *4 in CreateRemoteThreadEx [x] | windows.cpp:387:8:387:27 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThreadEx [x] | provenance | MaD:20 | +| windows.cpp:387:8:387:27 | [summary param] *4 in CreateRemoteThreadEx [x] | windows.cpp:387:8:387:27 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThreadEx [x] | provenance | MaD:32 | | windows.cpp:387:8:387:27 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThreadEx [x] | windows.cpp:417:26:417:36 | *lpParameter [x] | provenance | | | windows.cpp:403:26:403:36 | *lpParameter [x] | windows.cpp:405:10:405:25 | *lpParameter [x] | provenance | | | windows.cpp:405:10:405:25 | *lpParameter [x] | windows.cpp:406:8:406:8 | *s [x] | provenance | | @@ -196,17 +262,17 @@ edges | windows.cpp:439:7:439:8 | *& ... [x] | windows.cpp:349:8:349:19 | [summary param] *3 in CreateThread [x] | provenance | | | windows.cpp:451:7:451:8 | *& ... [x] | windows.cpp:357:8:357:25 | [summary param] *4 in CreateRemoteThread [x] | provenance | | | windows.cpp:464:7:464:8 | *& ... [x] | windows.cpp:387:8:387:27 | [summary param] *4 in CreateRemoteThreadEx [x] | provenance | | -| windows.cpp:473:17:473:37 | [summary param] *1 in RtlCopyVolatileMemory | windows.cpp:473:17:473:37 | [summary param] *0 in RtlCopyVolatileMemory [Return] | provenance | MaD:27 | -| windows.cpp:479:17:479:35 | [summary param] *1 in RtlCopyDeviceMemory | windows.cpp:479:17:479:35 | [summary param] *0 in RtlCopyDeviceMemory [Return] | provenance | MaD:23 | -| windows.cpp:485:6:485:18 | [summary param] *1 in RtlCopyMemory | windows.cpp:485:6:485:18 | [summary param] *0 in RtlCopyMemory [Return] | provenance | MaD:24 | -| windows.cpp:493:6:493:29 | [summary param] *1 in RtlCopyMemoryNonTemporal | windows.cpp:493:6:493:29 | [summary param] *0 in RtlCopyMemoryNonTemporal [Return] | provenance | MaD:25 | +| windows.cpp:473:17:473:37 | [summary param] *1 in RtlCopyVolatileMemory | windows.cpp:473:17:473:37 | [summary param] *0 in RtlCopyVolatileMemory [Return] | provenance | MaD:39 | +| windows.cpp:479:17:479:35 | [summary param] *1 in RtlCopyDeviceMemory | windows.cpp:479:17:479:35 | [summary param] *0 in RtlCopyDeviceMemory [Return] | provenance | MaD:35 | +| windows.cpp:485:6:485:18 | [summary param] *1 in RtlCopyMemory | windows.cpp:485:6:485:18 | [summary param] *0 in RtlCopyMemory [Return] | provenance | MaD:36 | +| windows.cpp:493:6:493:29 | [summary param] *1 in RtlCopyMemoryNonTemporal | windows.cpp:493:6:493:29 | [summary param] *0 in RtlCopyMemoryNonTemporal [Return] | provenance | MaD:37 | | windows.cpp:510:6:510:25 | [summary param] *1 in RtlCopyUnicodeString [*Buffer] | windows.cpp:510:6:510:25 | [summary] read: Argument[*1].Field[*Buffer] in RtlCopyUnicodeString | provenance | | -| windows.cpp:510:6:510:25 | [summary] read: Argument[*1].Field[*Buffer] in RtlCopyUnicodeString | windows.cpp:510:6:510:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlCopyUnicodeString | provenance | MaD:26 | +| windows.cpp:510:6:510:25 | [summary] read: Argument[*1].Field[*Buffer] in RtlCopyUnicodeString | windows.cpp:510:6:510:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlCopyUnicodeString | provenance | MaD:38 | | windows.cpp:510:6:510:25 | [summary] to write: Argument[*0] in RtlCopyUnicodeString [*Buffer] | windows.cpp:510:6:510:25 | [summary param] *0 in RtlCopyUnicodeString [Return] [*Buffer] | provenance | | | windows.cpp:510:6:510:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlCopyUnicodeString | windows.cpp:510:6:510:25 | [summary] to write: Argument[*0] in RtlCopyUnicodeString [*Buffer] | provenance | | -| windows.cpp:515:6:515:18 | [summary param] *1 in RtlMoveMemory | windows.cpp:515:6:515:18 | [summary param] *0 in RtlMoveMemory [Return] | provenance | MaD:29 | -| windows.cpp:521:17:521:37 | [summary param] *1 in RtlMoveVolatileMemory | windows.cpp:521:17:521:37 | [summary param] *0 in RtlMoveVolatileMemory [Return] | provenance | MaD:30 | -| windows.cpp:527:6:527:25 | [summary param] *1 in RtlInitUnicodeString | windows.cpp:527:6:527:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlInitUnicodeString | provenance | MaD:28 | +| windows.cpp:515:6:515:18 | [summary param] *1 in RtlMoveMemory | windows.cpp:515:6:515:18 | [summary param] *0 in RtlMoveMemory [Return] | provenance | MaD:41 | +| windows.cpp:521:17:521:37 | [summary param] *1 in RtlMoveVolatileMemory | windows.cpp:521:17:521:37 | [summary param] *0 in RtlMoveVolatileMemory [Return] | provenance | MaD:42 | +| windows.cpp:527:6:527:25 | [summary param] *1 in RtlInitUnicodeString | windows.cpp:527:6:527:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlInitUnicodeString | provenance | MaD:40 | | windows.cpp:527:6:527:25 | [summary] to write: Argument[*0] in RtlInitUnicodeString [*Buffer] | windows.cpp:527:6:527:25 | [summary param] *0 in RtlInitUnicodeString [Return] [*Buffer] | provenance | | | windows.cpp:527:6:527:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlInitUnicodeString | windows.cpp:527:6:527:25 | [summary] to write: Argument[*0] in RtlInitUnicodeString [*Buffer] | provenance | | | windows.cpp:533:11:533:16 | call to source | windows.cpp:533:11:533:16 | call to source | provenance | | @@ -218,37 +284,51 @@ edges | windows.cpp:533:11:533:16 | call to source | windows.cpp:573:40:573:41 | *& ... | provenance | | | windows.cpp:537:27:537:37 | RtlCopyVolatileMemory output argument | windows.cpp:538:10:538:23 | access to array | provenance | | | windows.cpp:537:40:537:41 | *& ... | windows.cpp:473:17:473:37 | [summary param] *1 in RtlCopyVolatileMemory | provenance | | -| windows.cpp:537:40:537:41 | *& ... | windows.cpp:537:27:537:37 | RtlCopyVolatileMemory output argument | provenance | MaD:27 | +| windows.cpp:537:40:537:41 | *& ... | windows.cpp:537:27:537:37 | RtlCopyVolatileMemory output argument | provenance | MaD:39 | | windows.cpp:542:25:542:35 | RtlCopyDeviceMemory output argument | windows.cpp:543:10:543:23 | access to array | provenance | | | windows.cpp:542:38:542:39 | *& ... | windows.cpp:479:17:479:35 | [summary param] *1 in RtlCopyDeviceMemory | provenance | | -| windows.cpp:542:38:542:39 | *& ... | windows.cpp:542:25:542:35 | RtlCopyDeviceMemory output argument | provenance | MaD:23 | +| windows.cpp:542:38:542:39 | *& ... | windows.cpp:542:25:542:35 | RtlCopyDeviceMemory output argument | provenance | MaD:35 | | windows.cpp:547:19:547:29 | RtlCopyMemory output argument | windows.cpp:548:10:548:23 | access to array | provenance | | | windows.cpp:547:32:547:33 | *& ... | windows.cpp:485:6:485:18 | [summary param] *1 in RtlCopyMemory | provenance | | -| windows.cpp:547:32:547:33 | *& ... | windows.cpp:547:19:547:29 | RtlCopyMemory output argument | provenance | MaD:24 | +| windows.cpp:547:32:547:33 | *& ... | windows.cpp:547:19:547:29 | RtlCopyMemory output argument | provenance | MaD:36 | | windows.cpp:552:30:552:40 | RtlCopyMemoryNonTemporal output argument | windows.cpp:553:10:553:23 | access to array | provenance | | | windows.cpp:552:43:552:44 | *& ... | windows.cpp:493:6:493:29 | [summary param] *1 in RtlCopyMemoryNonTemporal | provenance | | -| windows.cpp:552:43:552:44 | *& ... | windows.cpp:552:30:552:40 | RtlCopyMemoryNonTemporal output argument | provenance | MaD:25 | +| windows.cpp:552:43:552:44 | *& ... | windows.cpp:552:30:552:40 | RtlCopyMemoryNonTemporal output argument | provenance | MaD:37 | | windows.cpp:559:5:559:24 | ... = ... | windows.cpp:561:39:561:44 | *buffer | provenance | | | windows.cpp:559:17:559:24 | call to source | windows.cpp:559:5:559:24 | ... = ... | provenance | | | windows.cpp:561:26:561:36 | RtlInitUnicodeString output argument [*Buffer] | windows.cpp:562:10:562:19 | *src_string [*Buffer] | provenance | | | windows.cpp:561:26:561:36 | RtlInitUnicodeString output argument [*Buffer] | windows.cpp:563:40:563:50 | *& ... [*Buffer] | provenance | | | windows.cpp:561:39:561:44 | *buffer | windows.cpp:527:6:527:25 | [summary param] *1 in RtlInitUnicodeString | provenance | | -| windows.cpp:561:39:561:44 | *buffer | windows.cpp:561:26:561:36 | RtlInitUnicodeString output argument [*Buffer] | provenance | MaD:28 | +| windows.cpp:561:39:561:44 | *buffer | windows.cpp:561:26:561:36 | RtlInitUnicodeString output argument [*Buffer] | provenance | MaD:40 | | windows.cpp:562:10:562:19 | *src_string [*Buffer] | windows.cpp:562:10:562:29 | access to array | provenance | | | windows.cpp:562:10:562:19 | *src_string [*Buffer] | windows.cpp:562:21:562:26 | *Buffer | provenance | | | windows.cpp:562:21:562:26 | *Buffer | windows.cpp:562:10:562:29 | access to array | provenance | | | windows.cpp:563:26:563:37 | RtlCopyUnicodeString output argument [*Buffer] | windows.cpp:564:10:564:20 | *dest_string [*Buffer] | provenance | | | windows.cpp:563:40:563:50 | *& ... [*Buffer] | windows.cpp:510:6:510:25 | [summary param] *1 in RtlCopyUnicodeString [*Buffer] | provenance | | -| windows.cpp:563:40:563:50 | *& ... [*Buffer] | windows.cpp:563:26:563:37 | RtlCopyUnicodeString output argument [*Buffer] | provenance | MaD:26 | +| windows.cpp:563:40:563:50 | *& ... [*Buffer] | windows.cpp:563:26:563:37 | RtlCopyUnicodeString output argument [*Buffer] | provenance | MaD:38 | | windows.cpp:564:10:564:20 | *dest_string [*Buffer] | windows.cpp:564:10:564:30 | access to array | provenance | | | windows.cpp:564:10:564:20 | *dest_string [*Buffer] | windows.cpp:564:22:564:27 | *Buffer | provenance | | | windows.cpp:564:22:564:27 | *Buffer | windows.cpp:564:10:564:30 | access to array | provenance | | | windows.cpp:568:19:568:29 | RtlMoveMemory output argument | windows.cpp:569:10:569:23 | access to array | provenance | | | windows.cpp:568:32:568:33 | *& ... | windows.cpp:515:6:515:18 | [summary param] *1 in RtlMoveMemory | provenance | | -| windows.cpp:568:32:568:33 | *& ... | windows.cpp:568:19:568:29 | RtlMoveMemory output argument | provenance | MaD:29 | +| windows.cpp:568:32:568:33 | *& ... | windows.cpp:568:19:568:29 | RtlMoveMemory output argument | provenance | MaD:41 | | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | windows.cpp:574:10:574:23 | access to array | provenance | | | windows.cpp:573:40:573:41 | *& ... | windows.cpp:521:17:521:37 | [summary param] *1 in RtlMoveVolatileMemory | provenance | | -| windows.cpp:573:40:573:41 | *& ... | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | provenance | MaD:30 | +| windows.cpp:573:40:573:41 | *& ... | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | provenance | MaD:42 | +| windows.cpp:645:45:645:50 | WinHttpReadData output argument | windows.cpp:647:10:647:16 | * ... | provenance | Src:MaD:20 | +| windows.cpp:652:48:652:53 | WinHttpReadDataEx output argument | windows.cpp:654:10:654:16 | * ... | provenance | Src:MaD:21 | +| windows.cpp:659:47:659:52 | WinHttpQueryHeaders output argument | windows.cpp:661:10:661:16 | * ... | provenance | Src:MaD:16 | +| windows.cpp:669:70:669:79 | WinHttpQueryHeadersEx output argument | windows.cpp:673:10:673:29 | * ... | provenance | Src:MaD:18 | +| windows.cpp:669:82:669:87 | WinHttpQueryHeadersEx output argument | windows.cpp:671:10:671:16 | * ... | provenance | Src:MaD:19 | +| windows.cpp:669:105:669:112 | WinHttpQueryHeadersEx output argument | windows.cpp:675:10:675:27 | * ... | provenance | Src:MaD:17 | +| windows.cpp:714:6:714:20 | [summary param] *0 in WinHttpCrackUrl | windows.cpp:714:6:714:20 | [summary param] *3 in WinHttpCrackUrl [Return] | provenance | MaD:43 | +| windows.cpp:728:5:728:28 | ... = ... | windows.cpp:729:35:729:35 | *x | provenance | | +| windows.cpp:728:12:728:28 | call to source | windows.cpp:728:5:728:28 | ... = ... | provenance | | +| windows.cpp:729:35:729:35 | *x | windows.cpp:714:6:714:20 | [summary param] *0 in WinHttpCrackUrl | provenance | | +| windows.cpp:729:35:729:35 | *x | windows.cpp:729:44:729:57 | WinHttpCrackUrl output argument | provenance | MaD:43 | +| windows.cpp:729:44:729:57 | WinHttpCrackUrl output argument | windows.cpp:731:10:731:36 | * ... | provenance | | +| windows.cpp:729:44:729:57 | WinHttpCrackUrl output argument | windows.cpp:733:10:733:35 | * ... | provenance | | +| windows.cpp:729:44:729:57 | WinHttpCrackUrl output argument | windows.cpp:735:10:735:37 | * ... | provenance | | nodes | asio_streams.cpp:56:18:56:23 | [summary param] *0 in buffer | semmle.label | [summary param] *0 in buffer | | asio_streams.cpp:56:18:56:23 | [summary] to write: ReturnValue in buffer | semmle.label | [summary] to write: ReturnValue in buffer | @@ -262,6 +342,59 @@ nodes | asio_streams.cpp:100:64:100:71 | *send_str | semmle.label | *send_str | | asio_streams.cpp:101:7:101:17 | send_buffer | semmle.label | send_buffer | | asio_streams.cpp:103:29:103:39 | *send_buffer | semmle.label | *send_buffer | +| azure.cpp:62:10:62:14 | [summary param] this in Value | semmle.label | [summary param] this in Value | +| azure.cpp:62:10:62:14 | [summary] to write: ReturnValue[*] in Value | semmle.label | [summary] to write: ReturnValue[*] in Value | +| azure.cpp:113:16:113:19 | [summary param] *0 in Read [Return] | semmle.label | [summary param] *0 in Read [Return] | +| azure.cpp:113:16:113:19 | [summary param] this in Read | semmle.label | [summary param] this in Read | +| azure.cpp:114:16:114:26 | [summary param] *0 in ReadToCount [Return] | semmle.label | [summary param] *0 in ReadToCount [Return] | +| azure.cpp:114:16:114:26 | [summary param] this in ReadToCount | semmle.label | [summary param] this in ReadToCount | +| azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | semmle.label | [summary param] this in ReadToEnd | +| azure.cpp:115:30:115:38 | [summary] to write: ReturnValue in ReadToEnd [element] | semmle.label | [summary] to write: ReturnValue in ReadToEnd [element] | +| azure.cpp:115:30:115:38 | [summary] to write: ReturnValue.Element in ReadToEnd | semmle.label | [summary] to write: ReturnValue.Element in ReadToEnd | +| azure.cpp:253:48:253:60 | *call to GetBodyStream | semmle.label | *call to GetBodyStream | +| azure.cpp:253:48:253:60 | *call to GetBodyStream | semmle.label | *call to GetBodyStream | +| azure.cpp:257:5:257:8 | *resp | semmle.label | *resp | +| azure.cpp:257:16:257:21 | Read output argument | semmle.label | Read output argument | +| azure.cpp:258:10:258:16 | * ... | semmle.label | * ... | +| azure.cpp:262:5:262:8 | *resp | semmle.label | *resp | +| azure.cpp:262:23:262:28 | ReadToCount output argument | semmle.label | ReadToCount output argument | +| azure.cpp:263:10:263:16 | * ... | semmle.label | * ... | +| azure.cpp:266:38:266:41 | *resp | semmle.label | *resp | +| azure.cpp:266:44:266:52 | call to ReadToEnd [element] | semmle.label | call to ReadToEnd [element] | +| azure.cpp:266:44:266:52 | call to ReadToEnd [element] | semmle.label | call to ReadToEnd [element] | +| azure.cpp:267:10:267:12 | vec | semmle.label | vec | +| azure.cpp:267:10:267:12 | vec [element] | semmle.label | vec [element] | +| azure.cpp:273:62:273:64 | call to GetHeaders | semmle.label | call to GetHeaders | +| azure.cpp:273:62:273:64 | call to GetHeaders | semmle.label | call to GetHeaders | +| azure.cpp:274:10:274:29 | call to operator[] | semmle.label | call to operator[] | +| azure.cpp:274:14:274:29 | call to operator[] | semmle.label | call to operator[] | +| azure.cpp:274:14:274:29 | call to operator[] | semmle.label | call to operator[] | +| azure.cpp:274:14:274:29 | call to operator[] | semmle.label | call to operator[] | +| azure.cpp:277:45:277:47 | call to GetBody | semmle.label | call to GetBody | +| azure.cpp:277:45:277:47 | call to GetBody | semmle.label | call to GetBody | +| azure.cpp:278:10:278:13 | body | semmle.label | body | +| azure.cpp:278:10:278:13 | body | semmle.label | body | +| azure.cpp:278:10:278:13 | body | semmle.label | body | +| azure.cpp:281:68:281:84 | *call to ExtractBodyStream | semmle.label | *call to ExtractBodyStream | +| azure.cpp:281:68:281:84 | *call to ExtractBodyStream | semmle.label | *call to ExtractBodyStream | +| azure.cpp:282:10:282:38 | call to ReadToEnd | semmle.label | call to ReadToEnd | +| azure.cpp:282:21:282:23 | *call to get | semmle.label | *call to get | +| azure.cpp:282:28:282:36 | call to ReadToEnd [element] | semmle.label | call to ReadToEnd [element] | +| azure.cpp:282:28:282:36 | call to ReadToEnd [element] | semmle.label | call to ReadToEnd [element] | +| azure.cpp:289:24:289:56 | call to GetHeader | semmle.label | call to GetHeader | +| azure.cpp:289:32:289:40 | call to GetHeader | semmle.label | call to GetHeader | +| azure.cpp:289:32:289:40 | call to GetHeader | semmle.label | call to GetHeader | +| azure.cpp:289:63:289:65 | call to Value | semmle.label | call to Value | +| azure.cpp:289:63:289:65 | call to Value | semmle.label | call to Value | +| azure.cpp:290:10:290:20 | headerValue | semmle.label | headerValue | +| azure.cpp:290:10:290:20 | headerValue | semmle.label | headerValue | +| azure.cpp:290:10:290:20 | headerValue | semmle.label | headerValue | +| azure.cpp:293:58:293:67 | call to GetHeaders | semmle.label | call to GetHeaders | +| azure.cpp:293:58:293:67 | call to GetHeaders | semmle.label | call to GetHeaders | +| azure.cpp:294:38:294:53 | call to operator[] | semmle.label | call to operator[] | +| azure.cpp:295:10:295:20 | contentType | semmle.label | contentType | +| azure.cpp:295:10:295:20 | contentType | semmle.label | contentType | +| azure.cpp:295:10:295:20 | contentType | semmle.label | contentType | | test.cpp:4:5:4:17 | [summary param] 0 in ymlStepManual | semmle.label | [summary param] 0 in ymlStepManual | | test.cpp:4:5:4:17 | [summary] to write: ReturnValue in ymlStepManual | semmle.label | [summary] to write: ReturnValue in ymlStepManual | | test.cpp:5:5:5:20 | [summary param] 0 in ymlStepGenerated | semmle.label | [summary param] 0 in ymlStepGenerated | @@ -482,8 +615,34 @@ nodes | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | semmle.label | RtlMoveVolatileMemory output argument | | windows.cpp:573:40:573:41 | *& ... | semmle.label | *& ... | | windows.cpp:574:10:574:23 | access to array | semmle.label | access to array | +| windows.cpp:645:45:645:50 | WinHttpReadData output argument | semmle.label | WinHttpReadData output argument | +| windows.cpp:647:10:647:16 | * ... | semmle.label | * ... | +| windows.cpp:652:48:652:53 | WinHttpReadDataEx output argument | semmle.label | WinHttpReadDataEx output argument | +| windows.cpp:654:10:654:16 | * ... | semmle.label | * ... | +| windows.cpp:659:47:659:52 | WinHttpQueryHeaders output argument | semmle.label | WinHttpQueryHeaders output argument | +| windows.cpp:661:10:661:16 | * ... | semmle.label | * ... | +| windows.cpp:669:70:669:79 | WinHttpQueryHeadersEx output argument | semmle.label | WinHttpQueryHeadersEx output argument | +| windows.cpp:669:82:669:87 | WinHttpQueryHeadersEx output argument | semmle.label | WinHttpQueryHeadersEx output argument | +| windows.cpp:669:105:669:112 | WinHttpQueryHeadersEx output argument | semmle.label | WinHttpQueryHeadersEx output argument | +| windows.cpp:671:10:671:16 | * ... | semmle.label | * ... | +| windows.cpp:673:10:673:29 | * ... | semmle.label | * ... | +| windows.cpp:675:10:675:27 | * ... | semmle.label | * ... | +| windows.cpp:714:6:714:20 | [summary param] *0 in WinHttpCrackUrl | semmle.label | [summary param] *0 in WinHttpCrackUrl | +| windows.cpp:714:6:714:20 | [summary param] *3 in WinHttpCrackUrl [Return] | semmle.label | [summary param] *3 in WinHttpCrackUrl [Return] | +| windows.cpp:728:5:728:28 | ... = ... | semmle.label | ... = ... | +| windows.cpp:728:12:728:28 | call to source | semmle.label | call to source | +| windows.cpp:729:35:729:35 | *x | semmle.label | *x | +| windows.cpp:729:44:729:57 | WinHttpCrackUrl output argument | semmle.label | WinHttpCrackUrl output argument | +| windows.cpp:731:10:731:36 | * ... | semmle.label | * ... | +| windows.cpp:733:10:733:35 | * ... | semmle.label | * ... | +| windows.cpp:735:10:735:37 | * ... | semmle.label | * ... | subpaths | asio_streams.cpp:100:64:100:71 | *send_str | asio_streams.cpp:56:18:56:23 | [summary param] *0 in buffer | asio_streams.cpp:56:18:56:23 | [summary] to write: ReturnValue in buffer | asio_streams.cpp:100:44:100:62 | call to buffer | +| azure.cpp:257:5:257:8 | *resp | azure.cpp:113:16:113:19 | [summary param] this in Read | azure.cpp:113:16:113:19 | [summary param] *0 in Read [Return] | azure.cpp:257:16:257:21 | Read output argument | +| azure.cpp:262:5:262:8 | *resp | azure.cpp:114:16:114:26 | [summary param] this in ReadToCount | azure.cpp:114:16:114:26 | [summary param] *0 in ReadToCount [Return] | azure.cpp:262:23:262:28 | ReadToCount output argument | +| azure.cpp:266:38:266:41 | *resp | azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | azure.cpp:115:30:115:38 | [summary] to write: ReturnValue in ReadToEnd [element] | azure.cpp:266:44:266:52 | call to ReadToEnd [element] | +| azure.cpp:282:21:282:23 | *call to get | azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | azure.cpp:115:30:115:38 | [summary] to write: ReturnValue in ReadToEnd [element] | azure.cpp:282:28:282:36 | call to ReadToEnd [element] | +| azure.cpp:289:24:289:56 | call to GetHeader | azure.cpp:62:10:62:14 | [summary param] this in Value | azure.cpp:62:10:62:14 | [summary] to write: ReturnValue[*] in Value | azure.cpp:289:63:289:65 | call to Value | | test.cpp:17:24:17:24 | x | test.cpp:4:5:4:17 | [summary param] 0 in ymlStepManual | test.cpp:4:5:4:17 | [summary] to write: ReturnValue in ymlStepManual | test.cpp:17:10:17:22 | call to ymlStepManual | | test.cpp:21:27:21:27 | x | test.cpp:5:5:5:20 | [summary param] 0 in ymlStepGenerated | test.cpp:5:5:5:20 | [summary] to write: ReturnValue in ymlStepGenerated | test.cpp:21:10:21:25 | call to ymlStepGenerated | | test.cpp:25:35:25:35 | x | test.cpp:6:5:6:27 | [summary param] 0 in ymlStepManual_with_body | test.cpp:6:5:6:27 | [summary] to write: ReturnValue in ymlStepManual_with_body | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | @@ -498,4 +657,5 @@ subpaths | windows.cpp:563:40:563:50 | *& ... [*Buffer] | windows.cpp:510:6:510:25 | [summary param] *1 in RtlCopyUnicodeString [*Buffer] | windows.cpp:510:6:510:25 | [summary param] *0 in RtlCopyUnicodeString [Return] [*Buffer] | windows.cpp:563:26:563:37 | RtlCopyUnicodeString output argument [*Buffer] | | windows.cpp:568:32:568:33 | *& ... | windows.cpp:515:6:515:18 | [summary param] *1 in RtlMoveMemory | windows.cpp:515:6:515:18 | [summary param] *0 in RtlMoveMemory [Return] | windows.cpp:568:19:568:29 | RtlMoveMemory output argument | | windows.cpp:573:40:573:41 | *& ... | windows.cpp:521:17:521:37 | [summary param] *1 in RtlMoveVolatileMemory | windows.cpp:521:17:521:37 | [summary param] *0 in RtlMoveVolatileMemory [Return] | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | +| windows.cpp:729:35:729:35 | *x | windows.cpp:714:6:714:20 | [summary param] *0 in WinHttpCrackUrl | windows.cpp:714:6:714:20 | [summary param] *3 in WinHttpCrackUrl [Return] | windows.cpp:729:44:729:57 | WinHttpCrackUrl output argument | testFailures diff --git a/cpp/ql/test/library-tests/dataflow/external-models/sources.expected b/cpp/ql/test/library-tests/dataflow/external-models/sources.expected index cb7e06b801d0..c683d8539a07 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/sources.expected +++ b/cpp/ql/test/library-tests/dataflow/external-models/sources.expected @@ -1,4 +1,10 @@ | asio_streams.cpp:87:34:87:44 | read_until output argument | remote | +| azure.cpp:253:48:253:60 | *call to GetBodyStream | remote | +| azure.cpp:273:62:273:64 | call to GetHeaders | remote | +| azure.cpp:277:45:277:47 | call to GetBody | remote | +| azure.cpp:281:68:281:84 | *call to ExtractBodyStream | remote | +| azure.cpp:289:32:289:40 | call to GetHeader | remote | +| azure.cpp:293:58:293:67 | call to GetHeaders | remote | | test.cpp:10:10:10:18 | call to ymlSource | local | | test.cpp:56:8:56:16 | call to ymlSource | local | | test.cpp:94:10:94:18 | call to ymlSource | local | @@ -20,3 +26,9 @@ | windows.cpp:318:23:318:37 | *call to MapViewOfFileEx | local | | windows.cpp:325:23:325:42 | *call to MapViewOfFileFromApp | local | | windows.cpp:332:23:332:40 | *call to MapViewOfFileNuma2 | local | +| windows.cpp:645:45:645:50 | WinHttpReadData output argument | remote | +| windows.cpp:652:48:652:53 | WinHttpReadDataEx output argument | remote | +| windows.cpp:659:47:659:52 | WinHttpQueryHeaders output argument | remote | +| windows.cpp:669:70:669:79 | WinHttpQueryHeadersEx output argument | remote | +| windows.cpp:669:82:669:87 | WinHttpQueryHeadersEx output argument | remote | +| windows.cpp:669:105:669:112 | WinHttpQueryHeadersEx output argument | remote | diff --git a/cpp/ql/test/library-tests/dataflow/external-models/steps.expected b/cpp/ql/test/library-tests/dataflow/external-models/steps.expected index 9f4a5f55fef1..61b05459ade1 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/steps.expected +++ b/cpp/ql/test/library-tests/dataflow/external-models/steps.expected @@ -1,6 +1,12 @@ | asio_streams.cpp:100:64:100:71 | *send_str | asio_streams.cpp:100:44:100:62 | call to buffer | +| azure.cpp:252:79:252:98 | call to string | azure.cpp:252:62:252:99 | call to Url | +| azure.cpp:257:5:257:8 | *resp | azure.cpp:257:16:257:21 | Read output argument | +| azure.cpp:262:5:262:8 | *resp | azure.cpp:262:23:262:28 | ReadToCount output argument | +| azure.cpp:287:79:287:98 | call to string | azure.cpp:287:62:287:99 | call to Url | +| azure.cpp:289:24:289:56 | call to GetHeader | azure.cpp:289:63:289:65 | call to Value | | test.cpp:17:24:17:24 | x | test.cpp:17:10:17:22 | call to ymlStepManual | | test.cpp:21:27:21:27 | x | test.cpp:21:10:21:25 | call to ymlStepGenerated | | test.cpp:25:35:25:35 | x | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | | test.cpp:28:35:28:35 | 0 | test.cpp:28:11:28:33 | call to ymlStepManual_with_body | | windows.cpp:27:36:27:38 | *cmd | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | +| windows.cpp:729:35:729:35 | *x | windows.cpp:729:44:729:57 | WinHttpCrackUrl output argument | diff --git a/cpp/ql/test/library-tests/dataflow/external-models/validatemodels.expected b/cpp/ql/test/library-tests/dataflow/external-models/validatemodels.expected index 1b74b290eb39..15ae50bddc26 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/validatemodels.expected +++ b/cpp/ql/test/library-tests/dataflow/external-models/validatemodels.expected @@ -5586,3 +5586,6 @@ | Unrecognized output specification "Field[***hEvent]" in summary model. | | Unrecognized output specification "Parameter[***0]" in summary model. | | Unrecognized output specification "Parameter[****0]" in summary model. | +| Unrecognized output specification "ReturnValue[*****]" in summary model. | +| Unrecognized output specification "ReturnValue[****]" in summary model. | +| Unrecognized output specification "ReturnValue[***]" in summary model. | diff --git a/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp b/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp index 3e03c1a69a5b..2900af9034c8 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp +++ b/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp @@ -573,4 +573,165 @@ void test_copy_and_move_memory() { RtlMoveVolatileMemory(dest_buffer, &x, sizeof(x)); sink(dest_buffer[0]); // $ ir } +} + +using HINTERNET = void*; +using ULONGLONG = unsigned long long; +using UINT = unsigned int; +using PDWORD = DWORD*; +using PCSTR = const char*; +typedef union _WINHTTP_HEADER_NAME { + PCWSTR pwszName; + PCSTR pszName; +} WINHTTP_HEADER_NAME, *PWINHTTP_HEADER_NAME; +typedef struct _WINHTTP_EXTENDED_HEADER { + union { + PCWSTR pwszName; + PCSTR pszName; + }; + union { + PCWSTR pwszValue; + PCSTR pszValue; + }; +} WINHTTP_EXTENDED_HEADER, *PWINHTTP_EXTENDED_HEADER; + +BOOL WinHttpReadData( + HINTERNET hRequest, + LPVOID lpBuffer, + DWORD dwNumberOfBytesToRead, + LPDWORD lpdwNumberOfBytesRead +); + +DWORD WinHttpReadDataEx( + HINTERNET hRequest, + LPVOID lpBuffer, + DWORD dwNumberOfBytesToRead, + LPDWORD lpdwNumberOfBytesRead, + ULONGLONG ullFlags, + DWORD cbProperty, + PVOID pvProperty +); + +using LPCWSTR = const wchar_t*; + +BOOL WinHttpQueryHeaders( + HINTERNET hRequest, + DWORD dwInfoLevel, + LPCWSTR pwszName, + LPVOID lpBuffer, + LPDWORD lpdwBufferLength, + LPDWORD lpdwIndex +); + +DWORD WinHttpQueryHeadersEx( + HINTERNET hRequest, + DWORD dwInfoLevel, + ULONGLONG ullFlags, + UINT uiCodePage, + PDWORD pdwIndex, + PWINHTTP_HEADER_NAME pHeaderName, + PVOID pBuffer, + PDWORD pdwBufferLength, + PWINHTTP_EXTENDED_HEADER *ppHeaders, + PDWORD pdwHeadersCount +); + +void sink(PCSTR); + +void test_winhttp(HINTERNET hRequest) { + { + char buffer[1024]; + DWORD bytesRead; + BOOL result = WinHttpReadData(hRequest, buffer, sizeof(buffer), &bytesRead); + sink(buffer); + sink(*buffer); // $ ir + } + { + char buffer[1024]; + DWORD bytesRead; + DWORD result = WinHttpReadDataEx(hRequest, buffer, sizeof(buffer), &bytesRead, 0, 0, nullptr); + sink(buffer); + sink(*buffer); // $ ir + } + { + char buffer[1024]; + DWORD bufferLength = sizeof(buffer); + WinHttpQueryHeaders(hRequest, 0, nullptr, buffer, &bufferLength, nullptr); + sink(buffer); + sink(*buffer); // $ ir + } + { + char buffer[1024]; + DWORD bufferLength = sizeof(buffer); + PWINHTTP_EXTENDED_HEADER headers; + DWORD headersCount; + PWINHTTP_HEADER_NAME headerName; + DWORD result = WinHttpQueryHeadersEx(hRequest, 0, 0, 0, nullptr, headerName, buffer, &bufferLength, &headers, &headersCount); + sink(buffer); + sink(*buffer); // $ ir + sink(headerName->pszName); + sink(*headerName->pszName); // $ ir + sink(headers->pszValue); + sink(*headers->pszValue); // $ ir + } +} + +using LPWSTR = wchar_t*; +using INTERNET_SCHEME = enum { + INTERNET_SCHEME_INVALID = -1, + INTERNET_SCHEME_UNKNOWN = 0, + INTERNET_SCHEME_HTTP = 1, + INTERNET_SCHEME_HTTPS = 2, + INTERNET_SCHEME_FTP = 3, + INTERNET_SCHEME_FILE = 4, + INTERNET_SCHEME_NEWS = 5, + INTERNET_SCHEME_MAILTO = 6, + INTERNET_SCHEME_SNEWS = 7, + INTERNET_SCHEME_SOCKS = 8, + INTERNET_SCHEME_WAIS = 9, + INTERNET_SCHEME_LAST = 10 +}; +using INTERNET_PORT = unsigned short; + +typedef struct _WINHTTP_URL_COMPONENTS { + DWORD dwStructSize; + LPWSTR lpszScheme; + DWORD dwSchemeLength; + INTERNET_SCHEME nScheme; + LPWSTR lpszHostName; + DWORD dwHostNameLength; + INTERNET_PORT nPort; + LPWSTR lpszUserName; + DWORD dwUserNameLength; + LPWSTR lpszPassword; + DWORD dwPasswordLength; + LPWSTR lpszUrlPath; + DWORD dwUrlPathLength; + LPWSTR lpszExtraInfo; + DWORD dwExtraInfoLength; +} URL_COMPONENTS, *LPURL_COMPONENTS; + +BOOL WinHttpCrackUrl( + LPCWSTR pwszUrl, + DWORD dwUrlLength, + DWORD dwFlags, + LPURL_COMPONENTS lpUrlComponents +); + +void sink(LPWSTR); + +void test_winhttp_crack_url() { + { + URL_COMPONENTS urlComponents; + urlComponents.dwStructSize = sizeof(URL_COMPONENTS); + wchar_t x[256]; + x[0] = (wchar_t)source(); + BOOL result = WinHttpCrackUrl(x, 0, 0, &urlComponents); + sink(urlComponents.lpszHostName); + sink(*urlComponents.lpszHostName); // $ ir + sink(urlComponents.lpszUrlPath); + sink(*urlComponents.lpszUrlPath); // $ ir + sink(urlComponents.lpszExtraInfo); + sink(*urlComponents.lpszExtraInfo); // $ ir + } } \ No newline at end of file diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected index 0c520190c8b0..6bb1f192e1df 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected @@ -1025,6 +1025,7 @@ | test.c:970:12:970:12 | y | 256 | | test.c:971:9:971:9 | x | 2147483647 | | test.c:972:9:972:9 | y | 256 | +| test.c:985:7:985:7 | e | -2147483648 | | test.cpp:10:7:10:7 | b | -2147483648 | | test.cpp:11:5:11:5 | x | -2147483648 | | test.cpp:13:10:13:10 | x | -2147483648 | @@ -1093,3 +1094,64 @@ | test.cpp:122:4:122:4 | n | 0 | | test.cpp:122:8:122:8 | n | 0 | | test.cpp:122:12:122:12 | n | 1 | +| test_nr_of_bounds.cpp:40:5:40:20 | x | 0 | +| test_nr_of_bounds.cpp:40:5:40:20 | x | 0 | +| test_nr_of_bounds.cpp:41:5:41:20 | x | 0 | +| test_nr_of_bounds.cpp:41:5:41:20 | x | 0 | +| test_nr_of_bounds.cpp:42:5:42:20 | x | 0 | +| test_nr_of_bounds.cpp:42:5:42:20 | x | 0 | +| test_nr_of_bounds.cpp:43:5:43:20 | x | 0 | +| test_nr_of_bounds.cpp:43:5:43:20 | x | 0 | +| test_nr_of_bounds.cpp:44:5:44:20 | x | 0 | +| test_nr_of_bounds.cpp:44:5:44:20 | x | 0 | +| test_nr_of_bounds.cpp:45:5:45:20 | x | 0 | +| test_nr_of_bounds.cpp:45:5:45:20 | x | 0 | +| test_nr_of_bounds.cpp:46:5:46:20 | x | 0 | +| test_nr_of_bounds.cpp:46:5:46:20 | x | 0 | +| test_nr_of_bounds.cpp:47:5:47:20 | x | 0 | +| test_nr_of_bounds.cpp:47:5:47:20 | x | 0 | +| test_nr_of_bounds.cpp:48:5:48:20 | x | 0 | +| test_nr_of_bounds.cpp:48:5:48:20 | x | 0 | +| test_nr_of_bounds.cpp:49:5:49:20 | x | 0 | +| test_nr_of_bounds.cpp:49:5:49:20 | x | 0 | +| test_nr_of_bounds.cpp:50:5:50:20 | x | 0 | +| test_nr_of_bounds.cpp:50:5:50:20 | x | 0 | +| test_nr_of_bounds.cpp:51:5:51:20 | x | 0 | +| test_nr_of_bounds.cpp:51:5:51:20 | x | 0 | +| test_nr_of_bounds.cpp:52:5:52:20 | x | 0 | +| test_nr_of_bounds.cpp:52:5:52:20 | x | 0 | +| test_nr_of_bounds.cpp:53:5:53:20 | x | 0 | +| test_nr_of_bounds.cpp:53:5:53:20 | x | 0 | +| test_nr_of_bounds.cpp:54:5:54:20 | x | 0 | +| test_nr_of_bounds.cpp:54:5:54:20 | x | 0 | +| test_nr_of_bounds.cpp:55:5:55:20 | x | 0 | +| test_nr_of_bounds.cpp:55:5:55:20 | x | 0 | +| test_nr_of_bounds.cpp:56:5:56:20 | x | 0 | +| test_nr_of_bounds.cpp:56:5:56:20 | x | 0 | +| test_nr_of_bounds.cpp:57:5:57:20 | x | 0 | +| test_nr_of_bounds.cpp:57:5:57:20 | x | 0 | +| test_nr_of_bounds.cpp:58:5:58:20 | x | 0 | +| test_nr_of_bounds.cpp:58:5:58:20 | x | 0 | +| test_nr_of_bounds.cpp:59:5:59:20 | x | 0 | +| test_nr_of_bounds.cpp:59:5:59:20 | x | 0 | +| test_nr_of_bounds.cpp:60:5:60:20 | x | 0 | +| test_nr_of_bounds.cpp:60:5:60:20 | x | 0 | +| test_nr_of_bounds.cpp:61:5:61:20 | x | 0 | +| test_nr_of_bounds.cpp:61:5:61:20 | x | 0 | +| test_nr_of_bounds.cpp:62:5:62:20 | x | 0 | +| test_nr_of_bounds.cpp:62:5:62:20 | x | 0 | +| test_nr_of_bounds.cpp:63:5:63:20 | x | 0 | +| test_nr_of_bounds.cpp:63:5:63:20 | x | 0 | +| test_nr_of_bounds.cpp:64:5:64:20 | x | 0 | +| test_nr_of_bounds.cpp:64:5:64:20 | x | 0 | +| test_nr_of_bounds.cpp:65:5:65:21 | x | 0 | +| test_nr_of_bounds.cpp:65:5:65:21 | x | 0 | +| test_nr_of_bounds.cpp:66:5:66:21 | x | 0 | +| test_nr_of_bounds.cpp:66:5:66:21 | x | 0 | +| test_nr_of_bounds.cpp:67:5:67:21 | x | 0 | +| test_nr_of_bounds.cpp:67:5:67:21 | x | 0 | +| test_nr_of_bounds.cpp:68:5:68:21 | x | 0 | +| test_nr_of_bounds.cpp:68:5:68:21 | x | 0 | +| test_nr_of_bounds.cpp:69:5:69:21 | x | 0 | +| test_nr_of_bounds.cpp:69:5:69:21 | x | 0 | +| test_nr_of_bounds.cpp:72:12:72:12 | x | 0 | diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected index 7d583e47f5bb..b46aebbbf646 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected @@ -4546,6 +4546,13 @@ estimateNrOfBounds | test.c:970:18:970:20 | 512 | 1.0 | | test.c:971:9:971:9 | x | 1.0 | | test.c:972:9:972:9 | y | 1.0 | +| test.c:977:9:977:11 | 1 | 1.0 | +| test.c:978:9:978:11 | 2 | 1.0 | +| test.c:979:9:979:11 | 4 | 1.0 | +| test.c:980:9:980:11 | 8 | 1.0 | +| test.c:981:9:981:12 | 16 | 1.0 | +| test.c:985:7:985:7 | (int)... | 1.0 | +| test.c:985:7:985:7 | e | 1.0 | | test.cpp:9:11:9:12 | - ... | 1.0 | | test.cpp:9:12:9:12 | 1 | 1.0 | | test.cpp:10:7:10:7 | (bool)... | 1.0 | @@ -4721,3 +4728,394 @@ estimateNrOfBounds | test.cpp:122:4:122:4 | n | 8.0 | | test.cpp:122:8:122:8 | n | 8.0 | | test.cpp:122:12:122:12 | n | 8.0 | +| test_nr_of_bounds.cpp:2:9:2:11 | 1 | 1.0 | +| test_nr_of_bounds.cpp:3:9:3:11 | 2 | 1.0 | +| test_nr_of_bounds.cpp:4:9:4:11 | 4 | 1.0 | +| test_nr_of_bounds.cpp:5:9:5:11 | 8 | 1.0 | +| test_nr_of_bounds.cpp:6:9:6:12 | 16 | 1.0 | +| test_nr_of_bounds.cpp:7:9:7:12 | 32 | 1.0 | +| test_nr_of_bounds.cpp:8:9:8:12 | 64 | 1.0 | +| test_nr_of_bounds.cpp:9:9:9:12 | 128 | 1.0 | +| test_nr_of_bounds.cpp:10:9:10:13 | 256 | 1.0 | +| test_nr_of_bounds.cpp:11:9:11:13 | 512 | 1.0 | +| test_nr_of_bounds.cpp:12:9:12:13 | 1024 | 1.0 | +| test_nr_of_bounds.cpp:13:9:13:13 | 2048 | 1.0 | +| test_nr_of_bounds.cpp:14:9:14:14 | 4096 | 1.0 | +| test_nr_of_bounds.cpp:15:9:15:14 | 8192 | 1.0 | +| test_nr_of_bounds.cpp:16:9:16:14 | 16384 | 1.0 | +| test_nr_of_bounds.cpp:17:9:17:14 | 32768 | 1.0 | +| test_nr_of_bounds.cpp:18:9:18:15 | 65536 | 1.0 | +| test_nr_of_bounds.cpp:19:9:19:15 | 131072 | 1.0 | +| test_nr_of_bounds.cpp:20:9:20:15 | 262144 | 1.0 | +| test_nr_of_bounds.cpp:21:9:21:15 | 524288 | 1.0 | +| test_nr_of_bounds.cpp:22:9:22:16 | 1048576 | 1.0 | +| test_nr_of_bounds.cpp:23:9:23:16 | 2097152 | 1.0 | +| test_nr_of_bounds.cpp:24:9:24:16 | 4194304 | 1.0 | +| test_nr_of_bounds.cpp:25:9:25:16 | 8388608 | 1.0 | +| test_nr_of_bounds.cpp:26:9:26:17 | 16777216 | 1.0 | +| test_nr_of_bounds.cpp:27:10:27:18 | 33554432 | 1.0 | +| test_nr_of_bounds.cpp:28:10:28:18 | 67108864 | 1.0 | +| test_nr_of_bounds.cpp:29:10:29:18 | 134217728 | 1.0 | +| test_nr_of_bounds.cpp:30:10:30:19 | 268435456 | 1.0 | +| test_nr_of_bounds.cpp:31:10:31:19 | 536870912 | 1.0 | +| test_nr_of_bounds.cpp:40:5:40:19 | ... & ... | 1.0 | +| test_nr_of_bounds.cpp:40:5:40:19 | ... -= ... | 1.0 | +| test_nr_of_bounds.cpp:40:5:40:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:40:5:40:20 | (...) | 1.0 | +| test_nr_of_bounds.cpp:40:5:40:20 | x | 1.0 | +| test_nr_of_bounds.cpp:40:5:40:20 | x | 1.0 | +| test_nr_of_bounds.cpp:40:19:40:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:40:19:40:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:40:19:40:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:40:19:40:19 | A | 1.0 | +| test_nr_of_bounds.cpp:40:19:40:19 | A | 1.0 | +| test_nr_of_bounds.cpp:40:19:40:19 | A | 1.0 | +| test_nr_of_bounds.cpp:41:5:41:19 | ... & ... | 2.0 | +| test_nr_of_bounds.cpp:41:5:41:19 | ... -= ... | 2.0 | +| test_nr_of_bounds.cpp:41:5:41:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:41:5:41:20 | (...) | 2.0 | +| test_nr_of_bounds.cpp:41:5:41:20 | x | 2.0 | +| test_nr_of_bounds.cpp:41:5:41:20 | x | 2.0 | +| test_nr_of_bounds.cpp:41:19:41:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:41:19:41:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:41:19:41:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:41:19:41:19 | B | 1.0 | +| test_nr_of_bounds.cpp:41:19:41:19 | B | 1.0 | +| test_nr_of_bounds.cpp:41:19:41:19 | B | 1.0 | +| test_nr_of_bounds.cpp:42:5:42:19 | ... & ... | 4.0 | +| test_nr_of_bounds.cpp:42:5:42:19 | ... -= ... | 4.0 | +| test_nr_of_bounds.cpp:42:5:42:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:42:5:42:20 | (...) | 4.0 | +| test_nr_of_bounds.cpp:42:5:42:20 | x | 4.0 | +| test_nr_of_bounds.cpp:42:5:42:20 | x | 4.0 | +| test_nr_of_bounds.cpp:42:19:42:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:42:19:42:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:42:19:42:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:42:19:42:19 | C | 1.0 | +| test_nr_of_bounds.cpp:42:19:42:19 | C | 1.0 | +| test_nr_of_bounds.cpp:42:19:42:19 | C | 1.0 | +| test_nr_of_bounds.cpp:43:5:43:19 | ... & ... | 8.0 | +| test_nr_of_bounds.cpp:43:5:43:19 | ... -= ... | 8.0 | +| test_nr_of_bounds.cpp:43:5:43:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:43:5:43:20 | (...) | 8.0 | +| test_nr_of_bounds.cpp:43:5:43:20 | x | 8.0 | +| test_nr_of_bounds.cpp:43:5:43:20 | x | 8.0 | +| test_nr_of_bounds.cpp:43:19:43:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:43:19:43:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:43:19:43:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:43:19:43:19 | D | 1.0 | +| test_nr_of_bounds.cpp:43:19:43:19 | D | 1.0 | +| test_nr_of_bounds.cpp:43:19:43:19 | D | 1.0 | +| test_nr_of_bounds.cpp:44:5:44:19 | ... & ... | 16.0 | +| test_nr_of_bounds.cpp:44:5:44:19 | ... -= ... | 16.0 | +| test_nr_of_bounds.cpp:44:5:44:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:44:5:44:20 | (...) | 16.0 | +| test_nr_of_bounds.cpp:44:5:44:20 | x | 16.0 | +| test_nr_of_bounds.cpp:44:5:44:20 | x | 16.0 | +| test_nr_of_bounds.cpp:44:19:44:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:44:19:44:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:44:19:44:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:44:19:44:19 | E | 1.0 | +| test_nr_of_bounds.cpp:44:19:44:19 | E | 1.0 | +| test_nr_of_bounds.cpp:44:19:44:19 | E | 1.0 | +| test_nr_of_bounds.cpp:45:5:45:19 | ... & ... | 32.0 | +| test_nr_of_bounds.cpp:45:5:45:19 | ... -= ... | 32.0 | +| test_nr_of_bounds.cpp:45:5:45:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:45:5:45:20 | (...) | 32.0 | +| test_nr_of_bounds.cpp:45:5:45:20 | x | 32.0 | +| test_nr_of_bounds.cpp:45:5:45:20 | x | 32.0 | +| test_nr_of_bounds.cpp:45:19:45:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:45:19:45:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:45:19:45:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:45:19:45:19 | F | 1.0 | +| test_nr_of_bounds.cpp:45:19:45:19 | F | 1.0 | +| test_nr_of_bounds.cpp:45:19:45:19 | F | 1.0 | +| test_nr_of_bounds.cpp:46:5:46:19 | ... & ... | 64.0 | +| test_nr_of_bounds.cpp:46:5:46:19 | ... -= ... | 64.0 | +| test_nr_of_bounds.cpp:46:5:46:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:46:5:46:20 | (...) | 64.0 | +| test_nr_of_bounds.cpp:46:5:46:20 | x | 64.0 | +| test_nr_of_bounds.cpp:46:5:46:20 | x | 64.0 | +| test_nr_of_bounds.cpp:46:19:46:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:46:19:46:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:46:19:46:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:46:19:46:19 | G | 1.0 | +| test_nr_of_bounds.cpp:46:19:46:19 | G | 1.0 | +| test_nr_of_bounds.cpp:46:19:46:19 | G | 1.0 | +| test_nr_of_bounds.cpp:47:5:47:19 | ... & ... | 128.0 | +| test_nr_of_bounds.cpp:47:5:47:19 | ... -= ... | 128.0 | +| test_nr_of_bounds.cpp:47:5:47:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:47:5:47:20 | (...) | 128.0 | +| test_nr_of_bounds.cpp:47:5:47:20 | x | 128.0 | +| test_nr_of_bounds.cpp:47:5:47:20 | x | 128.0 | +| test_nr_of_bounds.cpp:47:19:47:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:47:19:47:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:47:19:47:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:47:19:47:19 | H | 1.0 | +| test_nr_of_bounds.cpp:47:19:47:19 | H | 1.0 | +| test_nr_of_bounds.cpp:47:19:47:19 | H | 1.0 | +| test_nr_of_bounds.cpp:48:5:48:19 | ... & ... | 256.0 | +| test_nr_of_bounds.cpp:48:5:48:19 | ... -= ... | 256.0 | +| test_nr_of_bounds.cpp:48:5:48:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:48:5:48:20 | (...) | 256.0 | +| test_nr_of_bounds.cpp:48:5:48:20 | x | 256.0 | +| test_nr_of_bounds.cpp:48:5:48:20 | x | 256.0 | +| test_nr_of_bounds.cpp:48:19:48:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:48:19:48:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:48:19:48:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:48:19:48:19 | I | 1.0 | +| test_nr_of_bounds.cpp:48:19:48:19 | I | 1.0 | +| test_nr_of_bounds.cpp:48:19:48:19 | I | 1.0 | +| test_nr_of_bounds.cpp:49:5:49:19 | ... & ... | 512.0 | +| test_nr_of_bounds.cpp:49:5:49:19 | ... -= ... | 512.0 | +| test_nr_of_bounds.cpp:49:5:49:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:49:5:49:20 | (...) | 512.0 | +| test_nr_of_bounds.cpp:49:5:49:20 | x | 512.0 | +| test_nr_of_bounds.cpp:49:5:49:20 | x | 512.0 | +| test_nr_of_bounds.cpp:49:19:49:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:49:19:49:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:49:19:49:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:49:19:49:19 | J | 1.0 | +| test_nr_of_bounds.cpp:49:19:49:19 | J | 1.0 | +| test_nr_of_bounds.cpp:49:19:49:19 | J | 1.0 | +| test_nr_of_bounds.cpp:50:5:50:19 | ... & ... | 1024.0 | +| test_nr_of_bounds.cpp:50:5:50:19 | ... -= ... | 1024.0 | +| test_nr_of_bounds.cpp:50:5:50:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:50:5:50:20 | (...) | 1024.0 | +| test_nr_of_bounds.cpp:50:5:50:20 | x | 1024.0 | +| test_nr_of_bounds.cpp:50:5:50:20 | x | 1024.0 | +| test_nr_of_bounds.cpp:50:19:50:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:50:19:50:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:50:19:50:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:50:19:50:19 | L | 1.0 | +| test_nr_of_bounds.cpp:50:19:50:19 | L | 1.0 | +| test_nr_of_bounds.cpp:50:19:50:19 | L | 1.0 | +| test_nr_of_bounds.cpp:51:5:51:19 | ... & ... | 2048.0 | +| test_nr_of_bounds.cpp:51:5:51:19 | ... -= ... | 2048.0 | +| test_nr_of_bounds.cpp:51:5:51:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:51:5:51:20 | (...) | 2048.0 | +| test_nr_of_bounds.cpp:51:5:51:20 | x | 2048.0 | +| test_nr_of_bounds.cpp:51:5:51:20 | x | 2048.0 | +| test_nr_of_bounds.cpp:51:19:51:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:51:19:51:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:51:19:51:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:51:19:51:19 | M | 1.0 | +| test_nr_of_bounds.cpp:51:19:51:19 | M | 1.0 | +| test_nr_of_bounds.cpp:51:19:51:19 | M | 1.0 | +| test_nr_of_bounds.cpp:52:5:52:19 | ... & ... | 4096.0 | +| test_nr_of_bounds.cpp:52:5:52:19 | ... -= ... | 4096.0 | +| test_nr_of_bounds.cpp:52:5:52:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:52:5:52:20 | (...) | 4096.0 | +| test_nr_of_bounds.cpp:52:5:52:20 | x | 4096.0 | +| test_nr_of_bounds.cpp:52:5:52:20 | x | 4096.0 | +| test_nr_of_bounds.cpp:52:19:52:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:52:19:52:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:52:19:52:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:52:19:52:19 | N | 1.0 | +| test_nr_of_bounds.cpp:52:19:52:19 | N | 1.0 | +| test_nr_of_bounds.cpp:52:19:52:19 | N | 1.0 | +| test_nr_of_bounds.cpp:53:5:53:19 | ... & ... | 8192.0 | +| test_nr_of_bounds.cpp:53:5:53:19 | ... -= ... | 8192.0 | +| test_nr_of_bounds.cpp:53:5:53:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:53:5:53:20 | (...) | 8192.0 | +| test_nr_of_bounds.cpp:53:5:53:20 | x | 8192.0 | +| test_nr_of_bounds.cpp:53:5:53:20 | x | 8192.0 | +| test_nr_of_bounds.cpp:53:19:53:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:53:19:53:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:53:19:53:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:53:19:53:19 | O | 1.0 | +| test_nr_of_bounds.cpp:53:19:53:19 | O | 1.0 | +| test_nr_of_bounds.cpp:53:19:53:19 | O | 1.0 | +| test_nr_of_bounds.cpp:54:5:54:19 | ... & ... | 16384.0 | +| test_nr_of_bounds.cpp:54:5:54:19 | ... -= ... | 16384.0 | +| test_nr_of_bounds.cpp:54:5:54:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:54:5:54:20 | (...) | 16384.0 | +| test_nr_of_bounds.cpp:54:5:54:20 | x | 16384.0 | +| test_nr_of_bounds.cpp:54:5:54:20 | x | 16384.0 | +| test_nr_of_bounds.cpp:54:19:54:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:54:19:54:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:54:19:54:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:54:19:54:19 | P | 1.0 | +| test_nr_of_bounds.cpp:54:19:54:19 | P | 1.0 | +| test_nr_of_bounds.cpp:54:19:54:19 | P | 1.0 | +| test_nr_of_bounds.cpp:55:5:55:19 | ... & ... | 32768.0 | +| test_nr_of_bounds.cpp:55:5:55:19 | ... -= ... | 32768.0 | +| test_nr_of_bounds.cpp:55:5:55:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:55:5:55:20 | (...) | 32768.0 | +| test_nr_of_bounds.cpp:55:5:55:20 | x | 32768.0 | +| test_nr_of_bounds.cpp:55:5:55:20 | x | 32768.0 | +| test_nr_of_bounds.cpp:55:19:55:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:55:19:55:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:55:19:55:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:55:19:55:19 | Q | 1.0 | +| test_nr_of_bounds.cpp:55:19:55:19 | Q | 1.0 | +| test_nr_of_bounds.cpp:55:19:55:19 | Q | 1.0 | +| test_nr_of_bounds.cpp:56:5:56:19 | ... & ... | 65536.0 | +| test_nr_of_bounds.cpp:56:5:56:19 | ... -= ... | 65536.0 | +| test_nr_of_bounds.cpp:56:5:56:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:56:5:56:20 | (...) | 65536.0 | +| test_nr_of_bounds.cpp:56:5:56:20 | x | 65536.0 | +| test_nr_of_bounds.cpp:56:5:56:20 | x | 65536.0 | +| test_nr_of_bounds.cpp:56:19:56:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:56:19:56:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:56:19:56:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:56:19:56:19 | R | 1.0 | +| test_nr_of_bounds.cpp:56:19:56:19 | R | 1.0 | +| test_nr_of_bounds.cpp:56:19:56:19 | R | 1.0 | +| test_nr_of_bounds.cpp:57:5:57:19 | ... & ... | 131072.0 | +| test_nr_of_bounds.cpp:57:5:57:19 | ... -= ... | 131072.0 | +| test_nr_of_bounds.cpp:57:5:57:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:57:5:57:20 | (...) | 131072.0 | +| test_nr_of_bounds.cpp:57:5:57:20 | x | 131072.0 | +| test_nr_of_bounds.cpp:57:5:57:20 | x | 131072.0 | +| test_nr_of_bounds.cpp:57:19:57:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:57:19:57:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:57:19:57:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:57:19:57:19 | S | 1.0 | +| test_nr_of_bounds.cpp:57:19:57:19 | S | 1.0 | +| test_nr_of_bounds.cpp:57:19:57:19 | S | 1.0 | +| test_nr_of_bounds.cpp:58:5:58:19 | ... & ... | 262144.0 | +| test_nr_of_bounds.cpp:58:5:58:19 | ... -= ... | 262144.0 | +| test_nr_of_bounds.cpp:58:5:58:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:58:5:58:20 | (...) | 262144.0 | +| test_nr_of_bounds.cpp:58:5:58:20 | x | 262144.0 | +| test_nr_of_bounds.cpp:58:5:58:20 | x | 262144.0 | +| test_nr_of_bounds.cpp:58:19:58:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:58:19:58:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:58:19:58:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:58:19:58:19 | T | 1.0 | +| test_nr_of_bounds.cpp:58:19:58:19 | T | 1.0 | +| test_nr_of_bounds.cpp:58:19:58:19 | T | 1.0 | +| test_nr_of_bounds.cpp:59:5:59:19 | ... & ... | 524288.0 | +| test_nr_of_bounds.cpp:59:5:59:19 | ... -= ... | 524288.0 | +| test_nr_of_bounds.cpp:59:5:59:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:59:5:59:20 | (...) | 524288.0 | +| test_nr_of_bounds.cpp:59:5:59:20 | x | 524288.0 | +| test_nr_of_bounds.cpp:59:5:59:20 | x | 524288.0 | +| test_nr_of_bounds.cpp:59:19:59:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:59:19:59:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:59:19:59:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:59:19:59:19 | U | 1.0 | +| test_nr_of_bounds.cpp:59:19:59:19 | U | 1.0 | +| test_nr_of_bounds.cpp:59:19:59:19 | U | 1.0 | +| test_nr_of_bounds.cpp:60:5:60:19 | ... & ... | 1048576.0 | +| test_nr_of_bounds.cpp:60:5:60:19 | ... -= ... | 1048576.0 | +| test_nr_of_bounds.cpp:60:5:60:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:60:5:60:20 | (...) | 1048576.0 | +| test_nr_of_bounds.cpp:60:5:60:20 | x | 1048576.0 | +| test_nr_of_bounds.cpp:60:5:60:20 | x | 1048576.0 | +| test_nr_of_bounds.cpp:60:19:60:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:60:19:60:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:60:19:60:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:60:19:60:19 | V | 1.0 | +| test_nr_of_bounds.cpp:60:19:60:19 | V | 1.0 | +| test_nr_of_bounds.cpp:60:19:60:19 | V | 1.0 | +| test_nr_of_bounds.cpp:61:5:61:19 | ... & ... | 2097152.0 | +| test_nr_of_bounds.cpp:61:5:61:19 | ... -= ... | 2097152.0 | +| test_nr_of_bounds.cpp:61:5:61:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:61:5:61:20 | (...) | 2097152.0 | +| test_nr_of_bounds.cpp:61:5:61:20 | x | 2097152.0 | +| test_nr_of_bounds.cpp:61:5:61:20 | x | 2097152.0 | +| test_nr_of_bounds.cpp:61:19:61:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:61:19:61:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:61:19:61:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:61:19:61:19 | W | 1.0 | +| test_nr_of_bounds.cpp:61:19:61:19 | W | 1.0 | +| test_nr_of_bounds.cpp:61:19:61:19 | W | 1.0 | +| test_nr_of_bounds.cpp:62:5:62:19 | ... & ... | 4194304.0 | +| test_nr_of_bounds.cpp:62:5:62:19 | ... -= ... | 4194304.0 | +| test_nr_of_bounds.cpp:62:5:62:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:62:5:62:20 | (...) | 4194304.0 | +| test_nr_of_bounds.cpp:62:5:62:20 | x | 4194304.0 | +| test_nr_of_bounds.cpp:62:5:62:20 | x | 4194304.0 | +| test_nr_of_bounds.cpp:62:19:62:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:62:19:62:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:62:19:62:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:62:19:62:19 | X | 1.0 | +| test_nr_of_bounds.cpp:62:19:62:19 | X | 1.0 | +| test_nr_of_bounds.cpp:62:19:62:19 | X | 1.0 | +| test_nr_of_bounds.cpp:63:5:63:19 | ... & ... | 8388608.0 | +| test_nr_of_bounds.cpp:63:5:63:19 | ... -= ... | 8388608.0 | +| test_nr_of_bounds.cpp:63:5:63:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:63:5:63:20 | (...) | 8388608.0 | +| test_nr_of_bounds.cpp:63:5:63:20 | x | 8388608.0 | +| test_nr_of_bounds.cpp:63:5:63:20 | x | 8388608.0 | +| test_nr_of_bounds.cpp:63:19:63:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:63:19:63:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:63:19:63:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:63:19:63:19 | Y | 1.0 | +| test_nr_of_bounds.cpp:63:19:63:19 | Y | 1.0 | +| test_nr_of_bounds.cpp:63:19:63:19 | Y | 1.0 | +| test_nr_of_bounds.cpp:64:5:64:19 | ... & ... | 1.6777216E7 | +| test_nr_of_bounds.cpp:64:5:64:19 | ... -= ... | 1.6777216E7 | +| test_nr_of_bounds.cpp:64:5:64:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:64:5:64:20 | (...) | 1.6777216E7 | +| test_nr_of_bounds.cpp:64:5:64:20 | x | 1.6777216E7 | +| test_nr_of_bounds.cpp:64:5:64:20 | x | 1.6777216E7 | +| test_nr_of_bounds.cpp:64:19:64:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:64:19:64:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:64:19:64:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:64:19:64:19 | Z | 1.0 | +| test_nr_of_bounds.cpp:64:19:64:19 | Z | 1.0 | +| test_nr_of_bounds.cpp:64:19:64:19 | Z | 1.0 | +| test_nr_of_bounds.cpp:65:5:65:20 | ... & ... | 3.3554432E7 | +| test_nr_of_bounds.cpp:65:5:65:20 | ... -= ... | 3.3554432E7 | +| test_nr_of_bounds.cpp:65:5:65:20 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:65:5:65:21 | (...) | 3.3554432E7 | +| test_nr_of_bounds.cpp:65:5:65:21 | x | 3.3554432E7 | +| test_nr_of_bounds.cpp:65:5:65:21 | x | 3.3554432E7 | +| test_nr_of_bounds.cpp:65:19:65:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:65:19:65:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:65:19:65:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:65:19:65:20 | AA | 1.0 | +| test_nr_of_bounds.cpp:65:19:65:20 | AA | 1.0 | +| test_nr_of_bounds.cpp:65:19:65:20 | AA | 1.0 | +| test_nr_of_bounds.cpp:66:5:66:20 | ... & ... | 6.7108864E7 | +| test_nr_of_bounds.cpp:66:5:66:20 | ... -= ... | 6.7108864E7 | +| test_nr_of_bounds.cpp:66:5:66:20 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:66:5:66:21 | (...) | 6.7108864E7 | +| test_nr_of_bounds.cpp:66:5:66:21 | x | 6.7108864E7 | +| test_nr_of_bounds.cpp:66:5:66:21 | x | 6.7108864E7 | +| test_nr_of_bounds.cpp:66:19:66:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:66:19:66:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:66:19:66:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:66:19:66:20 | AB | 1.0 | +| test_nr_of_bounds.cpp:66:19:66:20 | AB | 1.0 | +| test_nr_of_bounds.cpp:66:19:66:20 | AB | 1.0 | +| test_nr_of_bounds.cpp:67:5:67:20 | ... & ... | 1.34217728E8 | +| test_nr_of_bounds.cpp:67:5:67:20 | ... -= ... | 1.34217728E8 | +| test_nr_of_bounds.cpp:67:5:67:20 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:67:5:67:21 | (...) | 1.34217728E8 | +| test_nr_of_bounds.cpp:67:5:67:21 | x | 1.34217728E8 | +| test_nr_of_bounds.cpp:67:5:67:21 | x | 1.34217728E8 | +| test_nr_of_bounds.cpp:67:19:67:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:67:19:67:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:67:19:67:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:67:19:67:20 | AC | 1.0 | +| test_nr_of_bounds.cpp:67:19:67:20 | AC | 1.0 | +| test_nr_of_bounds.cpp:67:19:67:20 | AC | 1.0 | +| test_nr_of_bounds.cpp:68:5:68:20 | ... & ... | 2.68435456E8 | +| test_nr_of_bounds.cpp:68:5:68:20 | ... -= ... | 2.68435456E8 | +| test_nr_of_bounds.cpp:68:5:68:20 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:68:5:68:21 | (...) | 2.68435456E8 | +| test_nr_of_bounds.cpp:68:5:68:21 | x | 2.68435456E8 | +| test_nr_of_bounds.cpp:68:5:68:21 | x | 2.68435456E8 | +| test_nr_of_bounds.cpp:68:19:68:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:68:19:68:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:68:19:68:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:68:19:68:20 | AD | 1.0 | +| test_nr_of_bounds.cpp:68:19:68:20 | AD | 1.0 | +| test_nr_of_bounds.cpp:68:19:68:20 | AD | 1.0 | +| test_nr_of_bounds.cpp:69:5:69:20 | ... & ... | 5.36870912E8 | +| test_nr_of_bounds.cpp:69:5:69:20 | ... -= ... | 5.36870912E8 | +| test_nr_of_bounds.cpp:69:5:69:20 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:69:5:69:21 | (...) | 5.36870912E8 | +| test_nr_of_bounds.cpp:69:5:69:21 | x | 5.36870912E8 | +| test_nr_of_bounds.cpp:69:5:69:21 | x | 5.36870912E8 | +| test_nr_of_bounds.cpp:69:19:69:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:69:19:69:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:69:19:69:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:69:19:69:20 | AE | 1.0 | +| test_nr_of_bounds.cpp:69:19:69:20 | AE | 1.0 | +| test_nr_of_bounds.cpp:69:19:69:20 | AE | 1.0 | +| test_nr_of_bounds.cpp:72:12:72:12 | x | 1.073741824E9 | diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.ql b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.ql index efafcf6e684b..5539dc0720ba 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.ql +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.ql @@ -14,8 +14,14 @@ private predicate nonFunctionalNrOfBounds(Expr e) { strictcount(SimpleRangeAnalysisInternal::estimateNrOfBounds(e)) > 1 } +private predicate nrOfBoundsNotEq1(Expr e, int n) { + e.getFile().getBaseName() = "test_nr_of_bounds.cpp" and + n = count(SimpleRangeAnalysisInternal::estimateNrOfBounds(e)) and + n != 1 +} + module FunctionalityTest implements TestSig { - string getARelevantTag() { result = "nonFunctionalNrOfBounds" } + string getARelevantTag() { result = ["nonFunctionalNrOfBounds", "bounds"] } predicate hasActualResult(Location location, string element, string tag, string value) { exists(Expr e | @@ -25,6 +31,14 @@ module FunctionalityTest implements TestSig { tag = "nonFunctionalNrOfBounds" and value = "" ) + or + exists(Expr e, int n | + nrOfBoundsNotEq1(e, n) and + location = e.getLocation() and + element = e.toString() and + tag = "bounds" and + value = n.toString() + ) } } diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/test.c b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/test.c index d394eb637ab1..71f28e8f605c 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/test.c +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/test.c @@ -972,3 +972,15 @@ void test_overflow() { out(y); } } + +enum MY_ENUM_2 { + A = 0x1, + B = 0x2, + C = 0x4, + D = 0x8, + E = 0x10 +}; + +void test_enum(enum MY_ENUM_2 e) { + out(e); +} \ No newline at end of file diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/test_nr_of_bounds.cpp b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/test_nr_of_bounds.cpp new file mode 100644 index 000000000000..4c78d719053f --- /dev/null +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/test_nr_of_bounds.cpp @@ -0,0 +1,73 @@ +enum MY_ENUM { + A = 0x1, + B = 0x2, + C = 0x4, + D = 0x8, + E = 0x10, + F = 0x20, + G = 0x40, + H = 0x80, + I = 0x100, + J = 0x200, + L = 0x400, + M = 0x800, + N = 0x1000, + O = 0x2000, + P = 0x4000, + Q = 0x8000, + R = 0x10000, + S = 0x20000, + T = 0x40000, + U = 0x80000, + V = 0x100000, + W = 0x200000, + X = 0x400000, + Y = 0x800000, + Z = 0x1000000, + AA = 0x2000000, + AB = 0x4000000, + AC = 0x8000000, + AD = 0x10000000, + AE = 0x20000000 +}; + +typedef unsigned int MY_ENUM_FLAGS; + +MY_ENUM_FLAGS check_and_subs(MY_ENUM_FLAGS x) +{ + + #define CHECK_AND_SUB(flag) if ((x & flag) == flag) { x -= flag; } + CHECK_AND_SUB(A); + CHECK_AND_SUB(B); + CHECK_AND_SUB(C); + CHECK_AND_SUB(D); + CHECK_AND_SUB(E); + CHECK_AND_SUB(F); + CHECK_AND_SUB(G); + CHECK_AND_SUB(H); + CHECK_AND_SUB(I); + CHECK_AND_SUB(J); + CHECK_AND_SUB(L); + CHECK_AND_SUB(M); + CHECK_AND_SUB(N); + CHECK_AND_SUB(O); + CHECK_AND_SUB(P); + CHECK_AND_SUB(Q); + CHECK_AND_SUB(R); + CHECK_AND_SUB(S); + CHECK_AND_SUB(T); + CHECK_AND_SUB(U); + CHECK_AND_SUB(V); + CHECK_AND_SUB(W); + CHECK_AND_SUB(X); + CHECK_AND_SUB(Y); + CHECK_AND_SUB(Z); + CHECK_AND_SUB(AA); + CHECK_AND_SUB(AB); + CHECK_AND_SUB(AC); + CHECK_AND_SUB(AD); + CHECK_AND_SUB(AE); + #undef CHECK_AND_SUB + + return x; +} \ No newline at end of file diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected index dd7fc398f0ca..a4aee501a940 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected @@ -1025,6 +1025,7 @@ | test.c:970:12:970:12 | y | 256 | | test.c:971:9:971:9 | x | 2147483647 | | test.c:972:9:972:9 | y | 256 | +| test.c:985:7:985:7 | e | 2147483647 | | test.cpp:10:7:10:7 | b | 2147483647 | | test.cpp:11:5:11:5 | x | 2147483647 | | test.cpp:13:10:13:10 | x | 2147483647 | @@ -1093,3 +1094,64 @@ | test.cpp:122:4:122:4 | n | 32767 | | test.cpp:122:8:122:8 | n | 0 | | test.cpp:122:12:122:12 | n | 32767 | +| test_nr_of_bounds.cpp:40:5:40:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:40:5:40:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:41:5:41:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:41:5:41:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:42:5:42:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:42:5:42:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:43:5:43:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:43:5:43:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:44:5:44:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:44:5:44:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:45:5:45:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:45:5:45:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:46:5:46:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:46:5:46:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:47:5:47:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:47:5:47:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:48:5:48:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:48:5:48:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:49:5:49:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:49:5:49:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:50:5:50:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:50:5:50:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:51:5:51:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:51:5:51:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:52:5:52:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:52:5:52:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:53:5:53:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:53:5:53:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:54:5:54:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:54:5:54:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:55:5:55:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:55:5:55:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:56:5:56:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:56:5:56:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:57:5:57:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:57:5:57:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:58:5:58:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:58:5:58:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:59:5:59:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:59:5:59:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:60:5:60:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:60:5:60:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:61:5:61:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:61:5:61:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:62:5:62:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:62:5:62:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:63:5:63:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:63:5:63:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:64:5:64:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:64:5:64:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:65:5:65:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:65:5:65:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:66:5:66:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:66:5:66:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:67:5:67:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:67:5:67:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:68:5:68:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:68:5:68:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:69:5:69:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:69:5:69:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:72:12:72:12 | x | 4294967295 | diff --git a/csharp/documentation/library-coverage/coverage.csv b/csharp/documentation/library-coverage/coverage.csv index c75661cc3dda..5dbefc4c8167 100644 --- a/csharp/documentation/library-coverage/coverage.csv +++ b/csharp/documentation/library-coverage/coverage.csv @@ -44,5 +44,5 @@ NHibernate,3,,,,,,,,,,,,3,,,,,,,,,, Newtonsoft.Json,,,91,,,,,,,,,,,,,,,,,,,73,18 ServiceStack,194,,7,27,,,,,75,,,,92,,,,,,,,,7, SourceGenerators,,,5,,,,,,,,,,,,,,,,,,,,5 -System,59,47,12491,,6,5,12,,,4,1,,31,2,,6,15,17,4,3,,6378,6113 +System,59,47,12495,,6,5,12,,,4,1,,31,2,,6,15,17,4,3,,6382,6113 Windows.Security.Cryptography.Core,1,,,,,,,1,,,,,,,,,,,,,,, diff --git a/csharp/documentation/library-coverage/coverage.rst b/csharp/documentation/library-coverage/coverage.rst index 3f67bec413dc..4061f675b859 100644 --- a/csharp/documentation/library-coverage/coverage.rst +++ b/csharp/documentation/library-coverage/coverage.rst @@ -8,7 +8,7 @@ C# framework & library support Framework / library,Package,Flow sources,Taint & value steps,Sinks (total),`CWE-079` :sub:`Cross-site scripting` `ServiceStack `_,"``ServiceStack.*``, ``ServiceStack``",,7,194, - System,"``System.*``, ``System``",47,12491,59,5 + System,"``System.*``, ``System``",47,12495,59,5 Others,"``Amazon.Lambda.APIGatewayEvents``, ``Amazon.Lambda.Core``, ``Dapper``, ``ILCompiler``, ``ILLink.RoslynAnalyzer``, ``ILLink.Shared``, ``ILLink.Tasks``, ``Internal.IL``, ``Internal.Pgo``, ``Internal.TypeSystem``, ``Microsoft.ApplicationBlocks.Data``, ``Microsoft.AspNetCore.Components``, ``Microsoft.AspNetCore.Http``, ``Microsoft.AspNetCore.Mvc``, ``Microsoft.AspNetCore.WebUtilities``, ``Microsoft.CSharp``, ``Microsoft.Data.SqlClient``, ``Microsoft.Diagnostics.Tools.Pgo``, ``Microsoft.DotNet.Build.Tasks``, ``Microsoft.DotNet.PlatformAbstractions``, ``Microsoft.EntityFrameworkCore``, ``Microsoft.Extensions.Caching.Distributed``, ``Microsoft.Extensions.Caching.Memory``, ``Microsoft.Extensions.Configuration``, ``Microsoft.Extensions.DependencyInjection``, ``Microsoft.Extensions.DependencyModel``, ``Microsoft.Extensions.Diagnostics.Metrics``, ``Microsoft.Extensions.FileProviders``, ``Microsoft.Extensions.FileSystemGlobbing``, ``Microsoft.Extensions.Hosting``, ``Microsoft.Extensions.Http``, ``Microsoft.Extensions.Logging``, ``Microsoft.Extensions.Options``, ``Microsoft.Extensions.Primitives``, ``Microsoft.Interop``, ``Microsoft.JSInterop``, ``Microsoft.NET.Build.Tasks``, ``Microsoft.VisualBasic``, ``Microsoft.Win32``, ``Mono.Linker``, ``MySql.Data.MySqlClient``, ``NHibernate``, ``Newtonsoft.Json``, ``SourceGenerators``, ``Windows.Security.Cryptography.Core``",60,2406,162,4 - Totals,,107,14904,415,9 + Totals,,107,14908,415,9 diff --git a/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/old.dbscheme b/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/old.dbscheme new file mode 100644 index 000000000000..178a7e6cf335 --- /dev/null +++ b/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/old.dbscheme @@ -0,0 +1,1489 @@ +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2021-07-14 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * csc f1.cs f2.cs f3.cs + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + unique int id : @compilation, + string cwd : string ref +); + +compilation_info( + int id : @compilation ref, + string info_key: string ref, + string info_value: string ref +) + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | --compiler + * 1 | *path to compiler* + * 2 | f1.cs + * 3 | f2.cs + * 4 | f3.cs + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile.rsp` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.cs + * 1 | f2.cs + * 2 | f3.cs + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The references used by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs /r:ref1.dll /r:ref2.dll /r:ref3.dll + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | ref1.dll + * 1 | ref2.dll + * 2 | ref3.dll + */ +#keyset[id, num] +compilation_referencing_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + unique int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location ref +); + +extractor_messages( + unique int id: @extractor_message, + int severity: int ref, + string origin : string ref, + string text : string ref, + string entity : string ref, + int location: @location ref, + string stack_trace : string ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +compilation_assembly( + unique int id : @compilation ref, + int assembly: @assembly ref +) + +// Populated by the CSV extractor +externalData( + int id: @externalDataElement, + string path: string ref, + int column: int ref, + string value: string ref); + +sourceLocationPrefix( + string prefix: string ref); + +/* + * Overlay support + */ + +/** + * The CLI will automatically emit the tuple `databaseMetadata("isOverlay", "true")`, + * along with an `overlayChangedFiles` tuple for each new/modified/deleted file, + * when building an overlay database, and these can be used by the discard predicates. + */ +databaseMetadata( + string metadataKey : string ref, + string value : string ref +); + +overlayChangedFiles( + string path : string ref +); + +/* + * C# dbscheme + */ + +/** ELEMENTS **/ + +@element = @declaration | @stmt | @expr | @modifier | @attribute | @namespace_declaration + | @using_directive | @type_parameter_constraints | @externalDataElement + | @xmllocatable | @asp_element | @namespace | @preprocessor_directive; + +@declaration = @callable | @generic | @assignable | @namespace; + +@named_element = @namespace | @declaration; + +@declaration_with_accessors = @property | @indexer | @event; + +@assignable = @variable | @assignable_with_accessors | @event; + +@assignable_with_accessors = @property | @indexer; + +@attributable = @assembly | @field | @parameter | @operator | @method | @constructor + | @destructor | @callable_accessor | @value_or_ref_type | @declaration_with_accessors + | @local_function | @lambda_expr; + +/** LOCATIONS, ASEMMBLIES, MODULES, FILES and FOLDERS **/ + +@location = @location_default | @assembly; + +@locatable = @declaration_with_accessors | @callable_accessor | @declaration_or_directive + | @diagnostic | @extractor_message | @preprocessor_directive | @attribute | @type_mention | @type_parameter_constraints + | @declaration_with_accessors | @callable_accessor | @operator | @method + | @constructor | @destructor | @field | @local_variable | @parameter | @stmt | @expr + | @xmllocatable | @commentline | @commentblock | @asp_element + +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +locations_mapped( + unique int id: @location_default ref, + int mapped_to: @location_default ref); + +@sourceline = @file | @callable | @xmllocatable; + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref); + +assemblies( + unique int id: @assembly, + int file: @file ref, + string fullname: string ref, + string name: string ref, + string version: string ref); + +files( + unique int id: @file, + string name: string ref); + +folders( + unique int id: @folder, + string name: string ref); + +@container = @folder | @file ; + +containerparent( + int parent: @container ref, + unique int child: @container ref); + +file_extraction_mode( + unique int file: @file ref, + int mode: int ref + /* 0 = normal, 1 = standalone extractor */ + ); + +/** NAMESPACES **/ + +@type_container = @namespace | @type; + +namespaces( + unique int id: @namespace, + string name: string ref); + +namespace_declarations( + unique int id: @namespace_declaration, + int namespace_id: @namespace ref); + +namespace_declaration_location( + unique int id: @namespace_declaration ref, + int loc: @location ref); + +parent_namespace( + unique int child_id: @type_container ref, + int namespace_id: @namespace ref); + +@declaration_or_directive = @namespace_declaration | @type | @using_directive; + +parent_namespace_declaration( + int child_id: @declaration_or_directive ref, // cannot be unique because of partial classes + int namespace_id: @namespace_declaration ref); + +@using_directive = @using_namespace_directive | @using_static_directive; + +using_global( + unique int id: @using_directive ref +); + +using_namespace_directives( + unique int id: @using_namespace_directive, + int namespace_id: @namespace ref); + +using_static_directives( + unique int id: @using_static_directive, + int type_id: @type_or_ref ref); + +using_directive_location( + unique int id: @using_directive ref, + int loc: @location ref); + +@preprocessor_directive = @pragma_warning | @pragma_checksum | @directive_define | @directive_undefine | @directive_warning + | @directive_error | @directive_nullable | @directive_line | @directive_region | @directive_endregion | @directive_if + | @directive_elif | @directive_else | @directive_endif; + +@conditional_directive = @directive_if | @directive_elif; +@branch_directive = @directive_if | @directive_elif | @directive_else; + +directive_ifs( + unique int id: @directive_if, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref); /* 0: false, 1: true */ + +directive_elifs( + unique int id: @directive_elif, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +directive_elses( + unique int id: @directive_else, + int branchTaken: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +#keyset[id, start] +directive_endifs( + unique int id: @directive_endif, + unique int start: @directive_if ref); + +directive_define_symbols( + unique int id: @define_symbol_expr ref, + string name: string ref); + +directive_regions( + unique int id: @directive_region, + string name: string ref); + +#keyset[id, start] +directive_endregions( + unique int id: @directive_endregion, + unique int start: @directive_region ref); + +directive_lines( + unique int id: @directive_line, + int kind: int ref); /* 0: default, 1: hidden, 2: numeric, 3: span */ + +directive_line_value( + unique int id: @directive_line ref, + int line: int ref); + +directive_line_file( + unique int id: @directive_line ref, + int file: @file ref); + +directive_line_offset( + unique int id: @directive_line ref, + int offset: int ref); + +directive_line_span( + unique int id: @directive_line ref, + int startLine: int ref, + int startColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +directive_nullables( + unique int id: @directive_nullable, + int setting: int ref, /* 0: disable, 1: enable, 2: restore */ + int target: int ref); /* 0: none, 1: annotations, 2: warnings */ + +directive_warnings( + unique int id: @directive_warning, + string message: string ref); + +directive_errors( + unique int id: @directive_error, + string message: string ref); + +directive_undefines( + unique int id: @directive_undefine, + string name: string ref); + +directive_defines( + unique int id: @directive_define, + string name: string ref); + +pragma_checksums( + unique int id: @pragma_checksum, + int file: @file ref, + string guid: string ref, + string bytes: string ref); + +pragma_warnings( + unique int id: @pragma_warning, + int kind: int ref /* 0 = disable, 1 = restore */); + +#keyset[id, index] +pragma_warning_error_codes( + int id: @pragma_warning ref, + string errorCode: string ref, + int index: int ref); + +preprocessor_directive_location( + unique int id: @preprocessor_directive ref, + int loc: @location ref); + +preprocessor_directive_compilation( + int id: @preprocessor_directive ref, + int compilation: @compilation ref); + +preprocessor_directive_active( + unique int id: @preprocessor_directive ref, + int active: int ref); /* 0: false, 1: true */ + +/** TYPES **/ + +types( + unique int id: @type, + int kind: int ref, + string name: string ref); + +case @type.kind of + 1 = @bool_type +| 2 = @char_type +| 3 = @decimal_type +| 4 = @sbyte_type +| 5 = @short_type +| 6 = @int_type +| 7 = @long_type +| 8 = @byte_type +| 9 = @ushort_type +| 10 = @uint_type +| 11 = @ulong_type +| 12 = @float_type +| 13 = @double_type +| 14 = @enum_type +| 15 = @struct_type +| 17 = @class_type +| 19 = @interface_type +| 20 = @delegate_type +| 21 = @null_type +| 22 = @type_parameter +| 23 = @pointer_type +| 24 = @nullable_type +| 25 = @array_type +| 26 = @void_type +| 27 = @int_ptr_type +| 28 = @uint_ptr_type +| 29 = @dynamic_type +| 30 = @arglist_type +| 31 = @unknown_type +| 32 = @tuple_type +| 33 = @function_pointer_type +| 34 = @inline_array_type +| 35 = @extension_type + ; + +@simple_type = @bool_type | @char_type | @integral_type | @floating_point_type | @decimal_type; +@integral_type = @signed_integral_type | @unsigned_integral_type; +@signed_integral_type = @sbyte_type | @short_type | @int_type | @long_type; +@unsigned_integral_type = @byte_type | @ushort_type | @uint_type | @ulong_type; +@floating_point_type = @float_type | @double_type; +@value_type = @simple_type | @enum_type | @struct_type | @nullable_type | @int_ptr_type + | @uint_ptr_type | @tuple_type | @void_type | @inline_array_type; +@ref_type = @class_type | @interface_type | @array_type | @delegate_type | @null_type + | @dynamic_type | @extension_type; +@value_or_ref_type = @value_type | @ref_type; + +typerefs( + unique int id: @typeref, + string name: string ref); + +typeref_type( + int id: @typeref ref, + unique int typeId: @type ref); + +@type_or_ref = @type | @typeref; + +array_element_type( + unique int array: @array_type ref, + int dimension: int ref, + int rank: int ref, + int element: @type_or_ref ref); + +nullable_underlying_type( + unique int nullable: @nullable_type ref, + int underlying: @type_or_ref ref); + +pointer_referent_type( + unique int pointer: @pointer_type ref, + int referent: @type_or_ref ref); + +enum_underlying_type( + unique int enum_id: @enum_type ref, + int underlying_type_id: @type_or_ref ref); + +delegate_return_type( + unique int delegate_id: @delegate_type ref, + int return_type_id: @type_or_ref ref); + +function_pointer_return_type( + unique int function_pointer_id: @function_pointer_type ref, + int return_type_id: @type_or_ref ref); + +extension_receiver_type( + unique int extension: @extension_type ref, + int receiver_type_id: @type_or_ref ref); + +extend( + int sub: @type ref, + int super: @type_or_ref ref); + +anonymous_types( + unique int id: @type ref); + +@interface_or_ref = @interface_type | @typeref; + +implement( + int sub: @type ref, + int super: @type_or_ref ref); + +type_location( + int id: @type ref, + int loc: @location ref); + +tuple_underlying_type( + unique int tuple: @tuple_type ref, + int struct: @type_or_ref ref); + +#keyset[tuple, index] +tuple_element( + int tuple: @tuple_type ref, + int index: int ref, + unique int field: @field ref); + +attributes( + unique int id: @attribute, + int kind: int ref, + int type_id: @type_or_ref ref, + int target: @attributable ref); + +case @attribute.kind of + 0 = @attribute_default +| 1 = @attribute_return +| 2 = @attribute_assembly +| 3 = @attribute_module +; + +attribute_location( + int id: @attribute ref, + int loc: @location ref); + +@type_mention_parent = @element | @type_mention; + +type_mention( + unique int id: @type_mention, + int type_id: @type_or_ref ref, + int parent: @type_mention_parent ref); + +type_mention_location( + unique int id: @type_mention ref, + int loc: @location ref); + +@has_type_annotation = @assignable | @type_parameter | @callable | @expr | @delegate_type | @generic | @function_pointer_type; + +/** + * A direct annotation on an entity, for example `string? x;`. + * + * Annotations: + * 2 = reftype is not annotated "!" + * 3 = reftype is annotated "?" + * 4 = readonly ref type / in parameter + * 5 = ref type parameter, return or local variable + * 6 = out parameter + * + * Note that the annotation depends on the element it annotates. + * @assignable: The annotation is on the type of the assignable, for example the variable type. + * @type_parameter: The annotation is on the reftype constraint + * @callable: The annotation is on the return type + * @array_type: The annotation is on the element type + */ +type_annotation(int id: @has_type_annotation ref, int annotation: int ref); + +nullability(unique int nullability: @nullability, int kind: int ref); + +case @nullability.kind of + 0 = @oblivious +| 1 = @not_annotated +| 2 = @annotated +; + +#keyset[parent, index] +nullability_parent(int nullability: @nullability ref, int index: int ref, int parent: @nullability ref) + +type_nullability(int id: @has_type_annotation ref, int nullability: @nullability ref); + +/** + * The nullable flow state of an expression, as determined by Roslyn. + * 0 = none (default, not populated) + * 1 = not null + * 2 = maybe null + */ +expr_flowstate(unique int id: @expr ref, int state: int ref); + +/** GENERICS **/ + +@generic = @type | @method | @local_function; + +type_parameters( + unique int id: @type_parameter ref, + int index: int ref, + int generic_id: @generic ref, + int variance: int ref /* none = 0, out = 1, in = 2 */); + +#keyset[constructed_id, index] +type_arguments( + int id: @type_or_ref ref, + int index: int ref, + int constructed_id: @generic_or_ref ref); + +@generic_or_ref = @generic | @typeref; + +constructed_generic( + unique int constructed: @generic ref, + int generic: @generic_or_ref ref); + +type_parameter_constraints( + unique int id: @type_parameter_constraints, + int param_id: @type_parameter ref); + +type_parameter_constraints_location( + int id: @type_parameter_constraints ref, + int loc: @location ref); + +general_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int kind: int ref /* class = 1, struct = 2, new = 3 */); + +specific_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref); + +specific_type_parameter_nullability( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref, + int nullability: @nullability ref); + +/** FUNCTION POINTERS */ + +function_pointer_calling_conventions( + int id: @function_pointer_type ref, + int kind: int ref); + +#keyset[id, index] +has_unmanaged_calling_conventions( + int id: @function_pointer_type ref, + int index: int ref, + int conv_id: @type_or_ref ref); + +/** MODIFIERS */ + +@modifiable = @modifiable_direct | @event_accessor; + +@modifiable_direct = @member | @accessor | @local_function | @anonymous_function_expr; + +modifiers( + unique int id: @modifier, + string name: string ref); + +has_modifiers( + int id: @modifiable_direct ref, + int mod_id: @modifier ref); + +/** MEMBERS **/ + +@member = @method | @constructor | @destructor | @field | @property | @event | @operator | @indexer | @type; + +@named_exprorstmt = @goto_stmt | @labeled_stmt | @expr; + +@virtualizable = @method | @property | @indexer | @event | @operator; + +exprorstmt_name( + unique int parent_id: @named_exprorstmt ref, + string name: string ref); + +nested_types( + unique int id: @type ref, + int declaring_type_id: @type ref, + int unbound_id: @type ref); + +properties( + unique int id: @property, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @property ref); + +property_location( + int id: @property ref, + int loc: @location ref); + +indexers( + unique int id: @indexer, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @indexer ref); + +indexer_location( + int id: @indexer ref, + int loc: @location ref); + +accessors( + unique int id: @accessor, + int kind: int ref, + string name: string ref, + int declaring_member_id: @member ref, + int unbound_id: @accessor ref); + +case @accessor.kind of + 1 = @getter +| 2 = @setter + ; + +init_only_accessors( + unique int id: @accessor ref); + +accessor_location( + int id: @accessor ref, + int loc: @location ref); + +events( + unique int id: @event, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @event ref); + +event_location( + int id: @event ref, + int loc: @location ref); + +event_accessors( + unique int id: @event_accessor, + int kind: int ref, + string name: string ref, + int declaring_event_id: @event ref, + int unbound_id: @event_accessor ref); + +case @event_accessor.kind of + 1 = @add_event_accessor +| 2 = @remove_event_accessor + ; + +event_accessor_location( + int id: @event_accessor ref, + int loc: @location ref); + +operators( + unique int id: @operator, + string name: string ref, + string symbol: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @operator ref); + +operator_location( + int id: @operator ref, + int loc: @location ref); + +constant_value( + int id: @variable ref, + string value: string ref); + +/** CALLABLES **/ + +@callable = @method | @constructor | @destructor | @operator | @callable_accessor | @anonymous_function_expr | @local_function; + +@callable_accessor = @accessor | @event_accessor; + +methods( + unique int id: @method, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @method ref); + +method_location( + int id: @method ref, + int loc: @location ref); + +constructors( + unique int id: @constructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @constructor ref); + +constructor_location( + int id: @constructor ref, + int loc: @location ref); + +destructors( + unique int id: @destructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @destructor ref); + +destructor_location( + int id: @destructor ref, + int loc: @location ref); + +overrides( + int id: @callable ref, + int base_id: @callable ref); + +explicitly_implements( + int id: @member ref, + int interface_id: @interface_or_ref ref); + +local_functions( + unique int id: @local_function, + string name: string ref, + int return_type: @type ref, + int unbound_id: @local_function ref); + +local_function_stmts( + unique int fn: @local_function_stmt ref, + int stmt: @local_function ref); + +/** VARIABLES **/ + +@variable = @local_scope_variable | @field; + +@local_scope_variable = @local_variable | @parameter; + +fields( + unique int id: @field, + int kind: int ref, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @field ref); + +case @field.kind of + 1 = @addressable_field +| 2 = @constant + ; + +field_location( + int id: @field ref, + int loc: @location ref); + +localvars( + unique int id: @local_variable, + int kind: int ref, + string name: string ref, + int implicitly_typed: int ref /* 0 = no, 1 = yes */, + int type_id: @type_or_ref ref, + int parent_id: @local_var_decl_expr ref); + +case @local_variable.kind of + 1 = @addressable_local_variable +| 2 = @local_constant +| 3 = @local_variable_ref + ; + +localvar_location( + unique int id: @local_variable ref, + int loc: @location ref); + +@parameterizable = @callable | @delegate_type | @indexer | @function_pointer_type | @extension_type; + +#keyset[name, parent_id] +#keyset[index, parent_id] +params( + unique int id: @parameter, + string name: string ref, + int type_id: @type_or_ref ref, + int index: int ref, + int mode: int ref, /* value = 0, ref = 1, out = 2, params/array = 3, this = 4, in = 5, ref readonly = 6 */ + int parent_id: @parameterizable ref, + int unbound_id: @parameter ref); + +param_location( + int id: @parameter ref, + int loc: @location ref); + +@has_scoped_annotation = @local_scope_variable + +scoped_annotation( + int id: @has_scoped_annotation ref, + int kind: int ref // scoped ref = 1, scoped value = 2 + ); + +/** STATEMENTS **/ + +@exprorstmt_parent = @control_flow_element | @top_level_exprorstmt_parent; + +statements( + unique int id: @stmt, + int kind: int ref); + +#keyset[index, parent] +stmt_parent( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_stmt_parent = @callable; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +stmt_parent_top_level( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @top_level_stmt_parent ref); + +case @stmt.kind of + 1 = @block_stmt +| 2 = @expr_stmt +| 3 = @if_stmt +| 4 = @switch_stmt +| 5 = @while_stmt +| 6 = @do_stmt +| 7 = @for_stmt +| 8 = @foreach_stmt +| 9 = @break_stmt +| 10 = @continue_stmt +| 11 = @goto_stmt +| 12 = @goto_case_stmt +| 13 = @goto_default_stmt +| 14 = @throw_stmt +| 15 = @return_stmt +| 16 = @yield_stmt +| 17 = @try_stmt +| 18 = @checked_stmt +| 19 = @unchecked_stmt +| 20 = @lock_stmt +| 21 = @using_block_stmt +| 22 = @var_decl_stmt +| 23 = @const_decl_stmt +| 24 = @empty_stmt +| 25 = @unsafe_stmt +| 26 = @fixed_stmt +| 27 = @label_stmt +| 28 = @catch +| 29 = @case_stmt +| 30 = @local_function_stmt +| 31 = @using_decl_stmt + ; + +@using_stmt = @using_block_stmt | @using_decl_stmt; + +@labeled_stmt = @label_stmt | @case; + +@decl_stmt = @var_decl_stmt | @const_decl_stmt | @using_decl_stmt; + +@cond_stmt = @if_stmt | @switch_stmt; + +@loop_stmt = @while_stmt | @do_stmt | @for_stmt | @foreach_stmt; + +@jump_stmt = @break_stmt | @goto_any_stmt | @continue_stmt | @throw_stmt | @return_stmt + | @yield_stmt; + +@goto_any_stmt = @goto_default_stmt | @goto_case_stmt | @goto_stmt; + + +stmt_location( + unique int id: @stmt ref, + int loc: @location ref); + +catch_type( + unique int catch_id: @catch ref, + int type_id: @type_or_ref ref, + int kind: int ref /* explicit = 1, implicit = 2 */); + +foreach_stmt_info( + unique int id: @foreach_stmt ref, + int kind: int ref /* non-async = 1, async = 2 */); + +@foreach_symbol = @method | @property | @type_or_ref; + +#keyset[id, kind] +foreach_stmt_desugar( + int id: @foreach_stmt ref, + int symbol: @foreach_symbol ref, + int kind: int ref /* GetEnumeratorMethod = 1, CurrentProperty = 2, MoveNextMethod = 3, DisposeMethod = 4, ElementType = 5 */); + +/** EXPRESSIONS **/ + +expressions( + unique int id: @expr, + int kind: int ref, + int type_id: @type_or_ref ref); + +#keyset[index, parent] +expr_parent( + unique int expr: @expr ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_expr_parent = @attribute | @field | @property | @indexer | @parameter | @directive_if | @directive_elif; + +@top_level_exprorstmt_parent = @top_level_expr_parent | @top_level_stmt_parent; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +expr_parent_top_level( + unique int expr: @expr ref, + int index: int ref, + int parent: @top_level_exprorstmt_parent ref); + +case @expr.kind of +/* literal */ + 1 = @bool_literal_expr +| 2 = @char_literal_expr +| 3 = @decimal_literal_expr +| 4 = @int_literal_expr +| 5 = @long_literal_expr +| 6 = @uint_literal_expr +| 7 = @ulong_literal_expr +| 8 = @float_literal_expr +| 9 = @double_literal_expr +| 10 = @utf16_string_literal_expr +| 11 = @null_literal_expr +/* primary & unary */ +| 12 = @this_access_expr +| 13 = @base_access_expr +| 14 = @local_variable_access_expr +| 15 = @parameter_access_expr +| 16 = @field_access_expr +| 17 = @property_access_expr +| 18 = @method_access_expr +| 19 = @event_access_expr +| 20 = @indexer_access_expr +| 21 = @array_access_expr +| 22 = @type_access_expr +| 23 = @typeof_expr +| 24 = @method_invocation_expr +| 25 = @delegate_invocation_expr +| 26 = @operator_invocation_expr +| 27 = @cast_expr +| 28 = @object_creation_expr +| 29 = @explicit_delegate_creation_expr +| 30 = @implicit_delegate_creation_expr +| 31 = @array_creation_expr +| 32 = @default_expr +| 33 = @plus_expr +| 34 = @minus_expr +| 35 = @bit_not_expr +| 36 = @log_not_expr +| 37 = @post_incr_expr +| 38 = @post_decr_expr +| 39 = @pre_incr_expr +| 40 = @pre_decr_expr +/* multiplicative */ +| 41 = @mul_expr +| 42 = @div_expr +| 43 = @rem_expr +/* additive */ +| 44 = @add_expr +| 45 = @sub_expr +/* shift */ +| 46 = @lshift_expr +| 47 = @rshift_expr +/* relational */ +| 48 = @lt_expr +| 49 = @gt_expr +| 50 = @le_expr +| 51 = @ge_expr +/* equality */ +| 52 = @eq_expr +| 53 = @ne_expr +/* logical */ +| 54 = @bit_and_expr +| 55 = @bit_xor_expr +| 56 = @bit_or_expr +| 57 = @log_and_expr +| 58 = @log_or_expr +/* type testing */ +| 59 = @is_expr +| 60 = @as_expr +/* null coalescing */ +| 61 = @null_coalescing_expr +/* conditional */ +| 62 = @conditional_expr +/* assignment */ +| 63 = @simple_assign_expr +| 64 = @assign_add_expr +| 65 = @assign_sub_expr +| 66 = @assign_mul_expr +| 67 = @assign_div_expr +| 68 = @assign_rem_expr +| 69 = @assign_and_expr +| 70 = @assign_xor_expr +| 71 = @assign_or_expr +| 72 = @assign_lshift_expr +| 73 = @assign_rshift_expr +/* more */ +| 74 = @object_init_expr +| 75 = @collection_init_expr +| 76 = @array_init_expr +| 77 = @checked_expr +| 78 = @unchecked_expr +| 79 = @constructor_init_expr +| 80 = @add_event_expr +| 81 = @remove_event_expr +| 82 = @par_expr +| 83 = @local_var_decl_expr +| 84 = @lambda_expr +| 85 = @anonymous_method_expr +| 86 = @namespace_expr +/* dynamic */ +| 92 = @dynamic_element_access_expr +| 93 = @dynamic_member_access_expr +/* unsafe */ +| 100 = @pointer_indirection_expr +| 101 = @address_of_expr +| 102 = @sizeof_expr +/* async */ +| 103 = @await_expr +/* C# 6.0 */ +| 104 = @nameof_expr +| 105 = @interpolated_string_expr +| 106 = @unknown_expr +/* C# 7.0 */ +| 107 = @throw_expr +| 108 = @tuple_expr +| 109 = @local_function_invocation_expr +| 110 = @ref_expr +| 111 = @discard_expr +/* C# 8.0 */ +| 112 = @range_expr +| 113 = @index_expr +| 114 = @switch_expr +| 115 = @recursive_pattern_expr +| 116 = @property_pattern_expr +| 117 = @positional_pattern_expr +| 118 = @switch_case_expr +| 119 = @assign_coalesce_expr +| 120 = @suppress_nullable_warning_expr +| 121 = @namespace_access_expr +/* C# 9.0 */ +| 122 = @lt_pattern_expr +| 123 = @gt_pattern_expr +| 124 = @le_pattern_expr +| 125 = @ge_pattern_expr +| 126 = @not_pattern_expr +| 127 = @and_pattern_expr +| 128 = @or_pattern_expr +| 129 = @function_pointer_invocation_expr +| 130 = @with_expr +/* C# 11.0 */ +| 131 = @list_pattern_expr +| 132 = @slice_pattern_expr +| 133 = @urshift_expr +| 134 = @assign_urshift_expr +| 135 = @utf8_string_literal_expr +/* C# 12.0 */ +| 136 = @collection_expr +| 137 = @spread_element_expr +| 138 = @interpolated_string_insert_expr +/* Preprocessor */ +| 999 = @define_symbol_expr +; + +@switch = @switch_stmt | @switch_expr; +@case = @case_stmt | @switch_case_expr; +@pattern_match = @case | @is_expr; +@unary_pattern_expr = @not_pattern_expr; +@relational_pattern_expr = @gt_pattern_expr | @lt_pattern_expr | @ge_pattern_expr | @le_pattern_expr; +@binary_pattern_expr = @and_pattern_expr | @or_pattern_expr; + +@integer_literal_expr = @int_literal_expr | @long_literal_expr | @uint_literal_expr | @ulong_literal_expr; +@real_literal_expr = @float_literal_expr | @double_literal_expr | @decimal_literal_expr; +@string_literal_expr = @utf16_string_literal_expr | @utf8_string_literal_expr; +@literal_expr = @bool_literal_expr | @char_literal_expr | @integer_literal_expr | @real_literal_expr + | @string_literal_expr | @null_literal_expr; + +@assign_expr = @simple_assign_expr | @assign_op_expr | @local_var_decl_expr; +@assign_op_expr = @assign_arith_expr | @assign_bitwise_expr | @assign_event_expr | @assign_coalesce_expr; +@assign_event_expr = @add_event_expr | @remove_event_expr; + +@assign_arith_expr = @assign_add_expr | @assign_sub_expr | @assign_mul_expr | @assign_div_expr + | @assign_rem_expr +@assign_bitwise_expr = @assign_and_expr | @assign_or_expr | @assign_xor_expr + | @assign_lshift_expr | @assign_rshift_expr | @assign_urshift_expr; + +@member_access_expr = @field_access_expr | @property_access_expr | @indexer_access_expr | @event_access_expr + | @method_access_expr | @type_access_expr | @dynamic_member_access_expr; +@access_expr = @member_access_expr | @this_access_expr | @base_access_expr | @assignable_access_expr | @namespace_access_expr; +@element_access_expr = @indexer_access_expr | @array_access_expr | @dynamic_element_access_expr; + +@local_variable_access = @local_variable_access_expr | @local_var_decl_expr; +@local_scope_variable_access_expr = @parameter_access_expr | @local_variable_access; +@variable_access_expr = @local_scope_variable_access_expr | @field_access_expr; + +@assignable_access_expr = @variable_access_expr | @property_access_expr | @element_access_expr + | @event_access_expr | @dynamic_member_access_expr; + +@objectorcollection_init_expr = @object_init_expr | @collection_init_expr; + +@delegate_creation_expr = @explicit_delegate_creation_expr | @implicit_delegate_creation_expr; + +@bin_arith_op_expr = @mul_expr | @div_expr | @rem_expr | @add_expr | @sub_expr; +@incr_op_expr = @pre_incr_expr | @post_incr_expr; +@decr_op_expr = @pre_decr_expr | @post_decr_expr; +@mut_op_expr = @incr_op_expr | @decr_op_expr; +@un_arith_op_expr = @plus_expr | @minus_expr | @mut_op_expr; +@arith_op_expr = @bin_arith_op_expr | @un_arith_op_expr; + +@ternary_log_op_expr = @conditional_expr; +@bin_log_op_expr = @log_and_expr | @log_or_expr | @null_coalescing_expr; +@un_log_op_expr = @log_not_expr; +@log_expr = @un_log_op_expr | @bin_log_op_expr | @ternary_log_op_expr; + +@bin_bit_op_expr = @bit_and_expr | @bit_or_expr | @bit_xor_expr | @lshift_expr + | @rshift_expr | @urshift_expr; +@un_bit_op_expr = @bit_not_expr; +@bit_expr = @un_bit_op_expr | @bin_bit_op_expr; + +@equality_op_expr = @eq_expr | @ne_expr; +@rel_op_expr = @gt_expr | @lt_expr| @ge_expr | @le_expr; +@comp_expr = @equality_op_expr | @rel_op_expr; + +@op_expr = @assign_expr | @un_op | @bin_op | @ternary_op; + +@ternary_op = @ternary_log_op_expr; +@bin_op = @bin_arith_op_expr | @bin_log_op_expr | @bin_bit_op_expr | @comp_expr; +@un_op = @un_arith_op_expr | @un_log_op_expr | @un_bit_op_expr | @sizeof_expr + | @pointer_indirection_expr | @address_of_expr; + +@anonymous_function_expr = @lambda_expr | @anonymous_method_expr; + +@call = @method_invocation_expr | @constructor_init_expr | @operator_invocation_expr + | @delegate_invocation_expr | @object_creation_expr | @call_access_expr + | @local_function_invocation_expr | @function_pointer_invocation_expr; + +@call_access_expr = @property_access_expr | @event_access_expr | @indexer_access_expr; + +@late_bindable_expr = @dynamic_element_access_expr | @dynamic_member_access_expr + | @object_creation_expr | @method_invocation_expr | @operator_invocation_expr; + +@throw_element = @throw_expr | @throw_stmt; + +@implicitly_typeable_object_creation_expr = @object_creation_expr | @explicit_delegate_creation_expr; + +implicitly_typed_array_creation( + unique int id: @array_creation_expr ref); + +explicitly_sized_array_creation( + unique int id: @array_creation_expr ref); + +stackalloc_array_creation( + unique int id: @array_creation_expr ref); + +implicitly_typed_object_creation( + unique int id: @implicitly_typeable_object_creation_expr ref); + +mutator_invocation_mode( + unique int id: @operator_invocation_expr ref, + int mode: int ref /* prefix = 1, postfix = 2*/); + +expr_value( + unique int id: @expr ref, + string value: string ref); + +expr_call( + unique int caller_id: @expr ref, + int target_id: @callable ref); + +expr_access( + unique int accesser_id: @access_expr ref, + int target_id: @accessible ref); + +@accessible = @method | @assignable | @local_function | @namespace; + +expr_location( + unique int id: @expr ref, + int loc: @location ref); + +dynamic_member_name( + unique int id: @late_bindable_expr ref, + string name: string ref); + +@qualifiable_expr = @member_access_expr + | @method_invocation_expr + | @element_access_expr; + +conditional_access( + unique int id: @qualifiable_expr ref); + +expr_argument( + unique int id: @expr ref, + int mode: int ref); + /* mode is the same as params: value = 0, ref = 1, out = 2 */ + +expr_argument_name( + unique int id: @expr ref, + string name: string ref); + +lambda_expr_return_type( + unique int id: @lambda_expr ref, + int type_id: @type_or_ref ref); + +/* Compiler generated */ + +compiler_generated(unique int id: @element ref); + +/** CONTROL/DATA FLOW **/ + +@control_flow_element = @stmt | @expr; + +/* XML Files */ + +xmlEncoding ( + unique int id: @file ref, + string encoding: string ref); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/* Comments */ + +commentline( + unique int id: @commentline, + int kind: int ref, + string text: string ref, + string rawtext: string ref); + +case @commentline.kind of + 0 = @singlelinecomment +| 1 = @xmldoccomment +| 2 = @multilinecomment; + +commentline_location( + unique int id: @commentline ref, + int loc: @location ref); + +commentblock( + unique int id : @commentblock); + +commentblock_location( + unique int id: @commentblock ref, + int loc: @location ref); + +commentblock_binding( + int id: @commentblock ref, + int entity: @element ref, + int bindtype: int ref); /* 0: Parent, 1: Best, 2: Before, 3: After */ + +commentblock_child( + int id: @commentblock ref, + int commentline: @commentline ref, + int index: int ref); + +/* ASP.NET */ + +case @asp_element.kind of + 0=@asp_close_tag +| 1=@asp_code +| 2=@asp_comment +| 3=@asp_data_binding +| 4=@asp_directive +| 5=@asp_open_tag +| 6=@asp_quoted_string +| 7=@asp_text +| 8=@asp_xml_directive; + +@asp_attribute = @asp_code | @asp_data_binding | @asp_quoted_string; + +asp_elements( + unique int id: @asp_element, + int kind: int ref, + int loc: @location ref); + +asp_comment_server(unique int comment: @asp_comment ref); +asp_code_inline(unique int code: @asp_code ref); +asp_directive_attribute( + int directive: @asp_directive ref, + int index: int ref, + string name: string ref, + int value: @asp_quoted_string ref); +asp_directive_name( + unique int directive: @asp_directive ref, + string name: string ref); +asp_element_body( + unique int element: @asp_element ref, + string body: string ref); +asp_tag_attribute( + int tag: @asp_open_tag ref, + int index: int ref, + string name: string ref, + int attribute: @asp_attribute ref); +asp_tag_name( + unique int tag: @asp_open_tag ref, + string name: string ref); +asp_tag_isempty(int tag: @asp_open_tag ref); diff --git a/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/semmlecode.csharp.dbscheme b/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/semmlecode.csharp.dbscheme new file mode 100644 index 000000000000..68b5aec54e50 --- /dev/null +++ b/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/semmlecode.csharp.dbscheme @@ -0,0 +1,1484 @@ +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2021-07-14 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * csc f1.cs f2.cs f3.cs + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + unique int id : @compilation, + string cwd : string ref +); + +compilation_info( + int id : @compilation ref, + string info_key: string ref, + string info_value: string ref +) + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | --compiler + * 1 | *path to compiler* + * 2 | f1.cs + * 3 | f2.cs + * 4 | f3.cs + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile.rsp` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.cs + * 1 | f2.cs + * 2 | f3.cs + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The references used by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs /r:ref1.dll /r:ref2.dll /r:ref3.dll + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | ref1.dll + * 1 | ref2.dll + * 2 | ref3.dll + */ +#keyset[id, num] +compilation_referencing_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + unique int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location ref +); + +extractor_messages( + unique int id: @extractor_message, + int severity: int ref, + string origin : string ref, + string text : string ref, + string entity : string ref, + int location: @location ref, + string stack_trace : string ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +compilation_assembly( + unique int id : @compilation ref, + int assembly: @assembly ref +) + +// Populated by the CSV extractor +externalData( + int id: @externalDataElement, + string path: string ref, + int column: int ref, + string value: string ref); + +sourceLocationPrefix( + string prefix: string ref); + +/* + * Overlay support + */ + +/** + * The CLI will automatically emit the tuple `databaseMetadata("isOverlay", "true")`, + * along with an `overlayChangedFiles` tuple for each new/modified/deleted file, + * when building an overlay database, and these can be used by the discard predicates. + */ +databaseMetadata( + string metadataKey : string ref, + string value : string ref +); + +overlayChangedFiles( + string path : string ref +); + +/* + * C# dbscheme + */ + +/** ELEMENTS **/ + +@element = @declaration | @stmt | @expr | @modifier | @attribute | @namespace_declaration + | @using_directive | @type_parameter_constraints | @externalDataElement + | @xmllocatable | @asp_element | @namespace | @preprocessor_directive; + +@declaration = @callable | @generic | @assignable | @namespace; + +@named_element = @namespace | @declaration; + +@declaration_with_accessors = @property | @indexer | @event; + +@assignable = @variable | @assignable_with_accessors | @event; + +@assignable_with_accessors = @property | @indexer; + +@attributable = @assembly | @field | @parameter | @operator | @method | @constructor + | @destructor | @callable_accessor | @value_or_ref_type | @declaration_with_accessors + | @local_function | @lambda_expr; + +/** LOCATIONS, ASEMMBLIES, MODULES, FILES and FOLDERS **/ + +@location = @location_default | @assembly; + +@locatable = @declaration_with_accessors | @callable_accessor | @declaration_or_directive + | @diagnostic | @extractor_message | @preprocessor_directive | @attribute | @type_mention | @type_parameter_constraints + | @declaration_with_accessors | @callable_accessor | @operator | @method + | @constructor | @destructor | @field | @local_variable | @parameter | @stmt | @expr + | @xmllocatable | @commentline | @commentblock | @asp_element + +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +locations_mapped( + unique int id: @location_default ref, + int mapped_to: @location_default ref); + +@sourceline = @file | @callable | @xmllocatable; + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref); + +assemblies( + unique int id: @assembly, + int file: @file ref, + string fullname: string ref, + string name: string ref, + string version: string ref); + +files( + unique int id: @file, + string name: string ref); + +folders( + unique int id: @folder, + string name: string ref); + +@container = @folder | @file ; + +containerparent( + int parent: @container ref, + unique int child: @container ref); + +file_extraction_mode( + unique int file: @file ref, + int mode: int ref + /* 0 = normal, 1 = standalone extractor */ + ); + +/** NAMESPACES **/ + +@type_container = @namespace | @type; + +namespaces( + unique int id: @namespace, + string name: string ref); + +namespace_declarations( + unique int id: @namespace_declaration, + int namespace_id: @namespace ref); + +namespace_declaration_location( + unique int id: @namespace_declaration ref, + int loc: @location ref); + +parent_namespace( + unique int child_id: @type_container ref, + int namespace_id: @namespace ref); + +@declaration_or_directive = @namespace_declaration | @type | @using_directive; + +parent_namespace_declaration( + int child_id: @declaration_or_directive ref, // cannot be unique because of partial classes + int namespace_id: @namespace_declaration ref); + +@using_directive = @using_namespace_directive | @using_static_directive; + +using_global( + unique int id: @using_directive ref +); + +using_namespace_directives( + unique int id: @using_namespace_directive, + int namespace_id: @namespace ref); + +using_static_directives( + unique int id: @using_static_directive, + int type_id: @type_or_ref ref); + +using_directive_location( + unique int id: @using_directive ref, + int loc: @location ref); + +@preprocessor_directive = @pragma_warning | @pragma_checksum | @directive_define | @directive_undefine | @directive_warning + | @directive_error | @directive_nullable | @directive_line | @directive_region | @directive_endregion | @directive_if + | @directive_elif | @directive_else | @directive_endif; + +@conditional_directive = @directive_if | @directive_elif; +@branch_directive = @directive_if | @directive_elif | @directive_else; + +directive_ifs( + unique int id: @directive_if, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref); /* 0: false, 1: true */ + +directive_elifs( + unique int id: @directive_elif, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +directive_elses( + unique int id: @directive_else, + int branchTaken: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +#keyset[id, start] +directive_endifs( + unique int id: @directive_endif, + unique int start: @directive_if ref); + +directive_define_symbols( + unique int id: @define_symbol_expr ref, + string name: string ref); + +directive_regions( + unique int id: @directive_region, + string name: string ref); + +#keyset[id, start] +directive_endregions( + unique int id: @directive_endregion, + unique int start: @directive_region ref); + +directive_lines( + unique int id: @directive_line, + int kind: int ref); /* 0: default, 1: hidden, 2: numeric, 3: span */ + +directive_line_value( + unique int id: @directive_line ref, + int line: int ref); + +directive_line_file( + unique int id: @directive_line ref, + int file: @file ref); + +directive_line_offset( + unique int id: @directive_line ref, + int offset: int ref); + +directive_line_span( + unique int id: @directive_line ref, + int startLine: int ref, + int startColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +directive_nullables( + unique int id: @directive_nullable, + int setting: int ref, /* 0: disable, 1: enable, 2: restore */ + int target: int ref); /* 0: none, 1: annotations, 2: warnings */ + +directive_warnings( + unique int id: @directive_warning, + string message: string ref); + +directive_errors( + unique int id: @directive_error, + string message: string ref); + +directive_undefines( + unique int id: @directive_undefine, + string name: string ref); + +directive_defines( + unique int id: @directive_define, + string name: string ref); + +pragma_checksums( + unique int id: @pragma_checksum, + int file: @file ref, + string guid: string ref, + string bytes: string ref); + +pragma_warnings( + unique int id: @pragma_warning, + int kind: int ref /* 0 = disable, 1 = restore */); + +#keyset[id, index] +pragma_warning_error_codes( + int id: @pragma_warning ref, + string errorCode: string ref, + int index: int ref); + +preprocessor_directive_location( + unique int id: @preprocessor_directive ref, + int loc: @location ref); + +preprocessor_directive_compilation( + int id: @preprocessor_directive ref, + int compilation: @compilation ref); + +preprocessor_directive_active( + unique int id: @preprocessor_directive ref, + int active: int ref); /* 0: false, 1: true */ + +/** TYPES **/ + +types( + unique int id: @type, + int kind: int ref, + string name: string ref); + +case @type.kind of + 1 = @bool_type +| 2 = @char_type +| 3 = @decimal_type +| 4 = @sbyte_type +| 5 = @short_type +| 6 = @int_type +| 7 = @long_type +| 8 = @byte_type +| 9 = @ushort_type +| 10 = @uint_type +| 11 = @ulong_type +| 12 = @float_type +| 13 = @double_type +| 14 = @enum_type +| 15 = @struct_type +| 17 = @class_type +| 19 = @interface_type +| 20 = @delegate_type +| 21 = @null_type +| 22 = @type_parameter +| 23 = @pointer_type +| 24 = @nullable_type +| 25 = @array_type +| 26 = @void_type +| 27 = @int_ptr_type +| 28 = @uint_ptr_type +| 29 = @dynamic_type +| 30 = @arglist_type +| 31 = @unknown_type +| 32 = @tuple_type +| 33 = @function_pointer_type +| 34 = @inline_array_type + ; + +@simple_type = @bool_type | @char_type | @integral_type | @floating_point_type | @decimal_type; +@integral_type = @signed_integral_type | @unsigned_integral_type; +@signed_integral_type = @sbyte_type | @short_type | @int_type | @long_type; +@unsigned_integral_type = @byte_type | @ushort_type | @uint_type | @ulong_type; +@floating_point_type = @float_type | @double_type; +@value_type = @simple_type | @enum_type | @struct_type | @nullable_type | @int_ptr_type + | @uint_ptr_type | @tuple_type | @void_type | @inline_array_type; +@ref_type = @class_type | @interface_type | @array_type | @delegate_type | @null_type + | @dynamic_type; +@value_or_ref_type = @value_type | @ref_type; + +typerefs( + unique int id: @typeref, + string name: string ref); + +typeref_type( + int id: @typeref ref, + unique int typeId: @type ref); + +@type_or_ref = @type | @typeref; + +array_element_type( + unique int array: @array_type ref, + int dimension: int ref, + int rank: int ref, + int element: @type_or_ref ref); + +nullable_underlying_type( + unique int nullable: @nullable_type ref, + int underlying: @type_or_ref ref); + +pointer_referent_type( + unique int pointer: @pointer_type ref, + int referent: @type_or_ref ref); + +enum_underlying_type( + unique int enum_id: @enum_type ref, + int underlying_type_id: @type_or_ref ref); + +delegate_return_type( + unique int delegate_id: @delegate_type ref, + int return_type_id: @type_or_ref ref); + +function_pointer_return_type( + unique int function_pointer_id: @function_pointer_type ref, + int return_type_id: @type_or_ref ref); + +extend( + int sub: @type ref, + int super: @type_or_ref ref); + +anonymous_types( + unique int id: @type ref); + +@interface_or_ref = @interface_type | @typeref; + +implement( + int sub: @type ref, + int super: @type_or_ref ref); + +type_location( + int id: @type ref, + int loc: @location ref); + +tuple_underlying_type( + unique int tuple: @tuple_type ref, + int struct: @type_or_ref ref); + +#keyset[tuple, index] +tuple_element( + int tuple: @tuple_type ref, + int index: int ref, + unique int field: @field ref); + +attributes( + unique int id: @attribute, + int kind: int ref, + int type_id: @type_or_ref ref, + int target: @attributable ref); + +case @attribute.kind of + 0 = @attribute_default +| 1 = @attribute_return +| 2 = @attribute_assembly +| 3 = @attribute_module +; + +attribute_location( + int id: @attribute ref, + int loc: @location ref); + +@type_mention_parent = @element | @type_mention; + +type_mention( + unique int id: @type_mention, + int type_id: @type_or_ref ref, + int parent: @type_mention_parent ref); + +type_mention_location( + unique int id: @type_mention ref, + int loc: @location ref); + +@has_type_annotation = @assignable | @type_parameter | @callable | @expr | @delegate_type | @generic | @function_pointer_type; + +/** + * A direct annotation on an entity, for example `string? x;`. + * + * Annotations: + * 2 = reftype is not annotated "!" + * 3 = reftype is annotated "?" + * 4 = readonly ref type / in parameter + * 5 = ref type parameter, return or local variable + * 6 = out parameter + * + * Note that the annotation depends on the element it annotates. + * @assignable: The annotation is on the type of the assignable, for example the variable type. + * @type_parameter: The annotation is on the reftype constraint + * @callable: The annotation is on the return type + * @array_type: The annotation is on the element type + */ +type_annotation(int id: @has_type_annotation ref, int annotation: int ref); + +nullability(unique int nullability: @nullability, int kind: int ref); + +case @nullability.kind of + 0 = @oblivious +| 1 = @not_annotated +| 2 = @annotated +; + +#keyset[parent, index] +nullability_parent(int nullability: @nullability ref, int index: int ref, int parent: @nullability ref) + +type_nullability(int id: @has_type_annotation ref, int nullability: @nullability ref); + +/** + * The nullable flow state of an expression, as determined by Roslyn. + * 0 = none (default, not populated) + * 1 = not null + * 2 = maybe null + */ +expr_flowstate(unique int id: @expr ref, int state: int ref); + +/** GENERICS **/ + +@generic = @type | @method | @local_function; + +type_parameters( + unique int id: @type_parameter ref, + int index: int ref, + int generic_id: @generic ref, + int variance: int ref /* none = 0, out = 1, in = 2 */); + +#keyset[constructed_id, index] +type_arguments( + int id: @type_or_ref ref, + int index: int ref, + int constructed_id: @generic_or_ref ref); + +@generic_or_ref = @generic | @typeref; + +constructed_generic( + unique int constructed: @generic ref, + int generic: @generic_or_ref ref); + +type_parameter_constraints( + unique int id: @type_parameter_constraints, + int param_id: @type_parameter ref); + +type_parameter_constraints_location( + int id: @type_parameter_constraints ref, + int loc: @location ref); + +general_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int kind: int ref /* class = 1, struct = 2, new = 3 */); + +specific_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref); + +specific_type_parameter_nullability( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref, + int nullability: @nullability ref); + +/** FUNCTION POINTERS */ + +function_pointer_calling_conventions( + int id: @function_pointer_type ref, + int kind: int ref); + +#keyset[id, index] +has_unmanaged_calling_conventions( + int id: @function_pointer_type ref, + int index: int ref, + int conv_id: @type_or_ref ref); + +/** MODIFIERS */ + +@modifiable = @modifiable_direct | @event_accessor; + +@modifiable_direct = @member | @accessor | @local_function | @anonymous_function_expr; + +modifiers( + unique int id: @modifier, + string name: string ref); + +has_modifiers( + int id: @modifiable_direct ref, + int mod_id: @modifier ref); + +/** MEMBERS **/ + +@member = @method | @constructor | @destructor | @field | @property | @event | @operator | @indexer | @type; + +@named_exprorstmt = @goto_stmt | @labeled_stmt | @expr; + +@virtualizable = @method | @property | @indexer | @event | @operator; + +exprorstmt_name( + unique int parent_id: @named_exprorstmt ref, + string name: string ref); + +nested_types( + unique int id: @type ref, + int declaring_type_id: @type ref, + int unbound_id: @type ref); + +properties( + unique int id: @property, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @property ref); + +property_location( + int id: @property ref, + int loc: @location ref); + +indexers( + unique int id: @indexer, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @indexer ref); + +indexer_location( + int id: @indexer ref, + int loc: @location ref); + +accessors( + unique int id: @accessor, + int kind: int ref, + string name: string ref, + int declaring_member_id: @member ref, + int unbound_id: @accessor ref); + +case @accessor.kind of + 1 = @getter +| 2 = @setter + ; + +init_only_accessors( + unique int id: @accessor ref); + +accessor_location( + int id: @accessor ref, + int loc: @location ref); + +events( + unique int id: @event, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @event ref); + +event_location( + int id: @event ref, + int loc: @location ref); + +event_accessors( + unique int id: @event_accessor, + int kind: int ref, + string name: string ref, + int declaring_event_id: @event ref, + int unbound_id: @event_accessor ref); + +case @event_accessor.kind of + 1 = @add_event_accessor +| 2 = @remove_event_accessor + ; + +event_accessor_location( + int id: @event_accessor ref, + int loc: @location ref); + +operators( + unique int id: @operator, + string name: string ref, + string symbol: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @operator ref); + +operator_location( + int id: @operator ref, + int loc: @location ref); + +constant_value( + int id: @variable ref, + string value: string ref); + +/** CALLABLES **/ + +@callable = @method | @constructor | @destructor | @operator | @callable_accessor | @anonymous_function_expr | @local_function; + +@callable_accessor = @accessor | @event_accessor; + +methods( + unique int id: @method, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @method ref); + +method_location( + int id: @method ref, + int loc: @location ref); + +constructors( + unique int id: @constructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @constructor ref); + +constructor_location( + int id: @constructor ref, + int loc: @location ref); + +destructors( + unique int id: @destructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @destructor ref); + +destructor_location( + int id: @destructor ref, + int loc: @location ref); + +overrides( + int id: @callable ref, + int base_id: @callable ref); + +explicitly_implements( + int id: @member ref, + int interface_id: @interface_or_ref ref); + +local_functions( + unique int id: @local_function, + string name: string ref, + int return_type: @type ref, + int unbound_id: @local_function ref); + +local_function_stmts( + unique int fn: @local_function_stmt ref, + int stmt: @local_function ref); + +/** VARIABLES **/ + +@variable = @local_scope_variable | @field; + +@local_scope_variable = @local_variable | @parameter; + +fields( + unique int id: @field, + int kind: int ref, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @field ref); + +case @field.kind of + 1 = @addressable_field +| 2 = @constant + ; + +field_location( + int id: @field ref, + int loc: @location ref); + +localvars( + unique int id: @local_variable, + int kind: int ref, + string name: string ref, + int implicitly_typed: int ref /* 0 = no, 1 = yes */, + int type_id: @type_or_ref ref, + int parent_id: @local_var_decl_expr ref); + +case @local_variable.kind of + 1 = @addressable_local_variable +| 2 = @local_constant +| 3 = @local_variable_ref + ; + +localvar_location( + unique int id: @local_variable ref, + int loc: @location ref); + +@parameterizable = @callable | @delegate_type | @indexer | @function_pointer_type; + +#keyset[name, parent_id] +#keyset[index, parent_id] +params( + unique int id: @parameter, + string name: string ref, + int type_id: @type_or_ref ref, + int index: int ref, + int mode: int ref, /* value = 0, ref = 1, out = 2, params/array = 3, this = 4, in = 5, ref readonly = 6 */ + int parent_id: @parameterizable ref, + int unbound_id: @parameter ref); + +param_location( + int id: @parameter ref, + int loc: @location ref); + +@has_scoped_annotation = @local_scope_variable + +scoped_annotation( + int id: @has_scoped_annotation ref, + int kind: int ref // scoped ref = 1, scoped value = 2 + ); + +/** STATEMENTS **/ + +@exprorstmt_parent = @control_flow_element | @top_level_exprorstmt_parent; + +statements( + unique int id: @stmt, + int kind: int ref); + +#keyset[index, parent] +stmt_parent( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_stmt_parent = @callable; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +stmt_parent_top_level( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @top_level_stmt_parent ref); + +case @stmt.kind of + 1 = @block_stmt +| 2 = @expr_stmt +| 3 = @if_stmt +| 4 = @switch_stmt +| 5 = @while_stmt +| 6 = @do_stmt +| 7 = @for_stmt +| 8 = @foreach_stmt +| 9 = @break_stmt +| 10 = @continue_stmt +| 11 = @goto_stmt +| 12 = @goto_case_stmt +| 13 = @goto_default_stmt +| 14 = @throw_stmt +| 15 = @return_stmt +| 16 = @yield_stmt +| 17 = @try_stmt +| 18 = @checked_stmt +| 19 = @unchecked_stmt +| 20 = @lock_stmt +| 21 = @using_block_stmt +| 22 = @var_decl_stmt +| 23 = @const_decl_stmt +| 24 = @empty_stmt +| 25 = @unsafe_stmt +| 26 = @fixed_stmt +| 27 = @label_stmt +| 28 = @catch +| 29 = @case_stmt +| 30 = @local_function_stmt +| 31 = @using_decl_stmt + ; + +@using_stmt = @using_block_stmt | @using_decl_stmt; + +@labeled_stmt = @label_stmt | @case; + +@decl_stmt = @var_decl_stmt | @const_decl_stmt | @using_decl_stmt; + +@cond_stmt = @if_stmt | @switch_stmt; + +@loop_stmt = @while_stmt | @do_stmt | @for_stmt | @foreach_stmt; + +@jump_stmt = @break_stmt | @goto_any_stmt | @continue_stmt | @throw_stmt | @return_stmt + | @yield_stmt; + +@goto_any_stmt = @goto_default_stmt | @goto_case_stmt | @goto_stmt; + + +stmt_location( + unique int id: @stmt ref, + int loc: @location ref); + +catch_type( + unique int catch_id: @catch ref, + int type_id: @type_or_ref ref, + int kind: int ref /* explicit = 1, implicit = 2 */); + +foreach_stmt_info( + unique int id: @foreach_stmt ref, + int kind: int ref /* non-async = 1, async = 2 */); + +@foreach_symbol = @method | @property | @type_or_ref; + +#keyset[id, kind] +foreach_stmt_desugar( + int id: @foreach_stmt ref, + int symbol: @foreach_symbol ref, + int kind: int ref /* GetEnumeratorMethod = 1, CurrentProperty = 2, MoveNextMethod = 3, DisposeMethod = 4, ElementType = 5 */); + +/** EXPRESSIONS **/ + +expressions( + unique int id: @expr, + int kind: int ref, + int type_id: @type_or_ref ref); + +#keyset[index, parent] +expr_parent( + unique int expr: @expr ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_expr_parent = @attribute | @field | @property | @indexer | @parameter | @directive_if | @directive_elif; + +@top_level_exprorstmt_parent = @top_level_expr_parent | @top_level_stmt_parent; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +expr_parent_top_level( + unique int expr: @expr ref, + int index: int ref, + int parent: @top_level_exprorstmt_parent ref); + +case @expr.kind of +/* literal */ + 1 = @bool_literal_expr +| 2 = @char_literal_expr +| 3 = @decimal_literal_expr +| 4 = @int_literal_expr +| 5 = @long_literal_expr +| 6 = @uint_literal_expr +| 7 = @ulong_literal_expr +| 8 = @float_literal_expr +| 9 = @double_literal_expr +| 10 = @utf16_string_literal_expr +| 11 = @null_literal_expr +/* primary & unary */ +| 12 = @this_access_expr +| 13 = @base_access_expr +| 14 = @local_variable_access_expr +| 15 = @parameter_access_expr +| 16 = @field_access_expr +| 17 = @property_access_expr +| 18 = @method_access_expr +| 19 = @event_access_expr +| 20 = @indexer_access_expr +| 21 = @array_access_expr +| 22 = @type_access_expr +| 23 = @typeof_expr +| 24 = @method_invocation_expr +| 25 = @delegate_invocation_expr +| 26 = @operator_invocation_expr +| 27 = @cast_expr +| 28 = @object_creation_expr +| 29 = @explicit_delegate_creation_expr +| 30 = @implicit_delegate_creation_expr +| 31 = @array_creation_expr +| 32 = @default_expr +| 33 = @plus_expr +| 34 = @minus_expr +| 35 = @bit_not_expr +| 36 = @log_not_expr +| 37 = @post_incr_expr +| 38 = @post_decr_expr +| 39 = @pre_incr_expr +| 40 = @pre_decr_expr +/* multiplicative */ +| 41 = @mul_expr +| 42 = @div_expr +| 43 = @rem_expr +/* additive */ +| 44 = @add_expr +| 45 = @sub_expr +/* shift */ +| 46 = @lshift_expr +| 47 = @rshift_expr +/* relational */ +| 48 = @lt_expr +| 49 = @gt_expr +| 50 = @le_expr +| 51 = @ge_expr +/* equality */ +| 52 = @eq_expr +| 53 = @ne_expr +/* logical */ +| 54 = @bit_and_expr +| 55 = @bit_xor_expr +| 56 = @bit_or_expr +| 57 = @log_and_expr +| 58 = @log_or_expr +/* type testing */ +| 59 = @is_expr +| 60 = @as_expr +/* null coalescing */ +| 61 = @null_coalescing_expr +/* conditional */ +| 62 = @conditional_expr +/* assignment */ +| 63 = @simple_assign_expr +| 64 = @assign_add_expr +| 65 = @assign_sub_expr +| 66 = @assign_mul_expr +| 67 = @assign_div_expr +| 68 = @assign_rem_expr +| 69 = @assign_and_expr +| 70 = @assign_xor_expr +| 71 = @assign_or_expr +| 72 = @assign_lshift_expr +| 73 = @assign_rshift_expr +/* more */ +| 74 = @object_init_expr +| 75 = @collection_init_expr +| 76 = @array_init_expr +| 77 = @checked_expr +| 78 = @unchecked_expr +| 79 = @constructor_init_expr +| 80 = @add_event_expr +| 81 = @remove_event_expr +| 82 = @par_expr +| 83 = @local_var_decl_expr +| 84 = @lambda_expr +| 85 = @anonymous_method_expr +| 86 = @namespace_expr +/* dynamic */ +| 92 = @dynamic_element_access_expr +| 93 = @dynamic_member_access_expr +/* unsafe */ +| 100 = @pointer_indirection_expr +| 101 = @address_of_expr +| 102 = @sizeof_expr +/* async */ +| 103 = @await_expr +/* C# 6.0 */ +| 104 = @nameof_expr +| 105 = @interpolated_string_expr +| 106 = @unknown_expr +/* C# 7.0 */ +| 107 = @throw_expr +| 108 = @tuple_expr +| 109 = @local_function_invocation_expr +| 110 = @ref_expr +| 111 = @discard_expr +/* C# 8.0 */ +| 112 = @range_expr +| 113 = @index_expr +| 114 = @switch_expr +| 115 = @recursive_pattern_expr +| 116 = @property_pattern_expr +| 117 = @positional_pattern_expr +| 118 = @switch_case_expr +| 119 = @assign_coalesce_expr +| 120 = @suppress_nullable_warning_expr +| 121 = @namespace_access_expr +/* C# 9.0 */ +| 122 = @lt_pattern_expr +| 123 = @gt_pattern_expr +| 124 = @le_pattern_expr +| 125 = @ge_pattern_expr +| 126 = @not_pattern_expr +| 127 = @and_pattern_expr +| 128 = @or_pattern_expr +| 129 = @function_pointer_invocation_expr +| 130 = @with_expr +/* C# 11.0 */ +| 131 = @list_pattern_expr +| 132 = @slice_pattern_expr +| 133 = @urshift_expr +| 134 = @assign_urshift_expr +| 135 = @utf8_string_literal_expr +/* C# 12.0 */ +| 136 = @collection_expr +| 137 = @spread_element_expr +| 138 = @interpolated_string_insert_expr +/* Preprocessor */ +| 999 = @define_symbol_expr +; + +@switch = @switch_stmt | @switch_expr; +@case = @case_stmt | @switch_case_expr; +@pattern_match = @case | @is_expr; +@unary_pattern_expr = @not_pattern_expr; +@relational_pattern_expr = @gt_pattern_expr | @lt_pattern_expr | @ge_pattern_expr | @le_pattern_expr; +@binary_pattern_expr = @and_pattern_expr | @or_pattern_expr; + +@integer_literal_expr = @int_literal_expr | @long_literal_expr | @uint_literal_expr | @ulong_literal_expr; +@real_literal_expr = @float_literal_expr | @double_literal_expr | @decimal_literal_expr; +@string_literal_expr = @utf16_string_literal_expr | @utf8_string_literal_expr; +@literal_expr = @bool_literal_expr | @char_literal_expr | @integer_literal_expr | @real_literal_expr + | @string_literal_expr | @null_literal_expr; + +@assign_expr = @simple_assign_expr | @assign_op_expr | @local_var_decl_expr; +@assign_op_expr = @assign_arith_expr | @assign_bitwise_expr | @assign_event_expr | @assign_coalesce_expr; +@assign_event_expr = @add_event_expr | @remove_event_expr; + +@assign_arith_expr = @assign_add_expr | @assign_sub_expr | @assign_mul_expr | @assign_div_expr + | @assign_rem_expr +@assign_bitwise_expr = @assign_and_expr | @assign_or_expr | @assign_xor_expr + | @assign_lshift_expr | @assign_rshift_expr | @assign_urshift_expr; + +@member_access_expr = @field_access_expr | @property_access_expr | @indexer_access_expr | @event_access_expr + | @method_access_expr | @type_access_expr | @dynamic_member_access_expr; +@access_expr = @member_access_expr | @this_access_expr | @base_access_expr | @assignable_access_expr | @namespace_access_expr; +@element_access_expr = @indexer_access_expr | @array_access_expr | @dynamic_element_access_expr; + +@local_variable_access = @local_variable_access_expr | @local_var_decl_expr; +@local_scope_variable_access_expr = @parameter_access_expr | @local_variable_access; +@variable_access_expr = @local_scope_variable_access_expr | @field_access_expr; + +@assignable_access_expr = @variable_access_expr | @property_access_expr | @element_access_expr + | @event_access_expr | @dynamic_member_access_expr; + +@objectorcollection_init_expr = @object_init_expr | @collection_init_expr; + +@delegate_creation_expr = @explicit_delegate_creation_expr | @implicit_delegate_creation_expr; + +@bin_arith_op_expr = @mul_expr | @div_expr | @rem_expr | @add_expr | @sub_expr; +@incr_op_expr = @pre_incr_expr | @post_incr_expr; +@decr_op_expr = @pre_decr_expr | @post_decr_expr; +@mut_op_expr = @incr_op_expr | @decr_op_expr; +@un_arith_op_expr = @plus_expr | @minus_expr | @mut_op_expr; +@arith_op_expr = @bin_arith_op_expr | @un_arith_op_expr; + +@ternary_log_op_expr = @conditional_expr; +@bin_log_op_expr = @log_and_expr | @log_or_expr | @null_coalescing_expr; +@un_log_op_expr = @log_not_expr; +@log_expr = @un_log_op_expr | @bin_log_op_expr | @ternary_log_op_expr; + +@bin_bit_op_expr = @bit_and_expr | @bit_or_expr | @bit_xor_expr | @lshift_expr + | @rshift_expr | @urshift_expr; +@un_bit_op_expr = @bit_not_expr; +@bit_expr = @un_bit_op_expr | @bin_bit_op_expr; + +@equality_op_expr = @eq_expr | @ne_expr; +@rel_op_expr = @gt_expr | @lt_expr| @ge_expr | @le_expr; +@comp_expr = @equality_op_expr | @rel_op_expr; + +@op_expr = @assign_expr | @un_op | @bin_op | @ternary_op; + +@ternary_op = @ternary_log_op_expr; +@bin_op = @bin_arith_op_expr | @bin_log_op_expr | @bin_bit_op_expr | @comp_expr; +@un_op = @un_arith_op_expr | @un_log_op_expr | @un_bit_op_expr | @sizeof_expr + | @pointer_indirection_expr | @address_of_expr; + +@anonymous_function_expr = @lambda_expr | @anonymous_method_expr; + +@call = @method_invocation_expr | @constructor_init_expr | @operator_invocation_expr + | @delegate_invocation_expr | @object_creation_expr | @call_access_expr + | @local_function_invocation_expr | @function_pointer_invocation_expr; + +@call_access_expr = @property_access_expr | @event_access_expr | @indexer_access_expr; + +@late_bindable_expr = @dynamic_element_access_expr | @dynamic_member_access_expr + | @object_creation_expr | @method_invocation_expr | @operator_invocation_expr; + +@throw_element = @throw_expr | @throw_stmt; + +@implicitly_typeable_object_creation_expr = @object_creation_expr | @explicit_delegate_creation_expr; + +implicitly_typed_array_creation( + unique int id: @array_creation_expr ref); + +explicitly_sized_array_creation( + unique int id: @array_creation_expr ref); + +stackalloc_array_creation( + unique int id: @array_creation_expr ref); + +implicitly_typed_object_creation( + unique int id: @implicitly_typeable_object_creation_expr ref); + +mutator_invocation_mode( + unique int id: @operator_invocation_expr ref, + int mode: int ref /* prefix = 1, postfix = 2*/); + +expr_value( + unique int id: @expr ref, + string value: string ref); + +expr_call( + unique int caller_id: @expr ref, + int target_id: @callable ref); + +expr_access( + unique int accesser_id: @access_expr ref, + int target_id: @accessible ref); + +@accessible = @method | @assignable | @local_function | @namespace; + +expr_location( + unique int id: @expr ref, + int loc: @location ref); + +dynamic_member_name( + unique int id: @late_bindable_expr ref, + string name: string ref); + +@qualifiable_expr = @member_access_expr + | @method_invocation_expr + | @element_access_expr; + +conditional_access( + unique int id: @qualifiable_expr ref); + +expr_argument( + unique int id: @expr ref, + int mode: int ref); + /* mode is the same as params: value = 0, ref = 1, out = 2 */ + +expr_argument_name( + unique int id: @expr ref, + string name: string ref); + +lambda_expr_return_type( + unique int id: @lambda_expr ref, + int type_id: @type_or_ref ref); + +/* Compiler generated */ + +compiler_generated(unique int id: @element ref); + +/** CONTROL/DATA FLOW **/ + +@control_flow_element = @stmt | @expr; + +/* XML Files */ + +xmlEncoding ( + unique int id: @file ref, + string encoding: string ref); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/* Comments */ + +commentline( + unique int id: @commentline, + int kind: int ref, + string text: string ref, + string rawtext: string ref); + +case @commentline.kind of + 0 = @singlelinecomment +| 1 = @xmldoccomment +| 2 = @multilinecomment; + +commentline_location( + unique int id: @commentline ref, + int loc: @location ref); + +commentblock( + unique int id : @commentblock); + +commentblock_location( + unique int id: @commentblock ref, + int loc: @location ref); + +commentblock_binding( + int id: @commentblock ref, + int entity: @element ref, + int bindtype: int ref); /* 0: Parent, 1: Best, 2: Before, 3: After */ + +commentblock_child( + int id: @commentblock ref, + int commentline: @commentline ref, + int index: int ref); + +/* ASP.NET */ + +case @asp_element.kind of + 0=@asp_close_tag +| 1=@asp_code +| 2=@asp_comment +| 3=@asp_data_binding +| 4=@asp_directive +| 5=@asp_open_tag +| 6=@asp_quoted_string +| 7=@asp_text +| 8=@asp_xml_directive; + +@asp_attribute = @asp_code | @asp_data_binding | @asp_quoted_string; + +asp_elements( + unique int id: @asp_element, + int kind: int ref, + int loc: @location ref); + +asp_comment_server(unique int comment: @asp_comment ref); +asp_code_inline(unique int code: @asp_code ref); +asp_directive_attribute( + int directive: @asp_directive ref, + int index: int ref, + string name: string ref, + int value: @asp_quoted_string ref); +asp_directive_name( + unique int directive: @asp_directive ref, + string name: string ref); +asp_element_body( + unique int element: @asp_element ref, + string body: string ref); +asp_tag_attribute( + int tag: @asp_open_tag ref, + int index: int ref, + string name: string ref, + int attribute: @asp_attribute ref); +asp_tag_name( + unique int tag: @asp_open_tag ref, + string name: string ref); +asp_tag_isempty(int tag: @asp_open_tag ref); diff --git a/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/upgrade.properties b/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/upgrade.properties new file mode 100644 index 000000000000..50b000605102 --- /dev/null +++ b/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/upgrade.properties @@ -0,0 +1,3 @@ +description: Remove the relation `extension_receiver_type` and remove the `extension_type` type kind. +compatibility: backwards +extension_receiver_type.rel: delete diff --git a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependabotProxy.cs b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependabotProxy.cs index be5f137548c4..e06970141fed 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependabotProxy.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependabotProxy.cs @@ -5,6 +5,7 @@ using Semmle.Util; using Semmle.Util.Logging; using Newtonsoft.Json; +using System.Linq; namespace Semmle.Extraction.CSharp.DependencyFetching { @@ -37,7 +38,8 @@ public record class RegistryConfig(string Type, string URL); /// internal X509Certificate2? Certificate { get; private set; } - internal static DependabotProxy? GetDependabotProxy(ILogger logger, TemporaryDirectory tempWorkingDirectory) + internal static DependabotProxy? GetDependabotProxy( + ILogger logger, IDiagnosticsWriter diagnosticsWriter, TemporaryDirectory tempWorkingDirectory) { // Setting HTTP(S)_PROXY and SSL_CERT_FILE have no effect on Windows or macOS, // but we would still end up using the Dependabot proxy to check for feed reachability. @@ -112,6 +114,23 @@ public record class RegistryConfig(string Type, string URL); } } + // Emit a diagnostic for the discovered private registries, so that it is easy + // for users to see that they were picked up. + if (result.RegistryURLs.Count > 0) + { + diagnosticsWriter.AddEntry(new DiagnosticMessage( + Language.CSharp, + "buildless/analysis-using-private-registries", + severity: DiagnosticMessage.TspSeverity.Note, + visibility: new DiagnosticMessage.TspVisibility(true, true, true), + name: "C# extraction used private package registries", + markdownMessage: string.Format( + "C# was extracted using the following private package registries:\n\n{0}\n", + string.Join("\n", result.RegistryURLs.Select(url => string.Format("- `{0}`", url))) + ) + )); + } + return result; } diff --git a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependencyManager.cs b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependencyManager.cs index ad69d0c85c37..bc010e318c35 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependencyManager.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependencyManager.cs @@ -106,7 +106,7 @@ void exitCallback(int ret, string msg, bool silent) return BuildScript.Success; }).Run(SystemBuildActions.Instance, startCallback, exitCallback); - dependabotProxy = DependabotProxy.GetDependabotProxy(logger, tempWorkingDirectory); + dependabotProxy = DependabotProxy.GetDependabotProxy(logger, diagnosticsWriter, tempWorkingDirectory); try { diff --git a/csharp/extractor/Semmle.Extraction.CSharp/CodeAnalysisExtensions/SymbolExtensions.cs b/csharp/extractor/Semmle.Extraction.CSharp/CodeAnalysisExtensions/SymbolExtensions.cs index 72f78f160598..c108a18f136a 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/CodeAnalysisExtensions/SymbolExtensions.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/CodeAnalysisExtensions/SymbolExtensions.cs @@ -4,6 +4,7 @@ using System.IO; using System.Linq; using Microsoft.CodeAnalysis; +using Semmle.Util; using Semmle.Extraction.CSharp.Entities; namespace Semmle.Extraction.CSharp @@ -164,6 +165,7 @@ public static void BuildTypeId(this ITypeSymbol type, Context cx, EscapingTextWr case TypeKind.Enum: case TypeKind.Delegate: case TypeKind.Error: + case TypeKind.Extension: var named = (INamedTypeSymbol)type; named.BuildNamedTypeId(cx, trapFile, symbolBeingDefined, constructUnderlyingTupleType); return; @@ -275,6 +277,20 @@ private static void BuildFunctionPointerTypeId(this IFunctionPointerTypeSymbol f public static IEnumerable GetTupleElementsMaybeNull(this INamedTypeSymbol type) => type.TupleElements; + private static void BuildExtensionTypeId(this INamedTypeSymbol named, Context cx, EscapingTextWriter trapFile) + { + trapFile.Write("extension("); + if (named.ExtensionMarkerName is not null) + { + trapFile.Write(named.ExtensionMarkerName); + } + else + { + trapFile.Write("unknown"); + } + trapFile.Write(")"); + } + private static void BuildQualifierAndName(INamedTypeSymbol named, Context cx, EscapingTextWriter trapFile, ISymbol symbolBeingDefined) { if (named.ContainingType is not null) @@ -289,8 +305,18 @@ private static void BuildQualifierAndName(INamedTypeSymbol named, Context cx, Es named.ContainingNamespace.BuildNamespace(cx, trapFile); } - var name = named.IsFileLocal ? named.MetadataName : named.Name; - trapFile.Write(name); + if (named.IsFileLocal) + { + trapFile.Write(named.MetadataName); + } + else if (named.IsExtension) + { + named.BuildExtensionTypeId(cx, trapFile); + } + else + { + trapFile.Write(named.Name); + } } private static void BuildTupleId(INamedTypeSymbol named, Context cx, EscapingTextWriter trapFile, ISymbol symbolBeingDefined) @@ -391,6 +417,7 @@ public static void BuildDisplayName(this ITypeSymbol type, Context cx, TextWrite case TypeKind.Enum: case TypeKind.Delegate: case TypeKind.Error: + case TypeKind.Extension: var named = (INamedTypeSymbol)type; named.BuildNamedTypeDisplayName(cx, trapFile, constructUnderlyingTupleType); return; @@ -465,6 +492,20 @@ public static void BuildFunctionPointerSignature(IFunctionPointerTypeSymbol funp private static void BuildFunctionPointerTypeDisplayName(this IFunctionPointerTypeSymbol funptr, Context cx, TextWriter trapFile) => BuildFunctionPointerSignature(funptr, trapFile, s => s.BuildDisplayName(cx, trapFile)); + private static void BuildExtensionTypeDisplayName(this INamedTypeSymbol named, Context cx, TextWriter trapFile) + { + trapFile.Write("extension("); + if (named.ExtensionParameter?.Type is ITypeSymbol type) + { + type.BuildDisplayName(cx, trapFile); + } + else + { + trapFile.Write("unknown"); + } + trapFile.Write(")"); + } + private static void BuildNamedTypeDisplayName(this INamedTypeSymbol namedType, Context cx, TextWriter trapFile, bool constructUnderlyingTupleType) { if (!constructUnderlyingTupleType && namedType.IsTupleType) @@ -484,6 +525,12 @@ private static void BuildNamedTypeDisplayName(this INamedTypeSymbol namedType, C return; } + if (namedType.IsExtension) + { + namedType.BuildExtensionTypeDisplayName(cx, trapFile); + return; + } + if (namedType.IsAnonymousType) { namedType.BuildAnonymousName(cx, trapFile); @@ -596,6 +643,84 @@ public static bool IsSourceDeclaration(this IParameterSymbol parameter) return true; } + /// + /// Return true if this method is a compiler-generated extension method. + /// + public static bool IsCompilerGeneratedExtensionMethod(this IMethodSymbol method) => + method.TryGetExtensionMethod() is not null; + + /// + /// Returns the extension method corresponding to this compiler-generated extension method, if it exists. + /// + public static IMethodSymbol? TryGetExtensionMethod(this IMethodSymbol method) + { + if (method.IsImplicitlyDeclared && method.ContainingSymbol is INamedTypeSymbol containingType) + { + // Extension types are declared within the same type as the generated + // extension method implementation. + var extensions = containingType.GetMembers() + .OfType() + .Where(t => t.IsExtension); + // Find the (possibly unbound) original extension method that maps to this implementation (if any). + var unboundDeclaration = extensions.SelectMany(e => e.GetMembers()) + .OfType() + .FirstOrDefault(m => SymbolEqualityComparer.Default.Equals(m.AssociatedExtensionImplementation, method.ConstructedFrom)); + + var isFullyConstructed = method.IsBoundGenericMethod(); + if (isFullyConstructed && unboundDeclaration?.ContainingType is INamedTypeSymbol extensionType) + { + try + { + // Use the type arguments from the constructed extension method to construct the extension type. + var arguments = method.TypeArguments.ToArray(); + var (extensionTypeArguments, extensionMethodArguments) = arguments.SplitAt(extensionType.TypeParameters.Length); + + // Construct the extension type. + var boundExtensionType = extensionType.IsUnboundGenericType() + ? extensionType.Construct(extensionTypeArguments.ToArray()) + : extensionType; + + // Find the extension method declaration within the constructed extension type. + var extensionDeclaration = boundExtensionType.GetMembers() + .OfType() + .First(c => SymbolEqualityComparer.Default.Equals(c.OriginalDefinition, unboundDeclaration)); + + // If the extension declaration is unbound apply the remaning type arguments and construct it. + return extensionDeclaration.IsUnboundGenericMethod() + ? extensionDeclaration.Construct(extensionMethodArguments.ToArray()) + : extensionDeclaration; + } + catch + { + // If anything goes wrong, fall back to the unbound declaration. + return unboundDeclaration; + } + } + else + { + return unboundDeclaration; + } + } + return null; + } + + /// + /// Returns true if this method is an unbound generic method. + /// + public static bool IsUnboundGenericMethod(this IMethodSymbol method) => + method.IsGenericMethod && SymbolEqualityComparer.Default.Equals(method.ConstructedFrom, method); + + /// + /// Returns true if this method is a bound generic method. + /// + public static bool IsBoundGenericMethod(this IMethodSymbol method) => method.IsGenericMethod && !method.IsUnboundGenericMethod(); + + /// + /// Returns true if this type is an unbound generic type. + /// + public static bool IsUnboundGenericType(this INamedTypeSymbol type) => + type.IsGenericType && SymbolEqualityComparer.Default.Equals(type.ConstructedFrom, type); + /// /// Gets the base type of `symbol`. Unlike `symbol.BaseType`, this excludes effective base /// types of type parameters as well as `object` base types. @@ -692,5 +817,35 @@ public static bool ShouldExtractSymbol(this ISymbol symbol) /// public static IEnumerable ExtractionCandidates(this IEnumerable symbols) where T : ISymbol => symbols.Where(symbol => symbol.ShouldExtractSymbol()); + + /// + /// Returns the parameter kind for this parameter symbol, e.g. `ref`, `out`, `params`, etc. + /// + public static Parameter.Kind GetParameterKind(this IParameterSymbol parameter) + { + switch (parameter.RefKind) + { + case RefKind.Out: + return Parameter.Kind.Out; + case RefKind.Ref: + return Parameter.Kind.Ref; + case RefKind.In: + return Parameter.Kind.In; + case RefKind.RefReadOnlyParameter: + return Parameter.Kind.RefReadOnly; + default: + if (parameter.IsParams) + return Parameter.Kind.Params; + + if (parameter.Ordinal == 0) + { + if (parameter.ContainingSymbol is IMethodSymbol method && method.IsExtensionMethod) + { + return Parameter.Kind.This; + } + } + return Parameter.Kind.None; + } + } } } diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedEntity.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedEntity.cs index 2002fe0f1d7a..39d0f886b813 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedEntity.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedEntity.cs @@ -54,22 +54,6 @@ public string DebugContents } } - protected static void WriteLocationToTrap(Action writeAction, T1 entity, Location l) - { - if (l is not EmptyLocation) - { - writeAction(entity, l); - } - } - - protected static void WriteLocationsToTrap(Action writeAction, T1 entity, IEnumerable locations) - { - foreach (var loc in locations) - { - WriteLocationToTrap(writeAction, entity, loc); - } - } - public override bool NeedsPopulation { get; } public override int GetHashCode() => Symbol is null ? 0 : Symbol.GetHashCode(); diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedSymbol.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedSymbol.cs index 92861e97fdd8..1a69b0e08b2b 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedSymbol.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedSymbol.cs @@ -32,32 +32,6 @@ protected void PopulateAttributes() Attribute.ExtractAttributes(Context, Symbol, this); } - protected void PopulateNullability(TextWriter trapFile, AnnotatedTypeSymbol type) - { - var n = NullabilityEntity.Create(Context, Nullability.Create(type)); - if (!type.HasObliviousNullability()) - { - trapFile.type_nullability(this, n); - } - } - - protected void PopulateRefKind(TextWriter trapFile, RefKind kind) - { - switch (kind) - { - case RefKind.Out: - trapFile.type_annotation(this, Kinds.TypeAnnotation.Out); - break; - case RefKind.Ref: - trapFile.type_annotation(this, Kinds.TypeAnnotation.Ref); - break; - case RefKind.RefReadOnly: - case RefKind.RefReadOnlyParameter: - trapFile.type_annotation(this, Kinds.TypeAnnotation.ReadonlyRef); - break; - } - } - protected void PopulateScopedKind(TextWriter trapFile, ScopedKind kind) { switch (kind) diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/Entity.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/Entity.cs index ca1887b3be9c..94b2e16e9e6b 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/Entity.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/Entity.cs @@ -1,6 +1,8 @@ using System; +using System.Collections.Generic; using System.IO; using Microsoft.CodeAnalysis; +using Semmle.Extraction.CSharp.Entities; namespace Semmle.Extraction.CSharp { @@ -24,7 +26,7 @@ public virtual void WriteQuotedId(EscapingTextWriter trapFile) trapFile.WriteUnescaped('\"'); } - public abstract Location? ReportingLocation { get; } + public abstract Microsoft.CodeAnalysis.Location? ReportingLocation { get; } public abstract TrapStackBehaviour TrapStackBehaviour { get; } @@ -65,6 +67,48 @@ public string GetDebugLabel() } #endif + protected void PopulateRefKind(TextWriter trapFile, RefKind kind) + { + switch (kind) + { + case RefKind.Out: + trapFile.type_annotation(this, Kinds.TypeAnnotation.Out); + break; + case RefKind.Ref: + trapFile.type_annotation(this, Kinds.TypeAnnotation.Ref); + break; + case RefKind.RefReadOnly: + case RefKind.RefReadOnlyParameter: + trapFile.type_annotation(this, Kinds.TypeAnnotation.ReadonlyRef); + break; + } + } + + protected void PopulateNullability(TextWriter trapFile, AnnotatedTypeSymbol type) + { + var n = NullabilityEntity.Create(Context, Nullability.Create(type)); + if (!type.HasObliviousNullability()) + { + trapFile.type_nullability(this, n); + } + } + + protected static void WriteLocationToTrap(Action writeAction, T1 entity, Entities.Location l) + { + if (l is not EmptyLocation) + { + writeAction(entity, l); + } + } + + protected static void WriteLocationsToTrap(Action writeAction, T1 entity, IEnumerable locations) + { + foreach (var loc in locations) + { + WriteLocationToTrap(writeAction, entity, loc); + } + } + public override string ToString() => Label.ToString(); } } diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Expressions/Invocation.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Expressions/Invocation.cs index a6272974c22b..2ed7aec9955c 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Expressions/Invocation.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Expressions/Invocation.cs @@ -24,6 +24,16 @@ private Invocation(ExpressionNodeInfo info) private bool IsExplicitDelegateInvokeCall() => Kind == ExprKind.DELEGATE_INVOCATION && Context.GetModel(Syntax.Expression).GetSymbolInfo(Syntax.Expression).Symbol is IMethodSymbol m && m.MethodKind == MethodKind.DelegateInvoke; + private bool IsOperatorCall() => Kind == ExprKind.OPERATOR_INVOCATION; + + private bool IsValidMemberAccessKind() + { + return Kind == ExprKind.METHOD_INVOCATION || + IsEventDelegateCall() || + IsExplicitDelegateInvokeCall() || + IsOperatorCall(); + } + protected override void PopulateExpression(TextWriter trapFile) { if (IsNameof(Syntax)) @@ -37,7 +47,7 @@ protected override void PopulateExpression(TextWriter trapFile) var target = TargetSymbol; switch (Syntax.Expression) { - case MemberAccessExpressionSyntax memberAccess when Kind == ExprKind.METHOD_INVOCATION || IsEventDelegateCall() || IsExplicitDelegateInvokeCall(): + case MemberAccessExpressionSyntax memberAccess when IsValidMemberAccessKind(): memberName = memberAccess.Name.Identifier.Text; if (Syntax.Expression.Kind() == SyntaxKind.SimpleMemberAccessExpression) // Qualified method call; `x.M()` @@ -113,14 +123,24 @@ private static bool IsDynamicCall(ExpressionNodeInfo info) public SymbolInfo SymbolInfo => info.SymbolInfo; + private static bool IsOperatorLikeCall(ExpressionNodeInfo info) + { + return info.SymbolInfo.Symbol is IMethodSymbol method && + method.TryGetExtensionMethod()?.MethodKind == MethodKind.UserDefinedOperator; + } + public IMethodSymbol? TargetSymbol { get { var si = SymbolInfo; - if (si.Symbol is not null) - return si.Symbol as IMethodSymbol; + if (si.Symbol is ISymbol symbol) + { + var method = symbol as IMethodSymbol; + // Case for compiler-generated extension methods. + return method?.TryGetExtensionMethod() ?? method; + } if (si.CandidateReason == CandidateReason.OverloadResolutionFailure) { @@ -196,15 +216,25 @@ private static bool IsLocalFunctionInvocation(ExpressionNodeInfo info) private static ExprKind GetKind(ExpressionNodeInfo info) { - return IsNameof((InvocationExpressionSyntax)info.Node) - ? ExprKind.NAMEOF - : IsDelegateLikeCall(info) - ? IsDelegateInvokeCall(info) - ? ExprKind.DELEGATE_INVOCATION - : ExprKind.FUNCTION_POINTER_INVOCATION - : IsLocalFunctionInvocation(info) - ? ExprKind.LOCAL_FUNCTION_INVOCATION - : ExprKind.METHOD_INVOCATION; + if (IsNameof((InvocationExpressionSyntax)info.Node)) + { + return ExprKind.NAMEOF; + } + if (IsDelegateLikeCall(info)) + { + return IsDelegateInvokeCall(info) + ? ExprKind.DELEGATE_INVOCATION + : ExprKind.FUNCTION_POINTER_INVOCATION; + } + if (IsLocalFunctionInvocation(info)) + { + return ExprKind.LOCAL_FUNCTION_INVOCATION; + } + if (IsOperatorLikeCall(info)) + { + return ExprKind.OPERATOR_INVOCATION; + } + return ExprKind.METHOD_INVOCATION; } private static bool IsNameof(InvocationExpressionSyntax syntax) diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/IParameter.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/IParameter.cs new file mode 100644 index 000000000000..d3f3a04c08fc --- /dev/null +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/IParameter.cs @@ -0,0 +1,9 @@ +namespace Semmle.Extraction.CSharp.Entities +{ + /// + /// Marker interface for parameter entities. + /// + internal interface IParameter : IEntity + { + } +} diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Method.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Method.cs index c92c561f31b6..5a437c3d3585 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Method.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Method.cs @@ -14,9 +14,28 @@ internal abstract class Method : CachedSymbol, IExpressionParentE protected Method(Context cx, IMethodSymbol init) : base(cx, init) { } + private SyntheticExtensionParameter? SyntheticParameter { get; set; } + + private int SynthesizeExtensionParameter() + { + // Synthesize implicit parameter for extension methods declared using extension(...) syntax. + if (Symbol.ContainingSymbol is INamedTypeSymbol type && + type.IsExtension && type.ExtensionParameter is IParameterSymbol parameter && + !string.IsNullOrEmpty(parameter.Name) && !Symbol.IsStatic) + { + var originalSyntheticParam = OriginalDefinition.SyntheticParameter; + SyntheticParameter = SyntheticExtensionParameter.Create(Context, this, parameter, originalSyntheticParam); + return 1; + } + + return 0; + } + protected void PopulateParameters() { var originalMethod = OriginalDefinition; + var positionOffset = SynthesizeExtensionParameter(); + IEnumerable parameters = Symbol.Parameters; IEnumerable originalParameters = originalMethod.Symbol.Parameters; @@ -24,8 +43,8 @@ protected void PopulateParameters() { var original = SymbolEqualityComparer.Default.Equals(p.paramSymbol, p.originalParam) ? null - : Parameter.Create(Context, p.originalParam, originalMethod); - Parameter.Create(Context, p.paramSymbol, this, original); + : Parameter.Create(Context, p.originalParam, originalMethod, null, positionOffset); + Parameter.Create(Context, p.paramSymbol, this, original, positionOffset); } if (Symbol.IsVararg) @@ -302,9 +321,9 @@ public static void AddExplicitInterfaceQualifierToId(Context cx, EscapingTextWri /// /// Whether this method has unbound type parameters. /// - public bool IsUnboundGeneric => IsGeneric && SymbolEqualityComparer.Default.Equals(Symbol.ConstructedFrom, Symbol); + public bool IsUnboundGeneric => Symbol.IsUnboundGenericMethod(); - public bool IsBoundGeneric => IsGeneric && !IsUnboundGeneric; + public bool IsBoundGeneric => Symbol.IsBoundGenericMethod(); protected IMethodSymbol ConstructedFromSymbol => Symbol.ConstructedFrom; diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/OrdinaryMethod.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/OrdinaryMethod.cs index 22bcd1dce2c8..2fb148358e8c 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/OrdinaryMethod.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/OrdinaryMethod.cs @@ -23,7 +23,11 @@ protected OrdinaryMethod(Context cx, IMethodSymbol init) ? Symbol.ContainingType.GetSymbolLocation() : BodyDeclaringSymbol.GetSymbolLocation(); - public override bool NeedsPopulation => base.NeedsPopulation || IsCompilerGeneratedDelegate(); + public override bool NeedsPopulation => + (base.NeedsPopulation || IsCompilerGeneratedDelegate()) && + // Exclude compiler-generated extension methods. A call to such a method + // is replaced by a call to the defining extension method. + !Symbol.IsCompilerGeneratedExtensionMethod(); public override void Populate(TextWriter trapFile) { diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Parameter.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Parameter.cs index 49ef9a4a6e9a..dbb410382f95 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Parameter.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Parameter.cs @@ -7,16 +7,23 @@ namespace Semmle.Extraction.CSharp.Entities { - internal class Parameter : CachedSymbol, IExpressionParentEntity + internal class Parameter : CachedSymbol, IExpressionParentEntity, IParameter { protected IEntity? Parent { get; set; } protected Parameter Original { get; } + private int PositionOffset { get; set; } - protected Parameter(Context cx, IParameterSymbol init, IEntity? parent, Parameter? original) + private Parameter(Context cx, IParameterSymbol init, IEntity? parent, Parameter? original, int positionOffset) : base(cx, init) { Parent = parent; Original = original ?? this; + PositionOffset = positionOffset; + } + + protected Parameter(Context cx, IParameterSymbol init, IEntity? parent, Parameter? original) + : this(cx, init, parent, original, 0) + { } public override Microsoft.CodeAnalysis.Location ReportingLocation => Symbol.GetSymbolLocation(); @@ -32,46 +39,18 @@ public enum Kind RefReadOnly = 6 } - protected virtual int Ordinal => Symbol.Ordinal; - - private Kind ParamKind - { - get - { - switch (Symbol.RefKind) - { - case RefKind.Out: - return Kind.Out; - case RefKind.Ref: - return Kind.Ref; - case RefKind.In: - return Kind.In; - case RefKind.RefReadOnlyParameter: - return Kind.RefReadOnly; - default: - if (Symbol.IsParams) - return Kind.Params; - - if (Ordinal == 0) - { - if (Symbol.ContainingSymbol is IMethodSymbol method && method.IsExtensionMethod) - return Kind.This; - } - return Kind.None; - } - } - } + protected virtual int Ordinal => Symbol.Ordinal + PositionOffset; - public static Parameter Create(Context cx, IParameterSymbol param, IEntity parent, Parameter? original = null) + public static Parameter Create(Context cx, IParameterSymbol param, IEntity parent, Parameter? original = null, int positionOffset = 0) { var cachedSymbol = cx.GetPossiblyCachedParameterSymbol(param); - return ParameterFactory.Instance.CreateEntity(cx, cachedSymbol, (cachedSymbol, parent, original)); + return ParameterFactory.Instance.CreateEntity(cx, cachedSymbol, (cachedSymbol, parent, original, positionOffset)); } public static Parameter Create(Context cx, IParameterSymbol param) { var cachedSymbol = cx.GetPossiblyCachedParameterSymbol(param); - return ParameterFactory.Instance.CreateEntity(cx, cachedSymbol, (cachedSymbol, null, null)); + return ParameterFactory.Instance.CreateEntity(cx, cachedSymbol, (cachedSymbol, null, null, 0)); } public override void WriteId(EscapingTextWriter trapFile) @@ -79,6 +58,9 @@ public override void WriteId(EscapingTextWriter trapFile) if (Parent is null) Parent = Method.Create(Context, Symbol.ContainingSymbol as IMethodSymbol); + if (Parent is null && Symbol.ContainingSymbol is INamedTypeSymbol type && type.IsExtension) + Parent = Type.Create(Context, type); + if (Parent is null) throw new InternalError(Symbol, "Couldn't get parent of symbol."); @@ -113,7 +95,8 @@ public override void Populate(TextWriter trapFile) Context.ModelError(Symbol, "Inconsistent parameter declaration"); var type = Type.Create(Context, Symbol.Type); - trapFile.@params(this, Name, type.TypeRef, Ordinal, ParamKind, Parent!, Original); + var kind = Symbol.GetParameterKind(); + trapFile.@params(this, Name, type.TypeRef, Ordinal, kind, Parent!, Original); if (Context.OnlyScaffold) { @@ -194,11 +177,11 @@ Symbol.ContainingSymbol is IMethodSymbol ms && return syntax?.Default; } - private class ParameterFactory : CachedEntityFactory<(IParameterSymbol, IEntity?, Parameter?), Parameter> + private class ParameterFactory : CachedEntityFactory<(IParameterSymbol, IEntity?, Parameter?, int), Parameter> { public static ParameterFactory Instance { get; } = new ParameterFactory(); - public override Parameter Create(Context cx, (IParameterSymbol, IEntity?, Parameter?) init) => new Parameter(cx, init.Item1, init.Item2, init.Item3); + public override Parameter Create(Context cx, (IParameterSymbol, IEntity?, Parameter?, int) init) => new Parameter(cx, init.Item1, init.Item2, init.Item3, init.Item4); } public override TrapStackBehaviour TrapStackBehaviour => TrapStackBehaviour.OptionalLabel; diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/SyntheticExtensionParameter.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/SyntheticExtensionParameter.cs new file mode 100644 index 000000000000..81d58507a108 --- /dev/null +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/SyntheticExtensionParameter.cs @@ -0,0 +1,77 @@ +using System.IO; +using System.Linq; +using Microsoft.CodeAnalysis; +using Microsoft.CodeAnalysis.CSharp.Syntax; + +namespace Semmle.Extraction.CSharp.Entities +{ + /// + /// Synthetic parameter for extension methods declared using the extension syntax. + /// That is, we add a synthetic parameter `s` to `IsValid` in the following example: + /// extension(string s) { + /// public bool IsValid() { ... } + /// } + /// + /// Note, that we use the characteristics of the parameter of the extension type + /// to populate the database. + /// + internal class SyntheticExtensionParameter : FreshEntity, IParameter + { + private Method ExtensionMethod { get; } + private IParameterSymbol ExtensionParameter { get; } + private SyntheticExtensionParameter Original { get; } + + private SyntheticExtensionParameter(Context cx, Method method, IParameterSymbol parameter, SyntheticExtensionParameter? original) : base(cx) + { + ExtensionMethod = method; + ExtensionParameter = parameter; + Original = original ?? this; + } + + private static int Ordinal => 0; + + private string Name => ExtensionParameter.Name; + + private bool IsSourceDeclaration => ExtensionMethod.Symbol.IsSourceDeclaration(); + + protected override void Populate(TextWriter trapFile) + { + PopulateNullability(trapFile, ExtensionParameter.GetAnnotatedType()); + PopulateRefKind(trapFile, ExtensionParameter.RefKind); + + var type = Type.Create(Context, ExtensionParameter.Type); + var kind = ExtensionParameter.GetParameterKind(); + trapFile.@params(this, Name, type.TypeRef, Ordinal, kind, ExtensionMethod, Original); + + if (Context.OnlyScaffold) + { + return; + } + + if (Context.ExtractLocation(ExtensionParameter)) + { + var locations = Context.GetLocations(ExtensionParameter); + WriteLocationsToTrap(trapFile.param_location, this, locations); + } + + if (IsSourceDeclaration) + { + foreach (var syntax in ExtensionParameter.DeclaringSyntaxReferences + .Select(d => d.GetSyntax()) + .OfType() + .Where(s => s.Type is not null)) + { + TypeMention.Create(Context, syntax.Type!, this, type); + } + } + } + + public static SyntheticExtensionParameter Create(Context cx, Method method, IParameterSymbol parameter, SyntheticExtensionParameter? original) + { + var p = new SyntheticExtensionParameter(cx, method, parameter, original); + p.TryPopulate(); + return p; + } + } + +} diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/NamedType.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/NamedType.cs index dcf2bffe095f..078ccf01c10e 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/NamedType.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/NamedType.cs @@ -20,6 +20,8 @@ private NamedType(Context cx, INamedTypeSymbol init, bool constructUnderlyingTup public static NamedType Create(Context cx, INamedTypeSymbol type) => NamedTypeFactory.Instance.CreateEntityFromSymbol(cx, type); + public NamedType OriginalDefinition => Create(Context, Symbol.OriginalDefinition); + /// /// Creates a named type entity from a tuple type. Unlike , this /// will create an entity for the underlying `System.ValueTuple` struct. @@ -90,6 +92,25 @@ public override void Populate(TextWriter trapFile) { trapFile.anonymous_types(this); } + + if (Symbol.IsExtension && Symbol.ExtensionParameter is IParameterSymbol parameter) + { + // For some reason an extension type has a receiver parameter with an empty name + // even when there is no parameter. + if (!string.IsNullOrEmpty(parameter.Name)) + { + var originalType = OriginalDefinition; + // In case this is a constructed generic, we also need to create the unbound parameter. + var originalParameter = SymbolEqualityComparer.Default.Equals(Symbol, originalType.Symbol.ExtensionParameter) || originalType.Symbol.ExtensionParameter is null + ? null + : Parameter.Create(Context, originalType.Symbol.ExtensionParameter, originalType); + Parameter.Create(Context, parameter, this, originalParameter); + } + + // Use the parameter type as the receiver type. + var receiverType = Type.Create(Context, parameter.Type).TypeRef; + trapFile.extension_receiver_type(this, receiverType); + } } private readonly Lazy typeArgumentsLazy; diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/Type.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/Type.cs index 3e79a8f81018..0f28a1153e22 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/Type.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/Type.cs @@ -105,6 +105,7 @@ public Kinds.TypeKind GetTypeKind(Context cx, bool constructUnderlyingTupleType) case TypeKind.Pointer: return Kinds.TypeKind.POINTER; case TypeKind.FunctionPointer: return Kinds.TypeKind.FUNCTION_POINTER; case TypeKind.Error: return Kinds.TypeKind.UNKNOWN; + case TypeKind.Extension: return Kinds.TypeKind.EXTENSION; default: cx.ModelError(Symbol, $"Unhandled type kind '{Symbol.TypeKind}'"); return Kinds.TypeKind.UNKNOWN; @@ -366,7 +367,7 @@ private class DelegateTypeParameter : Parameter private DelegateTypeParameter(Context cx, IParameterSymbol init, IEntity parent, Parameter? original) : base(cx, init, parent, original) { } - public static new DelegateTypeParameter Create(Context cx, IParameterSymbol param, IEntity parent, Parameter? original = null) => + public static DelegateTypeParameter Create(Context cx, IParameterSymbol param, IEntity parent, Parameter? original = null) => // We need to use a different cache key than `param` to avoid mixing up // `DelegateTypeParameter`s and `Parameter`s DelegateTypeParameterFactory.Instance.CreateEntity(cx, (typeof(DelegateTypeParameter), new SymbolEqualityWrapper(param)), (param, parent, original)); diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Kinds/TypeKind.cs b/csharp/extractor/Semmle.Extraction.CSharp/Kinds/TypeKind.cs index a35f25c7596c..9088a11da61f 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Kinds/TypeKind.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Kinds/TypeKind.cs @@ -38,5 +38,6 @@ public enum TypeKind TUPLE = 32, FUNCTION_POINTER = 33, INLINE_ARRAY = 34, + EXTENSION = 35 } } diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Trap/Tuples.cs b/csharp/extractor/Semmle.Extraction.CSharp/Trap/Tuples.cs index b789eaa2e9c7..1a25da058bd8 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Trap/Tuples.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Trap/Tuples.cs @@ -202,6 +202,9 @@ internal static void exprorstmt_name(this TextWriter trapFile, IEntity expr, str internal static void extend(this TextWriter trapFile, Type type, Type super) => trapFile.WriteTuple("extend", type, super); + internal static void extension_receiver_type(this TextWriter trapFile, Type @extension, Type receiverType) => + trapFile.WriteTuple("extension_receiver_type", extension, receiverType); + internal static void anonymous_types(this TextWriter trapFile, Type type) => trapFile.WriteTuple("anonymous_types", type); @@ -292,10 +295,10 @@ internal static void operators(this TextWriter trapFile, UserOperator method, st internal static void overrides(this TextWriter trapFile, Method overriding, Method overridden) => trapFile.WriteTuple("overrides", overriding, overridden); - internal static void param_location(this TextWriter trapFile, Parameter param, Location location) => + internal static void param_location(this TextWriter trapFile, IParameter param, Location location) => trapFile.WriteTuple("param_location", param, location); - internal static void @params(this TextWriter trapFile, Parameter param, string name, Type type, int child, Parameter.Kind mode, IEntity method, Parameter originalDefinition) => + internal static void @params(this TextWriter trapFile, IParameter param, string name, Type type, int child, Parameter.Kind mode, IEntity method, IParameter originalDefinition) => trapFile.WriteTuple("params", param, name, type, child, (int)mode, method, originalDefinition); internal static void parent_namespace(this TextWriter trapFile, IEntity type, Namespace parent) => diff --git a/csharp/extractor/Semmle.Util/IEnumerableExtensions.cs b/csharp/extractor/Semmle.Util/IEnumerableExtensions.cs index 1ca676f0ce6d..f4cc97a4d48c 100644 --- a/csharp/extractor/Semmle.Util/IEnumerableExtensions.cs +++ b/csharp/extractor/Semmle.Util/IEnumerableExtensions.cs @@ -119,5 +119,28 @@ public static int SequenceHash(this IEnumerable items) where T : notnull /// public static IEnumerable WhereNotNull(this IEnumerable items) where T : class => items.Where(i => i is not null)!; + + /// + /// Splits the sequence at the given index. + /// + public static (IEnumerable, IEnumerable) SplitAt(this IEnumerable items, int index) + { + var left = new List(); + var right = new List(); + var i = 0; + foreach (var item in items) + { + if (i < index) + { + left.Add(item); + } + else + { + right.Add(item); + } + i++; + } + return (left, right); + } } } diff --git a/csharp/ql/campaigns/Solorigate/lib/CHANGELOG.md b/csharp/ql/campaigns/Solorigate/lib/CHANGELOG.md index 68238efa1101..df4169a11740 100644 --- a/csharp/ql/campaigns/Solorigate/lib/CHANGELOG.md +++ b/csharp/ql/campaigns/Solorigate/lib/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.7.59 + +No user-facing changes. + ## 1.7.58 No user-facing changes. diff --git a/csharp/ql/campaigns/Solorigate/lib/change-notes/released/1.7.59.md b/csharp/ql/campaigns/Solorigate/lib/change-notes/released/1.7.59.md new file mode 100644 index 000000000000..7f6b5bd0256a --- /dev/null +++ b/csharp/ql/campaigns/Solorigate/lib/change-notes/released/1.7.59.md @@ -0,0 +1,3 @@ +## 1.7.59 + +No user-facing changes. diff --git a/csharp/ql/campaigns/Solorigate/lib/codeql-pack.release.yml b/csharp/ql/campaigns/Solorigate/lib/codeql-pack.release.yml index 422196097f2a..45a32aec8000 100644 --- a/csharp/ql/campaigns/Solorigate/lib/codeql-pack.release.yml +++ b/csharp/ql/campaigns/Solorigate/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.7.58 +lastReleaseVersion: 1.7.59 diff --git a/csharp/ql/campaigns/Solorigate/lib/qlpack.yml b/csharp/ql/campaigns/Solorigate/lib/qlpack.yml index 09feed992650..2bf13d256c9b 100644 --- a/csharp/ql/campaigns/Solorigate/lib/qlpack.yml +++ b/csharp/ql/campaigns/Solorigate/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-solorigate-all -version: 1.7.58 +version: 1.7.60-dev groups: - csharp - solorigate diff --git a/csharp/ql/campaigns/Solorigate/src/CHANGELOG.md b/csharp/ql/campaigns/Solorigate/src/CHANGELOG.md index 68238efa1101..df4169a11740 100644 --- a/csharp/ql/campaigns/Solorigate/src/CHANGELOG.md +++ b/csharp/ql/campaigns/Solorigate/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.7.59 + +No user-facing changes. + ## 1.7.58 No user-facing changes. diff --git a/csharp/ql/campaigns/Solorigate/src/change-notes/released/1.7.59.md b/csharp/ql/campaigns/Solorigate/src/change-notes/released/1.7.59.md new file mode 100644 index 000000000000..7f6b5bd0256a --- /dev/null +++ b/csharp/ql/campaigns/Solorigate/src/change-notes/released/1.7.59.md @@ -0,0 +1,3 @@ +## 1.7.59 + +No user-facing changes. diff --git a/csharp/ql/campaigns/Solorigate/src/codeql-pack.release.yml b/csharp/ql/campaigns/Solorigate/src/codeql-pack.release.yml index 422196097f2a..45a32aec8000 100644 --- a/csharp/ql/campaigns/Solorigate/src/codeql-pack.release.yml +++ b/csharp/ql/campaigns/Solorigate/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.7.58 +lastReleaseVersion: 1.7.59 diff --git a/csharp/ql/campaigns/Solorigate/src/qlpack.yml b/csharp/ql/campaigns/Solorigate/src/qlpack.yml index 6f7ea3b625bf..780301f353c8 100644 --- a/csharp/ql/campaigns/Solorigate/src/qlpack.yml +++ b/csharp/ql/campaigns/Solorigate/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-solorigate-queries -version: 1.7.58 +version: 1.7.60-dev groups: - csharp - solorigate diff --git a/csharp/ql/lib/CHANGELOG.md b/csharp/ql/lib/CHANGELOG.md index 2910824c1b72..21b19c8a09ab 100644 --- a/csharp/ql/lib/CHANGELOG.md +++ b/csharp/ql/lib/CHANGELOG.md @@ -1,3 +1,10 @@ +## 5.4.7 + +### Minor Analysis Improvements + +* The model for `System.Web.HttpUtility` has been modified to better model the flow of tainted URIs. +* C# 14: Added support for `extension` members in the extractor, QL library, data flow, and Models as Data, covering extension methods, properties, and operators. + ## 5.4.6 ### Minor Analysis Improvements diff --git a/csharp/ql/lib/change-notes/released/5.4.7.md b/csharp/ql/lib/change-notes/released/5.4.7.md new file mode 100644 index 000000000000..b7d268470a27 --- /dev/null +++ b/csharp/ql/lib/change-notes/released/5.4.7.md @@ -0,0 +1,6 @@ +## 5.4.7 + +### Minor Analysis Improvements + +* The model for `System.Web.HttpUtility` has been modified to better model the flow of tainted URIs. +* C# 14: Added support for `extension` members in the extractor, QL library, data flow, and Models as Data, covering extension methods, properties, and operators. diff --git a/csharp/ql/lib/codeql-pack.release.yml b/csharp/ql/lib/codeql-pack.release.yml index 2f1d6ff78a82..4db516ab4153 100644 --- a/csharp/ql/lib/codeql-pack.release.yml +++ b/csharp/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 5.4.6 +lastReleaseVersion: 5.4.7 diff --git a/csharp/ql/lib/ext/System.Web.model.yml b/csharp/ql/lib/ext/System.Web.model.yml index 6d05cdae75b5..63c539fbe5ec 100644 --- a/csharp/ql/lib/ext/System.Web.model.yml +++ b/csharp/ql/lib/ext/System.Web.model.yml @@ -29,6 +29,10 @@ extensions: - ["System.Web", "HttpUtility", False, "JavaScriptStringEncode", "(System.String)", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["System.Web", "HttpUtility", False, "JavaScriptStringEncode", "(System.String,System.Boolean)", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["System.Web", "HttpUtility", False, "ParseQueryString", "", "", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["System.Web", "HttpUtility", False, "UrlDecode", "(System.Byte[],System.Int32,System.Int32,System.Text.Encoding)", "", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["System.Web", "HttpUtility", False, "UrlDecode", "(System.Byte[],System.Text.Encoding)", "", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["System.Web", "HttpUtility", False, "UrlDecode", "(System.String)", "", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["System.Web", "HttpUtility", False, "UrlDecode", "(System.String,System.Text.Encoding)", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["System.Web", "HttpUtility", False, "UrlEncode", "(System.Byte[])", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["System.Web", "HttpUtility", False, "UrlEncode", "(System.Byte[],System.Int32,System.Int32)", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["System.Web", "HttpUtility", False, "UrlEncode", "(System.String)", "", "Argument[0]", "ReturnValue", "taint", "manual"] diff --git a/csharp/ql/lib/qlpack.yml b/csharp/ql/lib/qlpack.yml index 28d4a36b3ab7..30f75e743043 100644 --- a/csharp/ql/lib/qlpack.yml +++ b/csharp/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-all -version: 5.4.6 +version: 5.4.8-dev groups: csharp dbscheme: semmlecode.csharp.dbscheme extractor: csharp diff --git a/csharp/ql/lib/semmle/code/csharp/Callable.qll b/csharp/ql/lib/semmle/code/csharp/Callable.qll index 49a2271b27c8..f8346cfe01e2 100644 --- a/csharp/ql/lib/semmle/code/csharp/Callable.qll +++ b/csharp/ql/lib/semmle/code/csharp/Callable.qll @@ -10,6 +10,7 @@ import exprs.Call private import commons.QualifiedName private import commons.Collections private import semmle.code.csharp.ExprOrStmtParent +private import semmle.code.csharp.internal.Callable private import semmle.code.csharp.metrics.Complexity private import TypeRef @@ -223,6 +224,8 @@ class Callable extends Parameterizable, ExprOrStmtParent, @callable { Call getACall() { this = result.getTarget() } } +final class ExtensionCallable = ExtensionCallableImpl; + /** * A method, for example * @@ -267,8 +270,11 @@ class Method extends Callable, Virtualizable, Attributable, @method { override Location getALocation() { method_location(this.getUnboundDeclaration(), result) } + /** Holds if this method is a classic extension method. */ + predicate isClassicExtensionMethod() { this.getParameter(0).hasExtensionMethodModifier() } + /** Holds if this method is an extension method. */ - predicate isExtensionMethod() { this.getParameter(0).hasExtensionMethodModifier() } + predicate isExtensionMethod() { this.isClassicExtensionMethod() or this.isInExtension() } /** Gets the type of the `params` parameter of this method, if any. */ Type getParamsType() { @@ -295,8 +301,10 @@ class Method extends Callable, Virtualizable, Attributable, @method { override string getAPrimaryQlClass() { result = "Method" } } +final class ExtensionMethod = ExtensionMethodImpl; + /** - * An extension method, for example + * An extension method, for example * * ```csharp * static bool IsDefined(this Widget w) { @@ -304,16 +312,28 @@ class Method extends Callable, Virtualizable, Attributable, @method { * } * ``` */ -class ExtensionMethod extends Method { - ExtensionMethod() { this.isExtensionMethod() } +class ClassicExtensionMethod extends ExtensionMethodImpl { + ClassicExtensionMethod() { this.isClassicExtensionMethod() } - override predicate isStatic() { any() } - - /** Gets the type being extended by this method. */ pragma[noinline] - Type getExtendedType() { result = this.getParameter(0).getType() } + override Type getExtendedType() { result = this.getParameter(0).getType() } + + override predicate isStatic() { any() } +} - override string getAPrimaryQlClass() { result = "ExtensionMethod" } +/** + * An extension method declared in an extension type, for example `IsNullOrEmpty` in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public bool IsNullOrEmpty() { ... } + * } + * } + * ``` + */ +class ExtensionTypeExtensionMethod extends ExtensionMethodImpl { + ExtensionTypeExtensionMethod() { this.isInExtension() } } /** @@ -536,6 +556,21 @@ class RecordCloneMethod extends Method { } } +/** + * An extension operator, for example `*` in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public static string operator *(int s1, string s2) { ... } + * } + * } + * ``` + */ +class ExtensionOperator extends ExtensionCallableImpl, Operator { + ExtensionOperator() { this.isInExtension() } +} + /** * A user-defined unary operator - an operator taking one operand. * diff --git a/csharp/ql/lib/semmle/code/csharp/Member.qll b/csharp/ql/lib/semmle/code/csharp/Member.qll index a196d3b3fc70..b64f408af64c 100644 --- a/csharp/ql/lib/semmle/code/csharp/Member.qll +++ b/csharp/ql/lib/semmle/code/csharp/Member.qll @@ -102,6 +102,9 @@ class Declaration extends NamedElement, @declaration { * implicit constructors or accessors. */ predicate isCompilerGenerated() { compiler_generated(this) } + + /** Holds if this declaration is in an extension type. */ + predicate isInExtension() { this.getDeclaringType() instanceof ExtensionType } } /** A declaration that can have a modifier. */ @@ -469,7 +472,7 @@ class Virtualizable extends Overridable, Member, @virtualizable { /** * A parameterizable declaration. Either a callable (`Callable`), a delegate - * type (`DelegateType`), or an indexer (`Indexer`). + * type (`DelegateType`), an indexer (`Indexer`), or an extension (`ExtensionType`). */ class Parameterizable extends Declaration, @parameterizable { /** Gets raw parameter `i`, including the `this` parameter at index 0. */ diff --git a/csharp/ql/lib/semmle/code/csharp/Property.qll b/csharp/ql/lib/semmle/code/csharp/Property.qll index e651639b6313..88665280d5b9 100644 --- a/csharp/ql/lib/semmle/code/csharp/Property.qll +++ b/csharp/ql/lib/semmle/code/csharp/Property.qll @@ -6,6 +6,7 @@ import Member import Stmt import Type private import semmle.code.csharp.ExprOrStmtParent +private import semmle.code.csharp.internal.Callable private import TypeRef /** @@ -260,6 +261,21 @@ class Property extends DeclarationWithGetSetAccessors, @property { override string getAPrimaryQlClass() { result = "Property" } } +/** + * An extension property, for example `FirstChar` in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public char FirstChar { get { ... } } + * } + * } + * ``` + */ +class ExtensionProperty extends Property { + ExtensionProperty() { this.isInExtension() } +} + /** * An indexer, for example `string this[int i]` on line 2 in * @@ -413,6 +429,22 @@ class Accessor extends Callable, Modifiable, Attributable, Overridable, @callabl override string toString() { result = this.getName() } } +/** + * An extension accessor. Either a getter (`Getter`) or a setter (`Setter`) of an + * extension property, for example `get` in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public char FirstChar { get { ... } } + * } + * } + * ``` + */ +class ExtensionAccessor extends ExtensionCallableImpl, Accessor { + ExtensionAccessor() { this.isInExtension() } +} + /** * A `get` accessor, for example `get { return p; }` in * diff --git a/csharp/ql/lib/semmle/code/csharp/Type.qll b/csharp/ql/lib/semmle/code/csharp/Type.qll index 1efb1aa93bff..54bbe9a6219f 100644 --- a/csharp/ql/lib/semmle/code/csharp/Type.qll +++ b/csharp/ql/lib/semmle/code/csharp/Type.qll @@ -17,7 +17,8 @@ private import semmle.code.csharp.frameworks.system.runtime.CompilerServices * * Either a value or reference type (`ValueOrRefType`), the `void` type (`VoidType`), * a pointer type (`PointerType`), the arglist type (`ArglistType`), an unknown - * type (`UnknownType`), or a type parameter (`TypeParameter`). + * type (`UnknownType`), a type parameter (`TypeParameter`) or + * an extension type (`ExtensionType`). */ class Type extends Member, TypeContainer, @type { /** Gets the name of this type without additional syntax such as `[]` or `*`. */ @@ -1326,3 +1327,35 @@ class TypeMention extends @type_mention { /** Gets the location of this type mention. */ Location getLocation() { type_mention_location(this, result) } } + +/** + * A type extension declaration, for example `extension(string s) { ... }` in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { ... } + * ``` + */ +class ExtensionType extends Parameterizable, @extension_type { + /** + * Gets the receiver parameter of this extension type, if any. + */ + Parameter getReceiverParameter() { result = this.getParameter(0) } + + /** + * Holds if this extension type has a receiver parameter. + */ + predicate hasReceiverParameter() { exists(this.getReceiverParameter()) } + + /** + * Gets the type being extended by this extension type. + */ + Type getExtendedType() { + extension_receiver_type(this, result) + or + not extension_receiver_type(this, any(Type t)) and + extension_receiver_type(this, getTypeRef(result)) + } + + override string getAPrimaryQlClass() { result = "ExtensionType" } +} diff --git a/csharp/ql/lib/semmle/code/csharp/commons/QualifiedName.qll b/csharp/ql/lib/semmle/code/csharp/commons/QualifiedName.qll index 2af02f3e85f2..6fef9cc24571 100644 --- a/csharp/ql/lib/semmle/code/csharp/commons/QualifiedName.qll +++ b/csharp/ql/lib/semmle/code/csharp/commons/QualifiedName.qll @@ -67,6 +67,12 @@ module QualifiedName { ) } + private string getName(ValueOrRefType t) { + not t instanceof ExtensionType and result = t.getUndecoratedName() + or + result = "extension(" + getFullName(t.(ExtensionType).getExtendedType()) + ")" + } + /** Holds if declaration `d` has the qualified name `qualifier`.`name`. */ predicate hasQualifiedName(Declaration d, string qualifier, string name) { d = @@ -86,12 +92,12 @@ module QualifiedName { exists(string name0 | name = name0 + Input::getUnboundGenericSuffix(ugt) | exists(string enclosing | hasQualifiedName(ugt.getDeclaringType(), qualifier, enclosing) and - name0 = enclosing + "+" + ugt.getUndecoratedName() + name0 = enclosing + "+" + getName(ugt) ) or not exists(ugt.getDeclaringType()) and qualifier = ugt.getNamespace().getFullName() and - name0 = ugt.getUndecoratedName() + name0 = getName(ugt) ) ) or @@ -100,12 +106,12 @@ module QualifiedName { exists(string name0 | name = name0 + "<" + getTypeArgumentsQualifiedNames(ct) + ">" | exists(string enclosing | hasQualifiedName(ct.getDeclaringType(), qualifier, enclosing) and - name0 = enclosing + "+" + ct.getUndecoratedName() + name0 = enclosing + "+" + getName(ct) ) or not exists(ct.getDeclaringType()) and qualifier = ct.getNamespace().getFullName() and - name0 = ct.getUndecoratedName() + name0 = getName(ct) ) ) or @@ -116,12 +122,12 @@ module QualifiedName { ( exists(string enclosing | hasQualifiedName(vort.getDeclaringType(), qualifier, enclosing) and - name = enclosing + "+" + vort.getUndecoratedName() + name = enclosing + "+" + getName(vort) ) or not exists(vort.getDeclaringType()) and qualifier = vort.getNamespace().getFullName() and - name = vort.getUndecoratedName() + name = getName(vort) ) ) or diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll index 61954f63e10b..edfaae018e98 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll @@ -214,7 +214,7 @@ module ModelValidation { not namespace.regexpMatch("[a-zA-Z0-9_\\.]+") and result = "Dubious namespace \"" + namespace + "\" in " + pred + " model." or - not type.regexpMatch("[a-zA-Z0-9_<>,\\+]+") and + not type.regexpMatch("[a-zA-Z0-9_<>,\\(\\)\\+\\.]+") and result = "Dubious type \"" + type + "\" in " + pred + " model." or not name.regexpMatch("[a-zA-Z0-9_<>,\\.]*") and diff --git a/csharp/ql/lib/semmle/code/csharp/dispatch/Dispatch.qll b/csharp/ql/lib/semmle/code/csharp/dispatch/Dispatch.qll index c61ad0f2a2a9..a83967441d74 100644 --- a/csharp/ql/lib/semmle/code/csharp/dispatch/Dispatch.qll +++ b/csharp/ql/lib/semmle/code/csharp/dispatch/Dispatch.qll @@ -87,7 +87,8 @@ private module Internal { newtype TDispatchCall = TDispatchMethodCall(MethodCall mc) { not isReflectionCall(mc, _, _, _, _) and - not mc.isLateBound() + not mc.isLateBound() and + not isExtensionAccessorCall(mc) } or TDispatchAccessorCall(AccessorCall ac) or TDispatchOperatorCall(OperatorCall oc) { not oc.isLateBound() } or @@ -110,7 +111,8 @@ private module Internal { c instanceof ConstructorInitializer or c instanceof LocalFunctionCall - } + } or + TDispatchExtensionAccessorCall(MethodCall mc) { isExtensionAccessorCall(mc) } cached Expr getCall(DispatchCall dc) { result = dc.(DispatchCallImpl).getCall() } @@ -142,6 +144,8 @@ private module Internal { import Cached + private predicate isExtensionAccessorCall(MethodCall mc) { exists(mc.getTargetAccessor()) } + /** * Holds if `mc` is a reflection call to a method named `name`, where * `object` is the object on which to invoke the method (`null` if a @@ -819,6 +823,33 @@ private module Internal { override Method getAStaticTarget() { result = this.getCall().getTarget() } } + /** + * A call to an extension accessor method. + */ + private class DispatchExtensionAccessorCall extends DispatchCallImpl, + TDispatchExtensionAccessorCall + { + override MethodCall getCall() { this = TDispatchExtensionAccessorCall(result) } + + private Expr getArgumentForParameter(Parameter p) { + this.getCall().getTargetAccessor().getAParameter() = p and + result = this.getCall().getArgument(p.getPosition()) + } + + override Expr getArgument(int i) { + exists(MethodCall call, Parameter p | call = this.getCall() | + p = call.getTargetAccessor().getParameter(i) and + result = this.getArgumentForParameter(p) + ) + } + + override Expr getQualifier() { result = this.getCall().getQualifier() } + + override Accessor getAStaticTarget() { result = this.getCall().getTargetAccessor() } + + override RuntimeCallable getADynamicTarget() { result = this.getAStaticTarget() } + } + /** * An ordinary operator call. * diff --git a/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll b/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll index eafc4fac491f..84375bc70130 100644 --- a/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll +++ b/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll @@ -223,6 +223,40 @@ class ParameterAccess extends LocalScopeVariableAccess, @parameter_access_expr { override string getAPrimaryQlClass() { result = "ParameterAccess" } } +/** + * An access to a synthetic parameter for an extension method, for example the + * access to `s` on line 3 in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public bool IsEmpty() { return s == string.Empty; } + * } + * } + * ``` + */ +class SyntheticExtensionParameterAccess extends ParameterAccess { + SyntheticExtensionParameterAccess() { + exists(ExtensionType et, Parameter p | + p = et.getReceiverParameter() and + expr_access(this, p) + ) + } + + override Parameter getTarget() { + exists(ExtensionCallable c | + this.getEnclosingCallable+() = c and + result = c.getParameter(0) + ) + } + + override string toString() { + result = "access to extension synthetic parameter " + this.getTarget().getName() + } + + override string getAPrimaryQlClass() { result = "SyntheticExtensionParameterAccess" } +} + /** * An access to a parameter that reads the underlying value, for example * the access to `p` on line 2 in diff --git a/csharp/ql/lib/semmle/code/csharp/exprs/Call.qll b/csharp/ql/lib/semmle/code/csharp/exprs/Call.qll index eecbc35900aa..f8b51a990ed1 100644 --- a/csharp/ql/lib/semmle/code/csharp/exprs/Call.qll +++ b/csharp/ql/lib/semmle/code/csharp/exprs/Call.qll @@ -267,9 +267,33 @@ class Call extends Expr, @call { class MethodCall extends Call, QualifiableExpr, LateBindableExpr, @method_invocation_expr { override Method getTarget() { expr_call(this, result) } + /** + * Gets the accessor that was used to generate this method, if any. For example, the + * method call `MyExtensions.get_FirstChar(s)` on line 9 is generated from the property + * accessor `get_FirstChar` on line 3 in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public char FirstChar { get { ... } } + * } + * } + * + * class A { + * char M(string s) { + * return MyExtensions.get_FirstChar(s); + * } + * } + */ + Accessor getTargetAccessor() { expr_call(this, result) } + override Method getQualifiedDeclaration() { result = this.getTarget() } - override string toString() { result = "call to method " + concat(this.getTarget().getName()) } + override string toString() { + if exists(this.getTargetAccessor()) + then result = "call to extension accessor " + concat(this.getTargetAccessor().getName()) + else result = "call to method " + concat(this.getTarget().getName()) + } override string getAPrimaryQlClass() { result = "MethodCall" } @@ -479,6 +503,30 @@ class OperatorCall extends Call, LateBindableExpr, @operator_invocation_expr { override string getAPrimaryQlClass() { result = "OperatorCall" } } +/** + * A call to an extension operator, for example `3 * s` on + * line 9 in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public static string operator *(int i, string s) { ... } + * } + * } + * + * class A { + * string M(string s) { + * return 3 * s; + * } + * } + * ``` + */ +class ExtensionOperatorCall extends OperatorCall { + ExtensionOperatorCall() { this.getTarget() instanceof ExtensionOperator } + + override string getAPrimaryQlClass() { result = "ExtensionOperatorCall" } +} + /** * A call to a user-defined mutator operator, for example `a++` on * line 7 in @@ -658,6 +706,44 @@ class IndexerCall extends AccessorCall, IndexerAccessExpr { override string getAPrimaryQlClass() { result = "IndexerCall" } } +/** + * A call to an extension property accessor (via the property), for example + * `s.FirstChar` on line 9 in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public char FirstChar { get { ... } } + * } + * } + * + * class A { + * char M(string s) { + * return s.FirstChar; + * } + * } + * ``` + */ +class ExtensionPropertyCall extends PropertyCall { + private ExtensionProperty prop; + + ExtensionPropertyCall() { this.getProperty() = prop } + + override Expr getArgument(int i) { + if prop.isStatic() + then result = super.getArgument(i) + else ( + // Shift arguments as the qualifier is an explicit argument in the getter/setter. + i = 0 and + result = this.getQualifier() + or + result = super.getArgument(i - 1) + ) + } + + override string getAPrimaryQlClass() { result = "ExtensionPropertyCall" } +} + /** * A call to an event accessor, for example the call to `add_Click` * (defined on line 5) on line 12 in diff --git a/csharp/ql/lib/semmle/code/csharp/internal/Callable.qll b/csharp/ql/lib/semmle/code/csharp/internal/Callable.qll new file mode 100644 index 000000000000..533bf31c0741 --- /dev/null +++ b/csharp/ql/lib/semmle/code/csharp/internal/Callable.qll @@ -0,0 +1,33 @@ +/** + * INTERNAL: Do not use. + * + * Provides `Callable` classes, which are things that can be called + * such as methods and operators. + */ + +private import semmle.code.csharp.Callable +private import semmle.code.csharp.Property + +/** + * A callable that is declared as an extension. + * + * Either an extension method (`ExtensionMethod`), an extension operator + * (`ExtensionOperator`) or an extension accessor (`ExtensionAccessor`). + */ +abstract class ExtensionCallableImpl extends Callable { + /** Gets the type being extended by this method. */ + pragma[noinline] + Type getExtendedType() { result = this.getDeclaringType().(ExtensionType).getExtendedType() } + + override string getAPrimaryQlClass() { result = "ExtensionCallable" } +} + +/** + * An extension method. + * + * Either a classic extension method (`ClassicExtensionMethod`) or an extension + * type extension method (`ExtensionTypeExtensionMethod`). + */ +abstract class ExtensionMethodImpl extends ExtensionCallableImpl, Method { + override string getAPrimaryQlClass() { result = "ExtensionMethod" } +} diff --git a/csharp/ql/lib/semmlecode.csharp.dbscheme b/csharp/ql/lib/semmlecode.csharp.dbscheme index 68b5aec54e50..178a7e6cf335 100644 --- a/csharp/ql/lib/semmlecode.csharp.dbscheme +++ b/csharp/ql/lib/semmlecode.csharp.dbscheme @@ -492,6 +492,7 @@ case @type.kind of | 32 = @tuple_type | 33 = @function_pointer_type | 34 = @inline_array_type +| 35 = @extension_type ; @simple_type = @bool_type | @char_type | @integral_type | @floating_point_type | @decimal_type; @@ -502,7 +503,7 @@ case @type.kind of @value_type = @simple_type | @enum_type | @struct_type | @nullable_type | @int_ptr_type | @uint_ptr_type | @tuple_type | @void_type | @inline_array_type; @ref_type = @class_type | @interface_type | @array_type | @delegate_type | @null_type - | @dynamic_type; + | @dynamic_type | @extension_type; @value_or_ref_type = @value_type | @ref_type; typerefs( @@ -541,6 +542,10 @@ function_pointer_return_type( unique int function_pointer_id: @function_pointer_type ref, int return_type_id: @type_or_ref ref); +extension_receiver_type( + unique int extension: @extension_type ref, + int receiver_type_id: @type_or_ref ref); + extend( int sub: @type ref, int super: @type_or_ref ref); @@ -903,7 +908,7 @@ localvar_location( unique int id: @local_variable ref, int loc: @location ref); -@parameterizable = @callable | @delegate_type | @indexer | @function_pointer_type; +@parameterizable = @callable | @delegate_type | @indexer | @function_pointer_type | @extension_type; #keyset[name, parent_id] #keyset[index, parent_id] diff --git a/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/old.dbscheme b/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/old.dbscheme new file mode 100644 index 000000000000..68b5aec54e50 --- /dev/null +++ b/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/old.dbscheme @@ -0,0 +1,1484 @@ +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2021-07-14 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * csc f1.cs f2.cs f3.cs + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + unique int id : @compilation, + string cwd : string ref +); + +compilation_info( + int id : @compilation ref, + string info_key: string ref, + string info_value: string ref +) + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | --compiler + * 1 | *path to compiler* + * 2 | f1.cs + * 3 | f2.cs + * 4 | f3.cs + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile.rsp` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.cs + * 1 | f2.cs + * 2 | f3.cs + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The references used by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs /r:ref1.dll /r:ref2.dll /r:ref3.dll + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | ref1.dll + * 1 | ref2.dll + * 2 | ref3.dll + */ +#keyset[id, num] +compilation_referencing_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + unique int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location ref +); + +extractor_messages( + unique int id: @extractor_message, + int severity: int ref, + string origin : string ref, + string text : string ref, + string entity : string ref, + int location: @location ref, + string stack_trace : string ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +compilation_assembly( + unique int id : @compilation ref, + int assembly: @assembly ref +) + +// Populated by the CSV extractor +externalData( + int id: @externalDataElement, + string path: string ref, + int column: int ref, + string value: string ref); + +sourceLocationPrefix( + string prefix: string ref); + +/* + * Overlay support + */ + +/** + * The CLI will automatically emit the tuple `databaseMetadata("isOverlay", "true")`, + * along with an `overlayChangedFiles` tuple for each new/modified/deleted file, + * when building an overlay database, and these can be used by the discard predicates. + */ +databaseMetadata( + string metadataKey : string ref, + string value : string ref +); + +overlayChangedFiles( + string path : string ref +); + +/* + * C# dbscheme + */ + +/** ELEMENTS **/ + +@element = @declaration | @stmt | @expr | @modifier | @attribute | @namespace_declaration + | @using_directive | @type_parameter_constraints | @externalDataElement + | @xmllocatable | @asp_element | @namespace | @preprocessor_directive; + +@declaration = @callable | @generic | @assignable | @namespace; + +@named_element = @namespace | @declaration; + +@declaration_with_accessors = @property | @indexer | @event; + +@assignable = @variable | @assignable_with_accessors | @event; + +@assignable_with_accessors = @property | @indexer; + +@attributable = @assembly | @field | @parameter | @operator | @method | @constructor + | @destructor | @callable_accessor | @value_or_ref_type | @declaration_with_accessors + | @local_function | @lambda_expr; + +/** LOCATIONS, ASEMMBLIES, MODULES, FILES and FOLDERS **/ + +@location = @location_default | @assembly; + +@locatable = @declaration_with_accessors | @callable_accessor | @declaration_or_directive + | @diagnostic | @extractor_message | @preprocessor_directive | @attribute | @type_mention | @type_parameter_constraints + | @declaration_with_accessors | @callable_accessor | @operator | @method + | @constructor | @destructor | @field | @local_variable | @parameter | @stmt | @expr + | @xmllocatable | @commentline | @commentblock | @asp_element + +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +locations_mapped( + unique int id: @location_default ref, + int mapped_to: @location_default ref); + +@sourceline = @file | @callable | @xmllocatable; + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref); + +assemblies( + unique int id: @assembly, + int file: @file ref, + string fullname: string ref, + string name: string ref, + string version: string ref); + +files( + unique int id: @file, + string name: string ref); + +folders( + unique int id: @folder, + string name: string ref); + +@container = @folder | @file ; + +containerparent( + int parent: @container ref, + unique int child: @container ref); + +file_extraction_mode( + unique int file: @file ref, + int mode: int ref + /* 0 = normal, 1 = standalone extractor */ + ); + +/** NAMESPACES **/ + +@type_container = @namespace | @type; + +namespaces( + unique int id: @namespace, + string name: string ref); + +namespace_declarations( + unique int id: @namespace_declaration, + int namespace_id: @namespace ref); + +namespace_declaration_location( + unique int id: @namespace_declaration ref, + int loc: @location ref); + +parent_namespace( + unique int child_id: @type_container ref, + int namespace_id: @namespace ref); + +@declaration_or_directive = @namespace_declaration | @type | @using_directive; + +parent_namespace_declaration( + int child_id: @declaration_or_directive ref, // cannot be unique because of partial classes + int namespace_id: @namespace_declaration ref); + +@using_directive = @using_namespace_directive | @using_static_directive; + +using_global( + unique int id: @using_directive ref +); + +using_namespace_directives( + unique int id: @using_namespace_directive, + int namespace_id: @namespace ref); + +using_static_directives( + unique int id: @using_static_directive, + int type_id: @type_or_ref ref); + +using_directive_location( + unique int id: @using_directive ref, + int loc: @location ref); + +@preprocessor_directive = @pragma_warning | @pragma_checksum | @directive_define | @directive_undefine | @directive_warning + | @directive_error | @directive_nullable | @directive_line | @directive_region | @directive_endregion | @directive_if + | @directive_elif | @directive_else | @directive_endif; + +@conditional_directive = @directive_if | @directive_elif; +@branch_directive = @directive_if | @directive_elif | @directive_else; + +directive_ifs( + unique int id: @directive_if, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref); /* 0: false, 1: true */ + +directive_elifs( + unique int id: @directive_elif, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +directive_elses( + unique int id: @directive_else, + int branchTaken: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +#keyset[id, start] +directive_endifs( + unique int id: @directive_endif, + unique int start: @directive_if ref); + +directive_define_symbols( + unique int id: @define_symbol_expr ref, + string name: string ref); + +directive_regions( + unique int id: @directive_region, + string name: string ref); + +#keyset[id, start] +directive_endregions( + unique int id: @directive_endregion, + unique int start: @directive_region ref); + +directive_lines( + unique int id: @directive_line, + int kind: int ref); /* 0: default, 1: hidden, 2: numeric, 3: span */ + +directive_line_value( + unique int id: @directive_line ref, + int line: int ref); + +directive_line_file( + unique int id: @directive_line ref, + int file: @file ref); + +directive_line_offset( + unique int id: @directive_line ref, + int offset: int ref); + +directive_line_span( + unique int id: @directive_line ref, + int startLine: int ref, + int startColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +directive_nullables( + unique int id: @directive_nullable, + int setting: int ref, /* 0: disable, 1: enable, 2: restore */ + int target: int ref); /* 0: none, 1: annotations, 2: warnings */ + +directive_warnings( + unique int id: @directive_warning, + string message: string ref); + +directive_errors( + unique int id: @directive_error, + string message: string ref); + +directive_undefines( + unique int id: @directive_undefine, + string name: string ref); + +directive_defines( + unique int id: @directive_define, + string name: string ref); + +pragma_checksums( + unique int id: @pragma_checksum, + int file: @file ref, + string guid: string ref, + string bytes: string ref); + +pragma_warnings( + unique int id: @pragma_warning, + int kind: int ref /* 0 = disable, 1 = restore */); + +#keyset[id, index] +pragma_warning_error_codes( + int id: @pragma_warning ref, + string errorCode: string ref, + int index: int ref); + +preprocessor_directive_location( + unique int id: @preprocessor_directive ref, + int loc: @location ref); + +preprocessor_directive_compilation( + int id: @preprocessor_directive ref, + int compilation: @compilation ref); + +preprocessor_directive_active( + unique int id: @preprocessor_directive ref, + int active: int ref); /* 0: false, 1: true */ + +/** TYPES **/ + +types( + unique int id: @type, + int kind: int ref, + string name: string ref); + +case @type.kind of + 1 = @bool_type +| 2 = @char_type +| 3 = @decimal_type +| 4 = @sbyte_type +| 5 = @short_type +| 6 = @int_type +| 7 = @long_type +| 8 = @byte_type +| 9 = @ushort_type +| 10 = @uint_type +| 11 = @ulong_type +| 12 = @float_type +| 13 = @double_type +| 14 = @enum_type +| 15 = @struct_type +| 17 = @class_type +| 19 = @interface_type +| 20 = @delegate_type +| 21 = @null_type +| 22 = @type_parameter +| 23 = @pointer_type +| 24 = @nullable_type +| 25 = @array_type +| 26 = @void_type +| 27 = @int_ptr_type +| 28 = @uint_ptr_type +| 29 = @dynamic_type +| 30 = @arglist_type +| 31 = @unknown_type +| 32 = @tuple_type +| 33 = @function_pointer_type +| 34 = @inline_array_type + ; + +@simple_type = @bool_type | @char_type | @integral_type | @floating_point_type | @decimal_type; +@integral_type = @signed_integral_type | @unsigned_integral_type; +@signed_integral_type = @sbyte_type | @short_type | @int_type | @long_type; +@unsigned_integral_type = @byte_type | @ushort_type | @uint_type | @ulong_type; +@floating_point_type = @float_type | @double_type; +@value_type = @simple_type | @enum_type | @struct_type | @nullable_type | @int_ptr_type + | @uint_ptr_type | @tuple_type | @void_type | @inline_array_type; +@ref_type = @class_type | @interface_type | @array_type | @delegate_type | @null_type + | @dynamic_type; +@value_or_ref_type = @value_type | @ref_type; + +typerefs( + unique int id: @typeref, + string name: string ref); + +typeref_type( + int id: @typeref ref, + unique int typeId: @type ref); + +@type_or_ref = @type | @typeref; + +array_element_type( + unique int array: @array_type ref, + int dimension: int ref, + int rank: int ref, + int element: @type_or_ref ref); + +nullable_underlying_type( + unique int nullable: @nullable_type ref, + int underlying: @type_or_ref ref); + +pointer_referent_type( + unique int pointer: @pointer_type ref, + int referent: @type_or_ref ref); + +enum_underlying_type( + unique int enum_id: @enum_type ref, + int underlying_type_id: @type_or_ref ref); + +delegate_return_type( + unique int delegate_id: @delegate_type ref, + int return_type_id: @type_or_ref ref); + +function_pointer_return_type( + unique int function_pointer_id: @function_pointer_type ref, + int return_type_id: @type_or_ref ref); + +extend( + int sub: @type ref, + int super: @type_or_ref ref); + +anonymous_types( + unique int id: @type ref); + +@interface_or_ref = @interface_type | @typeref; + +implement( + int sub: @type ref, + int super: @type_or_ref ref); + +type_location( + int id: @type ref, + int loc: @location ref); + +tuple_underlying_type( + unique int tuple: @tuple_type ref, + int struct: @type_or_ref ref); + +#keyset[tuple, index] +tuple_element( + int tuple: @tuple_type ref, + int index: int ref, + unique int field: @field ref); + +attributes( + unique int id: @attribute, + int kind: int ref, + int type_id: @type_or_ref ref, + int target: @attributable ref); + +case @attribute.kind of + 0 = @attribute_default +| 1 = @attribute_return +| 2 = @attribute_assembly +| 3 = @attribute_module +; + +attribute_location( + int id: @attribute ref, + int loc: @location ref); + +@type_mention_parent = @element | @type_mention; + +type_mention( + unique int id: @type_mention, + int type_id: @type_or_ref ref, + int parent: @type_mention_parent ref); + +type_mention_location( + unique int id: @type_mention ref, + int loc: @location ref); + +@has_type_annotation = @assignable | @type_parameter | @callable | @expr | @delegate_type | @generic | @function_pointer_type; + +/** + * A direct annotation on an entity, for example `string? x;`. + * + * Annotations: + * 2 = reftype is not annotated "!" + * 3 = reftype is annotated "?" + * 4 = readonly ref type / in parameter + * 5 = ref type parameter, return or local variable + * 6 = out parameter + * + * Note that the annotation depends on the element it annotates. + * @assignable: The annotation is on the type of the assignable, for example the variable type. + * @type_parameter: The annotation is on the reftype constraint + * @callable: The annotation is on the return type + * @array_type: The annotation is on the element type + */ +type_annotation(int id: @has_type_annotation ref, int annotation: int ref); + +nullability(unique int nullability: @nullability, int kind: int ref); + +case @nullability.kind of + 0 = @oblivious +| 1 = @not_annotated +| 2 = @annotated +; + +#keyset[parent, index] +nullability_parent(int nullability: @nullability ref, int index: int ref, int parent: @nullability ref) + +type_nullability(int id: @has_type_annotation ref, int nullability: @nullability ref); + +/** + * The nullable flow state of an expression, as determined by Roslyn. + * 0 = none (default, not populated) + * 1 = not null + * 2 = maybe null + */ +expr_flowstate(unique int id: @expr ref, int state: int ref); + +/** GENERICS **/ + +@generic = @type | @method | @local_function; + +type_parameters( + unique int id: @type_parameter ref, + int index: int ref, + int generic_id: @generic ref, + int variance: int ref /* none = 0, out = 1, in = 2 */); + +#keyset[constructed_id, index] +type_arguments( + int id: @type_or_ref ref, + int index: int ref, + int constructed_id: @generic_or_ref ref); + +@generic_or_ref = @generic | @typeref; + +constructed_generic( + unique int constructed: @generic ref, + int generic: @generic_or_ref ref); + +type_parameter_constraints( + unique int id: @type_parameter_constraints, + int param_id: @type_parameter ref); + +type_parameter_constraints_location( + int id: @type_parameter_constraints ref, + int loc: @location ref); + +general_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int kind: int ref /* class = 1, struct = 2, new = 3 */); + +specific_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref); + +specific_type_parameter_nullability( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref, + int nullability: @nullability ref); + +/** FUNCTION POINTERS */ + +function_pointer_calling_conventions( + int id: @function_pointer_type ref, + int kind: int ref); + +#keyset[id, index] +has_unmanaged_calling_conventions( + int id: @function_pointer_type ref, + int index: int ref, + int conv_id: @type_or_ref ref); + +/** MODIFIERS */ + +@modifiable = @modifiable_direct | @event_accessor; + +@modifiable_direct = @member | @accessor | @local_function | @anonymous_function_expr; + +modifiers( + unique int id: @modifier, + string name: string ref); + +has_modifiers( + int id: @modifiable_direct ref, + int mod_id: @modifier ref); + +/** MEMBERS **/ + +@member = @method | @constructor | @destructor | @field | @property | @event | @operator | @indexer | @type; + +@named_exprorstmt = @goto_stmt | @labeled_stmt | @expr; + +@virtualizable = @method | @property | @indexer | @event | @operator; + +exprorstmt_name( + unique int parent_id: @named_exprorstmt ref, + string name: string ref); + +nested_types( + unique int id: @type ref, + int declaring_type_id: @type ref, + int unbound_id: @type ref); + +properties( + unique int id: @property, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @property ref); + +property_location( + int id: @property ref, + int loc: @location ref); + +indexers( + unique int id: @indexer, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @indexer ref); + +indexer_location( + int id: @indexer ref, + int loc: @location ref); + +accessors( + unique int id: @accessor, + int kind: int ref, + string name: string ref, + int declaring_member_id: @member ref, + int unbound_id: @accessor ref); + +case @accessor.kind of + 1 = @getter +| 2 = @setter + ; + +init_only_accessors( + unique int id: @accessor ref); + +accessor_location( + int id: @accessor ref, + int loc: @location ref); + +events( + unique int id: @event, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @event ref); + +event_location( + int id: @event ref, + int loc: @location ref); + +event_accessors( + unique int id: @event_accessor, + int kind: int ref, + string name: string ref, + int declaring_event_id: @event ref, + int unbound_id: @event_accessor ref); + +case @event_accessor.kind of + 1 = @add_event_accessor +| 2 = @remove_event_accessor + ; + +event_accessor_location( + int id: @event_accessor ref, + int loc: @location ref); + +operators( + unique int id: @operator, + string name: string ref, + string symbol: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @operator ref); + +operator_location( + int id: @operator ref, + int loc: @location ref); + +constant_value( + int id: @variable ref, + string value: string ref); + +/** CALLABLES **/ + +@callable = @method | @constructor | @destructor | @operator | @callable_accessor | @anonymous_function_expr | @local_function; + +@callable_accessor = @accessor | @event_accessor; + +methods( + unique int id: @method, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @method ref); + +method_location( + int id: @method ref, + int loc: @location ref); + +constructors( + unique int id: @constructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @constructor ref); + +constructor_location( + int id: @constructor ref, + int loc: @location ref); + +destructors( + unique int id: @destructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @destructor ref); + +destructor_location( + int id: @destructor ref, + int loc: @location ref); + +overrides( + int id: @callable ref, + int base_id: @callable ref); + +explicitly_implements( + int id: @member ref, + int interface_id: @interface_or_ref ref); + +local_functions( + unique int id: @local_function, + string name: string ref, + int return_type: @type ref, + int unbound_id: @local_function ref); + +local_function_stmts( + unique int fn: @local_function_stmt ref, + int stmt: @local_function ref); + +/** VARIABLES **/ + +@variable = @local_scope_variable | @field; + +@local_scope_variable = @local_variable | @parameter; + +fields( + unique int id: @field, + int kind: int ref, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @field ref); + +case @field.kind of + 1 = @addressable_field +| 2 = @constant + ; + +field_location( + int id: @field ref, + int loc: @location ref); + +localvars( + unique int id: @local_variable, + int kind: int ref, + string name: string ref, + int implicitly_typed: int ref /* 0 = no, 1 = yes */, + int type_id: @type_or_ref ref, + int parent_id: @local_var_decl_expr ref); + +case @local_variable.kind of + 1 = @addressable_local_variable +| 2 = @local_constant +| 3 = @local_variable_ref + ; + +localvar_location( + unique int id: @local_variable ref, + int loc: @location ref); + +@parameterizable = @callable | @delegate_type | @indexer | @function_pointer_type; + +#keyset[name, parent_id] +#keyset[index, parent_id] +params( + unique int id: @parameter, + string name: string ref, + int type_id: @type_or_ref ref, + int index: int ref, + int mode: int ref, /* value = 0, ref = 1, out = 2, params/array = 3, this = 4, in = 5, ref readonly = 6 */ + int parent_id: @parameterizable ref, + int unbound_id: @parameter ref); + +param_location( + int id: @parameter ref, + int loc: @location ref); + +@has_scoped_annotation = @local_scope_variable + +scoped_annotation( + int id: @has_scoped_annotation ref, + int kind: int ref // scoped ref = 1, scoped value = 2 + ); + +/** STATEMENTS **/ + +@exprorstmt_parent = @control_flow_element | @top_level_exprorstmt_parent; + +statements( + unique int id: @stmt, + int kind: int ref); + +#keyset[index, parent] +stmt_parent( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_stmt_parent = @callable; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +stmt_parent_top_level( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @top_level_stmt_parent ref); + +case @stmt.kind of + 1 = @block_stmt +| 2 = @expr_stmt +| 3 = @if_stmt +| 4 = @switch_stmt +| 5 = @while_stmt +| 6 = @do_stmt +| 7 = @for_stmt +| 8 = @foreach_stmt +| 9 = @break_stmt +| 10 = @continue_stmt +| 11 = @goto_stmt +| 12 = @goto_case_stmt +| 13 = @goto_default_stmt +| 14 = @throw_stmt +| 15 = @return_stmt +| 16 = @yield_stmt +| 17 = @try_stmt +| 18 = @checked_stmt +| 19 = @unchecked_stmt +| 20 = @lock_stmt +| 21 = @using_block_stmt +| 22 = @var_decl_stmt +| 23 = @const_decl_stmt +| 24 = @empty_stmt +| 25 = @unsafe_stmt +| 26 = @fixed_stmt +| 27 = @label_stmt +| 28 = @catch +| 29 = @case_stmt +| 30 = @local_function_stmt +| 31 = @using_decl_stmt + ; + +@using_stmt = @using_block_stmt | @using_decl_stmt; + +@labeled_stmt = @label_stmt | @case; + +@decl_stmt = @var_decl_stmt | @const_decl_stmt | @using_decl_stmt; + +@cond_stmt = @if_stmt | @switch_stmt; + +@loop_stmt = @while_stmt | @do_stmt | @for_stmt | @foreach_stmt; + +@jump_stmt = @break_stmt | @goto_any_stmt | @continue_stmt | @throw_stmt | @return_stmt + | @yield_stmt; + +@goto_any_stmt = @goto_default_stmt | @goto_case_stmt | @goto_stmt; + + +stmt_location( + unique int id: @stmt ref, + int loc: @location ref); + +catch_type( + unique int catch_id: @catch ref, + int type_id: @type_or_ref ref, + int kind: int ref /* explicit = 1, implicit = 2 */); + +foreach_stmt_info( + unique int id: @foreach_stmt ref, + int kind: int ref /* non-async = 1, async = 2 */); + +@foreach_symbol = @method | @property | @type_or_ref; + +#keyset[id, kind] +foreach_stmt_desugar( + int id: @foreach_stmt ref, + int symbol: @foreach_symbol ref, + int kind: int ref /* GetEnumeratorMethod = 1, CurrentProperty = 2, MoveNextMethod = 3, DisposeMethod = 4, ElementType = 5 */); + +/** EXPRESSIONS **/ + +expressions( + unique int id: @expr, + int kind: int ref, + int type_id: @type_or_ref ref); + +#keyset[index, parent] +expr_parent( + unique int expr: @expr ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_expr_parent = @attribute | @field | @property | @indexer | @parameter | @directive_if | @directive_elif; + +@top_level_exprorstmt_parent = @top_level_expr_parent | @top_level_stmt_parent; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +expr_parent_top_level( + unique int expr: @expr ref, + int index: int ref, + int parent: @top_level_exprorstmt_parent ref); + +case @expr.kind of +/* literal */ + 1 = @bool_literal_expr +| 2 = @char_literal_expr +| 3 = @decimal_literal_expr +| 4 = @int_literal_expr +| 5 = @long_literal_expr +| 6 = @uint_literal_expr +| 7 = @ulong_literal_expr +| 8 = @float_literal_expr +| 9 = @double_literal_expr +| 10 = @utf16_string_literal_expr +| 11 = @null_literal_expr +/* primary & unary */ +| 12 = @this_access_expr +| 13 = @base_access_expr +| 14 = @local_variable_access_expr +| 15 = @parameter_access_expr +| 16 = @field_access_expr +| 17 = @property_access_expr +| 18 = @method_access_expr +| 19 = @event_access_expr +| 20 = @indexer_access_expr +| 21 = @array_access_expr +| 22 = @type_access_expr +| 23 = @typeof_expr +| 24 = @method_invocation_expr +| 25 = @delegate_invocation_expr +| 26 = @operator_invocation_expr +| 27 = @cast_expr +| 28 = @object_creation_expr +| 29 = @explicit_delegate_creation_expr +| 30 = @implicit_delegate_creation_expr +| 31 = @array_creation_expr +| 32 = @default_expr +| 33 = @plus_expr +| 34 = @minus_expr +| 35 = @bit_not_expr +| 36 = @log_not_expr +| 37 = @post_incr_expr +| 38 = @post_decr_expr +| 39 = @pre_incr_expr +| 40 = @pre_decr_expr +/* multiplicative */ +| 41 = @mul_expr +| 42 = @div_expr +| 43 = @rem_expr +/* additive */ +| 44 = @add_expr +| 45 = @sub_expr +/* shift */ +| 46 = @lshift_expr +| 47 = @rshift_expr +/* relational */ +| 48 = @lt_expr +| 49 = @gt_expr +| 50 = @le_expr +| 51 = @ge_expr +/* equality */ +| 52 = @eq_expr +| 53 = @ne_expr +/* logical */ +| 54 = @bit_and_expr +| 55 = @bit_xor_expr +| 56 = @bit_or_expr +| 57 = @log_and_expr +| 58 = @log_or_expr +/* type testing */ +| 59 = @is_expr +| 60 = @as_expr +/* null coalescing */ +| 61 = @null_coalescing_expr +/* conditional */ +| 62 = @conditional_expr +/* assignment */ +| 63 = @simple_assign_expr +| 64 = @assign_add_expr +| 65 = @assign_sub_expr +| 66 = @assign_mul_expr +| 67 = @assign_div_expr +| 68 = @assign_rem_expr +| 69 = @assign_and_expr +| 70 = @assign_xor_expr +| 71 = @assign_or_expr +| 72 = @assign_lshift_expr +| 73 = @assign_rshift_expr +/* more */ +| 74 = @object_init_expr +| 75 = @collection_init_expr +| 76 = @array_init_expr +| 77 = @checked_expr +| 78 = @unchecked_expr +| 79 = @constructor_init_expr +| 80 = @add_event_expr +| 81 = @remove_event_expr +| 82 = @par_expr +| 83 = @local_var_decl_expr +| 84 = @lambda_expr +| 85 = @anonymous_method_expr +| 86 = @namespace_expr +/* dynamic */ +| 92 = @dynamic_element_access_expr +| 93 = @dynamic_member_access_expr +/* unsafe */ +| 100 = @pointer_indirection_expr +| 101 = @address_of_expr +| 102 = @sizeof_expr +/* async */ +| 103 = @await_expr +/* C# 6.0 */ +| 104 = @nameof_expr +| 105 = @interpolated_string_expr +| 106 = @unknown_expr +/* C# 7.0 */ +| 107 = @throw_expr +| 108 = @tuple_expr +| 109 = @local_function_invocation_expr +| 110 = @ref_expr +| 111 = @discard_expr +/* C# 8.0 */ +| 112 = @range_expr +| 113 = @index_expr +| 114 = @switch_expr +| 115 = @recursive_pattern_expr +| 116 = @property_pattern_expr +| 117 = @positional_pattern_expr +| 118 = @switch_case_expr +| 119 = @assign_coalesce_expr +| 120 = @suppress_nullable_warning_expr +| 121 = @namespace_access_expr +/* C# 9.0 */ +| 122 = @lt_pattern_expr +| 123 = @gt_pattern_expr +| 124 = @le_pattern_expr +| 125 = @ge_pattern_expr +| 126 = @not_pattern_expr +| 127 = @and_pattern_expr +| 128 = @or_pattern_expr +| 129 = @function_pointer_invocation_expr +| 130 = @with_expr +/* C# 11.0 */ +| 131 = @list_pattern_expr +| 132 = @slice_pattern_expr +| 133 = @urshift_expr +| 134 = @assign_urshift_expr +| 135 = @utf8_string_literal_expr +/* C# 12.0 */ +| 136 = @collection_expr +| 137 = @spread_element_expr +| 138 = @interpolated_string_insert_expr +/* Preprocessor */ +| 999 = @define_symbol_expr +; + +@switch = @switch_stmt | @switch_expr; +@case = @case_stmt | @switch_case_expr; +@pattern_match = @case | @is_expr; +@unary_pattern_expr = @not_pattern_expr; +@relational_pattern_expr = @gt_pattern_expr | @lt_pattern_expr | @ge_pattern_expr | @le_pattern_expr; +@binary_pattern_expr = @and_pattern_expr | @or_pattern_expr; + +@integer_literal_expr = @int_literal_expr | @long_literal_expr | @uint_literal_expr | @ulong_literal_expr; +@real_literal_expr = @float_literal_expr | @double_literal_expr | @decimal_literal_expr; +@string_literal_expr = @utf16_string_literal_expr | @utf8_string_literal_expr; +@literal_expr = @bool_literal_expr | @char_literal_expr | @integer_literal_expr | @real_literal_expr + | @string_literal_expr | @null_literal_expr; + +@assign_expr = @simple_assign_expr | @assign_op_expr | @local_var_decl_expr; +@assign_op_expr = @assign_arith_expr | @assign_bitwise_expr | @assign_event_expr | @assign_coalesce_expr; +@assign_event_expr = @add_event_expr | @remove_event_expr; + +@assign_arith_expr = @assign_add_expr | @assign_sub_expr | @assign_mul_expr | @assign_div_expr + | @assign_rem_expr +@assign_bitwise_expr = @assign_and_expr | @assign_or_expr | @assign_xor_expr + | @assign_lshift_expr | @assign_rshift_expr | @assign_urshift_expr; + +@member_access_expr = @field_access_expr | @property_access_expr | @indexer_access_expr | @event_access_expr + | @method_access_expr | @type_access_expr | @dynamic_member_access_expr; +@access_expr = @member_access_expr | @this_access_expr | @base_access_expr | @assignable_access_expr | @namespace_access_expr; +@element_access_expr = @indexer_access_expr | @array_access_expr | @dynamic_element_access_expr; + +@local_variable_access = @local_variable_access_expr | @local_var_decl_expr; +@local_scope_variable_access_expr = @parameter_access_expr | @local_variable_access; +@variable_access_expr = @local_scope_variable_access_expr | @field_access_expr; + +@assignable_access_expr = @variable_access_expr | @property_access_expr | @element_access_expr + | @event_access_expr | @dynamic_member_access_expr; + +@objectorcollection_init_expr = @object_init_expr | @collection_init_expr; + +@delegate_creation_expr = @explicit_delegate_creation_expr | @implicit_delegate_creation_expr; + +@bin_arith_op_expr = @mul_expr | @div_expr | @rem_expr | @add_expr | @sub_expr; +@incr_op_expr = @pre_incr_expr | @post_incr_expr; +@decr_op_expr = @pre_decr_expr | @post_decr_expr; +@mut_op_expr = @incr_op_expr | @decr_op_expr; +@un_arith_op_expr = @plus_expr | @minus_expr | @mut_op_expr; +@arith_op_expr = @bin_arith_op_expr | @un_arith_op_expr; + +@ternary_log_op_expr = @conditional_expr; +@bin_log_op_expr = @log_and_expr | @log_or_expr | @null_coalescing_expr; +@un_log_op_expr = @log_not_expr; +@log_expr = @un_log_op_expr | @bin_log_op_expr | @ternary_log_op_expr; + +@bin_bit_op_expr = @bit_and_expr | @bit_or_expr | @bit_xor_expr | @lshift_expr + | @rshift_expr | @urshift_expr; +@un_bit_op_expr = @bit_not_expr; +@bit_expr = @un_bit_op_expr | @bin_bit_op_expr; + +@equality_op_expr = @eq_expr | @ne_expr; +@rel_op_expr = @gt_expr | @lt_expr| @ge_expr | @le_expr; +@comp_expr = @equality_op_expr | @rel_op_expr; + +@op_expr = @assign_expr | @un_op | @bin_op | @ternary_op; + +@ternary_op = @ternary_log_op_expr; +@bin_op = @bin_arith_op_expr | @bin_log_op_expr | @bin_bit_op_expr | @comp_expr; +@un_op = @un_arith_op_expr | @un_log_op_expr | @un_bit_op_expr | @sizeof_expr + | @pointer_indirection_expr | @address_of_expr; + +@anonymous_function_expr = @lambda_expr | @anonymous_method_expr; + +@call = @method_invocation_expr | @constructor_init_expr | @operator_invocation_expr + | @delegate_invocation_expr | @object_creation_expr | @call_access_expr + | @local_function_invocation_expr | @function_pointer_invocation_expr; + +@call_access_expr = @property_access_expr | @event_access_expr | @indexer_access_expr; + +@late_bindable_expr = @dynamic_element_access_expr | @dynamic_member_access_expr + | @object_creation_expr | @method_invocation_expr | @operator_invocation_expr; + +@throw_element = @throw_expr | @throw_stmt; + +@implicitly_typeable_object_creation_expr = @object_creation_expr | @explicit_delegate_creation_expr; + +implicitly_typed_array_creation( + unique int id: @array_creation_expr ref); + +explicitly_sized_array_creation( + unique int id: @array_creation_expr ref); + +stackalloc_array_creation( + unique int id: @array_creation_expr ref); + +implicitly_typed_object_creation( + unique int id: @implicitly_typeable_object_creation_expr ref); + +mutator_invocation_mode( + unique int id: @operator_invocation_expr ref, + int mode: int ref /* prefix = 1, postfix = 2*/); + +expr_value( + unique int id: @expr ref, + string value: string ref); + +expr_call( + unique int caller_id: @expr ref, + int target_id: @callable ref); + +expr_access( + unique int accesser_id: @access_expr ref, + int target_id: @accessible ref); + +@accessible = @method | @assignable | @local_function | @namespace; + +expr_location( + unique int id: @expr ref, + int loc: @location ref); + +dynamic_member_name( + unique int id: @late_bindable_expr ref, + string name: string ref); + +@qualifiable_expr = @member_access_expr + | @method_invocation_expr + | @element_access_expr; + +conditional_access( + unique int id: @qualifiable_expr ref); + +expr_argument( + unique int id: @expr ref, + int mode: int ref); + /* mode is the same as params: value = 0, ref = 1, out = 2 */ + +expr_argument_name( + unique int id: @expr ref, + string name: string ref); + +lambda_expr_return_type( + unique int id: @lambda_expr ref, + int type_id: @type_or_ref ref); + +/* Compiler generated */ + +compiler_generated(unique int id: @element ref); + +/** CONTROL/DATA FLOW **/ + +@control_flow_element = @stmt | @expr; + +/* XML Files */ + +xmlEncoding ( + unique int id: @file ref, + string encoding: string ref); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/* Comments */ + +commentline( + unique int id: @commentline, + int kind: int ref, + string text: string ref, + string rawtext: string ref); + +case @commentline.kind of + 0 = @singlelinecomment +| 1 = @xmldoccomment +| 2 = @multilinecomment; + +commentline_location( + unique int id: @commentline ref, + int loc: @location ref); + +commentblock( + unique int id : @commentblock); + +commentblock_location( + unique int id: @commentblock ref, + int loc: @location ref); + +commentblock_binding( + int id: @commentblock ref, + int entity: @element ref, + int bindtype: int ref); /* 0: Parent, 1: Best, 2: Before, 3: After */ + +commentblock_child( + int id: @commentblock ref, + int commentline: @commentline ref, + int index: int ref); + +/* ASP.NET */ + +case @asp_element.kind of + 0=@asp_close_tag +| 1=@asp_code +| 2=@asp_comment +| 3=@asp_data_binding +| 4=@asp_directive +| 5=@asp_open_tag +| 6=@asp_quoted_string +| 7=@asp_text +| 8=@asp_xml_directive; + +@asp_attribute = @asp_code | @asp_data_binding | @asp_quoted_string; + +asp_elements( + unique int id: @asp_element, + int kind: int ref, + int loc: @location ref); + +asp_comment_server(unique int comment: @asp_comment ref); +asp_code_inline(unique int code: @asp_code ref); +asp_directive_attribute( + int directive: @asp_directive ref, + int index: int ref, + string name: string ref, + int value: @asp_quoted_string ref); +asp_directive_name( + unique int directive: @asp_directive ref, + string name: string ref); +asp_element_body( + unique int element: @asp_element ref, + string body: string ref); +asp_tag_attribute( + int tag: @asp_open_tag ref, + int index: int ref, + string name: string ref, + int attribute: @asp_attribute ref); +asp_tag_name( + unique int tag: @asp_open_tag ref, + string name: string ref); +asp_tag_isempty(int tag: @asp_open_tag ref); diff --git a/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/semmlecode.csharp.dbscheme b/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/semmlecode.csharp.dbscheme new file mode 100644 index 000000000000..178a7e6cf335 --- /dev/null +++ b/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/semmlecode.csharp.dbscheme @@ -0,0 +1,1489 @@ +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2021-07-14 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * csc f1.cs f2.cs f3.cs + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + unique int id : @compilation, + string cwd : string ref +); + +compilation_info( + int id : @compilation ref, + string info_key: string ref, + string info_value: string ref +) + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | --compiler + * 1 | *path to compiler* + * 2 | f1.cs + * 3 | f2.cs + * 4 | f3.cs + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile.rsp` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.cs + * 1 | f2.cs + * 2 | f3.cs + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The references used by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs /r:ref1.dll /r:ref2.dll /r:ref3.dll + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | ref1.dll + * 1 | ref2.dll + * 2 | ref3.dll + */ +#keyset[id, num] +compilation_referencing_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + unique int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location ref +); + +extractor_messages( + unique int id: @extractor_message, + int severity: int ref, + string origin : string ref, + string text : string ref, + string entity : string ref, + int location: @location ref, + string stack_trace : string ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +compilation_assembly( + unique int id : @compilation ref, + int assembly: @assembly ref +) + +// Populated by the CSV extractor +externalData( + int id: @externalDataElement, + string path: string ref, + int column: int ref, + string value: string ref); + +sourceLocationPrefix( + string prefix: string ref); + +/* + * Overlay support + */ + +/** + * The CLI will automatically emit the tuple `databaseMetadata("isOverlay", "true")`, + * along with an `overlayChangedFiles` tuple for each new/modified/deleted file, + * when building an overlay database, and these can be used by the discard predicates. + */ +databaseMetadata( + string metadataKey : string ref, + string value : string ref +); + +overlayChangedFiles( + string path : string ref +); + +/* + * C# dbscheme + */ + +/** ELEMENTS **/ + +@element = @declaration | @stmt | @expr | @modifier | @attribute | @namespace_declaration + | @using_directive | @type_parameter_constraints | @externalDataElement + | @xmllocatable | @asp_element | @namespace | @preprocessor_directive; + +@declaration = @callable | @generic | @assignable | @namespace; + +@named_element = @namespace | @declaration; + +@declaration_with_accessors = @property | @indexer | @event; + +@assignable = @variable | @assignable_with_accessors | @event; + +@assignable_with_accessors = @property | @indexer; + +@attributable = @assembly | @field | @parameter | @operator | @method | @constructor + | @destructor | @callable_accessor | @value_or_ref_type | @declaration_with_accessors + | @local_function | @lambda_expr; + +/** LOCATIONS, ASEMMBLIES, MODULES, FILES and FOLDERS **/ + +@location = @location_default | @assembly; + +@locatable = @declaration_with_accessors | @callable_accessor | @declaration_or_directive + | @diagnostic | @extractor_message | @preprocessor_directive | @attribute | @type_mention | @type_parameter_constraints + | @declaration_with_accessors | @callable_accessor | @operator | @method + | @constructor | @destructor | @field | @local_variable | @parameter | @stmt | @expr + | @xmllocatable | @commentline | @commentblock | @asp_element + +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +locations_mapped( + unique int id: @location_default ref, + int mapped_to: @location_default ref); + +@sourceline = @file | @callable | @xmllocatable; + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref); + +assemblies( + unique int id: @assembly, + int file: @file ref, + string fullname: string ref, + string name: string ref, + string version: string ref); + +files( + unique int id: @file, + string name: string ref); + +folders( + unique int id: @folder, + string name: string ref); + +@container = @folder | @file ; + +containerparent( + int parent: @container ref, + unique int child: @container ref); + +file_extraction_mode( + unique int file: @file ref, + int mode: int ref + /* 0 = normal, 1 = standalone extractor */ + ); + +/** NAMESPACES **/ + +@type_container = @namespace | @type; + +namespaces( + unique int id: @namespace, + string name: string ref); + +namespace_declarations( + unique int id: @namespace_declaration, + int namespace_id: @namespace ref); + +namespace_declaration_location( + unique int id: @namespace_declaration ref, + int loc: @location ref); + +parent_namespace( + unique int child_id: @type_container ref, + int namespace_id: @namespace ref); + +@declaration_or_directive = @namespace_declaration | @type | @using_directive; + +parent_namespace_declaration( + int child_id: @declaration_or_directive ref, // cannot be unique because of partial classes + int namespace_id: @namespace_declaration ref); + +@using_directive = @using_namespace_directive | @using_static_directive; + +using_global( + unique int id: @using_directive ref +); + +using_namespace_directives( + unique int id: @using_namespace_directive, + int namespace_id: @namespace ref); + +using_static_directives( + unique int id: @using_static_directive, + int type_id: @type_or_ref ref); + +using_directive_location( + unique int id: @using_directive ref, + int loc: @location ref); + +@preprocessor_directive = @pragma_warning | @pragma_checksum | @directive_define | @directive_undefine | @directive_warning + | @directive_error | @directive_nullable | @directive_line | @directive_region | @directive_endregion | @directive_if + | @directive_elif | @directive_else | @directive_endif; + +@conditional_directive = @directive_if | @directive_elif; +@branch_directive = @directive_if | @directive_elif | @directive_else; + +directive_ifs( + unique int id: @directive_if, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref); /* 0: false, 1: true */ + +directive_elifs( + unique int id: @directive_elif, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +directive_elses( + unique int id: @directive_else, + int branchTaken: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +#keyset[id, start] +directive_endifs( + unique int id: @directive_endif, + unique int start: @directive_if ref); + +directive_define_symbols( + unique int id: @define_symbol_expr ref, + string name: string ref); + +directive_regions( + unique int id: @directive_region, + string name: string ref); + +#keyset[id, start] +directive_endregions( + unique int id: @directive_endregion, + unique int start: @directive_region ref); + +directive_lines( + unique int id: @directive_line, + int kind: int ref); /* 0: default, 1: hidden, 2: numeric, 3: span */ + +directive_line_value( + unique int id: @directive_line ref, + int line: int ref); + +directive_line_file( + unique int id: @directive_line ref, + int file: @file ref); + +directive_line_offset( + unique int id: @directive_line ref, + int offset: int ref); + +directive_line_span( + unique int id: @directive_line ref, + int startLine: int ref, + int startColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +directive_nullables( + unique int id: @directive_nullable, + int setting: int ref, /* 0: disable, 1: enable, 2: restore */ + int target: int ref); /* 0: none, 1: annotations, 2: warnings */ + +directive_warnings( + unique int id: @directive_warning, + string message: string ref); + +directive_errors( + unique int id: @directive_error, + string message: string ref); + +directive_undefines( + unique int id: @directive_undefine, + string name: string ref); + +directive_defines( + unique int id: @directive_define, + string name: string ref); + +pragma_checksums( + unique int id: @pragma_checksum, + int file: @file ref, + string guid: string ref, + string bytes: string ref); + +pragma_warnings( + unique int id: @pragma_warning, + int kind: int ref /* 0 = disable, 1 = restore */); + +#keyset[id, index] +pragma_warning_error_codes( + int id: @pragma_warning ref, + string errorCode: string ref, + int index: int ref); + +preprocessor_directive_location( + unique int id: @preprocessor_directive ref, + int loc: @location ref); + +preprocessor_directive_compilation( + int id: @preprocessor_directive ref, + int compilation: @compilation ref); + +preprocessor_directive_active( + unique int id: @preprocessor_directive ref, + int active: int ref); /* 0: false, 1: true */ + +/** TYPES **/ + +types( + unique int id: @type, + int kind: int ref, + string name: string ref); + +case @type.kind of + 1 = @bool_type +| 2 = @char_type +| 3 = @decimal_type +| 4 = @sbyte_type +| 5 = @short_type +| 6 = @int_type +| 7 = @long_type +| 8 = @byte_type +| 9 = @ushort_type +| 10 = @uint_type +| 11 = @ulong_type +| 12 = @float_type +| 13 = @double_type +| 14 = @enum_type +| 15 = @struct_type +| 17 = @class_type +| 19 = @interface_type +| 20 = @delegate_type +| 21 = @null_type +| 22 = @type_parameter +| 23 = @pointer_type +| 24 = @nullable_type +| 25 = @array_type +| 26 = @void_type +| 27 = @int_ptr_type +| 28 = @uint_ptr_type +| 29 = @dynamic_type +| 30 = @arglist_type +| 31 = @unknown_type +| 32 = @tuple_type +| 33 = @function_pointer_type +| 34 = @inline_array_type +| 35 = @extension_type + ; + +@simple_type = @bool_type | @char_type | @integral_type | @floating_point_type | @decimal_type; +@integral_type = @signed_integral_type | @unsigned_integral_type; +@signed_integral_type = @sbyte_type | @short_type | @int_type | @long_type; +@unsigned_integral_type = @byte_type | @ushort_type | @uint_type | @ulong_type; +@floating_point_type = @float_type | @double_type; +@value_type = @simple_type | @enum_type | @struct_type | @nullable_type | @int_ptr_type + | @uint_ptr_type | @tuple_type | @void_type | @inline_array_type; +@ref_type = @class_type | @interface_type | @array_type | @delegate_type | @null_type + | @dynamic_type | @extension_type; +@value_or_ref_type = @value_type | @ref_type; + +typerefs( + unique int id: @typeref, + string name: string ref); + +typeref_type( + int id: @typeref ref, + unique int typeId: @type ref); + +@type_or_ref = @type | @typeref; + +array_element_type( + unique int array: @array_type ref, + int dimension: int ref, + int rank: int ref, + int element: @type_or_ref ref); + +nullable_underlying_type( + unique int nullable: @nullable_type ref, + int underlying: @type_or_ref ref); + +pointer_referent_type( + unique int pointer: @pointer_type ref, + int referent: @type_or_ref ref); + +enum_underlying_type( + unique int enum_id: @enum_type ref, + int underlying_type_id: @type_or_ref ref); + +delegate_return_type( + unique int delegate_id: @delegate_type ref, + int return_type_id: @type_or_ref ref); + +function_pointer_return_type( + unique int function_pointer_id: @function_pointer_type ref, + int return_type_id: @type_or_ref ref); + +extension_receiver_type( + unique int extension: @extension_type ref, + int receiver_type_id: @type_or_ref ref); + +extend( + int sub: @type ref, + int super: @type_or_ref ref); + +anonymous_types( + unique int id: @type ref); + +@interface_or_ref = @interface_type | @typeref; + +implement( + int sub: @type ref, + int super: @type_or_ref ref); + +type_location( + int id: @type ref, + int loc: @location ref); + +tuple_underlying_type( + unique int tuple: @tuple_type ref, + int struct: @type_or_ref ref); + +#keyset[tuple, index] +tuple_element( + int tuple: @tuple_type ref, + int index: int ref, + unique int field: @field ref); + +attributes( + unique int id: @attribute, + int kind: int ref, + int type_id: @type_or_ref ref, + int target: @attributable ref); + +case @attribute.kind of + 0 = @attribute_default +| 1 = @attribute_return +| 2 = @attribute_assembly +| 3 = @attribute_module +; + +attribute_location( + int id: @attribute ref, + int loc: @location ref); + +@type_mention_parent = @element | @type_mention; + +type_mention( + unique int id: @type_mention, + int type_id: @type_or_ref ref, + int parent: @type_mention_parent ref); + +type_mention_location( + unique int id: @type_mention ref, + int loc: @location ref); + +@has_type_annotation = @assignable | @type_parameter | @callable | @expr | @delegate_type | @generic | @function_pointer_type; + +/** + * A direct annotation on an entity, for example `string? x;`. + * + * Annotations: + * 2 = reftype is not annotated "!" + * 3 = reftype is annotated "?" + * 4 = readonly ref type / in parameter + * 5 = ref type parameter, return or local variable + * 6 = out parameter + * + * Note that the annotation depends on the element it annotates. + * @assignable: The annotation is on the type of the assignable, for example the variable type. + * @type_parameter: The annotation is on the reftype constraint + * @callable: The annotation is on the return type + * @array_type: The annotation is on the element type + */ +type_annotation(int id: @has_type_annotation ref, int annotation: int ref); + +nullability(unique int nullability: @nullability, int kind: int ref); + +case @nullability.kind of + 0 = @oblivious +| 1 = @not_annotated +| 2 = @annotated +; + +#keyset[parent, index] +nullability_parent(int nullability: @nullability ref, int index: int ref, int parent: @nullability ref) + +type_nullability(int id: @has_type_annotation ref, int nullability: @nullability ref); + +/** + * The nullable flow state of an expression, as determined by Roslyn. + * 0 = none (default, not populated) + * 1 = not null + * 2 = maybe null + */ +expr_flowstate(unique int id: @expr ref, int state: int ref); + +/** GENERICS **/ + +@generic = @type | @method | @local_function; + +type_parameters( + unique int id: @type_parameter ref, + int index: int ref, + int generic_id: @generic ref, + int variance: int ref /* none = 0, out = 1, in = 2 */); + +#keyset[constructed_id, index] +type_arguments( + int id: @type_or_ref ref, + int index: int ref, + int constructed_id: @generic_or_ref ref); + +@generic_or_ref = @generic | @typeref; + +constructed_generic( + unique int constructed: @generic ref, + int generic: @generic_or_ref ref); + +type_parameter_constraints( + unique int id: @type_parameter_constraints, + int param_id: @type_parameter ref); + +type_parameter_constraints_location( + int id: @type_parameter_constraints ref, + int loc: @location ref); + +general_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int kind: int ref /* class = 1, struct = 2, new = 3 */); + +specific_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref); + +specific_type_parameter_nullability( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref, + int nullability: @nullability ref); + +/** FUNCTION POINTERS */ + +function_pointer_calling_conventions( + int id: @function_pointer_type ref, + int kind: int ref); + +#keyset[id, index] +has_unmanaged_calling_conventions( + int id: @function_pointer_type ref, + int index: int ref, + int conv_id: @type_or_ref ref); + +/** MODIFIERS */ + +@modifiable = @modifiable_direct | @event_accessor; + +@modifiable_direct = @member | @accessor | @local_function | @anonymous_function_expr; + +modifiers( + unique int id: @modifier, + string name: string ref); + +has_modifiers( + int id: @modifiable_direct ref, + int mod_id: @modifier ref); + +/** MEMBERS **/ + +@member = @method | @constructor | @destructor | @field | @property | @event | @operator | @indexer | @type; + +@named_exprorstmt = @goto_stmt | @labeled_stmt | @expr; + +@virtualizable = @method | @property | @indexer | @event | @operator; + +exprorstmt_name( + unique int parent_id: @named_exprorstmt ref, + string name: string ref); + +nested_types( + unique int id: @type ref, + int declaring_type_id: @type ref, + int unbound_id: @type ref); + +properties( + unique int id: @property, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @property ref); + +property_location( + int id: @property ref, + int loc: @location ref); + +indexers( + unique int id: @indexer, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @indexer ref); + +indexer_location( + int id: @indexer ref, + int loc: @location ref); + +accessors( + unique int id: @accessor, + int kind: int ref, + string name: string ref, + int declaring_member_id: @member ref, + int unbound_id: @accessor ref); + +case @accessor.kind of + 1 = @getter +| 2 = @setter + ; + +init_only_accessors( + unique int id: @accessor ref); + +accessor_location( + int id: @accessor ref, + int loc: @location ref); + +events( + unique int id: @event, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @event ref); + +event_location( + int id: @event ref, + int loc: @location ref); + +event_accessors( + unique int id: @event_accessor, + int kind: int ref, + string name: string ref, + int declaring_event_id: @event ref, + int unbound_id: @event_accessor ref); + +case @event_accessor.kind of + 1 = @add_event_accessor +| 2 = @remove_event_accessor + ; + +event_accessor_location( + int id: @event_accessor ref, + int loc: @location ref); + +operators( + unique int id: @operator, + string name: string ref, + string symbol: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @operator ref); + +operator_location( + int id: @operator ref, + int loc: @location ref); + +constant_value( + int id: @variable ref, + string value: string ref); + +/** CALLABLES **/ + +@callable = @method | @constructor | @destructor | @operator | @callable_accessor | @anonymous_function_expr | @local_function; + +@callable_accessor = @accessor | @event_accessor; + +methods( + unique int id: @method, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @method ref); + +method_location( + int id: @method ref, + int loc: @location ref); + +constructors( + unique int id: @constructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @constructor ref); + +constructor_location( + int id: @constructor ref, + int loc: @location ref); + +destructors( + unique int id: @destructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @destructor ref); + +destructor_location( + int id: @destructor ref, + int loc: @location ref); + +overrides( + int id: @callable ref, + int base_id: @callable ref); + +explicitly_implements( + int id: @member ref, + int interface_id: @interface_or_ref ref); + +local_functions( + unique int id: @local_function, + string name: string ref, + int return_type: @type ref, + int unbound_id: @local_function ref); + +local_function_stmts( + unique int fn: @local_function_stmt ref, + int stmt: @local_function ref); + +/** VARIABLES **/ + +@variable = @local_scope_variable | @field; + +@local_scope_variable = @local_variable | @parameter; + +fields( + unique int id: @field, + int kind: int ref, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @field ref); + +case @field.kind of + 1 = @addressable_field +| 2 = @constant + ; + +field_location( + int id: @field ref, + int loc: @location ref); + +localvars( + unique int id: @local_variable, + int kind: int ref, + string name: string ref, + int implicitly_typed: int ref /* 0 = no, 1 = yes */, + int type_id: @type_or_ref ref, + int parent_id: @local_var_decl_expr ref); + +case @local_variable.kind of + 1 = @addressable_local_variable +| 2 = @local_constant +| 3 = @local_variable_ref + ; + +localvar_location( + unique int id: @local_variable ref, + int loc: @location ref); + +@parameterizable = @callable | @delegate_type | @indexer | @function_pointer_type | @extension_type; + +#keyset[name, parent_id] +#keyset[index, parent_id] +params( + unique int id: @parameter, + string name: string ref, + int type_id: @type_or_ref ref, + int index: int ref, + int mode: int ref, /* value = 0, ref = 1, out = 2, params/array = 3, this = 4, in = 5, ref readonly = 6 */ + int parent_id: @parameterizable ref, + int unbound_id: @parameter ref); + +param_location( + int id: @parameter ref, + int loc: @location ref); + +@has_scoped_annotation = @local_scope_variable + +scoped_annotation( + int id: @has_scoped_annotation ref, + int kind: int ref // scoped ref = 1, scoped value = 2 + ); + +/** STATEMENTS **/ + +@exprorstmt_parent = @control_flow_element | @top_level_exprorstmt_parent; + +statements( + unique int id: @stmt, + int kind: int ref); + +#keyset[index, parent] +stmt_parent( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_stmt_parent = @callable; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +stmt_parent_top_level( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @top_level_stmt_parent ref); + +case @stmt.kind of + 1 = @block_stmt +| 2 = @expr_stmt +| 3 = @if_stmt +| 4 = @switch_stmt +| 5 = @while_stmt +| 6 = @do_stmt +| 7 = @for_stmt +| 8 = @foreach_stmt +| 9 = @break_stmt +| 10 = @continue_stmt +| 11 = @goto_stmt +| 12 = @goto_case_stmt +| 13 = @goto_default_stmt +| 14 = @throw_stmt +| 15 = @return_stmt +| 16 = @yield_stmt +| 17 = @try_stmt +| 18 = @checked_stmt +| 19 = @unchecked_stmt +| 20 = @lock_stmt +| 21 = @using_block_stmt +| 22 = @var_decl_stmt +| 23 = @const_decl_stmt +| 24 = @empty_stmt +| 25 = @unsafe_stmt +| 26 = @fixed_stmt +| 27 = @label_stmt +| 28 = @catch +| 29 = @case_stmt +| 30 = @local_function_stmt +| 31 = @using_decl_stmt + ; + +@using_stmt = @using_block_stmt | @using_decl_stmt; + +@labeled_stmt = @label_stmt | @case; + +@decl_stmt = @var_decl_stmt | @const_decl_stmt | @using_decl_stmt; + +@cond_stmt = @if_stmt | @switch_stmt; + +@loop_stmt = @while_stmt | @do_stmt | @for_stmt | @foreach_stmt; + +@jump_stmt = @break_stmt | @goto_any_stmt | @continue_stmt | @throw_stmt | @return_stmt + | @yield_stmt; + +@goto_any_stmt = @goto_default_stmt | @goto_case_stmt | @goto_stmt; + + +stmt_location( + unique int id: @stmt ref, + int loc: @location ref); + +catch_type( + unique int catch_id: @catch ref, + int type_id: @type_or_ref ref, + int kind: int ref /* explicit = 1, implicit = 2 */); + +foreach_stmt_info( + unique int id: @foreach_stmt ref, + int kind: int ref /* non-async = 1, async = 2 */); + +@foreach_symbol = @method | @property | @type_or_ref; + +#keyset[id, kind] +foreach_stmt_desugar( + int id: @foreach_stmt ref, + int symbol: @foreach_symbol ref, + int kind: int ref /* GetEnumeratorMethod = 1, CurrentProperty = 2, MoveNextMethod = 3, DisposeMethod = 4, ElementType = 5 */); + +/** EXPRESSIONS **/ + +expressions( + unique int id: @expr, + int kind: int ref, + int type_id: @type_or_ref ref); + +#keyset[index, parent] +expr_parent( + unique int expr: @expr ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_expr_parent = @attribute | @field | @property | @indexer | @parameter | @directive_if | @directive_elif; + +@top_level_exprorstmt_parent = @top_level_expr_parent | @top_level_stmt_parent; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +expr_parent_top_level( + unique int expr: @expr ref, + int index: int ref, + int parent: @top_level_exprorstmt_parent ref); + +case @expr.kind of +/* literal */ + 1 = @bool_literal_expr +| 2 = @char_literal_expr +| 3 = @decimal_literal_expr +| 4 = @int_literal_expr +| 5 = @long_literal_expr +| 6 = @uint_literal_expr +| 7 = @ulong_literal_expr +| 8 = @float_literal_expr +| 9 = @double_literal_expr +| 10 = @utf16_string_literal_expr +| 11 = @null_literal_expr +/* primary & unary */ +| 12 = @this_access_expr +| 13 = @base_access_expr +| 14 = @local_variable_access_expr +| 15 = @parameter_access_expr +| 16 = @field_access_expr +| 17 = @property_access_expr +| 18 = @method_access_expr +| 19 = @event_access_expr +| 20 = @indexer_access_expr +| 21 = @array_access_expr +| 22 = @type_access_expr +| 23 = @typeof_expr +| 24 = @method_invocation_expr +| 25 = @delegate_invocation_expr +| 26 = @operator_invocation_expr +| 27 = @cast_expr +| 28 = @object_creation_expr +| 29 = @explicit_delegate_creation_expr +| 30 = @implicit_delegate_creation_expr +| 31 = @array_creation_expr +| 32 = @default_expr +| 33 = @plus_expr +| 34 = @minus_expr +| 35 = @bit_not_expr +| 36 = @log_not_expr +| 37 = @post_incr_expr +| 38 = @post_decr_expr +| 39 = @pre_incr_expr +| 40 = @pre_decr_expr +/* multiplicative */ +| 41 = @mul_expr +| 42 = @div_expr +| 43 = @rem_expr +/* additive */ +| 44 = @add_expr +| 45 = @sub_expr +/* shift */ +| 46 = @lshift_expr +| 47 = @rshift_expr +/* relational */ +| 48 = @lt_expr +| 49 = @gt_expr +| 50 = @le_expr +| 51 = @ge_expr +/* equality */ +| 52 = @eq_expr +| 53 = @ne_expr +/* logical */ +| 54 = @bit_and_expr +| 55 = @bit_xor_expr +| 56 = @bit_or_expr +| 57 = @log_and_expr +| 58 = @log_or_expr +/* type testing */ +| 59 = @is_expr +| 60 = @as_expr +/* null coalescing */ +| 61 = @null_coalescing_expr +/* conditional */ +| 62 = @conditional_expr +/* assignment */ +| 63 = @simple_assign_expr +| 64 = @assign_add_expr +| 65 = @assign_sub_expr +| 66 = @assign_mul_expr +| 67 = @assign_div_expr +| 68 = @assign_rem_expr +| 69 = @assign_and_expr +| 70 = @assign_xor_expr +| 71 = @assign_or_expr +| 72 = @assign_lshift_expr +| 73 = @assign_rshift_expr +/* more */ +| 74 = @object_init_expr +| 75 = @collection_init_expr +| 76 = @array_init_expr +| 77 = @checked_expr +| 78 = @unchecked_expr +| 79 = @constructor_init_expr +| 80 = @add_event_expr +| 81 = @remove_event_expr +| 82 = @par_expr +| 83 = @local_var_decl_expr +| 84 = @lambda_expr +| 85 = @anonymous_method_expr +| 86 = @namespace_expr +/* dynamic */ +| 92 = @dynamic_element_access_expr +| 93 = @dynamic_member_access_expr +/* unsafe */ +| 100 = @pointer_indirection_expr +| 101 = @address_of_expr +| 102 = @sizeof_expr +/* async */ +| 103 = @await_expr +/* C# 6.0 */ +| 104 = @nameof_expr +| 105 = @interpolated_string_expr +| 106 = @unknown_expr +/* C# 7.0 */ +| 107 = @throw_expr +| 108 = @tuple_expr +| 109 = @local_function_invocation_expr +| 110 = @ref_expr +| 111 = @discard_expr +/* C# 8.0 */ +| 112 = @range_expr +| 113 = @index_expr +| 114 = @switch_expr +| 115 = @recursive_pattern_expr +| 116 = @property_pattern_expr +| 117 = @positional_pattern_expr +| 118 = @switch_case_expr +| 119 = @assign_coalesce_expr +| 120 = @suppress_nullable_warning_expr +| 121 = @namespace_access_expr +/* C# 9.0 */ +| 122 = @lt_pattern_expr +| 123 = @gt_pattern_expr +| 124 = @le_pattern_expr +| 125 = @ge_pattern_expr +| 126 = @not_pattern_expr +| 127 = @and_pattern_expr +| 128 = @or_pattern_expr +| 129 = @function_pointer_invocation_expr +| 130 = @with_expr +/* C# 11.0 */ +| 131 = @list_pattern_expr +| 132 = @slice_pattern_expr +| 133 = @urshift_expr +| 134 = @assign_urshift_expr +| 135 = @utf8_string_literal_expr +/* C# 12.0 */ +| 136 = @collection_expr +| 137 = @spread_element_expr +| 138 = @interpolated_string_insert_expr +/* Preprocessor */ +| 999 = @define_symbol_expr +; + +@switch = @switch_stmt | @switch_expr; +@case = @case_stmt | @switch_case_expr; +@pattern_match = @case | @is_expr; +@unary_pattern_expr = @not_pattern_expr; +@relational_pattern_expr = @gt_pattern_expr | @lt_pattern_expr | @ge_pattern_expr | @le_pattern_expr; +@binary_pattern_expr = @and_pattern_expr | @or_pattern_expr; + +@integer_literal_expr = @int_literal_expr | @long_literal_expr | @uint_literal_expr | @ulong_literal_expr; +@real_literal_expr = @float_literal_expr | @double_literal_expr | @decimal_literal_expr; +@string_literal_expr = @utf16_string_literal_expr | @utf8_string_literal_expr; +@literal_expr = @bool_literal_expr | @char_literal_expr | @integer_literal_expr | @real_literal_expr + | @string_literal_expr | @null_literal_expr; + +@assign_expr = @simple_assign_expr | @assign_op_expr | @local_var_decl_expr; +@assign_op_expr = @assign_arith_expr | @assign_bitwise_expr | @assign_event_expr | @assign_coalesce_expr; +@assign_event_expr = @add_event_expr | @remove_event_expr; + +@assign_arith_expr = @assign_add_expr | @assign_sub_expr | @assign_mul_expr | @assign_div_expr + | @assign_rem_expr +@assign_bitwise_expr = @assign_and_expr | @assign_or_expr | @assign_xor_expr + | @assign_lshift_expr | @assign_rshift_expr | @assign_urshift_expr; + +@member_access_expr = @field_access_expr | @property_access_expr | @indexer_access_expr | @event_access_expr + | @method_access_expr | @type_access_expr | @dynamic_member_access_expr; +@access_expr = @member_access_expr | @this_access_expr | @base_access_expr | @assignable_access_expr | @namespace_access_expr; +@element_access_expr = @indexer_access_expr | @array_access_expr | @dynamic_element_access_expr; + +@local_variable_access = @local_variable_access_expr | @local_var_decl_expr; +@local_scope_variable_access_expr = @parameter_access_expr | @local_variable_access; +@variable_access_expr = @local_scope_variable_access_expr | @field_access_expr; + +@assignable_access_expr = @variable_access_expr | @property_access_expr | @element_access_expr + | @event_access_expr | @dynamic_member_access_expr; + +@objectorcollection_init_expr = @object_init_expr | @collection_init_expr; + +@delegate_creation_expr = @explicit_delegate_creation_expr | @implicit_delegate_creation_expr; + +@bin_arith_op_expr = @mul_expr | @div_expr | @rem_expr | @add_expr | @sub_expr; +@incr_op_expr = @pre_incr_expr | @post_incr_expr; +@decr_op_expr = @pre_decr_expr | @post_decr_expr; +@mut_op_expr = @incr_op_expr | @decr_op_expr; +@un_arith_op_expr = @plus_expr | @minus_expr | @mut_op_expr; +@arith_op_expr = @bin_arith_op_expr | @un_arith_op_expr; + +@ternary_log_op_expr = @conditional_expr; +@bin_log_op_expr = @log_and_expr | @log_or_expr | @null_coalescing_expr; +@un_log_op_expr = @log_not_expr; +@log_expr = @un_log_op_expr | @bin_log_op_expr | @ternary_log_op_expr; + +@bin_bit_op_expr = @bit_and_expr | @bit_or_expr | @bit_xor_expr | @lshift_expr + | @rshift_expr | @urshift_expr; +@un_bit_op_expr = @bit_not_expr; +@bit_expr = @un_bit_op_expr | @bin_bit_op_expr; + +@equality_op_expr = @eq_expr | @ne_expr; +@rel_op_expr = @gt_expr | @lt_expr| @ge_expr | @le_expr; +@comp_expr = @equality_op_expr | @rel_op_expr; + +@op_expr = @assign_expr | @un_op | @bin_op | @ternary_op; + +@ternary_op = @ternary_log_op_expr; +@bin_op = @bin_arith_op_expr | @bin_log_op_expr | @bin_bit_op_expr | @comp_expr; +@un_op = @un_arith_op_expr | @un_log_op_expr | @un_bit_op_expr | @sizeof_expr + | @pointer_indirection_expr | @address_of_expr; + +@anonymous_function_expr = @lambda_expr | @anonymous_method_expr; + +@call = @method_invocation_expr | @constructor_init_expr | @operator_invocation_expr + | @delegate_invocation_expr | @object_creation_expr | @call_access_expr + | @local_function_invocation_expr | @function_pointer_invocation_expr; + +@call_access_expr = @property_access_expr | @event_access_expr | @indexer_access_expr; + +@late_bindable_expr = @dynamic_element_access_expr | @dynamic_member_access_expr + | @object_creation_expr | @method_invocation_expr | @operator_invocation_expr; + +@throw_element = @throw_expr | @throw_stmt; + +@implicitly_typeable_object_creation_expr = @object_creation_expr | @explicit_delegate_creation_expr; + +implicitly_typed_array_creation( + unique int id: @array_creation_expr ref); + +explicitly_sized_array_creation( + unique int id: @array_creation_expr ref); + +stackalloc_array_creation( + unique int id: @array_creation_expr ref); + +implicitly_typed_object_creation( + unique int id: @implicitly_typeable_object_creation_expr ref); + +mutator_invocation_mode( + unique int id: @operator_invocation_expr ref, + int mode: int ref /* prefix = 1, postfix = 2*/); + +expr_value( + unique int id: @expr ref, + string value: string ref); + +expr_call( + unique int caller_id: @expr ref, + int target_id: @callable ref); + +expr_access( + unique int accesser_id: @access_expr ref, + int target_id: @accessible ref); + +@accessible = @method | @assignable | @local_function | @namespace; + +expr_location( + unique int id: @expr ref, + int loc: @location ref); + +dynamic_member_name( + unique int id: @late_bindable_expr ref, + string name: string ref); + +@qualifiable_expr = @member_access_expr + | @method_invocation_expr + | @element_access_expr; + +conditional_access( + unique int id: @qualifiable_expr ref); + +expr_argument( + unique int id: @expr ref, + int mode: int ref); + /* mode is the same as params: value = 0, ref = 1, out = 2 */ + +expr_argument_name( + unique int id: @expr ref, + string name: string ref); + +lambda_expr_return_type( + unique int id: @lambda_expr ref, + int type_id: @type_or_ref ref); + +/* Compiler generated */ + +compiler_generated(unique int id: @element ref); + +/** CONTROL/DATA FLOW **/ + +@control_flow_element = @stmt | @expr; + +/* XML Files */ + +xmlEncoding ( + unique int id: @file ref, + string encoding: string ref); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/* Comments */ + +commentline( + unique int id: @commentline, + int kind: int ref, + string text: string ref, + string rawtext: string ref); + +case @commentline.kind of + 0 = @singlelinecomment +| 1 = @xmldoccomment +| 2 = @multilinecomment; + +commentline_location( + unique int id: @commentline ref, + int loc: @location ref); + +commentblock( + unique int id : @commentblock); + +commentblock_location( + unique int id: @commentblock ref, + int loc: @location ref); + +commentblock_binding( + int id: @commentblock ref, + int entity: @element ref, + int bindtype: int ref); /* 0: Parent, 1: Best, 2: Before, 3: After */ + +commentblock_child( + int id: @commentblock ref, + int commentline: @commentline ref, + int index: int ref); + +/* ASP.NET */ + +case @asp_element.kind of + 0=@asp_close_tag +| 1=@asp_code +| 2=@asp_comment +| 3=@asp_data_binding +| 4=@asp_directive +| 5=@asp_open_tag +| 6=@asp_quoted_string +| 7=@asp_text +| 8=@asp_xml_directive; + +@asp_attribute = @asp_code | @asp_data_binding | @asp_quoted_string; + +asp_elements( + unique int id: @asp_element, + int kind: int ref, + int loc: @location ref); + +asp_comment_server(unique int comment: @asp_comment ref); +asp_code_inline(unique int code: @asp_code ref); +asp_directive_attribute( + int directive: @asp_directive ref, + int index: int ref, + string name: string ref, + int value: @asp_quoted_string ref); +asp_directive_name( + unique int directive: @asp_directive ref, + string name: string ref); +asp_element_body( + unique int element: @asp_element ref, + string body: string ref); +asp_tag_attribute( + int tag: @asp_open_tag ref, + int index: int ref, + string name: string ref, + int attribute: @asp_attribute ref); +asp_tag_name( + unique int tag: @asp_open_tag ref, + string name: string ref); +asp_tag_isempty(int tag: @asp_open_tag ref); diff --git a/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/upgrade.properties b/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/upgrade.properties new file mode 100644 index 000000000000..2d18dccf06cd --- /dev/null +++ b/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/upgrade.properties @@ -0,0 +1,2 @@ +description: Add the relation `extension_receiver_type` and add the `extension_type` type kind. +compatibility: full diff --git a/csharp/ql/src/CHANGELOG.md b/csharp/ql/src/CHANGELOG.md index d532951fadc8..8f2e918ca552 100644 --- a/csharp/ql/src/CHANGELOG.md +++ b/csharp/ql/src/CHANGELOG.md @@ -1,3 +1,9 @@ +## 1.6.2 + +### Bug Fixes + +* The `cs/web/missing-token-validation` ("Missing cross-site request forgery token validation") query now recognizes antiforgery attributes on base controller classes, fixing false positives when `[ValidateAntiForgeryToken]` or `[AutoValidateAntiforgeryToken]` is applied to a parent class. + ## 1.6.1 No user-facing changes. diff --git a/csharp/ql/src/Security Features/CWE-352/MissingAntiForgeryTokenValidation.ql b/csharp/ql/src/Security Features/CWE-352/MissingAntiForgeryTokenValidation.ql index acdc4637221a..60a022d43d0f 100644 --- a/csharp/ql/src/Security Features/CWE-352/MissingAntiForgeryTokenValidation.ql +++ b/csharp/ql/src/Security Features/CWE-352/MissingAntiForgeryTokenValidation.ql @@ -54,12 +54,12 @@ predicate hasGlobalAntiForgeryFilter() { predicate isUnvalidatedPostMethod(Class c, Method m) { c.(Controller).getAPostActionMethod() = m and not m.getAnAttribute() instanceof ValidateAntiForgeryTokenAttribute and - not c.getAnAttribute() instanceof ValidateAntiForgeryTokenAttribute + not c.getABaseType*().getAnAttribute() instanceof ValidateAntiForgeryTokenAttribute or c.(AspNetCore::MicrosoftAspNetCoreMvcController).getAnActionMethod() = m and m.getAnAttribute() instanceof AspNetCore::MicrosoftAspNetCoreMvcHttpPostAttribute and not m.getAnAttribute() instanceof AspNetCore::ValidateAntiForgeryAttribute and - not c.getAnAttribute() instanceof AspNetCore::ValidateAntiForgeryAttribute + not c.getABaseType*().getAnAttribute() instanceof AspNetCore::ValidateAntiForgeryAttribute } Element getAValidatedElement() { diff --git a/csharp/ql/src/change-notes/released/1.6.2.md b/csharp/ql/src/change-notes/released/1.6.2.md new file mode 100644 index 000000000000..696f2d0d8597 --- /dev/null +++ b/csharp/ql/src/change-notes/released/1.6.2.md @@ -0,0 +1,5 @@ +## 1.6.2 + +### Bug Fixes + +* The `cs/web/missing-token-validation` ("Missing cross-site request forgery token validation") query now recognizes antiforgery attributes on base controller classes, fixing false positives when `[ValidateAntiForgeryToken]` or `[AutoValidateAntiforgeryToken]` is applied to a parent class. diff --git a/csharp/ql/src/codeql-pack.release.yml b/csharp/ql/src/codeql-pack.release.yml index ef7a789e0cf1..5f5beb68311a 100644 --- a/csharp/ql/src/codeql-pack.release.yml +++ b/csharp/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.6.1 +lastReleaseVersion: 1.6.2 diff --git a/csharp/ql/src/qlpack.yml b/csharp/ql/src/qlpack.yml index 85d9dbf9ead1..d43afd632c10 100644 --- a/csharp/ql/src/qlpack.yml +++ b/csharp/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-queries -version: 1.6.1 +version: 1.6.3-dev groups: - csharp - queries diff --git a/csharp/ql/test/library-tests/dataflow/extensions/ExtensionFlow.expected b/csharp/ql/test/library-tests/dataflow/extensions/ExtensionFlow.expected new file mode 100644 index 000000000000..35a30ac1ffc9 --- /dev/null +++ b/csharp/ql/test/library-tests/dataflow/extensions/ExtensionFlow.expected @@ -0,0 +1,502 @@ +models +edges +| extensions.cs:5:22:5:24 | obj : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | provenance | | +| extensions.cs:5:22:5:24 | obj : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | provenance | | +| extensions.cs:5:22:5:24 | obj : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | provenance | | +| extensions.cs:5:22:5:24 | obj : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | provenance | | +| extensions.cs:5:22:5:24 | obj : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | provenance | | +| extensions.cs:5:22:5:24 | obj : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | provenance | | +| extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:108:18:108:26 | access to property Prop1 : B | provenance | | +| extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:108:18:108:26 | access to property Prop1 : B | provenance | | +| extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | provenance | | +| extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | provenance | | +| extensions.cs:13:13:13:15 | value : B | extensions.cs:15:24:15:28 | access to parameter value | provenance | | +| extensions.cs:13:13:13:15 | value : B | extensions.cs:15:24:15:28 | access to parameter value | provenance | | +| extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:194:18:194:35 | access to property StaticProp1 : B | provenance | | +| extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:194:18:194:35 | access to property StaticProp1 : B | provenance | | +| extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | provenance | | +| extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | provenance | | +| extensions.cs:38:13:38:15 | value : B | extensions.cs:40:24:40:28 | access to parameter value | provenance | | +| extensions.cs:38:13:38:15 | value : B | extensions.cs:40:24:40:28 | access to parameter value | provenance | | +| extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:127:18:127:25 | call to method M1 : B | provenance | | +| extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:127:18:127:25 | call to method M1 : B | provenance | | +| extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:130:18:130:37 | call to method M1 : B | provenance | | +| extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:130:18:130:37 | call to method M1 : B | provenance | | +| extensions.cs:59:48:59:48 | a : B | extensions.cs:61:20:61:20 | access to parameter a | provenance | | +| extensions.cs:59:48:59:48 | a : B | extensions.cs:61:20:61:20 | access to parameter a | provenance | | +| extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:185:18:185:24 | call to operator - : B | provenance | | +| extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:185:18:185:24 | call to operator - : B | provenance | | +| extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:188:18:188:52 | call to operator - : B | provenance | | +| extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:188:18:188:52 | call to operator - : B | provenance | | +| extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | provenance | | +| extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | provenance | | +| extensions.cs:76:17:76:17 | b : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | provenance | | +| extensions.cs:76:17:76:17 | b : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | provenance | | +| extensions.cs:89:20:89:20 | t : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | provenance | | +| extensions.cs:89:20:89:20 | t : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | provenance | | +| extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | provenance | | +| extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | provenance | | +| extensions.cs:108:13:108:14 | access to local variable b1 : B | extensions.cs:109:14:109:15 | access to local variable b1 | provenance | | +| extensions.cs:108:13:108:14 | access to local variable b1 : B | extensions.cs:109:14:109:15 | access to local variable b1 | provenance | | +| extensions.cs:108:18:108:26 | access to property Prop1 : B | extensions.cs:108:13:108:14 | access to local variable b1 : B | provenance | | +| extensions.cs:108:18:108:26 | access to property Prop1 : B | extensions.cs:108:13:108:14 | access to local variable b1 : B | provenance | | +| extensions.cs:111:13:111:14 | access to local variable b2 : B | extensions.cs:112:14:112:15 | access to local variable b2 | provenance | | +| extensions.cs:111:13:111:14 | access to local variable b2 : B | extensions.cs:112:14:112:15 | access to local variable b2 | provenance | | +| extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | extensions.cs:111:13:111:14 | access to local variable b2 : B | provenance | | +| extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | extensions.cs:111:13:111:14 | access to local variable b2 : B | provenance | | +| extensions.cs:118:21:118:32 | call to method Source : B | extensions.cs:13:13:13:15 | value : B | provenance | | +| extensions.cs:118:21:118:32 | call to method Source : B | extensions.cs:13:13:13:15 | value : B | provenance | | +| extensions.cs:120:13:120:13 | access to local variable b : B | extensions.cs:121:37:121:37 | access to local variable b : B | provenance | | +| extensions.cs:120:13:120:13 | access to local variable b : B | extensions.cs:121:37:121:37 | access to local variable b : B | provenance | | +| extensions.cs:120:17:120:30 | call to method Source : B | extensions.cs:120:13:120:13 | access to local variable b : B | provenance | | +| extensions.cs:120:17:120:30 | call to method Source : B | extensions.cs:120:13:120:13 | access to local variable b : B | provenance | | +| extensions.cs:121:37:121:37 | access to local variable b : B | extensions.cs:13:13:13:15 | value : B | provenance | | +| extensions.cs:121:37:121:37 | access to local variable b : B | extensions.cs:13:13:13:15 | value : B | provenance | | +| extensions.cs:127:13:127:14 | access to local variable b1 : B | extensions.cs:128:14:128:15 | access to local variable b1 | provenance | | +| extensions.cs:127:13:127:14 | access to local variable b1 : B | extensions.cs:128:14:128:15 | access to local variable b1 | provenance | | +| extensions.cs:127:18:127:25 | call to method M1 : B | extensions.cs:127:13:127:14 | access to local variable b1 : B | provenance | | +| extensions.cs:127:18:127:25 | call to method M1 : B | extensions.cs:127:13:127:14 | access to local variable b1 : B | provenance | | +| extensions.cs:130:13:130:14 | access to local variable b2 : B | extensions.cs:131:14:131:15 | access to local variable b2 | provenance | | +| extensions.cs:130:13:130:14 | access to local variable b2 : B | extensions.cs:131:14:131:15 | access to local variable b2 | provenance | | +| extensions.cs:130:18:130:37 | call to method M1 : B | extensions.cs:130:13:130:14 | access to local variable b2 : B | provenance | | +| extensions.cs:130:18:130:37 | call to method M1 : B | extensions.cs:130:13:130:14 | access to local variable b2 : B | provenance | | +| extensions.cs:136:13:136:14 | access to local variable b1 : B | extensions.cs:137:9:137:10 | access to local variable b1 : B | provenance | | +| extensions.cs:136:13:136:14 | access to local variable b1 : B | extensions.cs:137:9:137:10 | access to local variable b1 : B | provenance | | +| extensions.cs:136:18:136:29 | call to method Source : B | extensions.cs:136:13:136:14 | access to local variable b1 : B | provenance | | +| extensions.cs:136:18:136:29 | call to method Source : B | extensions.cs:136:13:136:14 | access to local variable b1 : B | provenance | | +| extensions.cs:137:9:137:10 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:137:9:137:10 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:139:13:139:14 | access to local variable b2 : B | extensions.cs:140:25:140:26 | access to local variable b2 : B | provenance | | +| extensions.cs:139:13:139:14 | access to local variable b2 : B | extensions.cs:140:25:140:26 | access to local variable b2 : B | provenance | | +| extensions.cs:139:18:139:31 | call to method Source : B | extensions.cs:139:13:139:14 | access to local variable b2 : B | provenance | | +| extensions.cs:139:18:139:31 | call to method Source : B | extensions.cs:139:13:139:14 | access to local variable b2 : B | provenance | | +| extensions.cs:140:25:140:26 | access to local variable b2 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:140:25:140:26 | access to local variable b2 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:145:13:145:14 | access to local variable b1 : B | extensions.cs:146:18:146:19 | access to local variable b1 : B | provenance | | +| extensions.cs:145:13:145:14 | access to local variable b1 : B | extensions.cs:146:18:146:19 | access to local variable b1 : B | provenance | | +| extensions.cs:145:13:145:14 | access to local variable b1 : B | extensions.cs:149:34:149:35 | access to local variable b1 : B | provenance | | +| extensions.cs:145:13:145:14 | access to local variable b1 : B | extensions.cs:149:34:149:35 | access to local variable b1 : B | provenance | | +| extensions.cs:145:18:145:29 | call to method Source : B | extensions.cs:145:13:145:14 | access to local variable b1 : B | provenance | | +| extensions.cs:145:18:145:29 | call to method Source : B | extensions.cs:145:13:145:14 | access to local variable b1 : B | provenance | | +| extensions.cs:146:13:146:14 | access to local variable b2 : B | extensions.cs:147:14:147:15 | access to local variable b2 | provenance | | +| extensions.cs:146:13:146:14 | access to local variable b2 : B | extensions.cs:147:14:147:15 | access to local variable b2 | provenance | | +| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:146:18:146:24 | call to method B1 : B | provenance | | +| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:146:18:146:24 | call to method B1 : B | provenance | | +| extensions.cs:146:18:146:24 | call to method B1 : B | extensions.cs:146:13:146:14 | access to local variable b2 : B | provenance | | +| extensions.cs:146:18:146:24 | call to method B1 : B | extensions.cs:146:13:146:14 | access to local variable b2 : B | provenance | | +| extensions.cs:149:13:149:14 | access to local variable b3 : B | extensions.cs:150:14:150:15 | access to local variable b3 | provenance | | +| extensions.cs:149:13:149:14 | access to local variable b3 : B | extensions.cs:150:14:150:15 | access to local variable b3 | provenance | | +| extensions.cs:149:18:149:36 | call to method B1 : B | extensions.cs:149:13:149:14 | access to local variable b3 : B | provenance | | +| extensions.cs:149:18:149:36 | call to method B1 : B | extensions.cs:149:13:149:14 | access to local variable b3 : B | provenance | | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:149:18:149:36 | call to method B1 : B | provenance | | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:149:18:149:36 | call to method B1 : B | provenance | | +| extensions.cs:155:13:155:14 | access to local variable b1 : B | extensions.cs:156:18:156:19 | access to local variable b1 : B | provenance | | +| extensions.cs:155:13:155:14 | access to local variable b1 : B | extensions.cs:156:18:156:19 | access to local variable b1 : B | provenance | | +| extensions.cs:155:18:155:29 | call to method Source : B | extensions.cs:155:13:155:14 | access to local variable b1 : B | provenance | | +| extensions.cs:155:18:155:29 | call to method Source : B | extensions.cs:155:13:155:14 | access to local variable b1 : B | provenance | | +| extensions.cs:156:18:156:19 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:156:18:156:19 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:158:13:158:14 | access to local variable b3 : B | extensions.cs:159:41:159:42 | access to local variable b3 : B | provenance | | +| extensions.cs:158:13:158:14 | access to local variable b3 : B | extensions.cs:159:41:159:42 | access to local variable b3 : B | provenance | | +| extensions.cs:158:18:158:31 | call to method Source : B | extensions.cs:158:13:158:14 | access to local variable b3 : B | provenance | | +| extensions.cs:158:18:158:31 | call to method Source : B | extensions.cs:158:13:158:14 | access to local variable b3 : B | provenance | | +| extensions.cs:159:41:159:42 | access to local variable b3 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:159:41:159:42 | access to local variable b3 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:164:13:164:14 | access to local variable b1 : B | extensions.cs:165:9:165:10 | access to local variable b1 : B | provenance | | +| extensions.cs:164:13:164:14 | access to local variable b1 : B | extensions.cs:165:9:165:10 | access to local variable b1 : B | provenance | | +| extensions.cs:164:18:164:29 | call to method Source : B | extensions.cs:164:13:164:14 | access to local variable b1 : B | provenance | | +| extensions.cs:164:18:164:29 | call to method Source : B | extensions.cs:164:13:164:14 | access to local variable b1 : B | provenance | | +| extensions.cs:165:9:165:10 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:165:9:165:10 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:167:13:167:14 | access to local variable b2 : B | extensions.cs:168:32:168:33 | access to local variable b2 : B | provenance | | +| extensions.cs:167:13:167:14 | access to local variable b2 : B | extensions.cs:168:32:168:33 | access to local variable b2 : B | provenance | | +| extensions.cs:167:18:167:31 | call to method Source : B | extensions.cs:167:13:167:14 | access to local variable b2 : B | provenance | | +| extensions.cs:167:18:167:31 | call to method Source : B | extensions.cs:167:13:167:14 | access to local variable b2 : B | provenance | | +| extensions.cs:168:32:168:33 | access to local variable b2 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:168:32:168:33 | access to local variable b2 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:173:13:173:14 | access to local variable b1 : B | extensions.cs:175:18:175:19 | access to local variable b1 : B | provenance | | +| extensions.cs:173:13:173:14 | access to local variable b1 : B | extensions.cs:175:18:175:19 | access to local variable b1 : B | provenance | | +| extensions.cs:173:18:173:29 | call to method Source : B | extensions.cs:173:13:173:14 | access to local variable b1 : B | provenance | | +| extensions.cs:173:18:173:29 | call to method Source : B | extensions.cs:173:13:173:14 | access to local variable b1 : B | provenance | | +| extensions.cs:175:18:175:19 | access to local variable b1 : B | extensions.cs:59:48:59:48 | a : B | provenance | | +| extensions.cs:175:18:175:19 | access to local variable b1 : B | extensions.cs:59:48:59:48 | a : B | provenance | | +| extensions.cs:177:13:177:14 | access to local variable b4 : B | extensions.cs:178:43:178:44 | access to local variable b4 : B | provenance | | +| extensions.cs:177:13:177:14 | access to local variable b4 : B | extensions.cs:178:43:178:44 | access to local variable b4 : B | provenance | | +| extensions.cs:177:18:177:31 | call to method Source : B | extensions.cs:177:13:177:14 | access to local variable b4 : B | provenance | | +| extensions.cs:177:18:177:31 | call to method Source : B | extensions.cs:177:13:177:14 | access to local variable b4 : B | provenance | | +| extensions.cs:178:43:178:44 | access to local variable b4 : B | extensions.cs:59:48:59:48 | a : B | provenance | | +| extensions.cs:178:43:178:44 | access to local variable b4 : B | extensions.cs:59:48:59:48 | a : B | provenance | | +| extensions.cs:185:13:185:14 | access to local variable b3 : B | extensions.cs:186:14:186:15 | access to local variable b3 | provenance | | +| extensions.cs:185:13:185:14 | access to local variable b3 : B | extensions.cs:186:14:186:15 | access to local variable b3 | provenance | | +| extensions.cs:185:18:185:24 | call to operator - : B | extensions.cs:185:13:185:14 | access to local variable b3 : B | provenance | | +| extensions.cs:185:18:185:24 | call to operator - : B | extensions.cs:185:13:185:14 | access to local variable b3 : B | provenance | | +| extensions.cs:188:13:188:14 | access to local variable b4 : B | extensions.cs:189:14:189:15 | access to local variable b4 | provenance | | +| extensions.cs:188:13:188:14 | access to local variable b4 : B | extensions.cs:189:14:189:15 | access to local variable b4 | provenance | | +| extensions.cs:188:18:188:52 | call to operator - : B | extensions.cs:188:13:188:14 | access to local variable b4 : B | provenance | | +| extensions.cs:188:18:188:52 | call to operator - : B | extensions.cs:188:13:188:14 | access to local variable b4 : B | provenance | | +| extensions.cs:194:13:194:14 | access to local variable b1 : B | extensions.cs:195:14:195:15 | access to local variable b1 | provenance | | +| extensions.cs:194:13:194:14 | access to local variable b1 : B | extensions.cs:195:14:195:15 | access to local variable b1 | provenance | | +| extensions.cs:194:18:194:35 | access to property StaticProp1 : B | extensions.cs:194:13:194:14 | access to local variable b1 : B | provenance | | +| extensions.cs:194:18:194:35 | access to property StaticProp1 : B | extensions.cs:194:13:194:14 | access to local variable b1 : B | provenance | | +| extensions.cs:197:13:197:14 | access to local variable b2 : B | extensions.cs:198:14:198:15 | access to local variable b2 | provenance | | +| extensions.cs:197:13:197:14 | access to local variable b2 : B | extensions.cs:198:14:198:15 | access to local variable b2 | provenance | | +| extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | extensions.cs:197:13:197:14 | access to local variable b2 : B | provenance | | +| extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | extensions.cs:197:13:197:14 | access to local variable b2 : B | provenance | | +| extensions.cs:203:13:203:14 | access to local variable b1 : B | extensions.cs:204:30:204:31 | access to local variable b1 : B | provenance | | +| extensions.cs:203:13:203:14 | access to local variable b1 : B | extensions.cs:204:30:204:31 | access to local variable b1 : B | provenance | | +| extensions.cs:203:18:203:30 | call to method Source : B | extensions.cs:203:13:203:14 | access to local variable b1 : B | provenance | | +| extensions.cs:203:18:203:30 | call to method Source : B | extensions.cs:203:13:203:14 | access to local variable b1 : B | provenance | | +| extensions.cs:204:30:204:31 | access to local variable b1 : B | extensions.cs:38:13:38:15 | value : B | provenance | | +| extensions.cs:204:30:204:31 | access to local variable b1 : B | extensions.cs:38:13:38:15 | value : B | provenance | | +| extensions.cs:206:13:206:14 | access to local variable b2 : B | extensions.cs:207:38:207:39 | access to local variable b2 : B | provenance | | +| extensions.cs:206:13:206:14 | access to local variable b2 : B | extensions.cs:207:38:207:39 | access to local variable b2 : B | provenance | | +| extensions.cs:206:18:206:31 | call to method Source : B | extensions.cs:206:13:206:14 | access to local variable b2 : B | provenance | | +| extensions.cs:206:18:206:31 | call to method Source : B | extensions.cs:206:13:206:14 | access to local variable b2 : B | provenance | | +| extensions.cs:207:38:207:39 | access to local variable b2 : B | extensions.cs:38:13:38:15 | value : B | provenance | | +| extensions.cs:207:38:207:39 | access to local variable b2 : B | extensions.cs:38:13:38:15 | value : B | provenance | | +| extensions.cs:212:13:212:14 | access to local variable b1 : B | extensions.cs:213:9:213:10 | access to local variable b1 : B | provenance | | +| extensions.cs:212:13:212:14 | access to local variable b1 : B | extensions.cs:213:9:213:10 | access to local variable b1 : B | provenance | | +| extensions.cs:212:18:212:30 | call to method Source : B | extensions.cs:212:13:212:14 | access to local variable b1 : B | provenance | | +| extensions.cs:212:18:212:30 | call to method Source : B | extensions.cs:212:13:212:14 | access to local variable b1 : B | provenance | | +| extensions.cs:213:9:213:10 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:213:9:213:10 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:215:13:215:14 | access to local variable b2 : B | extensions.cs:216:25:216:26 | access to local variable b2 : B | provenance | | +| extensions.cs:215:13:215:14 | access to local variable b2 : B | extensions.cs:216:25:216:26 | access to local variable b2 : B | provenance | | +| extensions.cs:215:18:215:31 | call to method Source : B | extensions.cs:215:13:215:14 | access to local variable b2 : B | provenance | | +| extensions.cs:215:18:215:31 | call to method Source : B | extensions.cs:215:13:215:14 | access to local variable b2 : B | provenance | | +| extensions.cs:216:25:216:26 | access to local variable b2 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:216:25:216:26 | access to local variable b2 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:221:13:221:14 | access to local variable b1 : B | extensions.cs:222:9:222:10 | access to local variable b1 : B | provenance | | +| extensions.cs:221:13:221:14 | access to local variable b1 : B | extensions.cs:222:9:222:10 | access to local variable b1 : B | provenance | | +| extensions.cs:221:18:221:30 | call to method Source : B | extensions.cs:221:13:221:14 | access to local variable b1 : B | provenance | | +| extensions.cs:221:18:221:30 | call to method Source : B | extensions.cs:221:13:221:14 | access to local variable b1 : B | provenance | | +| extensions.cs:222:9:222:10 | access to local variable b1 : B | extensions.cs:89:20:89:20 | t : B | provenance | | +| extensions.cs:222:9:222:10 | access to local variable b1 : B | extensions.cs:89:20:89:20 | t : B | provenance | | +| extensions.cs:224:13:224:14 | access to local variable b2 : B | extensions.cs:225:32:225:33 | access to local variable b2 : B | provenance | | +| extensions.cs:224:13:224:14 | access to local variable b2 : B | extensions.cs:225:32:225:33 | access to local variable b2 : B | provenance | | +| extensions.cs:224:18:224:31 | call to method Source : B | extensions.cs:224:13:224:14 | access to local variable b2 : B | provenance | | +| extensions.cs:224:18:224:31 | call to method Source : B | extensions.cs:224:13:224:14 | access to local variable b2 : B | provenance | | +| extensions.cs:225:32:225:33 | access to local variable b2 : B | extensions.cs:89:20:89:20 | t : B | provenance | | +| extensions.cs:225:32:225:33 | access to local variable b2 : B | extensions.cs:89:20:89:20 | t : B | provenance | | +| extensions.cs:231:13:231:14 | access to local variable b1 : B | extensions.cs:232:32:232:33 | access to local variable b1 : B | provenance | | +| extensions.cs:231:13:231:14 | access to local variable b1 : B | extensions.cs:232:32:232:33 | access to local variable b1 : B | provenance | | +| extensions.cs:231:13:231:14 | access to local variable b1 : B | extensions.cs:235:46:235:47 | access to local variable b1 : B | provenance | | +| extensions.cs:231:13:231:14 | access to local variable b1 : B | extensions.cs:235:46:235:47 | access to local variable b1 : B | provenance | | +| extensions.cs:231:18:231:30 | call to method Source : B | extensions.cs:231:13:231:14 | access to local variable b1 : B | provenance | | +| extensions.cs:231:18:231:30 | call to method Source : B | extensions.cs:231:13:231:14 | access to local variable b1 : B | provenance | | +| extensions.cs:232:13:232:14 | access to local variable b2 : B | extensions.cs:233:14:233:15 | access to local variable b2 | provenance | | +| extensions.cs:232:13:232:14 | access to local variable b2 : B | extensions.cs:233:14:233:15 | access to local variable b2 | provenance | | +| extensions.cs:232:18:232:34 | call to method GenericM2 : B | extensions.cs:232:13:232:14 | access to local variable b2 : B | provenance | | +| extensions.cs:232:18:232:34 | call to method GenericM2 : B | extensions.cs:232:13:232:14 | access to local variable b2 : B | provenance | | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | provenance | | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | provenance | | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:232:18:232:34 | call to method GenericM2 : B | provenance | | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:232:18:232:34 | call to method GenericM2 : B | provenance | | +| extensions.cs:235:13:235:14 | access to local variable b3 : B | extensions.cs:236:14:236:15 | access to local variable b3 | provenance | | +| extensions.cs:235:13:235:14 | access to local variable b3 : B | extensions.cs:236:14:236:15 | access to local variable b3 | provenance | | +| extensions.cs:235:18:235:48 | call to method GenericM2 : B | extensions.cs:235:13:235:14 | access to local variable b3 : B | provenance | | +| extensions.cs:235:18:235:48 | call to method GenericM2 : B | extensions.cs:235:13:235:14 | access to local variable b3 : B | provenance | | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | provenance | | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | provenance | | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:235:18:235:48 | call to method GenericM2 : B | provenance | | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:235:18:235:48 | call to method GenericM2 : B | provenance | | +nodes +| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B | +| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B | +| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B | +| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B | +| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B | +| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B | +| extensions.cs:11:24:11:37 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:11:24:11:37 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:13:13:13:15 | value : B | semmle.label | value : B | +| extensions.cs:13:13:13:15 | value : B | semmle.label | value : B | +| extensions.cs:15:24:15:28 | access to parameter value | semmle.label | access to parameter value | +| extensions.cs:15:24:15:28 | access to parameter value | semmle.label | access to parameter value | +| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj | +| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj | +| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj | +| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj | +| extensions.cs:36:24:36:38 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:36:24:36:38 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:38:13:38:15 | value : B | semmle.label | value : B | +| extensions.cs:38:13:38:15 | value : B | semmle.label | value : B | +| extensions.cs:40:24:40:28 | access to parameter value | semmle.label | access to parameter value | +| extensions.cs:40:24:40:28 | access to parameter value | semmle.label | access to parameter value | +| extensions.cs:46:20:46:33 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:46:20:46:33 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj | +| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj | +| extensions.cs:59:48:59:48 | a : B | semmle.label | a : B | +| extensions.cs:59:48:59:48 | a : B | semmle.label | a : B | +| extensions.cs:61:20:61:20 | access to parameter a | semmle.label | access to parameter a | +| extensions.cs:61:20:61:20 | access to parameter a | semmle.label | access to parameter a | +| extensions.cs:67:20:67:33 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:67:20:67:33 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:76:17:76:17 | b : B | semmle.label | b : B | +| extensions.cs:76:17:76:17 | b : B | semmle.label | b : B | +| extensions.cs:76:17:76:17 | b : B | semmle.label | b : B | +| extensions.cs:76:17:76:17 | b : B | semmle.label | b : B | +| extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | semmle.label | access to extension synthetic parameter b : B | +| extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | semmle.label | access to extension synthetic parameter b : B | +| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | semmle.label | access to extension synthetic parameter b | +| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | semmle.label | access to extension synthetic parameter b | +| extensions.cs:89:20:89:20 | t : B | semmle.label | t : B | +| extensions.cs:89:20:89:20 | t : B | semmle.label | t : B | +| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | semmle.label | access to extension synthetic parameter t | +| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | semmle.label | access to extension synthetic parameter t | +| extensions.cs:96:33:96:37 | other : B | semmle.label | other : B | +| extensions.cs:96:33:96:37 | other : B | semmle.label | other : B | +| extensions.cs:98:20:98:24 | access to parameter other : B | semmle.label | access to parameter other : B | +| extensions.cs:98:20:98:24 | access to parameter other : B | semmle.label | access to parameter other : B | +| extensions.cs:108:13:108:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:108:13:108:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:108:18:108:26 | access to property Prop1 : B | semmle.label | access to property Prop1 : B | +| extensions.cs:108:18:108:26 | access to property Prop1 : B | semmle.label | access to property Prop1 : B | +| extensions.cs:109:14:109:15 | access to local variable b1 | semmle.label | access to local variable b1 | +| extensions.cs:109:14:109:15 | access to local variable b1 | semmle.label | access to local variable b1 | +| extensions.cs:111:13:111:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:111:13:111:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | semmle.label | call to extension accessor get_Prop1 : B | +| extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | semmle.label | call to extension accessor get_Prop1 : B | +| extensions.cs:112:14:112:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:112:14:112:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:118:21:118:32 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:118:21:118:32 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:120:13:120:13 | access to local variable b : B | semmle.label | access to local variable b : B | +| extensions.cs:120:13:120:13 | access to local variable b : B | semmle.label | access to local variable b : B | +| extensions.cs:120:17:120:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:120:17:120:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:121:37:121:37 | access to local variable b : B | semmle.label | access to local variable b : B | +| extensions.cs:121:37:121:37 | access to local variable b : B | semmle.label | access to local variable b : B | +| extensions.cs:127:13:127:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:127:13:127:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:127:18:127:25 | call to method M1 : B | semmle.label | call to method M1 : B | +| extensions.cs:127:18:127:25 | call to method M1 : B | semmle.label | call to method M1 : B | +| extensions.cs:128:14:128:15 | access to local variable b1 | semmle.label | access to local variable b1 | +| extensions.cs:128:14:128:15 | access to local variable b1 | semmle.label | access to local variable b1 | +| extensions.cs:130:13:130:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:130:13:130:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:130:18:130:37 | call to method M1 : B | semmle.label | call to method M1 : B | +| extensions.cs:130:18:130:37 | call to method M1 : B | semmle.label | call to method M1 : B | +| extensions.cs:131:14:131:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:131:14:131:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:136:13:136:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:136:13:136:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:136:18:136:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:136:18:136:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:137:9:137:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:137:9:137:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:139:13:139:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:139:13:139:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:139:18:139:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:139:18:139:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:140:25:140:26 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:140:25:140:26 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:145:13:145:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:145:13:145:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:145:18:145:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:145:18:145:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:146:13:146:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:146:13:146:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:146:18:146:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:146:18:146:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:146:18:146:24 | call to method B1 : B | semmle.label | call to method B1 : B | +| extensions.cs:146:18:146:24 | call to method B1 : B | semmle.label | call to method B1 : B | +| extensions.cs:147:14:147:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:147:14:147:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:149:13:149:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:149:13:149:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:149:18:149:36 | call to method B1 : B | semmle.label | call to method B1 : B | +| extensions.cs:149:18:149:36 | call to method B1 : B | semmle.label | call to method B1 : B | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:150:14:150:15 | access to local variable b3 | semmle.label | access to local variable b3 | +| extensions.cs:150:14:150:15 | access to local variable b3 | semmle.label | access to local variable b3 | +| extensions.cs:155:13:155:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:155:13:155:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:155:18:155:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:155:18:155:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:156:18:156:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:156:18:156:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:158:13:158:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:158:13:158:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:158:18:158:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:158:18:158:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:159:41:159:42 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:159:41:159:42 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:164:13:164:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:164:13:164:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:164:18:164:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:164:18:164:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:165:9:165:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:165:9:165:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:167:13:167:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:167:13:167:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:167:18:167:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:167:18:167:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:168:32:168:33 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:168:32:168:33 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:173:13:173:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:173:13:173:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:173:18:173:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:173:18:173:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:175:18:175:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:175:18:175:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:177:13:177:14 | access to local variable b4 : B | semmle.label | access to local variable b4 : B | +| extensions.cs:177:13:177:14 | access to local variable b4 : B | semmle.label | access to local variable b4 : B | +| extensions.cs:177:18:177:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:177:18:177:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:178:43:178:44 | access to local variable b4 : B | semmle.label | access to local variable b4 : B | +| extensions.cs:178:43:178:44 | access to local variable b4 : B | semmle.label | access to local variable b4 : B | +| extensions.cs:185:13:185:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:185:13:185:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:185:18:185:24 | call to operator - : B | semmle.label | call to operator - : B | +| extensions.cs:185:18:185:24 | call to operator - : B | semmle.label | call to operator - : B | +| extensions.cs:186:14:186:15 | access to local variable b3 | semmle.label | access to local variable b3 | +| extensions.cs:186:14:186:15 | access to local variable b3 | semmle.label | access to local variable b3 | +| extensions.cs:188:13:188:14 | access to local variable b4 : B | semmle.label | access to local variable b4 : B | +| extensions.cs:188:13:188:14 | access to local variable b4 : B | semmle.label | access to local variable b4 : B | +| extensions.cs:188:18:188:52 | call to operator - : B | semmle.label | call to operator - : B | +| extensions.cs:188:18:188:52 | call to operator - : B | semmle.label | call to operator - : B | +| extensions.cs:189:14:189:15 | access to local variable b4 | semmle.label | access to local variable b4 | +| extensions.cs:189:14:189:15 | access to local variable b4 | semmle.label | access to local variable b4 | +| extensions.cs:194:13:194:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:194:13:194:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:194:18:194:35 | access to property StaticProp1 : B | semmle.label | access to property StaticProp1 : B | +| extensions.cs:194:18:194:35 | access to property StaticProp1 : B | semmle.label | access to property StaticProp1 : B | +| extensions.cs:195:14:195:15 | access to local variable b1 | semmle.label | access to local variable b1 | +| extensions.cs:195:14:195:15 | access to local variable b1 | semmle.label | access to local variable b1 | +| extensions.cs:197:13:197:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:197:13:197:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | semmle.label | call to extension accessor get_StaticProp1 : B | +| extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | semmle.label | call to extension accessor get_StaticProp1 : B | +| extensions.cs:198:14:198:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:198:14:198:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:203:13:203:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:203:13:203:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:203:18:203:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:203:18:203:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:204:30:204:31 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:204:30:204:31 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:206:13:206:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:206:13:206:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:206:18:206:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:206:18:206:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:207:38:207:39 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:207:38:207:39 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:212:13:212:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:212:13:212:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:212:18:212:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:212:18:212:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:213:9:213:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:213:9:213:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:215:13:215:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:215:13:215:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:215:18:215:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:215:18:215:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:216:25:216:26 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:216:25:216:26 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:221:13:221:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:221:13:221:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:221:18:221:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:221:18:221:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:222:9:222:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:222:9:222:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:224:13:224:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:224:13:224:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:224:18:224:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:224:18:224:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:225:32:225:33 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:225:32:225:33 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:231:13:231:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:231:13:231:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:231:18:231:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:231:18:231:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:232:13:232:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:232:13:232:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:232:18:232:34 | call to method GenericM2 : B | semmle.label | call to method GenericM2 : B | +| extensions.cs:232:18:232:34 | call to method GenericM2 : B | semmle.label | call to method GenericM2 : B | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:233:14:233:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:233:14:233:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:235:13:235:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:235:13:235:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:235:18:235:48 | call to method GenericM2 : B | semmle.label | call to method GenericM2 : B | +| extensions.cs:235:18:235:48 | call to method GenericM2 : B | semmle.label | call to method GenericM2 : B | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:236:14:236:15 | access to local variable b3 | semmle.label | access to local variable b3 | +| extensions.cs:236:14:236:15 | access to local variable b3 | semmle.label | access to local variable b3 | +subpaths +| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | extensions.cs:146:18:146:24 | call to method B1 : B | +| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | extensions.cs:146:18:146:24 | call to method B1 : B | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | extensions.cs:149:18:149:36 | call to method B1 : B | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | extensions.cs:149:18:149:36 | call to method B1 : B | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | extensions.cs:232:18:232:34 | call to method GenericM2 : B | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | extensions.cs:232:18:232:34 | call to method GenericM2 : B | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | extensions.cs:235:18:235:48 | call to method GenericM2 : B | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | extensions.cs:235:18:235:48 | call to method GenericM2 : B | +testFailures +#select +| extensions.cs:15:24:15:28 | access to parameter value | extensions.cs:118:21:118:32 | call to method Source : B | extensions.cs:15:24:15:28 | access to parameter value | $@ | extensions.cs:118:21:118:32 | call to method Source : B | call to method Source : B | +| extensions.cs:15:24:15:28 | access to parameter value | extensions.cs:118:21:118:32 | call to method Source : B | extensions.cs:15:24:15:28 | access to parameter value | $@ | extensions.cs:118:21:118:32 | call to method Source : B | call to method Source : B | +| extensions.cs:15:24:15:28 | access to parameter value | extensions.cs:120:17:120:30 | call to method Source : B | extensions.cs:15:24:15:28 | access to parameter value | $@ | extensions.cs:120:17:120:30 | call to method Source : B | call to method Source : B | +| extensions.cs:15:24:15:28 | access to parameter value | extensions.cs:120:17:120:30 | call to method Source : B | extensions.cs:15:24:15:28 | access to parameter value | $@ | extensions.cs:120:17:120:30 | call to method Source : B | call to method Source : B | +| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | extensions.cs:155:18:155:29 | call to method Source : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | $@ | extensions.cs:155:18:155:29 | call to method Source : B | call to method Source : B | +| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | extensions.cs:155:18:155:29 | call to method Source : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | $@ | extensions.cs:155:18:155:29 | call to method Source : B | call to method Source : B | +| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | extensions.cs:158:18:158:31 | call to method Source : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | $@ | extensions.cs:158:18:158:31 | call to method Source : B | call to method Source : B | +| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | extensions.cs:158:18:158:31 | call to method Source : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | $@ | extensions.cs:158:18:158:31 | call to method Source : B | call to method Source : B | +| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | extensions.cs:164:18:164:29 | call to method Source : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | $@ | extensions.cs:164:18:164:29 | call to method Source : B | call to method Source : B | +| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | extensions.cs:164:18:164:29 | call to method Source : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | $@ | extensions.cs:164:18:164:29 | call to method Source : B | call to method Source : B | +| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | extensions.cs:167:18:167:31 | call to method Source : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | $@ | extensions.cs:167:18:167:31 | call to method Source : B | call to method Source : B | +| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | extensions.cs:167:18:167:31 | call to method Source : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | $@ | extensions.cs:167:18:167:31 | call to method Source : B | call to method Source : B | +| extensions.cs:40:24:40:28 | access to parameter value | extensions.cs:203:18:203:30 | call to method Source : B | extensions.cs:40:24:40:28 | access to parameter value | $@ | extensions.cs:203:18:203:30 | call to method Source : B | call to method Source : B | +| extensions.cs:40:24:40:28 | access to parameter value | extensions.cs:203:18:203:30 | call to method Source : B | extensions.cs:40:24:40:28 | access to parameter value | $@ | extensions.cs:203:18:203:30 | call to method Source : B | call to method Source : B | +| extensions.cs:40:24:40:28 | access to parameter value | extensions.cs:206:18:206:31 | call to method Source : B | extensions.cs:40:24:40:28 | access to parameter value | $@ | extensions.cs:206:18:206:31 | call to method Source : B | call to method Source : B | +| extensions.cs:40:24:40:28 | access to parameter value | extensions.cs:206:18:206:31 | call to method Source : B | extensions.cs:40:24:40:28 | access to parameter value | $@ | extensions.cs:206:18:206:31 | call to method Source : B | call to method Source : B | +| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | extensions.cs:136:18:136:29 | call to method Source : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | $@ | extensions.cs:136:18:136:29 | call to method Source : B | call to method Source : B | +| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | extensions.cs:136:18:136:29 | call to method Source : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | $@ | extensions.cs:136:18:136:29 | call to method Source : B | call to method Source : B | +| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | extensions.cs:139:18:139:31 | call to method Source : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | $@ | extensions.cs:139:18:139:31 | call to method Source : B | call to method Source : B | +| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | extensions.cs:139:18:139:31 | call to method Source : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | $@ | extensions.cs:139:18:139:31 | call to method Source : B | call to method Source : B | +| extensions.cs:61:20:61:20 | access to parameter a | extensions.cs:173:18:173:29 | call to method Source : B | extensions.cs:61:20:61:20 | access to parameter a | $@ | extensions.cs:173:18:173:29 | call to method Source : B | call to method Source : B | +| extensions.cs:61:20:61:20 | access to parameter a | extensions.cs:173:18:173:29 | call to method Source : B | extensions.cs:61:20:61:20 | access to parameter a | $@ | extensions.cs:173:18:173:29 | call to method Source : B | call to method Source : B | +| extensions.cs:61:20:61:20 | access to parameter a | extensions.cs:177:18:177:31 | call to method Source : B | extensions.cs:61:20:61:20 | access to parameter a | $@ | extensions.cs:177:18:177:31 | call to method Source : B | call to method Source : B | +| extensions.cs:61:20:61:20 | access to parameter a | extensions.cs:177:18:177:31 | call to method Source : B | extensions.cs:61:20:61:20 | access to parameter a | $@ | extensions.cs:177:18:177:31 | call to method Source : B | call to method Source : B | +| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | extensions.cs:212:18:212:30 | call to method Source : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | $@ | extensions.cs:212:18:212:30 | call to method Source : B | call to method Source : B | +| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | extensions.cs:212:18:212:30 | call to method Source : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | $@ | extensions.cs:212:18:212:30 | call to method Source : B | call to method Source : B | +| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | extensions.cs:215:18:215:31 | call to method Source : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | $@ | extensions.cs:215:18:215:31 | call to method Source : B | call to method Source : B | +| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | extensions.cs:215:18:215:31 | call to method Source : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | $@ | extensions.cs:215:18:215:31 | call to method Source : B | call to method Source : B | +| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | extensions.cs:221:18:221:30 | call to method Source : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | $@ | extensions.cs:221:18:221:30 | call to method Source : B | call to method Source : B | +| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | extensions.cs:221:18:221:30 | call to method Source : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | $@ | extensions.cs:221:18:221:30 | call to method Source : B | call to method Source : B | +| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | extensions.cs:224:18:224:31 | call to method Source : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | $@ | extensions.cs:224:18:224:31 | call to method Source : B | call to method Source : B | +| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | extensions.cs:224:18:224:31 | call to method Source : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | $@ | extensions.cs:224:18:224:31 | call to method Source : B | call to method Source : B | +| extensions.cs:109:14:109:15 | access to local variable b1 | extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:109:14:109:15 | access to local variable b1 | $@ | extensions.cs:11:24:11:37 | call to method Source : B | call to method Source : B | +| extensions.cs:109:14:109:15 | access to local variable b1 | extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:109:14:109:15 | access to local variable b1 | $@ | extensions.cs:11:24:11:37 | call to method Source : B | call to method Source : B | +| extensions.cs:112:14:112:15 | access to local variable b2 | extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:112:14:112:15 | access to local variable b2 | $@ | extensions.cs:11:24:11:37 | call to method Source : B | call to method Source : B | +| extensions.cs:112:14:112:15 | access to local variable b2 | extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:112:14:112:15 | access to local variable b2 | $@ | extensions.cs:11:24:11:37 | call to method Source : B | call to method Source : B | +| extensions.cs:128:14:128:15 | access to local variable b1 | extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:128:14:128:15 | access to local variable b1 | $@ | extensions.cs:46:20:46:33 | call to method Source : B | call to method Source : B | +| extensions.cs:128:14:128:15 | access to local variable b1 | extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:128:14:128:15 | access to local variable b1 | $@ | extensions.cs:46:20:46:33 | call to method Source : B | call to method Source : B | +| extensions.cs:131:14:131:15 | access to local variable b2 | extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:131:14:131:15 | access to local variable b2 | $@ | extensions.cs:46:20:46:33 | call to method Source : B | call to method Source : B | +| extensions.cs:131:14:131:15 | access to local variable b2 | extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:131:14:131:15 | access to local variable b2 | $@ | extensions.cs:46:20:46:33 | call to method Source : B | call to method Source : B | +| extensions.cs:147:14:147:15 | access to local variable b2 | extensions.cs:145:18:145:29 | call to method Source : B | extensions.cs:147:14:147:15 | access to local variable b2 | $@ | extensions.cs:145:18:145:29 | call to method Source : B | call to method Source : B | +| extensions.cs:147:14:147:15 | access to local variable b2 | extensions.cs:145:18:145:29 | call to method Source : B | extensions.cs:147:14:147:15 | access to local variable b2 | $@ | extensions.cs:145:18:145:29 | call to method Source : B | call to method Source : B | +| extensions.cs:150:14:150:15 | access to local variable b3 | extensions.cs:145:18:145:29 | call to method Source : B | extensions.cs:150:14:150:15 | access to local variable b3 | $@ | extensions.cs:145:18:145:29 | call to method Source : B | call to method Source : B | +| extensions.cs:150:14:150:15 | access to local variable b3 | extensions.cs:145:18:145:29 | call to method Source : B | extensions.cs:150:14:150:15 | access to local variable b3 | $@ | extensions.cs:145:18:145:29 | call to method Source : B | call to method Source : B | +| extensions.cs:186:14:186:15 | access to local variable b3 | extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:186:14:186:15 | access to local variable b3 | $@ | extensions.cs:67:20:67:33 | call to method Source : B | call to method Source : B | +| extensions.cs:186:14:186:15 | access to local variable b3 | extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:186:14:186:15 | access to local variable b3 | $@ | extensions.cs:67:20:67:33 | call to method Source : B | call to method Source : B | +| extensions.cs:189:14:189:15 | access to local variable b4 | extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:189:14:189:15 | access to local variable b4 | $@ | extensions.cs:67:20:67:33 | call to method Source : B | call to method Source : B | +| extensions.cs:189:14:189:15 | access to local variable b4 | extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:189:14:189:15 | access to local variable b4 | $@ | extensions.cs:67:20:67:33 | call to method Source : B | call to method Source : B | +| extensions.cs:195:14:195:15 | access to local variable b1 | extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:195:14:195:15 | access to local variable b1 | $@ | extensions.cs:36:24:36:38 | call to method Source : B | call to method Source : B | +| extensions.cs:195:14:195:15 | access to local variable b1 | extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:195:14:195:15 | access to local variable b1 | $@ | extensions.cs:36:24:36:38 | call to method Source : B | call to method Source : B | +| extensions.cs:198:14:198:15 | access to local variable b2 | extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:198:14:198:15 | access to local variable b2 | $@ | extensions.cs:36:24:36:38 | call to method Source : B | call to method Source : B | +| extensions.cs:198:14:198:15 | access to local variable b2 | extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:198:14:198:15 | access to local variable b2 | $@ | extensions.cs:36:24:36:38 | call to method Source : B | call to method Source : B | +| extensions.cs:233:14:233:15 | access to local variable b2 | extensions.cs:231:18:231:30 | call to method Source : B | extensions.cs:233:14:233:15 | access to local variable b2 | $@ | extensions.cs:231:18:231:30 | call to method Source : B | call to method Source : B | +| extensions.cs:233:14:233:15 | access to local variable b2 | extensions.cs:231:18:231:30 | call to method Source : B | extensions.cs:233:14:233:15 | access to local variable b2 | $@ | extensions.cs:231:18:231:30 | call to method Source : B | call to method Source : B | +| extensions.cs:236:14:236:15 | access to local variable b3 | extensions.cs:231:18:231:30 | call to method Source : B | extensions.cs:236:14:236:15 | access to local variable b3 | $@ | extensions.cs:231:18:231:30 | call to method Source : B | call to method Source : B | +| extensions.cs:236:14:236:15 | access to local variable b3 | extensions.cs:231:18:231:30 | call to method Source : B | extensions.cs:236:14:236:15 | access to local variable b3 | $@ | extensions.cs:231:18:231:30 | call to method Source : B | call to method Source : B | diff --git a/csharp/ql/test/library-tests/dataflow/extensions/ExtensionFlow.ql b/csharp/ql/test/library-tests/dataflow/extensions/ExtensionFlow.ql new file mode 100644 index 000000000000..9ab95f59caf3 --- /dev/null +++ b/csharp/ql/test/library-tests/dataflow/extensions/ExtensionFlow.ql @@ -0,0 +1,12 @@ +/** + * @kind path-problem + */ + +import csharp +import utils.test.InlineFlowTest +import DefaultFlowTest +import PathGraph + +from PathNode source, PathNode sink +where flowPath(source, sink) +select sink, source, sink, "$@", source, source.toString() diff --git a/csharp/ql/test/library-tests/dataflow/extensions/extensions.cs b/csharp/ql/test/library-tests/dataflow/extensions/extensions.cs new file mode 100644 index 000000000000..0e1c2226683d --- /dev/null +++ b/csharp/ql/test/library-tests/dataflow/extensions/extensions.cs @@ -0,0 +1,243 @@ +using System; + +public static class MyExtensions +{ + extension(object obj) + { + public B Prop1 + { + get + { + return A.Source(1); + } + set + { + A.Sink(value); // $ hasValueFlow=2 hasValueFlow=102 + } + } + + public B Prop2 + { + get + { + A.Sink(obj); // $ hasValueFlow=6 hasValueFlow=106 + return new B(); + } + set + { + A.Sink(obj); // $ hasValueFlow=7 hasValueFlow=107 + } + } + + public static B StaticProp1 + { + get + { + return A.Source(10); + } + set + { + A.Sink(value); // $ hasValueFlow=11 hasValueFlow=111 + } + } + + public B M1() + { + return A.Source(3); + } + + public void M2() + { + A.Sink(obj); // $ hasValueFlow=4 hasValueFlow=104 + } + + public static B M3(B b) + { + return b; + } + + public static object operator +(object a, object b) + { + A.Sink(a); // $ hasValueFlow=8 hasValueFlow=108 + return new object(); + } + + public static object operator -(object a, object b) + { + return A.Source(9); + } + + public T GenericMethod(T t) + { + return t; + } + } + + extension(B b) + { + public B B1() + { + return b; + } + + public void B2() + { + A.Sink(b); // $ hasValueFlow=12 hasValueFlow=112 + } + } + + extension(T t) where T : class + { + public void GenericM1() + { + A.Sink(t); // $ hasValueFlow=13 hasValueFlow=113 + } + + public S GenericM2(S other) + { + return other; + } + } +} + +public class A +{ + public void Test1() + { + var obj = new object(); + var b1 = obj.Prop1; + Sink(b1); // $ hasValueFlow=1 + + var b2 = MyExtensions.get_Prop1(obj); + Sink(b2); // $ hasValueFlow=1 + } + + public void Test2() + { + var obj = new object(); + obj.Prop1 = Source(2); + + var b = Source(102); + MyExtensions.set_Prop1(obj, b); + } + + public void Test3() + { + var obj = new object(); + var b1 = obj.M1(); + Sink(b1); // $ hasValueFlow=3 + + var b2 = MyExtensions.M1(obj); + Sink(b2); // $ hasValueFlow=3 + } + + public void Test4() + { + var b1 = Source(4); + b1.M2(); + + var b2 = Source(104); + MyExtensions.M2(b2); + } + + public void Test5() + { + var b1 = Source(5); + var b2 = b1.B1(); + Sink(b2); // $ hasValueFlow=5 + + var b3 = MyExtensions.B1(b1); + Sink(b3); // $ hasValueFlow=5 + } + + public void Test6() + { + var b1 = Source(6); + var b2 = b1.Prop2; + + var b3 = Source(106); + var b4 = MyExtensions.get_Prop2(b3); + } + + public void Test7() + { + var b1 = Source(7); + b1.Prop2 = new B(); + + var b2 = Source(107); + MyExtensions.set_Prop2(b2, new B()); + } + + public void Test8() + { + var b1 = Source(8); + var b2 = Source(1); + var b3 = b1 + b2; + + var b4 = Source(108); + var b5 = MyExtensions.op_Addition(b4, b2); + } + + public void Test9() + { + var b1 = Source(0); + var b2 = Source(1); + var b3 = b1 - b2; + Sink(b3); // $ hasValueFlow=9 + + var b4 = MyExtensions.op_Subtraction(b1, b2); + Sink(b4); // $ hasValueFlow=9 + } + + public void Test10() + { + var b1 = object.StaticProp1; + Sink(b1); // $ hasValueFlow=10 + + var b2 = MyExtensions.get_StaticProp1(); + Sink(b2); // $ hasValueFlow=10 + } + + public void Test11() + { + var b1 = Source(11); + object.StaticProp1 = b1; + + var b2 = Source(111); + MyExtensions.set_StaticProp1(b2); + } + + public void Test12() + { + var b1 = Source(12); + b1.B2(); + + var b2 = Source(112); + MyExtensions.B2(b2); + } + + public void Test13() + { + var b1 = Source(13); + b1.GenericM1(); + + var b2 = Source(113); + MyExtensions.GenericM1(b2); + } + + public void Test14() + { + var obj = new object(); + var b1 = Source(14); + var b2 = obj.GenericM2(b1); + Sink(b2); // $ hasValueFlow=14 + + var b3 = MyExtensions.GenericM2(obj, b1); + Sink(b3); // $ hasValueFlow=14 + } + + public static T Source(object source) => throw null; + public static void Sink(object o) { } +} + +public class B { } diff --git a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.cs b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.cs index e28b8fdfcc92..1fa43ba456e5 100644 --- a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.cs +++ b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.cs @@ -348,4 +348,98 @@ public void M1() static void Sink(object o) { } } + // Test extensions + public static class TestExtensions + { + extension(object o) + { + public object Method1() => throw null; + public static object StaticMethod1(object s) => throw null; + public object Property1 { get { throw null; } set { throw null; } } + } + + extension(T t) where T : class + { + public T GenericMethod1() => throw null; + public static T GenericStaticMethod1(T t0) => throw null; + public T GenericProperty1 { get { throw null; } set { throw null; } } + } + } + + public class M + { + public void M1() + { + var obj = new object(); + var o1 = obj.Method1(); + Sink(o1); + + var o2 = TestExtensions.Method1(obj); + Sink(o2); + } + + public void M2() + { + var obj = new object(); + var o1 = object.StaticMethod1(obj); + Sink(o1); + + var o2 = TestExtensions.StaticMethod1(obj); + Sink(o2); + } + + public void M3(object o) + { + var obj = new object(); + o.Property1 = obj; + var o1 = o.Property1; + Sink(o1); + } + + public void M4(object o) + { + var obj = new object(); + TestExtensions.set_Property1(o, obj); + var o1 = TestExtensions.get_Property1(o); + Sink(o1); + } + + public void M5() + { + var obj = new object(); + var o1 = obj.GenericMethod1(); + Sink(o1); + + var o2 = TestExtensions.GenericMethod1(obj); + Sink(o2); + } + + public void M6() + { + var obj = new object(); + var o1 = object.GenericStaticMethod1(obj); + Sink(o1); + + var o2 = TestExtensions.GenericStaticMethod1(obj); + Sink(o2); + } + + public void M7(object o) + { + var obj = new object(); + o.GenericProperty1 = obj; + var o1 = o.GenericProperty1; + Sink(o1); + } + + public void M8(object o) + { + var obj = new object(); + TestExtensions.set_GenericProperty1(o, obj); + var o1 = TestExtensions.get_GenericProperty1(o); + Sink(o1); + } + + static void Sink(object o) { } + } } diff --git a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.expected b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.expected index 3099a3fec7e6..b0256d6c41d8 100644 --- a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.expected +++ b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.expected @@ -32,6 +32,14 @@ models | 31 | Summary: My.Qltest; Library; false; GetValue; (); ; Argument[this].SyntheticField[X]; ReturnValue; value; dfc-generated | | 32 | Summary: My.Qltest; Library; false; MixedFlowArgs; (System.Object,System.Object); ; Argument[1]; ReturnValue; value; manual | | 33 | Summary: My.Qltest; Library; false; SetValue; (System.Object); ; Argument[0]; Argument[this].SyntheticField[X]; value; dfc-generated | +| 34 | Summary: My.Qltest; TestExtensions+extension(System.Object); false; Method1; (System.Object); ; Argument[0]; ReturnValue; value; manual | +| 35 | Summary: My.Qltest; TestExtensions+extension(System.Object); false; StaticMethod1; (System.Object); ; Argument[0]; ReturnValue; value; manual | +| 36 | Summary: My.Qltest; TestExtensions+extension(System.Object); false; get_Property1; (System.Object); ; Argument[0].SyntheticField[TestExtensions.Property1]; ReturnValue; value; manual | +| 37 | Summary: My.Qltest; TestExtensions+extension(System.Object); false; set_Property1; (System.Object,System.Object); ; Argument[1]; Argument[0].SyntheticField[TestExtensions.Property1]; value; manual | +| 38 | Summary: My.Qltest; TestExtensions+extension(T); false; GenericMethod1; (T); ; Argument[0]; ReturnValue; value; manual | +| 39 | Summary: My.Qltest; TestExtensions+extension(T); false; GenericStaticMethod1; (T); ; Argument[0]; ReturnValue; value; manual | +| 40 | Summary: My.Qltest; TestExtensions+extension(T); false; get_GenericProperty1; (T); ; Argument[0].SyntheticField[TestExtensions.GenericProperty1]; ReturnValue; value; manual | +| 41 | Summary: My.Qltest; TestExtensions+extension(T); false; set_GenericProperty1; (T,T); ; Argument[1]; Argument[0].SyntheticField[TestExtensions.GenericProperty1]; value; manual | edges | ExternalFlow.cs:9:20:9:23 | access to local variable arg1 : Object | ExternalFlow.cs:10:29:10:32 | access to local variable arg1 : Object | provenance | | | ExternalFlow.cs:9:27:9:38 | object creation of type Object : Object | ExternalFlow.cs:9:20:9:23 | access to local variable arg1 : Object | provenance | | @@ -150,6 +158,73 @@ edges | ExternalFlow.cs:344:13:344:13 | [post] access to local variable l : Library [synthetic X] : Object | ExternalFlow.cs:345:18:345:18 | access to local variable l : Library [synthetic X] : Object | provenance | | | ExternalFlow.cs:344:24:344:24 | access to local variable o : Object | ExternalFlow.cs:344:13:344:13 | [post] access to local variable l : Library [synthetic X] : Object | provenance | MaD:33 | | ExternalFlow.cs:345:18:345:18 | access to local variable l : Library [synthetic X] : Object | ExternalFlow.cs:345:18:345:29 | call to method GetValue | provenance | MaD:31 | +| ExternalFlow.cs:373:17:373:19 | access to local variable obj : Object | ExternalFlow.cs:374:22:374:24 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:373:17:373:19 | access to local variable obj : Object | ExternalFlow.cs:377:45:377:47 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:373:23:373:34 | object creation of type Object : Object | ExternalFlow.cs:373:17:373:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:374:17:374:18 | access to local variable o1 : Object | ExternalFlow.cs:375:18:375:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:374:22:374:24 | access to local variable obj : Object | ExternalFlow.cs:374:22:374:34 | call to method Method1 : Object | provenance | MaD:34 | +| ExternalFlow.cs:374:22:374:34 | call to method Method1 : Object | ExternalFlow.cs:374:17:374:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:377:17:377:18 | access to local variable o2 : Object | ExternalFlow.cs:378:18:378:19 | access to local variable o2 | provenance | | +| ExternalFlow.cs:377:22:377:48 | call to method Method1 : Object | ExternalFlow.cs:377:17:377:18 | access to local variable o2 : Object | provenance | | +| ExternalFlow.cs:377:45:377:47 | access to local variable obj : Object | ExternalFlow.cs:377:22:377:48 | call to method Method1 : Object | provenance | MaD:34 | +| ExternalFlow.cs:383:17:383:19 | access to local variable obj : Object | ExternalFlow.cs:384:43:384:45 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:383:17:383:19 | access to local variable obj : Object | ExternalFlow.cs:387:51:387:53 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:383:23:383:34 | object creation of type Object : Object | ExternalFlow.cs:383:17:383:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:384:17:384:18 | access to local variable o1 : Object | ExternalFlow.cs:385:18:385:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:384:22:384:46 | call to method StaticMethod1 : Object | ExternalFlow.cs:384:17:384:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:384:43:384:45 | access to local variable obj : Object | ExternalFlow.cs:384:22:384:46 | call to method StaticMethod1 : Object | provenance | MaD:35 | +| ExternalFlow.cs:387:17:387:18 | access to local variable o2 : Object | ExternalFlow.cs:388:18:388:19 | access to local variable o2 | provenance | | +| ExternalFlow.cs:387:22:387:54 | call to method StaticMethod1 : Object | ExternalFlow.cs:387:17:387:18 | access to local variable o2 : Object | provenance | | +| ExternalFlow.cs:387:51:387:53 | access to local variable obj : Object | ExternalFlow.cs:387:22:387:54 | call to method StaticMethod1 : Object | provenance | MaD:35 | +| ExternalFlow.cs:393:17:393:19 | access to local variable obj : Object | ExternalFlow.cs:394:27:394:29 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:393:23:393:34 | object creation of type Object : Object | ExternalFlow.cs:393:17:393:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:394:13:394:13 | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | ExternalFlow.cs:395:22:395:22 | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | provenance | | +| ExternalFlow.cs:394:27:394:29 | access to local variable obj : Object | ExternalFlow.cs:394:13:394:13 | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | provenance | MaD:37 | +| ExternalFlow.cs:395:17:395:18 | access to local variable o1 : Object | ExternalFlow.cs:396:18:396:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:395:22:395:22 | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | ExternalFlow.cs:395:22:395:32 | access to property Property1 : Object | provenance | MaD:36 | +| ExternalFlow.cs:395:22:395:32 | access to property Property1 : Object | ExternalFlow.cs:395:17:395:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:401:17:401:19 | access to local variable obj : Object | ExternalFlow.cs:402:45:402:47 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:401:23:401:34 | object creation of type Object : Object | ExternalFlow.cs:401:17:401:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:402:42:402:42 | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | ExternalFlow.cs:403:51:403:51 | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | provenance | | +| ExternalFlow.cs:402:45:402:47 | access to local variable obj : Object | ExternalFlow.cs:402:42:402:42 | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | provenance | MaD:37 | +| ExternalFlow.cs:403:17:403:18 | access to local variable o1 : Object | ExternalFlow.cs:404:18:404:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:403:22:403:52 | call to extension accessor get_Property1 : Object | ExternalFlow.cs:403:17:403:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:403:51:403:51 | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | ExternalFlow.cs:403:22:403:52 | call to extension accessor get_Property1 : Object | provenance | MaD:36 | +| ExternalFlow.cs:409:17:409:19 | access to local variable obj : Object | ExternalFlow.cs:410:22:410:24 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:409:17:409:19 | access to local variable obj : Object | ExternalFlow.cs:413:52:413:54 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:409:23:409:34 | object creation of type Object : Object | ExternalFlow.cs:409:17:409:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:410:17:410:18 | access to local variable o1 : Object | ExternalFlow.cs:411:18:411:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:410:22:410:24 | access to local variable obj : Object | ExternalFlow.cs:410:22:410:41 | call to method GenericMethod1 : Object | provenance | MaD:38 | +| ExternalFlow.cs:410:22:410:41 | call to method GenericMethod1 : Object | ExternalFlow.cs:410:17:410:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:413:17:413:18 | access to local variable o2 : Object | ExternalFlow.cs:414:18:414:19 | access to local variable o2 | provenance | | +| ExternalFlow.cs:413:22:413:55 | call to method GenericMethod1 : Object | ExternalFlow.cs:413:17:413:18 | access to local variable o2 : Object | provenance | | +| ExternalFlow.cs:413:52:413:54 | access to local variable obj : Object | ExternalFlow.cs:413:22:413:55 | call to method GenericMethod1 : Object | provenance | MaD:38 | +| ExternalFlow.cs:419:17:419:19 | access to local variable obj : Object | ExternalFlow.cs:420:50:420:52 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:419:17:419:19 | access to local variable obj : Object | ExternalFlow.cs:423:58:423:60 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:419:23:419:34 | object creation of type Object : Object | ExternalFlow.cs:419:17:419:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:420:17:420:18 | access to local variable o1 : Object | ExternalFlow.cs:421:18:421:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:420:22:420:53 | call to method GenericStaticMethod1 : Object | ExternalFlow.cs:420:17:420:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:420:50:420:52 | access to local variable obj : Object | ExternalFlow.cs:420:22:420:53 | call to method GenericStaticMethod1 : Object | provenance | MaD:39 | +| ExternalFlow.cs:423:17:423:18 | access to local variable o2 : Object | ExternalFlow.cs:424:18:424:19 | access to local variable o2 | provenance | | +| ExternalFlow.cs:423:22:423:61 | call to method GenericStaticMethod1 : Object | ExternalFlow.cs:423:17:423:18 | access to local variable o2 : Object | provenance | | +| ExternalFlow.cs:423:58:423:60 | access to local variable obj : Object | ExternalFlow.cs:423:22:423:61 | call to method GenericStaticMethod1 : Object | provenance | MaD:39 | +| ExternalFlow.cs:429:17:429:19 | access to local variable obj : Object | ExternalFlow.cs:430:34:430:36 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:429:23:429:34 | object creation of type Object : Object | ExternalFlow.cs:429:17:429:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:430:13:430:13 | [post] access to parameter o : Object [property GenericProperty1] : Object | ExternalFlow.cs:431:22:431:22 | access to parameter o : Object [property GenericProperty1] : Object | provenance | | +| ExternalFlow.cs:430:13:430:13 | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | ExternalFlow.cs:431:22:431:22 | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | provenance | | +| ExternalFlow.cs:430:34:430:36 | access to local variable obj : Object | ExternalFlow.cs:430:13:430:13 | [post] access to parameter o : Object [property GenericProperty1] : Object | provenance | | +| ExternalFlow.cs:430:34:430:36 | access to local variable obj : Object | ExternalFlow.cs:430:13:430:13 | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | provenance | MaD:41 | +| ExternalFlow.cs:431:17:431:18 | access to local variable o1 : Object | ExternalFlow.cs:432:18:432:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:431:22:431:22 | access to parameter o : Object [property GenericProperty1] : Object | ExternalFlow.cs:431:22:431:39 | access to property GenericProperty1 : Object | provenance | | +| ExternalFlow.cs:431:22:431:22 | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | ExternalFlow.cs:431:22:431:39 | access to property GenericProperty1 : Object | provenance | MaD:40 | +| ExternalFlow.cs:431:22:431:39 | access to property GenericProperty1 : Object | ExternalFlow.cs:431:17:431:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:437:17:437:19 | access to local variable obj : Object | ExternalFlow.cs:438:52:438:54 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:437:23:437:34 | object creation of type Object : Object | ExternalFlow.cs:437:17:437:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:438:49:438:49 | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | ExternalFlow.cs:439:58:439:58 | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | provenance | | +| ExternalFlow.cs:438:52:438:54 | access to local variable obj : Object | ExternalFlow.cs:438:49:438:49 | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | provenance | MaD:41 | +| ExternalFlow.cs:439:17:439:18 | access to local variable o1 : Object | ExternalFlow.cs:440:18:440:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:439:22:439:59 | call to extension accessor get_GenericProperty1 : Object | ExternalFlow.cs:439:17:439:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:439:58:439:58 | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | ExternalFlow.cs:439:22:439:59 | call to extension accessor get_GenericProperty1 : Object | provenance | MaD:40 | nodes | ExternalFlow.cs:9:20:9:23 | access to local variable arg1 : Object | semmle.label | access to local variable arg1 : Object | | ExternalFlow.cs:9:27:9:38 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | @@ -294,6 +369,80 @@ nodes | ExternalFlow.cs:344:24:344:24 | access to local variable o : Object | semmle.label | access to local variable o : Object | | ExternalFlow.cs:345:18:345:18 | access to local variable l : Library [synthetic X] : Object | semmle.label | access to local variable l : Library [synthetic X] : Object | | ExternalFlow.cs:345:18:345:29 | call to method GetValue | semmle.label | call to method GetValue | +| ExternalFlow.cs:373:17:373:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:373:23:373:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:374:17:374:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:374:22:374:24 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:374:22:374:34 | call to method Method1 : Object | semmle.label | call to method Method1 : Object | +| ExternalFlow.cs:375:18:375:19 | access to local variable o1 | semmle.label | access to local variable o1 | +| ExternalFlow.cs:377:17:377:18 | access to local variable o2 : Object | semmle.label | access to local variable o2 : Object | +| ExternalFlow.cs:377:22:377:48 | call to method Method1 : Object | semmle.label | call to method Method1 : Object | +| ExternalFlow.cs:377:45:377:47 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:378:18:378:19 | access to local variable o2 | semmle.label | access to local variable o2 | +| ExternalFlow.cs:383:17:383:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:383:23:383:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:384:17:384:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:384:22:384:46 | call to method StaticMethod1 : Object | semmle.label | call to method StaticMethod1 : Object | +| ExternalFlow.cs:384:43:384:45 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:385:18:385:19 | access to local variable o1 | semmle.label | access to local variable o1 | +| ExternalFlow.cs:387:17:387:18 | access to local variable o2 : Object | semmle.label | access to local variable o2 : Object | +| ExternalFlow.cs:387:22:387:54 | call to method StaticMethod1 : Object | semmle.label | call to method StaticMethod1 : Object | +| ExternalFlow.cs:387:51:387:53 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:388:18:388:19 | access to local variable o2 | semmle.label | access to local variable o2 | +| ExternalFlow.cs:393:17:393:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:393:23:393:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:394:13:394:13 | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | semmle.label | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | +| ExternalFlow.cs:394:27:394:29 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:395:17:395:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:395:22:395:22 | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | semmle.label | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | +| ExternalFlow.cs:395:22:395:32 | access to property Property1 : Object | semmle.label | access to property Property1 : Object | +| ExternalFlow.cs:396:18:396:19 | access to local variable o1 | semmle.label | access to local variable o1 | +| ExternalFlow.cs:401:17:401:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:401:23:401:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:402:42:402:42 | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | semmle.label | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | +| ExternalFlow.cs:402:45:402:47 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:403:17:403:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:403:22:403:52 | call to extension accessor get_Property1 : Object | semmle.label | call to extension accessor get_Property1 : Object | +| ExternalFlow.cs:403:51:403:51 | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | semmle.label | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | +| ExternalFlow.cs:404:18:404:19 | access to local variable o1 | semmle.label | access to local variable o1 | +| ExternalFlow.cs:409:17:409:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:409:23:409:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:410:17:410:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:410:22:410:24 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:410:22:410:41 | call to method GenericMethod1 : Object | semmle.label | call to method GenericMethod1 : Object | +| ExternalFlow.cs:411:18:411:19 | access to local variable o1 | semmle.label | access to local variable o1 | +| ExternalFlow.cs:413:17:413:18 | access to local variable o2 : Object | semmle.label | access to local variable o2 : Object | +| ExternalFlow.cs:413:22:413:55 | call to method GenericMethod1 : Object | semmle.label | call to method GenericMethod1 : Object | +| ExternalFlow.cs:413:52:413:54 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:414:18:414:19 | access to local variable o2 | semmle.label | access to local variable o2 | +| ExternalFlow.cs:419:17:419:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:419:23:419:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:420:17:420:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:420:22:420:53 | call to method GenericStaticMethod1 : Object | semmle.label | call to method GenericStaticMethod1 : Object | +| ExternalFlow.cs:420:50:420:52 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:421:18:421:19 | access to local variable o1 | semmle.label | access to local variable o1 | +| ExternalFlow.cs:423:17:423:18 | access to local variable o2 : Object | semmle.label | access to local variable o2 : Object | +| ExternalFlow.cs:423:22:423:61 | call to method GenericStaticMethod1 : Object | semmle.label | call to method GenericStaticMethod1 : Object | +| ExternalFlow.cs:423:58:423:60 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:424:18:424:19 | access to local variable o2 | semmle.label | access to local variable o2 | +| ExternalFlow.cs:429:17:429:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:429:23:429:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:430:13:430:13 | [post] access to parameter o : Object [property GenericProperty1] : Object | semmle.label | [post] access to parameter o : Object [property GenericProperty1] : Object | +| ExternalFlow.cs:430:13:430:13 | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | semmle.label | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | +| ExternalFlow.cs:430:34:430:36 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:431:17:431:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:431:22:431:22 | access to parameter o : Object [property GenericProperty1] : Object | semmle.label | access to parameter o : Object [property GenericProperty1] : Object | +| ExternalFlow.cs:431:22:431:22 | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | semmle.label | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | +| ExternalFlow.cs:431:22:431:39 | access to property GenericProperty1 : Object | semmle.label | access to property GenericProperty1 : Object | +| ExternalFlow.cs:432:18:432:19 | access to local variable o1 | semmle.label | access to local variable o1 | +| ExternalFlow.cs:437:17:437:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:437:23:437:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:438:49:438:49 | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | semmle.label | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | +| ExternalFlow.cs:438:52:438:54 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:439:17:439:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:439:22:439:59 | call to extension accessor get_GenericProperty1 : Object | semmle.label | call to extension accessor get_GenericProperty1 : Object | +| ExternalFlow.cs:439:58:439:58 | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | semmle.label | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | +| ExternalFlow.cs:440:18:440:19 | access to local variable o1 | semmle.label | access to local variable o1 | subpaths | ExternalFlow.cs:84:29:84:32 | access to local variable objs : null [element] : Object | ExternalFlow.cs:84:35:84:35 | o : Object | ExternalFlow.cs:84:40:84:40 | access to parameter o : Object | ExternalFlow.cs:84:25:84:41 | call to method Map : T[] [element] : Object | invalidModelRow @@ -328,3 +477,15 @@ invalidModelRow | ExternalFlow.cs:324:18:324:44 | call to method GetMyNestedSyntheticField | ExternalFlow.cs:322:21:322:32 | object creation of type Object : Object | ExternalFlow.cs:324:18:324:44 | call to method GetMyNestedSyntheticField | $@ | ExternalFlow.cs:322:21:322:32 | object creation of type Object : Object | object creation of type Object : Object | | ExternalFlow.cs:331:18:331:45 | call to method GetMyFieldOnSyntheticField | ExternalFlow.cs:329:21:329:32 | object creation of type Object : Object | ExternalFlow.cs:331:18:331:45 | call to method GetMyFieldOnSyntheticField | $@ | ExternalFlow.cs:329:21:329:32 | object creation of type Object : Object | object creation of type Object : Object | | ExternalFlow.cs:345:18:345:29 | call to method GetValue | ExternalFlow.cs:343:21:343:32 | object creation of type Object : Object | ExternalFlow.cs:345:18:345:29 | call to method GetValue | $@ | ExternalFlow.cs:343:21:343:32 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:375:18:375:19 | access to local variable o1 | ExternalFlow.cs:373:23:373:34 | object creation of type Object : Object | ExternalFlow.cs:375:18:375:19 | access to local variable o1 | $@ | ExternalFlow.cs:373:23:373:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:378:18:378:19 | access to local variable o2 | ExternalFlow.cs:373:23:373:34 | object creation of type Object : Object | ExternalFlow.cs:378:18:378:19 | access to local variable o2 | $@ | ExternalFlow.cs:373:23:373:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:385:18:385:19 | access to local variable o1 | ExternalFlow.cs:383:23:383:34 | object creation of type Object : Object | ExternalFlow.cs:385:18:385:19 | access to local variable o1 | $@ | ExternalFlow.cs:383:23:383:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:388:18:388:19 | access to local variable o2 | ExternalFlow.cs:383:23:383:34 | object creation of type Object : Object | ExternalFlow.cs:388:18:388:19 | access to local variable o2 | $@ | ExternalFlow.cs:383:23:383:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:396:18:396:19 | access to local variable o1 | ExternalFlow.cs:393:23:393:34 | object creation of type Object : Object | ExternalFlow.cs:396:18:396:19 | access to local variable o1 | $@ | ExternalFlow.cs:393:23:393:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:404:18:404:19 | access to local variable o1 | ExternalFlow.cs:401:23:401:34 | object creation of type Object : Object | ExternalFlow.cs:404:18:404:19 | access to local variable o1 | $@ | ExternalFlow.cs:401:23:401:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:411:18:411:19 | access to local variable o1 | ExternalFlow.cs:409:23:409:34 | object creation of type Object : Object | ExternalFlow.cs:411:18:411:19 | access to local variable o1 | $@ | ExternalFlow.cs:409:23:409:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:414:18:414:19 | access to local variable o2 | ExternalFlow.cs:409:23:409:34 | object creation of type Object : Object | ExternalFlow.cs:414:18:414:19 | access to local variable o2 | $@ | ExternalFlow.cs:409:23:409:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:421:18:421:19 | access to local variable o1 | ExternalFlow.cs:419:23:419:34 | object creation of type Object : Object | ExternalFlow.cs:421:18:421:19 | access to local variable o1 | $@ | ExternalFlow.cs:419:23:419:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:424:18:424:19 | access to local variable o2 | ExternalFlow.cs:419:23:419:34 | object creation of type Object : Object | ExternalFlow.cs:424:18:424:19 | access to local variable o2 | $@ | ExternalFlow.cs:419:23:419:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:432:18:432:19 | access to local variable o1 | ExternalFlow.cs:429:23:429:34 | object creation of type Object : Object | ExternalFlow.cs:432:18:432:19 | access to local variable o1 | $@ | ExternalFlow.cs:429:23:429:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:440:18:440:19 | access to local variable o1 | ExternalFlow.cs:437:23:437:34 | object creation of type Object : Object | ExternalFlow.cs:440:18:440:19 | access to local variable o1 | $@ | ExternalFlow.cs:437:23:437:34 | object creation of type Object : Object | object creation of type Object : Object | diff --git a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.ext.yml b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.ext.yml index a582a581cf12..21e66b840669 100644 --- a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.ext.yml +++ b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.ext.yml @@ -45,6 +45,14 @@ extensions: - ["My.Qltest", "K", false, "GetMyFieldOnSyntheticField", "()", "", "Argument[this].SyntheticField[My.Qltest.K.MySyntheticField2].Field[My.Qltest.K.MyField]", "ReturnValue", "value", "manual"] - ["My.Qltest", "Library", false, "SetValue", "(System.Object)", "", "Argument[0]", "Argument[this].SyntheticField[X]", "value", "dfc-generated"] - ["My.Qltest", "Library", false, "GetValue", "()", "", "Argument[this].SyntheticField[X]", "ReturnValue", "value", "dfc-generated"] + - ["My.Qltest", "TestExtensions+extension(System.Object)", false, "Method1", "(System.Object)", "", "Argument[0]", "ReturnValue", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(System.Object)", false, "StaticMethod1", "(System.Object)", "", "Argument[0]", "ReturnValue", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(System.Object)", false, "get_Property1", "(System.Object)", "", "Argument[0].SyntheticField[TestExtensions.Property1]", "ReturnValue", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(System.Object)", false, "set_Property1", "(System.Object,System.Object)", "", "Argument[1]", "Argument[0].SyntheticField[TestExtensions.Property1]", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(T)", false, "GenericMethod1", "(T)", "", "Argument[0]", "ReturnValue", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(T)", false, "GenericStaticMethod1", "(T)", "", "Argument[0]", "ReturnValue", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(T)", false, "get_GenericProperty1", "(T)", "", "Argument[0].SyntheticField[TestExtensions.GenericProperty1]", "ReturnValue", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(T)", false, "set_GenericProperty1", "(T,T)", "", "Argument[1]", "Argument[0].SyntheticField[TestExtensions.GenericProperty1]", "value", "manual"] - addsTo: pack: codeql/csharp-all diff --git a/csharp/ql/test/library-tests/dataflow/library/FlowSummaries.expected b/csharp/ql/test/library-tests/dataflow/library/FlowSummaries.expected index be6a2302cc35..b7ae291bf0fb 100644 --- a/csharp/ql/test/library-tests/dataflow/library/FlowSummaries.expected +++ b/csharp/ql/test/library-tests/dataflow/library/FlowSummaries.expected @@ -18591,6 +18591,10 @@ summary | System.Web;HttpUtility;JavaScriptStringEncode;(System.String,System.Boolean);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;ParseQueryString;(System.String);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;ParseQueryString;(System.String,System.Text.Encoding);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.Byte[],System.Int32,System.Int32,System.Text.Encoding);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.Byte[],System.Text.Encoding);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.String);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.String,System.Text.Encoding);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;UrlEncode;(System.Byte[]);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;UrlEncode;(System.Byte[],System.Int32,System.Int32);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;UrlEncode;(System.String);Argument[0];ReturnValue;taint;manual | diff --git a/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.expected b/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.expected index c88c901bd75b..8aff8d0e1788 100644 --- a/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.expected +++ b/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.expected @@ -14340,6 +14340,10 @@ | System.Web;HttpUtility;JavaScriptStringEncode;(System.String,System.Boolean);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;ParseQueryString;(System.String);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;ParseQueryString;(System.String,System.Text.Encoding);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.Byte[],System.Int32,System.Int32,System.Text.Encoding);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.Byte[],System.Text.Encoding);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.String);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.String,System.Text.Encoding);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;UrlEncode;(System.Byte[]);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;UrlEncode;(System.Byte[],System.Int32,System.Int32);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;UrlEncode;(System.String);Argument[0];ReturnValue;taint;manual | diff --git a/csharp/ql/test/library-tests/extension/PrintAst.expected b/csharp/ql/test/library-tests/extension/PrintAst.expected new file mode 100644 index 000000000000..5016665c08b2 --- /dev/null +++ b/csharp/ql/test/library-tests/extension/PrintAst.expected @@ -0,0 +1,481 @@ +extensionTypes.cs: +# 4| [Class] MyExtensionTypes +# 6| 4: [ExtensionType] extension(String) +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +#-----| 0: (Attributes) +# 6| 1: [DefaultAttribute] [NotNull(...)] +# 6| 0: [TypeMention] NotNullAttribute +# 8| 4: [ExtensionMethod] M11 +# 8| -1: [TypeMention] Void +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 8| 4: [BlockStmt] {...} +# 10| 5: [ExtensionType] extension(Int32) +#-----| 2: (Parameters) +# 10| 0: [Parameter] i1 +# 10| -1: [TypeMention] int +# 12| 4: [ExtensionMethod] M21 +# 12| -1: [TypeMention] Void +#-----| 2: (Parameters) +# 10| 0: [Parameter] i1 +# 10| -1: [TypeMention] int +# 12| 4: [BlockStmt] {...} +# 14| 6: [ExtensionType] extension(Int32) +#-----| 2: (Parameters) +# 14| 0: [Parameter] i2 +# 14| -1: [TypeMention] int +# 16| 4: [ExtensionMethod] M31 +# 16| -1: [TypeMention] Void +#-----| 2: (Parameters) +# 14| 0: [Parameter] i2 +# 14| -1: [TypeMention] int +# 16| 4: [BlockStmt] {...} +# 18| 7: [ExtensionType] extension(Int32) +#-----| 2: (Parameters) +# 18| 0: [Parameter] i3 +# 18| -1: [TypeMention] int +# 20| 4: [ExtensionMethod] M41 +# 20| -1: [TypeMention] Void +#-----| 2: (Parameters) +# 18| 0: [Parameter] i3 +# 18| -1: [TypeMention] int +# 20| 4: [BlockStmt] {...} +# 22| 8: [ExtensionType] extension(String) +#-----| 2: (Parameters) +# 22| 0: [Parameter] s +# 22| -1: [TypeMention] string +# 24| 4: [ExtensionMethod] M51 +# 24| -1: [TypeMention] Void +#-----| 2: (Parameters) +# 22| 0: [Parameter] s +# 22| -1: [TypeMention] string +# 24| 4: [BlockStmt] {...} +# 26| 9: [ExtensionType] extension(T1)`1 +#-----| 1: (Type parameters) +# 26| 0: [TypeParameter] T1 +#-----| 2: (Parameters) +# 26| 0: [Parameter] t1 +# 26| -1: [TypeMention] T1 +#-----| 0: (Attributes) +# 26| 1: [DefaultAttribute] [NotNullWhen(...)] +# 26| -1: [TypeMention] NotNullWhenAttribute +# 26| 0: [BoolLiteral] true +# 28| 4: [ExtensionMethod] M61`1 +# 28| -1: [TypeMention] Void +#-----| 1: (Type parameters) +# 28| 0: [TypeParameter] T2 +#-----| 2: (Parameters) +# 26| 0: [Parameter] t1 +# 26| -1: [TypeMention] T1 +# 28| 1: [Parameter] o +# 28| -1: [TypeMention] object +# 28| 2: [Parameter] t2 +# 28| -1: [TypeMention] T2 +# 28| 4: [BlockStmt] {...} +extensions.cs: +# 4| [Class] MyExtensions +# 6| 4: [ExtensionType] extension(String) +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 8| 4: [Property] Prop1 +# 8| -1: [TypeMention] bool +# 8| 3: [ExtensionCallable,Getter] get_Prop1 +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 8| 4: [GTExpr] ... > ... +# 8| 0: [PropertyCall] access to property Length +# 8| -1: [SyntheticExtensionParameterAccess] access to extension synthetic parameter s +# 8| 1: [IntLiteral] 0 +# 9| 5: [Property] Prop2 +# 9| -1: [TypeMention] bool +# 9| 3: [ExtensionCallable,Getter] get_Prop2 +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 9| 4: [BlockStmt] {...} +# 9| 0: [ReturnStmt] return ...; +# 9| 0: [BoolLiteral] true +# 9| 4: [ExtensionCallable,Setter] set_Prop2 +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 9| 1: [Parameter] value +# 9| 4: [BlockStmt] {...} +# 10| 6: [Property] StaticProp1 +# 10| -1: [TypeMention] bool +# 10| 3: [ExtensionCallable,Getter] get_StaticProp1 +# 10| 4: [BlockStmt] {...} +# 10| 0: [ReturnStmt] return ...; +# 10| 0: [BoolLiteral] false +# 11| 7: [ExtensionMethod] M1 +# 11| -1: [TypeMention] bool +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 11| 4: [IsExpr] ... is ... +# 11| 0: [SyntheticExtensionParameterAccess] access to extension synthetic parameter s +# 11| 1: [NotPatternExpr] not ... +# 11| 0: [ConstantPatternExpr,NullLiteral] null +# 12| 8: [ExtensionMethod] M2 +# 12| -1: [TypeMention] string +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 12| 1: [Parameter] other +# 12| -1: [TypeMention] string +# 12| 4: [BlockStmt] {...} +# 12| 0: [ReturnStmt] return ...; +# 12| 0: [AddExpr] ... + ... +# 12| 0: [SyntheticExtensionParameterAccess] access to extension synthetic parameter s +# 12| 1: [ParameterAccess] access to parameter other +# 13| 9: [ExtensionMethod] StaticM1 +# 13| -1: [TypeMention] int +# 13| 4: [BlockStmt] {...} +# 13| 0: [ReturnStmt] return ...; +# 13| 0: [IntLiteral] 0 +# 14| 10: [ExtensionMethod] StaticM2 +# 14| -1: [TypeMention] int +#-----| 2: (Parameters) +# 14| 0: [Parameter] x +# 14| -1: [TypeMention] string +# 14| 4: [BlockStmt] {...} +# 14| 0: [ReturnStmt] return ...; +# 14| 0: [PropertyCall] access to property Length +# 14| -1: [ParameterAccess] access to parameter x +# 15| 11: [ExtensionCallable,MulOperator] * +# 15| -1: [TypeMention] string +#-----| 2: (Parameters) +# 15| 0: [Parameter] a +# 15| -1: [TypeMention] int +# 15| 1: [Parameter] b +# 15| -1: [TypeMention] string +# 15| 4: [BlockStmt] {...} +# 15| 0: [ReturnStmt] return ...; +# 15| 0: [StringLiteralUtf16] "" +# 16| 14: [ExtensionMethod] StringGenericM1`1 +# 16| -1: [TypeMention] T +#-----| 1: (Type parameters) +# 16| 0: [TypeParameter] T +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 16| 1: [Parameter] t +# 16| -1: [TypeMention] T +# 16| 2: [Parameter] o +# 16| -1: [TypeMention] object +# 16| 4: [BlockStmt] {...} +# 16| 0: [ReturnStmt] return ...; +# 16| 0: [ParameterAccess] access to parameter t +# 19| 5: [ExtensionType] extension(Object) +# 21| 4: [ExtensionMethod] StaticObjectM1 +# 21| -1: [TypeMention] int +# 21| 4: [BlockStmt] {...} +# 21| 0: [ReturnStmt] return ...; +# 21| 0: [IntLiteral] 0 +# 22| 5: [ExtensionMethod] StaticObjectM2 +# 22| -1: [TypeMention] int +#-----| 2: (Parameters) +# 22| 0: [Parameter] s +# 22| -1: [TypeMention] string +# 22| 4: [BlockStmt] {...} +# 22| 0: [ReturnStmt] return ...; +# 22| 0: [PropertyCall] access to property Length +# 22| -1: [ParameterAccess] access to parameter s +# 23| 6: [Property] StaticProp +# 23| -1: [TypeMention] bool +# 23| 3: [ExtensionCallable,Getter] get_StaticProp +# 23| 4: [BoolLiteral] true +# 26| 8: [ExtensionType] extension(T)`1 +#-----| 1: (Type parameters) +# 26| 0: [TypeParameter] T +#-----| 2: (Parameters) +# 26| 0: [Parameter] t +# 26| -1: [TypeMention] T +# 28| 4: [Property] GenericProp1 +# 28| -1: [TypeMention] bool +# 28| 3: [ExtensionCallable,Getter] get_GenericProp1 +#-----| 2: (Parameters) +# 26| 0: [Parameter] t +# 26| -1: [TypeMention] T +# 28| 4: [IsExpr] ... is ... +# 28| 0: [SyntheticExtensionParameterAccess] access to extension synthetic parameter t +# 28| 1: [NotPatternExpr] not ... +# 28| 0: [ConstantPatternExpr,NullLiteral] null +# 29| 5: [Property] GenericProp2 +# 29| -1: [TypeMention] bool +# 29| 3: [ExtensionCallable,Getter] get_GenericProp2 +#-----| 2: (Parameters) +# 26| 0: [Parameter] t +# 26| -1: [TypeMention] T +# 29| 4: [BlockStmt] {...} +# 29| 0: [ReturnStmt] return ...; +# 29| 0: [BoolLiteral] true +# 29| 4: [ExtensionCallable,Setter] set_GenericProp2 +#-----| 2: (Parameters) +# 26| 0: [Parameter] t +# 26| -1: [TypeMention] T +# 29| 1: [Parameter] value +# 29| 4: [BlockStmt] {...} +# 30| 6: [ExtensionMethod] GenericM1 +# 30| -1: [TypeMention] bool +#-----| 2: (Parameters) +# 26| 0: [Parameter] t +# 26| -1: [TypeMention] T +# 30| 4: [IsExpr] ... is ... +# 30| 0: [SyntheticExtensionParameterAccess] access to extension synthetic parameter t +# 30| 1: [NotPatternExpr] not ... +# 30| 0: [ConstantPatternExpr,NullLiteral] null +# 31| 7: [ExtensionMethod] GenericM2`1 +# 31| -1: [TypeMention] Void +#-----| 1: (Type parameters) +# 31| 0: [TypeParameter] S +#-----| 2: (Parameters) +# 26| 0: [Parameter] t +# 26| -1: [TypeMention] T +# 31| 1: [Parameter] other +# 31| -1: [TypeMention] S +# 31| 4: [BlockStmt] {...} +# 32| 8: [ExtensionMethod] GenericStaticM1 +# 32| -1: [TypeMention] Void +#-----| 2: (Parameters) +# 26| 0: [Parameter] t +# 26| -1: [TypeMention] T +# 32| 4: [BlockStmt] {...} +# 33| 9: [ExtensionMethod] GenericStaticM2`1 +# 33| -1: [TypeMention] Void +#-----| 1: (Type parameters) +# 33| 0: [TypeParameter] S +#-----| 2: (Parameters) +# 33| 0: [Parameter] other +# 33| -1: [TypeMention] S +# 33| 4: [BlockStmt] {...} +# 34| 10: [AddOperator,ExtensionCallable] + +# 34| -1: [TypeMention] T +#-----| 2: (Parameters) +# 34| 0: [Parameter] a +# 34| -1: [TypeMention] T +# 34| 1: [Parameter] b +# 34| -1: [TypeMention] T +# 34| 4: [BlockStmt] {...} +# 34| 0: [ReturnStmt] return ...; +# 34| 0: [NullLiteral] null +# 38| [Class] ClassicExtensions +# 40| 4: [ExtensionMethod] M3 +# 40| -1: [TypeMention] bool +#-----| 2: (Parameters) +# 40| 0: [Parameter] s +# 40| -1: [TypeMention] string +# 40| 4: [IsExpr] ... is ... +# 40| 0: [ParameterAccess] access to parameter s +# 40| 1: [NotPatternExpr] not ... +# 40| 0: [ConstantPatternExpr,NullLiteral] null +# 43| [Class] C +# 45| 6: [Method] CallingExtensions +# 45| -1: [TypeMention] Void +# 46| 4: [BlockStmt] {...} +# 47| 0: [LocalVariableDeclStmt] ... ...; +# 47| 0: [LocalVariableDeclAndInitExpr] String s = ... +# 47| -1: [TypeMention] string +# 47| 0: [LocalVariableAccess] access to local variable s +# 47| 1: [StringLiteralUtf16] "Hello World." +# 50| 1: [LocalVariableDeclStmt] ... ...; +# 50| 0: [LocalVariableDeclAndInitExpr] Boolean x11 = ... +# 50| -1: [TypeMention] bool +# 50| 0: [LocalVariableAccess] access to local variable x11 +# 50| 1: [ExtensionPropertyCall] access to property Prop1 +# 50| -1: [LocalVariableAccess] access to local variable s +# 51| 2: [LocalVariableDeclStmt] ... ...; +# 51| 0: [LocalVariableDeclAndInitExpr] Boolean x12 = ... +# 51| -1: [TypeMention] bool +# 51| 0: [LocalVariableAccess] access to local variable x12 +# 51| 1: [ExtensionPropertyCall] access to property Prop2 +# 51| -1: [LocalVariableAccess] access to local variable s +# 52| 3: [ExprStmt] ...; +# 52| 0: [AssignExpr] ... = ... +# 52| 0: [ExtensionPropertyCall] access to property Prop2 +# 52| -1: [LocalVariableAccess] access to local variable s +# 52| 1: [BoolLiteral] true +# 53| 4: [LocalVariableDeclStmt] ... ...; +# 53| 0: [LocalVariableDeclAndInitExpr] Boolean x13 = ... +# 53| -1: [TypeMention] bool +# 53| 0: [LocalVariableAccess] access to local variable x13 +# 53| 1: [ExtensionPropertyCall] access to property StaticProp1 +# 53| -1: [TypeAccess] access to type String +# 53| 0: [TypeMention] string +# 54| 5: [LocalVariableDeclStmt] ... ...; +# 54| 0: [LocalVariableDeclAndInitExpr] Boolean x14 = ... +# 54| -1: [TypeMention] bool +# 54| 0: [LocalVariableAccess] access to local variable x14 +# 54| 1: [ExtensionPropertyCall] access to property StaticProp +# 54| -1: [TypeAccess] access to type Object +# 54| 0: [TypeMention] object +# 57| 6: [LocalVariableDeclStmt] ... ...; +# 57| 0: [LocalVariableDeclAndInitExpr] Boolean x21 = ... +# 57| -1: [TypeMention] bool +# 57| 0: [LocalVariableAccess] access to local variable x21 +# 57| 1: [MethodCall] call to method M1 +# 57| -1: [LocalVariableAccess] access to local variable s +# 58| 7: [LocalVariableDeclStmt] ... ...; +# 58| 0: [LocalVariableDeclAndInitExpr] String x22 = ... +# 58| -1: [TypeMention] string +# 58| 0: [LocalVariableAccess] access to local variable x22 +# 58| 1: [MethodCall] call to method M2 +# 58| -1: [LocalVariableAccess] access to local variable s +# 58| 0: [StringLiteralUtf16] "!!!" +# 59| 8: [LocalVariableDeclStmt] ... ...; +# 59| 0: [LocalVariableDeclAndInitExpr] Int32 x23 = ... +# 59| -1: [TypeMention] int +# 59| 0: [LocalVariableAccess] access to local variable x23 +# 59| 1: [MethodCall] call to method StaticM1 +# 59| -1: [TypeAccess] access to type String +# 59| 0: [TypeMention] string +# 60| 9: [LocalVariableDeclStmt] ... ...; +# 60| 0: [LocalVariableDeclAndInitExpr] Int32 x24 = ... +# 60| -1: [TypeMention] int +# 60| 0: [LocalVariableAccess] access to local variable x24 +# 60| 1: [MethodCall] call to method StaticM2 +# 60| -1: [TypeAccess] access to type String +# 60| 0: [TypeMention] string +# 60| 0: [LocalVariableAccess] access to local variable s +# 61| 10: [LocalVariableDeclStmt] ... ...; +# 61| 0: [LocalVariableDeclAndInitExpr] Int32 x25 = ... +# 61| -1: [TypeMention] int +# 61| 0: [LocalVariableAccess] access to local variable x25 +# 61| 1: [MethodCall] call to method StaticObjectM1 +# 61| -1: [TypeAccess] access to type Object +# 61| 0: [TypeMention] object +# 62| 11: [LocalVariableDeclStmt] ... ...; +# 62| 0: [LocalVariableDeclAndInitExpr] Int32 x26 = ... +# 62| -1: [TypeMention] int +# 62| 0: [LocalVariableAccess] access to local variable x26 +# 62| 1: [MethodCall] call to method StaticObjectM2 +# 62| -1: [TypeAccess] access to type Object +# 62| 0: [TypeMention] object +# 62| 0: [LocalVariableAccess] access to local variable s +# 65| 12: [LocalVariableDeclStmt] ... ...; +# 65| 0: [LocalVariableDeclAndInitExpr] String x30 = ... +# 65| -1: [TypeMention] string +# 65| 0: [LocalVariableAccess] access to local variable x30 +# 65| 1: [ExtensionOperatorCall] call to operator * +# 65| 0: [IntLiteral] 3 +# 65| 1: [LocalVariableAccess] access to local variable s +# 68| 13: [LocalVariableDeclStmt] ... ...; +# 68| 0: [LocalVariableDeclAndInitExpr] Boolean y = ... +# 68| -1: [TypeMention] bool +# 68| 0: [LocalVariableAccess] access to local variable y +# 68| 1: [MethodCall] call to method M3 +# 68| -1: [LocalVariableAccess] access to local variable s +# 71| 14: [ExprStmt] ...; +# 71| 0: [MethodCall] call to method M1 +# 71| -1: [TypeAccess] access to type MyExtensions +# 71| 0: [TypeMention] MyExtensions +# 71| 0: [LocalVariableAccess] access to local variable s +# 72| 15: [ExprStmt] ...; +# 72| 0: [MethodCall] call to method M2 +# 72| -1: [TypeAccess] access to type MyExtensions +# 72| 0: [TypeMention] MyExtensions +# 72| 0: [LocalVariableAccess] access to local variable s +# 72| 1: [StringLiteralUtf16] "!!!" +# 73| 16: [ExprStmt] ...; +# 73| 0: [MethodCall] call to method StaticM1 +# 73| -1: [TypeAccess] access to type MyExtensions +# 73| 0: [TypeMention] MyExtensions +# 74| 17: [ExprStmt] ...; +# 74| 0: [MethodCall] call to method StaticM2 +# 74| -1: [TypeAccess] access to type MyExtensions +# 74| 0: [TypeMention] MyExtensions +# 74| 0: [LocalVariableAccess] access to local variable s +# 75| 18: [ExprStmt] ...; +# 75| 0: [MethodCall] call to method StaticObjectM1 +# 75| -1: [TypeAccess] access to type MyExtensions +# 75| 0: [TypeMention] MyExtensions +# 76| 19: [ExprStmt] ...; +# 76| 0: [MethodCall] call to method StaticObjectM2 +# 76| -1: [TypeAccess] access to type MyExtensions +# 76| 0: [TypeMention] MyExtensions +# 76| 0: [LocalVariableAccess] access to local variable s +# 79| 20: [ExprStmt] ...; +# 79| 0: [ExtensionOperatorCall] call to operator * +# 79| -1: [TypeAccess] access to type MyExtensions +# 79| 0: [TypeMention] MyExtensions +# 79| 0: [IntLiteral] 3 +# 79| 1: [LocalVariableAccess] access to local variable s +# 82| 21: [ExprStmt] ...; +# 82| 0: [MethodCall] call to extension accessor get_Prop1 +# 82| -1: [TypeAccess] access to type MyExtensions +# 82| 0: [TypeMention] MyExtensions +# 82| 0: [LocalVariableAccess] access to local variable s +# 83| 22: [ExprStmt] ...; +# 83| 0: [MethodCall] call to extension accessor get_Prop2 +# 83| -1: [TypeAccess] access to type MyExtensions +# 83| 0: [TypeMention] MyExtensions +# 83| 0: [LocalVariableAccess] access to local variable s +# 84| 23: [ExprStmt] ...; +# 84| 0: [MethodCall] call to extension accessor set_Prop2 +# 84| -1: [TypeAccess] access to type MyExtensions +# 84| 0: [TypeMention] MyExtensions +# 84| 0: [LocalVariableAccess] access to local variable s +# 84| 1: [BoolLiteral] false +# 85| 24: [ExprStmt] ...; +# 85| 0: [MethodCall] call to extension accessor get_StaticProp +# 85| -1: [TypeAccess] access to type MyExtensions +# 85| 0: [TypeMention] MyExtensions +# 88| 7: [Method] CallingGenericExtensions +# 88| -1: [TypeMention] Void +# 89| 4: [BlockStmt] {...} +# 90| 0: [LocalVariableDeclStmt] ... ...; +# 90| 0: [LocalVariableDeclAndInitExpr] String s = ... +# 90| -1: [TypeMention] string +# 90| 0: [LocalVariableAccess] access to local variable s +# 90| 1: [StringLiteralUtf16] "Hello Generic World." +# 91| 1: [LocalVariableDeclStmt] ... ...; +# 91| 0: [LocalVariableDeclAndInitExpr] Object o = ... +# 91| -1: [TypeMention] object +# 91| 0: [LocalVariableAccess] access to local variable o +# 91| 1: [ObjectCreation] object creation of type Object +# 91| 0: [TypeMention] object +# 94| 2: [ExprStmt] ...; +# 94| 0: [MethodCall] call to method GenericM1 +# 94| -1: [LocalVariableAccess] access to local variable o +# 95| 3: [ExprStmt] ...; +# 95| 0: [MethodCall] call to method GenericM1 +# 95| -1: [LocalVariableAccess] access to local variable s +# 98| 4: [ExprStmt] ...; +# 98| 0: [MethodCall] call to method GenericM1 +# 98| -1: [TypeAccess] access to type MyExtensions +# 98| 0: [TypeMention] MyExtensions +# 98| 0: [LocalVariableAccess] access to local variable o +# 99| 5: [ExprStmt] ...; +# 99| 0: [MethodCall] call to method GenericM1 +# 99| -1: [TypeAccess] access to type MyExtensions +# 99| 0: [TypeMention] MyExtensions +# 99| 0: [LocalVariableAccess] access to local variable s +# 101| 6: [ExprStmt] ...; +# 101| 0: [MethodCall] call to method GenericM2 +# 101| -1: [LocalVariableAccess] access to local variable o +# 101| 0: [IntLiteral] 42 +# 102| 7: [ExprStmt] ...; +# 102| 0: [MethodCall] call to method GenericM2 +# 102| -1: [TypeAccess] access to type MyExtensions +# 102| 0: [TypeMention] MyExtensions +# 102| 0: [LocalVariableAccess] access to local variable o +# 102| 1: [IntLiteral] 42 +# 104| 8: [ExprStmt] ...; +# 104| 0: [MethodCall] call to method StringGenericM1 +# 104| -1: [LocalVariableAccess] access to local variable s +# 104| 0: [IntLiteral] 7 +# 104| 1: [ObjectCreation] object creation of type Object +# 104| 0: [TypeMention] object +# 105| 9: [ExprStmt] ...; +# 105| 0: [MethodCall] call to method StringGenericM1 +# 105| -1: [TypeAccess] access to type MyExtensions +# 105| 0: [TypeMention] MyExtensions +# 105| 0: [LocalVariableAccess] access to local variable s +# 105| 1: [StringLiteralUtf16] "test" +# 105| 2: [ObjectCreation] object creation of type Object +# 105| 0: [TypeMention] object diff --git a/csharp/ql/test/library-tests/extension/PrintAst.qlref b/csharp/ql/test/library-tests/extension/PrintAst.qlref new file mode 100644 index 000000000000..f867dd01f9f8 --- /dev/null +++ b/csharp/ql/test/library-tests/extension/PrintAst.qlref @@ -0,0 +1 @@ +shared/PrintAst.ql \ No newline at end of file diff --git a/csharp/ql/test/library-tests/extension/extensionTypes.cs b/csharp/ql/test/library-tests/extension/extensionTypes.cs new file mode 100644 index 000000000000..06047af375af --- /dev/null +++ b/csharp/ql/test/library-tests/extension/extensionTypes.cs @@ -0,0 +1,30 @@ +using System; +using System.Diagnostics.CodeAnalysis; + +public static class MyExtensionTypes +{ + extension([NotNull] string s) + { + public void M11() { } + } + extension(ref readonly int i1) + { + public void M21() { } + } + extension(in int i2) + { + public void M31() { } + } + extension(ref int i3) + { + public void M41() { } + } + extension(string? s) + { + public void M51() { } + } + extension([NotNullWhen(true)] T1 t1) where T1 : class + { + public void M61(object o, T2 t2) { } + } +} diff --git a/csharp/ql/test/library-tests/extension/extensionTypes.expected b/csharp/ql/test/library-tests/extension/extensionTypes.expected new file mode 100644 index 000000000000..b27ff095a4be --- /dev/null +++ b/csharp/ql/test/library-tests/extension/extensionTypes.expected @@ -0,0 +1,37 @@ +extensionTypeReceiverParameter +| extensionTypes.cs:6:5:9:5 | extension(String) | extensionTypes.cs:6:32:6:32 | s | +| extensionTypes.cs:10:5:13:5 | extension(Int32) | extensionTypes.cs:10:32:10:33 | i1 | +| extensionTypes.cs:14:5:17:5 | extension(Int32) | extensionTypes.cs:14:22:14:23 | i2 | +| extensionTypes.cs:18:5:21:5 | extension(Int32) | extensionTypes.cs:18:23:18:24 | i3 | +| extensionTypes.cs:22:5:25:5 | extension(String) | extensionTypes.cs:22:23:22:23 | s | +| extensionTypes.cs:26:5:29:5 | extension(T1)`1 | extensionTypes.cs:26:42:26:43 | t1 | +| extensions.cs:6:5:17:5 | extension(String) | extensions.cs:6:22:6:22 | s | +| extensions.cs:26:5:35:5 | extension(Object) | extensions.cs:26:20:26:20 | t | +| extensions.cs:26:5:35:5 | extension(String) | extensions.cs:26:20:26:20 | t | +| extensions.cs:26:5:35:5 | extension(T)`1 | extensions.cs:26:20:26:20 | t | +extensionTypeExtendedType +| extensionTypes.cs:6:5:9:5 | extension(String) | string | +| extensionTypes.cs:10:5:13:5 | extension(Int32) | int | +| extensionTypes.cs:14:5:17:5 | extension(Int32) | int | +| extensionTypes.cs:18:5:21:5 | extension(Int32) | int | +| extensionTypes.cs:22:5:25:5 | extension(String) | string | +| extensionTypes.cs:26:5:29:5 | extension(T1)`1 | T1 | +| extensions.cs:6:5:17:5 | extension(String) | string | +| extensions.cs:19:5:24:5 | extension(Object) | object | +| extensions.cs:26:5:35:5 | extension(Object) | object | +| extensions.cs:26:5:35:5 | extension(String) | string | +| extensions.cs:26:5:35:5 | extension(T)`1 | T | +extensionTypeReceiverParameterAttribute +| extensionTypes.cs:6:5:9:5 | extension(String) | extensionTypes.cs:6:32:6:32 | s | extensionTypes.cs:6:16:6:22 | [NotNull(...)] | +| extensionTypes.cs:26:5:29:5 | extension(T1)`1 | extensionTypes.cs:26:42:26:43 | t1 | extensionTypes.cs:26:20:26:30 | [NotNullWhen(...)] | +extensionTypeReceiverParameterModifier +| extensionTypes.cs:10:5:13:5 | extension(Int32) | extensionTypes.cs:10:32:10:33 | i1 | ref readonly | +| extensionTypes.cs:14:5:17:5 | extension(Int32) | extensionTypes.cs:14:22:14:23 | i2 | in | +| extensionTypes.cs:18:5:21:5 | extension(Int32) | extensionTypes.cs:18:23:18:24 | i3 | ref | +extensionTypeParameterConstraints +| extensionTypes.cs:26:5:29:5 | extension(T1)`1 | extensionTypes.cs:26:15:26:16 | T1 | file://:0:0:0:0 | where T1: ... | +| extensions.cs:26:5:35:5 | extension(T)`1 | extensions.cs:26:15:26:15 | T | file://:0:0:0:0 | where T: ... | +syntheticParameterModifier +| extensionTypes.cs:10:5:13:5 | extension(Int32) | extensionTypes.cs:12:21:12:23 | M21 | extensionTypes.cs:10:32:10:33 | i1 | ref readonly | +| extensionTypes.cs:14:5:17:5 | extension(Int32) | extensionTypes.cs:16:21:16:23 | M31 | extensionTypes.cs:14:22:14:23 | i2 | in | +| extensionTypes.cs:18:5:21:5 | extension(Int32) | extensionTypes.cs:20:21:20:23 | M41 | extensionTypes.cs:18:23:18:24 | i3 | ref | diff --git a/csharp/ql/test/library-tests/extension/extensionTypes.ql b/csharp/ql/test/library-tests/extension/extensionTypes.ql new file mode 100644 index 000000000000..f4d3fe5bbd53 --- /dev/null +++ b/csharp/ql/test/library-tests/extension/extensionTypes.ql @@ -0,0 +1,56 @@ +import csharp + +private predicate inTestFile(ExtensionType et) { + et.getFile().getBaseName() = ["extensions.cs", "extensionTypes.cs"] +} + +private string getModifier(Parameter p) { + p.isIn() and result = "in" + or + p.isRef() and result = "ref" + or + p.isReadonlyRef() and result = "ref readonly" +} + +query predicate extensionTypeReceiverParameter(ExtensionType et, Parameter p) { + inTestFile(et) and + p = et.getReceiverParameter() +} + +query predicate extensionTypeExtendedType(ExtensionType et, string t) { + inTestFile(et) and + t = et.getExtendedType().toStringWithTypes() +} + +query predicate extensionTypeReceiverParameterAttribute(ExtensionType et, Parameter p, Attribute a) { + inTestFile(et) and + et.getReceiverParameter() = p and + p.getAnAttribute() = a +} + +query predicate extensionTypeReceiverParameterModifier( + ExtensionType et, Parameter p, string modifier +) { + inTestFile(et) and + et.getReceiverParameter() = p and + modifier = getModifier(p) +} + +query predicate extensionTypeParameterConstraints( + UnboundGeneric ug, TypeParameter tp, TypeParameterConstraints c +) { + inTestFile(ug) and + ug instanceof ExtensionType and + tp = ug.getATypeParameter() and + tp.getConstraints() = c +} + +query predicate syntheticParameterModifier( + ExtensionType et, ExtensionMethod em, Parameter p, string modifier +) { + inTestFile(et) and + em.getDeclaringType() = et and + p = em.getParameter(0) and + not em.isStatic() and + modifier = getModifier(p) +} diff --git a/csharp/ql/test/library-tests/extension/extensions.cs b/csharp/ql/test/library-tests/extension/extensions.cs new file mode 100644 index 000000000000..1117a98f8a07 --- /dev/null +++ b/csharp/ql/test/library-tests/extension/extensions.cs @@ -0,0 +1,107 @@ +using System; +using System.Collections.Generic; + +public static class MyExtensions +{ + extension(string s) + { + public bool Prop1 => s.Length > 0; + public bool Prop2 { get { return true; } set { } } + public static bool StaticProp1 { get { return false; } } + public bool M1() => s is not null; + public string M2(string other) { return s + other; } + public static int StaticM1() { return 0; } + public static int StaticM2(string x) { return x.Length; } + public static string operator *(int a, string b) { return ""; } + public T StringGenericM1(T t, object o) { return t; } + } + + extension(object) + { + public static int StaticObjectM1() { return 0; } + public static int StaticObjectM2(string s) { return s.Length; } + public static bool StaticProp => true; + } + + extension(T t) where T : class + { + public bool GenericProp1 => t is not null; + public bool GenericProp2 { get { return true; } set { } } + public bool GenericM1() => t is not null; + public void GenericM2(S other) { } + public void GenericStaticM1() { } + public static void GenericStaticM2(S other) { } + public static T operator +(T a, T b) { return null; } + } +} + +public static class ClassicExtensions +{ + public static bool M3(this string s) => s is not null; +} + +public class C +{ + public static void CallingExtensions() + { + var s = "Hello World."; + + // Calling the extensions properties + var x11 = s.Prop1; + var x12 = s.Prop2; + s.Prop2 = true; + var x13 = string.StaticProp1; + var x14 = object.StaticProp; + + // Calling the extensions methods. + var x21 = s.M1(); + var x22 = s.M2("!!!"); + var x23 = string.StaticM1(); + var x24 = string.StaticM2(s); + var x25 = object.StaticObjectM1(); + var x26 = object.StaticObjectM2(s); + + // Calling the extension operator. + var x30 = 3 * s; + + // Calling the classic extension method. + var y = s.M3(); + + // Calling the compiler generated static extension methods. + MyExtensions.M1(s); + MyExtensions.M2(s, "!!!"); + MyExtensions.StaticM1(); + MyExtensions.StaticM2(s); + MyExtensions.StaticObjectM1(); + MyExtensions.StaticObjectM2(s); + + // Calling the compiler generated operator method. + MyExtensions.op_Multiply(3, s); + + // Calling the compiler generated methods used by the extension property accessors. + MyExtensions.get_Prop1(s); + MyExtensions.get_Prop2(s); + MyExtensions.set_Prop2(s, false); + MyExtensions.get_StaticProp(); + } + + public static void CallingGenericExtensions() + { + var s = "Hello Generic World."; + var o = new object(); + + // Calling generic extension method + o.GenericM1(); + s.GenericM1(); + + // Calling the compiler generated static extension methods. + MyExtensions.GenericM1(o); + MyExtensions.GenericM1(s); + + o.GenericM2(42); + MyExtensions.GenericM2(o, 42); + + s.StringGenericM1(7, new object()); + MyExtensions.StringGenericM1(s, "test", new object()); + } +} diff --git a/csharp/ql/test/library-tests/extension/extensions.expected b/csharp/ql/test/library-tests/extension/extensions.expected new file mode 100644 index 000000000000..45b557a96352 --- /dev/null +++ b/csharp/ql/test/library-tests/extension/extensions.expected @@ -0,0 +1,111 @@ +extensionMethodCallArgument +| extensions.cs:57:19:57:24 | call to method M1 | extensions.cs:11:21:11:22 | M1 | extensions.cs:6:22:6:22 | s | 0 | extensions.cs:57:19:57:19 | access to local variable s | +| extensions.cs:58:19:58:29 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:6:22:6:22 | s | 0 | extensions.cs:58:19:58:19 | access to local variable s | +| extensions.cs:58:19:58:29 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:12:33:12:37 | other | 1 | extensions.cs:58:24:58:28 | "!!!" | +| extensions.cs:60:19:60:36 | call to method StaticM2 | extensions.cs:14:27:14:34 | StaticM2 | extensions.cs:14:43:14:43 | x | 0 | extensions.cs:60:35:60:35 | access to local variable s | +| extensions.cs:62:19:62:42 | call to method StaticObjectM2 | extensions.cs:22:27:22:40 | StaticObjectM2 | extensions.cs:22:49:22:49 | s | 0 | extensions.cs:62:41:62:41 | access to local variable s | +| extensions.cs:68:17:68:22 | call to method M3 | extensions.cs:40:24:40:25 | M3 | extensions.cs:40:39:40:39 | s | 0 | extensions.cs:68:17:68:17 | access to local variable s | +| extensions.cs:71:9:71:26 | call to method M1 | extensions.cs:11:21:11:22 | M1 | extensions.cs:6:22:6:22 | s | 0 | extensions.cs:71:25:71:25 | access to local variable s | +| extensions.cs:72:9:72:33 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:6:22:6:22 | s | 0 | extensions.cs:72:25:72:25 | access to local variable s | +| extensions.cs:72:9:72:33 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:12:33:12:37 | other | 1 | extensions.cs:72:28:72:32 | "!!!" | +| extensions.cs:74:9:74:32 | call to method StaticM2 | extensions.cs:14:27:14:34 | StaticM2 | extensions.cs:14:43:14:43 | x | 0 | extensions.cs:74:31:74:31 | access to local variable s | +| extensions.cs:76:9:76:38 | call to method StaticObjectM2 | extensions.cs:22:27:22:40 | StaticObjectM2 | extensions.cs:22:49:22:49 | s | 0 | extensions.cs:76:37:76:37 | access to local variable s | +| extensions.cs:94:9:94:21 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:20:26:20 | t | 0 | extensions.cs:94:9:94:9 | access to local variable o | +| extensions.cs:95:9:95:21 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:20:26:20 | t | 0 | extensions.cs:95:9:95:9 | access to local variable s | +| extensions.cs:98:9:98:33 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:20:26:20 | t | 0 | extensions.cs:98:32:98:32 | access to local variable o | +| extensions.cs:99:9:99:33 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:20:26:20 | t | 0 | extensions.cs:99:32:99:32 | access to local variable s | +| extensions.cs:101:9:101:23 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:26:20:26:20 | t | 0 | extensions.cs:101:9:101:9 | access to local variable o | +| extensions.cs:101:9:101:23 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:31:36:31:40 | other | 1 | extensions.cs:101:21:101:22 | 42 | +| extensions.cs:102:9:102:37 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:26:20:26:20 | t | 0 | extensions.cs:102:32:102:32 | access to local variable o | +| extensions.cs:102:9:102:37 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:31:36:31:40 | other | 1 | extensions.cs:102:35:102:36 | 42 | +| extensions.cs:104:9:104:47 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:22:6:22 | s | 0 | extensions.cs:104:9:104:9 | access to local variable s | +| extensions.cs:104:9:104:47 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:39:16:39 | t | 1 | extensions.cs:104:32:104:32 | 7 | +| extensions.cs:104:9:104:47 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:49:16:49 | o | 2 | extensions.cs:104:35:104:46 | object creation of type Object | +| extensions.cs:105:9:105:69 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:22:6:22 | s | 0 | extensions.cs:105:46:105:46 | access to local variable s | +| extensions.cs:105:9:105:69 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:39:16:39 | t | 1 | extensions.cs:105:49:105:54 | "test" | +| extensions.cs:105:9:105:69 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:49:16:49 | o | 2 | extensions.cs:105:57:105:68 | object creation of type Object | +extensionMethodCalls +| extensions.cs:57:19:57:24 | call to method M1 | extensions.cs:11:21:11:22 | M1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).M1 | +| extensions.cs:58:19:58:29 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).M2 | +| extensions.cs:59:19:59:35 | call to method StaticM1 | extensions.cs:13:27:13:34 | StaticM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).StaticM1 | +| extensions.cs:60:19:60:36 | call to method StaticM2 | extensions.cs:14:27:14:34 | StaticM2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).StaticM2 | +| extensions.cs:61:19:61:41 | call to method StaticObjectM1 | extensions.cs:21:27:21:40 | StaticObjectM1 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(System.Object).StaticObjectM1 | +| extensions.cs:62:19:62:42 | call to method StaticObjectM2 | extensions.cs:22:27:22:40 | StaticObjectM2 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(System.Object).StaticObjectM2 | +| extensions.cs:68:17:68:22 | call to method M3 | extensions.cs:40:24:40:25 | M3 | extensions.cs:38:21:38:37 | ClassicExtensions | ClassicExtensions.M3 | +| extensions.cs:71:9:71:26 | call to method M1 | extensions.cs:11:21:11:22 | M1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).M1 | +| extensions.cs:72:9:72:33 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).M2 | +| extensions.cs:73:9:73:31 | call to method StaticM1 | extensions.cs:13:27:13:34 | StaticM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).StaticM1 | +| extensions.cs:74:9:74:32 | call to method StaticM2 | extensions.cs:14:27:14:34 | StaticM2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).StaticM2 | +| extensions.cs:75:9:75:37 | call to method StaticObjectM1 | extensions.cs:21:27:21:40 | StaticObjectM1 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(System.Object).StaticObjectM1 | +| extensions.cs:76:9:76:38 | call to method StaticObjectM2 | extensions.cs:22:27:22:40 | StaticObjectM2 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(System.Object).StaticObjectM2 | +| extensions.cs:94:9:94:21 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(System.Object).GenericM1 | +| extensions.cs:95:9:95:21 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(String) | MyExtensions+extension(System.String).GenericM1 | +| extensions.cs:98:9:98:33 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(System.Object).GenericM1 | +| extensions.cs:99:9:99:33 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(String) | MyExtensions+extension(System.String).GenericM1 | +| extensions.cs:101:9:101:23 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(System.Object).GenericM2 | +| extensions.cs:102:9:102:37 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(System.Object).GenericM2 | +| extensions.cs:104:9:104:47 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).StringGenericM1 | +| extensions.cs:105:9:105:69 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).StringGenericM1 | +extensionParameter +| extensions.cs:11:21:11:22 | M1 | extensions.cs:6:22:6:22 | s | 0 | string | extensions.cs:6:22:6:22 | s | +| extensions.cs:12:23:12:24 | M2 | extensions.cs:6:22:6:22 | s | 0 | string | extensions.cs:6:22:6:22 | s | +| extensions.cs:12:23:12:24 | M2 | extensions.cs:12:33:12:37 | other | 1 | string | extensions.cs:12:33:12:37 | other | +| extensions.cs:14:27:14:34 | StaticM2 | extensions.cs:14:43:14:43 | x | 0 | string | extensions.cs:14:43:14:43 | x | +| extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:22:6:22 | s | 0 | string | extensions.cs:6:22:6:22 | s | +| extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:39:16:39 | t | 1 | int | extensions.cs:16:39:16:39 | t | +| extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:49:16:49 | o | 2 | object | extensions.cs:16:49:16:49 | o | +| extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:22:6:22 | s | 0 | string | extensions.cs:6:22:6:22 | s | +| extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:39:16:39 | t | 1 | string | extensions.cs:16:39:16:39 | t | +| extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:49:16:49 | o | 2 | object | extensions.cs:16:49:16:49 | o | +| extensions.cs:16:18:16:35 | StringGenericM1`1 | extensions.cs:6:22:6:22 | s | 0 | string | extensions.cs:6:22:6:22 | s | +| extensions.cs:16:18:16:35 | StringGenericM1`1 | extensions.cs:16:39:16:39 | t | 1 | T | extensions.cs:16:39:16:39 | t | +| extensions.cs:16:18:16:35 | StringGenericM1`1 | extensions.cs:16:49:16:49 | o | 2 | object | extensions.cs:16:49:16:49 | o | +| extensions.cs:22:27:22:40 | StaticObjectM2 | extensions.cs:22:49:22:49 | s | 0 | string | extensions.cs:22:49:22:49 | s | +| extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:20:26:20 | t | 0 | T | extensions.cs:26:20:26:20 | t | +| extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:20:26:20 | t | 0 | object | extensions.cs:26:20:26:20 | t | +| extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:20:26:20 | t | 0 | string | extensions.cs:26:20:26:20 | t | +| extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:26:20:26:20 | t | 0 | object | extensions.cs:26:20:26:20 | t | +| extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:31:36:31:40 | other | 1 | int | extensions.cs:31:36:31:40 | other | +| extensions.cs:31:21:31:32 | GenericM2`1 | extensions.cs:26:20:26:20 | t | 0 | T | extensions.cs:26:20:26:20 | t | +| extensions.cs:31:21:31:32 | GenericM2`1 | extensions.cs:26:20:26:20 | t | 0 | object | extensions.cs:26:20:26:20 | t | +| extensions.cs:31:21:31:32 | GenericM2`1 | extensions.cs:26:20:26:20 | t | 0 | string | extensions.cs:26:20:26:20 | t | +| extensions.cs:31:21:31:32 | GenericM2`1 | extensions.cs:31:36:31:40 | other | 1 | S | extensions.cs:31:36:31:40 | other | +| extensions.cs:31:21:31:32 | GenericM2`1 | extensions.cs:31:36:31:40 | other | 1 | S | extensions.cs:31:36:31:40 | other | +| extensions.cs:31:21:31:32 | GenericM2`1 | extensions.cs:31:36:31:40 | other | 1 | S | extensions.cs:31:36:31:40 | other | +| extensions.cs:32:21:32:35 | GenericStaticM1 | extensions.cs:26:20:26:20 | t | 0 | T | extensions.cs:26:20:26:20 | t | +| extensions.cs:32:21:32:35 | GenericStaticM1 | extensions.cs:26:20:26:20 | t | 0 | object | extensions.cs:26:20:26:20 | t | +| extensions.cs:32:21:32:35 | GenericStaticM1 | extensions.cs:26:20:26:20 | t | 0 | string | extensions.cs:26:20:26:20 | t | +| extensions.cs:33:28:33:45 | GenericStaticM2`1 | extensions.cs:33:49:33:53 | other | 0 | S | extensions.cs:33:49:33:53 | other | +| extensions.cs:33:28:33:45 | GenericStaticM2`1 | extensions.cs:33:49:33:53 | other | 0 | S | extensions.cs:33:49:33:53 | other | +| extensions.cs:33:28:33:45 | GenericStaticM2`1 | extensions.cs:33:49:33:53 | other | 0 | S | extensions.cs:33:49:33:53 | other | +| extensions.cs:40:24:40:25 | M3 | extensions.cs:40:39:40:39 | s | 0 | string | extensions.cs:40:39:40:39 | s | +extensionOperatorCallArgument +| extensions.cs:15:39:15:39 | * | extensions.cs:65:19:65:23 | call to operator * | extensions.cs:15:45:15:45 | a | 0 | extensions.cs:65:19:65:19 | 3 | +| extensions.cs:15:39:15:39 | * | extensions.cs:65:19:65:23 | call to operator * | extensions.cs:15:55:15:55 | b | 1 | extensions.cs:65:23:65:23 | access to local variable s | +| extensions.cs:15:39:15:39 | * | extensions.cs:79:9:79:38 | call to operator * | extensions.cs:15:45:15:45 | a | 0 | extensions.cs:79:34:79:34 | 3 | +| extensions.cs:15:39:15:39 | * | extensions.cs:79:9:79:38 | call to operator * | extensions.cs:15:55:15:55 | b | 1 | extensions.cs:79:37:79:37 | access to local variable s | +extensionOperatorCalls +| extensions.cs:65:19:65:23 | call to operator * | extensions.cs:15:39:15:39 | * | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).op_Multiply | +| extensions.cs:79:9:79:38 | call to operator * | extensions.cs:15:39:15:39 | * | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).op_Multiply | +extensionProperty +| extensions.cs:8:21:8:25 | Prop1 | extensions.cs:6:5:17:5 | extension(String) | +| extensions.cs:9:21:9:25 | Prop2 | extensions.cs:6:5:17:5 | extension(String) | +| extensions.cs:10:28:10:38 | StaticProp1 | extensions.cs:6:5:17:5 | extension(String) | +| extensions.cs:23:28:23:37 | StaticProp | extensions.cs:19:5:24:5 | extension(Object) | +| extensions.cs:28:21:28:32 | GenericProp1 | extensions.cs:26:5:35:5 | extension(Object) | +| extensions.cs:28:21:28:32 | GenericProp1 | extensions.cs:26:5:35:5 | extension(String) | +| extensions.cs:28:21:28:32 | GenericProp1 | extensions.cs:26:5:35:5 | extension(T)`1 | +| extensions.cs:29:21:29:32 | GenericProp2 | extensions.cs:26:5:35:5 | extension(Object) | +| extensions.cs:29:21:29:32 | GenericProp2 | extensions.cs:26:5:35:5 | extension(String) | +| extensions.cs:29:21:29:32 | GenericProp2 | extensions.cs:26:5:35:5 | extension(T)`1 | +extensionPropertyCall +| extensions.cs:50:19:50:25 | access to property Prop1 | extensions.cs:8:21:8:25 | Prop1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).Prop1 | +| extensions.cs:51:19:51:25 | access to property Prop2 | extensions.cs:9:21:9:25 | Prop2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).Prop2 | +| extensions.cs:52:9:52:15 | access to property Prop2 | extensions.cs:9:21:9:25 | Prop2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).Prop2 | +| extensions.cs:53:19:53:36 | access to property StaticProp1 | extensions.cs:10:28:10:38 | StaticProp1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).StaticProp1 | +| extensions.cs:54:19:54:35 | access to property StaticProp | extensions.cs:23:28:23:37 | StaticProp | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(System.Object).StaticProp | +extensionAccessorCall +| extensions.cs:82:9:82:33 | call to extension accessor get_Prop1 | extensions.cs:8:30:8:41 | get_Prop1 | extensions.cs:8:21:8:25 | Prop1 | MyExtensions+extension(System.String).get_Prop1 | +| extensions.cs:83:9:83:33 | call to extension accessor get_Prop2 | extensions.cs:9:29:9:31 | get_Prop2 | extensions.cs:9:21:9:25 | Prop2 | MyExtensions+extension(System.String).get_Prop2 | +| extensions.cs:84:9:84:40 | call to extension accessor set_Prop2 | extensions.cs:9:50:9:52 | set_Prop2 | extensions.cs:9:21:9:25 | Prop2 | MyExtensions+extension(System.String).set_Prop2 | +| extensions.cs:85:9:85:37 | call to extension accessor get_StaticProp | extensions.cs:23:42:23:45 | get_StaticProp | extensions.cs:23:28:23:37 | StaticProp | MyExtensions+extension(System.Object).get_StaticProp | diff --git a/csharp/ql/test/library-tests/extension/extensions.ql b/csharp/ql/test/library-tests/extension/extensions.ql new file mode 100644 index 000000000000..03830c5851d0 --- /dev/null +++ b/csharp/ql/test/library-tests/extension/extensions.ql @@ -0,0 +1,69 @@ +import csharp + +query predicate extensionMethodCallArgument( + ExtensionMethodCall emc, ExtensionMethod em, Parameter p, int i, Expr e +) { + em.getFile().getBaseName() = "extensions.cs" and + emc.getTarget() = em and + em.getParameter(i) = p and + emc.getArgument(i) = e +} + +query predicate extensionMethodCalls( + ExtensionMethodCall emc, ExtensionMethod em, Type t, string type +) { + em.getFile().getBaseName() = "extensions.cs" and + emc.getTarget() = em and + em.getDeclaringType() = t and + em.getFullyQualifiedNameDebug() = type +} + +query predicate extensionParameter( + ExtensionMethod em, Parameter p, int i, string type, Parameter unbound +) { + em.getFile().getBaseName() = "extensions.cs" and + p = em.getParameter(i) and + type = p.getType().toStringWithTypes() and + unbound = p.getUnboundDeclaration() +} + +query predicate extensionOperatorCallArgument( + ExtensionOperator op, ExtensionOperatorCall opc, Parameter p, int pos, Expr e +) { + opc.getTarget() = op and + op.getFile().getBaseName() = "extensions.cs" and + p = op.getParameter(pos) and + e = opc.getArgument(pos) +} + +query predicate extensionOperatorCalls( + ExtensionOperatorCall opc, ExtensionOperator op, Type t, string type +) { + op.getFile().getBaseName() = "extensions.cs" and + opc.getTarget() = op and + op.getDeclaringType() = t and + op.getFullyQualifiedNameDebug() = type +} + +query predicate extensionProperty(ExtensionProperty p, Type t) { + p.getFile().getBaseName() = "extensions.cs" and + p.getDeclaringType() = t +} + +query predicate extensionPropertyCall( + ExtensionPropertyCall pc, ExtensionProperty p, Type t, string type +) { + p.getFile().getBaseName() = "extensions.cs" and + pc.getProperty() = p and + p.getDeclaringType() = t and + p.getFullyQualifiedNameDebug() = type +} + +query predicate extensionAccessorCall( + MethodCall m, ExtensionAccessor a, ExtensionProperty p, string type +) { + p.getFile().getBaseName() = "extensions.cs" and + (a.(Getter).getDeclaration() = p or a.(Setter).getDeclaration() = p) and + m.getTargetAccessor() = a and + a.getFullyQualifiedNameDebug() = type +} diff --git a/csharp/ql/test/library-tests/extension/options b/csharp/ql/test/library-tests/extension/options new file mode 100644 index 000000000000..77b22963f5c8 --- /dev/null +++ b/csharp/ql/test/library-tests/extension/options @@ -0,0 +1,2 @@ +semmle-extractor-options: /nostdlib /noconfig +semmle-extractor-options: --load-sources-from-project:${testdir}/../../resources/stubs/_frameworks/Microsoft.NETCore.App/Microsoft.NETCore.App.csproj diff --git a/csharp/ql/test/library-tests/parameters/LambdaParameterModifiers.cs b/csharp/ql/test/library-tests/parameters/LambdaParameterModifiers.cs new file mode 100644 index 000000000000..fa5bd7c7ce9a --- /dev/null +++ b/csharp/ql/test/library-tests/parameters/LambdaParameterModifiers.cs @@ -0,0 +1,30 @@ +using System; +using System.Collections.Generic; + +public class LambdaParameterModifiers +{ + delegate void MyRef(ref int i1); + delegate void MyOut(out int i2); + delegate void MyIn(in int i3); + delegate void MyRefReadonly(ref readonly int i4); + + delegate void MyScopedRef(scoped ref int i5); + + public void M() + { + // Explicitly typed lambda parameters with modifiers. + var l1 = (ref int x1) => x1; + var l2 = (out int x2) => x2 = 0; + var l3 = (in int x3) => x3; + var l4 = (ref readonly int x4) => x4; + var l5 = (scoped ref int x5) => x5; + var l6 = (params IEnumerable x6) => x6; + + // Implicitly typed lambda parameters with modifiers. + MyRef l7 = (ref i1) => { }; + MyOut l8 = (out i2) => i2 = 0; + MyIn l9 = (in i3) => { }; + MyRefReadonly l10 = (ref readonly i4) => { }; + MyScopedRef l11 = (scoped ref i5) => { }; + } +} diff --git a/csharp/ql/test/library-tests/parameters/ParameterModifiers.expected b/csharp/ql/test/library-tests/parameters/ParameterModifiers.expected index c6b38eac9c8f..b8d1283d8d19 100644 --- a/csharp/ql/test/library-tests/parameters/ParameterModifiers.expected +++ b/csharp/ql/test/library-tests/parameters/ParameterModifiers.expected @@ -1,4 +1,15 @@ parameterModifier +| LambdaParameterModifiers.cs:16:27:16:28 | x1 | 1 | +| LambdaParameterModifiers.cs:17:27:17:28 | x2 | 2 | +| LambdaParameterModifiers.cs:18:26:18:27 | x3 | 5 | +| LambdaParameterModifiers.cs:19:36:19:37 | x4 | 6 | +| LambdaParameterModifiers.cs:20:34:20:35 | x5 | 1 | +| LambdaParameterModifiers.cs:21:43:21:44 | x6 | 3 | +| LambdaParameterModifiers.cs:24:25:24:26 | i1 | 1 | +| LambdaParameterModifiers.cs:25:25:25:26 | i2 | 2 | +| LambdaParameterModifiers.cs:26:23:26:24 | i3 | 5 | +| LambdaParameterModifiers.cs:27:43:27:44 | i4 | 6 | +| LambdaParameterModifiers.cs:28:39:28:40 | i5 | 1 | | ParameterModifiers.cs:6:27:6:28 | p1 | 0 | | ParameterModifiers.cs:7:30:7:31 | p2 | 5 | | ParameterModifiers.cs:9:31:9:32 | p3 | 2 | @@ -9,13 +20,24 @@ parameterModifier parameterIsValue | ParameterModifiers.cs:6:27:6:28 | p1 | parameterIsIn +| LambdaParameterModifiers.cs:18:26:18:27 | x3 | +| LambdaParameterModifiers.cs:26:23:26:24 | i3 | | ParameterModifiers.cs:7:30:7:31 | p2 | parameterIsOut +| LambdaParameterModifiers.cs:17:27:17:28 | x2 | +| LambdaParameterModifiers.cs:25:25:25:26 | i2 | | ParameterModifiers.cs:9:31:9:32 | p3 | parameterIsRef +| LambdaParameterModifiers.cs:16:27:16:28 | x1 | +| LambdaParameterModifiers.cs:20:34:20:35 | x5 | +| LambdaParameterModifiers.cs:24:25:24:26 | i1 | +| LambdaParameterModifiers.cs:28:39:28:40 | i5 | | ParameterModifiers.cs:14:31:14:32 | p4 | parameterIsParams +| LambdaParameterModifiers.cs:21:43:21:44 | x6 | | ParameterModifiers.cs:16:36:16:37 | p5 | | ParameterModifiers.cs:20:47:20:48 | p7 | parameterIsReadonlyRef +| LambdaParameterModifiers.cs:19:36:19:37 | x4 | +| LambdaParameterModifiers.cs:27:43:27:44 | i4 | | ParameterModifiers.cs:18:40:18:41 | p6 | diff --git a/csharp/ql/test/library-tests/parameters/ParameterModifiers.ql b/csharp/ql/test/library-tests/parameters/ParameterModifiers.ql index b83eb2021611..72425994faec 100644 --- a/csharp/ql/test/library-tests/parameters/ParameterModifiers.ql +++ b/csharp/ql/test/library-tests/parameters/ParameterModifiers.ql @@ -1,7 +1,12 @@ import csharp class TestParameter extends Parameter { - TestParameter() { this.getFile().getBaseName() = "ParameterModifiers.cs" } + TestParameter() { + this.getFile().getBaseName() = "ParameterModifiers.cs" + or + this.getFile().getBaseName() = "LambdaParameterModifiers.cs" and + this.getCallable() instanceof LambdaExpr + } } query predicate parameterModifier(TestParameter p, int kind) { params(p, _, _, _, kind, _, _) } diff --git a/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.cs b/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.cs index 84d904f900d3..e9e5202b40ab 100644 --- a/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.cs +++ b/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.cs @@ -29,3 +29,34 @@ public void UtilityMethod() { } } + +// GOOD: Base class has AutoValidateAntiforgeryToken attribute +[AutoValidateAntiforgeryToken] +public abstract class BaseController : Controller +{ +} + +public class DerivedController : BaseController +{ + // GOOD: Inherits antiforgery validation from base class + [HttpPost] + public ActionResult InheritedValidation() + { + return View(); + } +} + +// BAD: Base class without antiforgery attribute +public abstract class UnprotectedBaseController : Controller +{ +} + +public class DerivedUnprotectedController : UnprotectedBaseController +{ + // BAD: No antiforgery validation on this or any base class + [HttpPost] + public ActionResult NoInheritedValidation() + { + return View(); + } +} diff --git a/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.expected b/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.expected index 859fd4be9200..360b909cd0fa 100644 --- a/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.expected +++ b/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.expected @@ -1 +1,2 @@ | MissingAntiForgeryTokenValidation.cs:7:25:7:29 | Login | Method 'Login' handles a POST request without performing CSRF token validation. | +| MissingAntiForgeryTokenValidation.cs:58:25:58:45 | NoInheritedValidation | Method 'NoInheritedValidation' handles a POST request without performing CSRF token validation. | diff --git a/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.cs b/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.cs index 69024e57a2e9..a86800e51529 100644 --- a/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.cs +++ b/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.cs @@ -29,3 +29,34 @@ public void UtilityMethod() { } } + +// GOOD: Base class has ValidateAntiForgeryToken attribute +[ValidateAntiForgeryToken] +public abstract class BaseController : Controller +{ +} + +public class DerivedController : BaseController +{ + // GOOD: Inherits antiforgery validation from base class + [HttpPost] + public ActionResult InheritedValidation() + { + return View(); + } +} + +// BAD: Base class without antiforgery attribute +public abstract class UnprotectedBaseController : Controller +{ +} + +public class DerivedUnprotectedController : UnprotectedBaseController +{ + // BAD: No antiforgery validation on this or any base class + [HttpPost] + public ActionResult NoInheritedValidation() + { + return View(); + } +} diff --git a/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.expected b/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.expected index 859fd4be9200..360b909cd0fa 100644 --- a/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.expected +++ b/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.expected @@ -1 +1,2 @@ | MissingAntiForgeryTokenValidation.cs:7:25:7:29 | Login | Method 'Login' handles a POST request without performing CSRF token validation. | +| MissingAntiForgeryTokenValidation.cs:58:25:58:45 | NoInheritedValidation | Method 'NoInheritedValidation' handles a POST request without performing CSRF token validation. | diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.1.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.1.rst new file mode 100644 index 000000000000..71a2b3fb47ec --- /dev/null +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.1.rst @@ -0,0 +1,132 @@ +.. _codeql-cli-2.24.1: + +========================== +CodeQL 2.24.1 (2026-02-05) +========================== + +.. contents:: Contents + :depth: 2 + :local: + :backlinks: none + +This is an overview of changes in the CodeQL CLI and relevant CodeQL query and library packs. For additional updates on changes to the CodeQL code scanning experience, check out the `code scanning section on the GitHub blog `__, `relevant GitHub Changelog updates `__, `changes in the CodeQL extension for Visual Studio Code `__, and the `CodeQL Action changelog `__. + +Security Coverage +----------------- + +CodeQL 2.24.1 runs a total of 491 security queries when configured with the Default suite (covering 166 CWE). The Extended suite enables an additional 135 queries (covering 35 more CWE). + +CodeQL CLI +---------- + +Miscellaneous +~~~~~~~~~~~~~ + +* The vulnerable xwork-core 2.3.37 test dependency (CVE-2025-68493) has been removed. The CodeQL Java library has been updated to support both legacy Struts 2.x-6.x package names and Struts 7.x package names for analyzing user code. + +Language Libraries +------------------ + +Bug Fixes +~~~~~~~~~ + +C/C++ +""""" + +* Fixed a bug in the :code:`GuardCondition` library which sometimes prevented binary logical operators from being recognized as guard conditions. As a result, queries using :code:`GuardCondition` may see improved results. +* Fixed a bug which caused :code:`Node.asDefinition()` to not have a result for certain assignments. + +Java/Kotlin +""""""""""" + +* Kotlin: The Kotlin extractor now registers as the last IR generation extension, ensuring that code generated by other compiler plugins (such as kotlinx.serialization) is correctly captured. + +GitHub Actions +"""""""""""""" + +* Fixed a crash when analysing a :code:`${{ ... }}` expression over around 300 characters in length. + +Breaking Changes +~~~~~~~~~~~~~~~~ + +Java/Kotlin +""""""""""" + +* Support for Kotlin 1.6.x and 1.7.x series has been dropped + +Minor Analysis Improvements +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +C/C++ +""""" + +* The :code:`Buffer.qll` library will no longer report incorrect buffer sizes on certain malformed databases. As a result, the queries :code:`cpp/static-buffer-overflow`, :code:`cpp/overflow-buffer`, :code:`cpp/badly-bounded-write`, :code:`cpp/overrunning-write`, :code:`cpp/overrunning-write-with-float`, and :code:`cpp/very-likely-overrunning-write` will report fewer false positives on such databases. +* Added :code:`taint` summary models and :code:`sql-injection` barrier models for the MySQL :code:`mysql_real_escape_string` and :code:`mysql_real_escape_string_quote` escaping functions. +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. + +C# +"" + +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. +* C# 14: Support for null-conditional assignments (such as :code:`c?.Prop = p`). Furthermore, the :code:`MaybeNullExpr` class now takes null-conditional access (such as :code:`?.`) into account when modeling potential null values. + +Golang +"""""" + +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. + +Java/Kotlin +""""""""""" + +* Added support for Struts 7.x package names in the Struts framework library. The library now recognizes both the legacy :code:`com.opensymphony.xwork2` package names (Struts 2.x-6.x) and the new :code:`org.apache.struts2` package names (Struts 7.x+), maintaining backward compatibility while enabling analysis of code using the latest Struts versions. +* The query :code:`java/unreleased-lock` no longer applies to lock types with names ending in "Pool", as these typically manage a collection of resources and the :code:`lock` and :code:`unlock` methods typically only lock one resource at a time. This may lead to a reduction in false positives. +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. +* When Maven-compatible private package registries are configured for an organisation for Default Setup, CodeQL will now configure Maven to also use these as plugin repositories. CodeQL previously already configured Maven to use them as regular package repositories. This should now allow Maven plugins to be obtained from private registries. + +JavaScript/TypeScript +""""""""""""""""""""" + +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. + +Python +"""""" + +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. +* Added experimental query :code:`py/prompt-injection` to detect potential prompt injection vulnerabilities in code using LLMs. +* Added taint flow model and type model for :code:`agents` and :code:`openai` modules. +* Remote flow sources for the :code:`websockets` package have been modeled. + +Ruby +"""" + +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. + +Swift +""""" + +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. + +Rust +"""" + +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. +* Added type inference support for the :code:`FnMut(..) -> ..` and :code:`Fn(..) -> ..` traits. They now work in type parameter bounds and are implemented by closures. + +New Features +~~~~~~~~~~~~ + +C/C++ +""""" + +* Added a subclass :code:`Embed` of :code:`PreprocessorDirective` for C23 and C++26 :code:`#embed` preprocessor directives. +* Added modules :code:`DataFlow::ParameterizedBarrierGuard` and :code:`DataFlow::ParameterizedInstructionBarrierGuard`. These modules provide the same features as :code:`DataFlow::BarrierGuard` and :code:`DataFlow::InstructionBarrierGuard`, but allow for an additional parameter to support properly using them in dataflow configurations that uses flow states. + +Java/Kotlin +""""""""""" + +* Kotlin versions up to 2.3.0 are now supported. + +Python +"""""" + +* It is now possible to refer to list elements in the Python models-as-data language, via the :code:`ListElement` path. diff --git a/docs/codeql/codeql-overview/codeql-changelog/index.rst b/docs/codeql/codeql-overview/codeql-changelog/index.rst index fbdaac4a7d8f..318366d1e69d 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/index.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/index.rst @@ -11,6 +11,7 @@ A list of queries for each suite and language `is available here `_,"``github.com/revel/revel*``, ``github.com/robfig/revel*``",46,20,4 `SendGrid `_,``github.com/sendgrid/sendgrid-go*``,,1, `Squirrel `_,"``github.com/Masterminds/squirrel*``, ``github.com/lann/squirrel*``, ``gopkg.in/Masterminds/squirrel``",81,,96 - `Standard library `_,"````, ``archive/*``, ``bufio``, ``bytes``, ``cmp``, ``compress/*``, ``container/*``, ``context``, ``crypto``, ``crypto/*``, ``database/*``, ``debug/*``, ``embed``, ``encoding``, ``encoding/*``, ``errors``, ``expvar``, ``flag``, ``fmt``, ``go/*``, ``hash``, ``hash/*``, ``html``, ``html/*``, ``image``, ``image/*``, ``index/*``, ``io``, ``io/*``, ``log``, ``log/*``, ``maps``, ``math``, ``math/*``, ``mime``, ``mime/*``, ``net``, ``net/*``, ``os``, ``os/*``, ``path``, ``path/*``, ``plugin``, ``reflect``, ``reflect/*``, ``regexp``, ``regexp/*``, ``slices``, ``sort``, ``strconv``, ``strings``, ``sync``, ``sync/*``, ``syscall``, ``syscall/*``, ``testing``, ``testing/*``, ``text/*``, ``time``, ``time/*``, ``unicode``, ``unicode/*``, ``unsafe``, ``weak``",52,609,104 + `Standard library `_,"````, ``archive/*``, ``bufio``, ``bytes``, ``cmp``, ``compress/*``, ``container/*``, ``context``, ``crypto``, ``crypto/*``, ``database/*``, ``debug/*``, ``embed``, ``encoding``, ``encoding/*``, ``errors``, ``expvar``, ``flag``, ``fmt``, ``go/*``, ``hash``, ``hash/*``, ``html``, ``html/*``, ``image``, ``image/*``, ``index/*``, ``io``, ``io/*``, ``log``, ``log/*``, ``maps``, ``math``, ``math/*``, ``mime``, ``mime/*``, ``net``, ``net/*``, ``os``, ``os/*``, ``path``, ``path/*``, ``plugin``, ``reflect``, ``reflect/*``, ``regexp``, ``regexp/*``, ``slices``, ``sort``, ``strconv``, ``strings``, ``sync``, ``sync/*``, ``syscall``, ``syscall/*``, ``testing``, ``testing/*``, ``text/*``, ``time``, ``time/*``, ``unicode``, ``unicode/*``, ``unsafe``, ``weak``",52,612,104 `XORM `_,"``github.com/go-xorm/xorm*``, ``xorm.io/xorm*``",,,68 `XPath `_,``github.com/antchfx/xpath*``,,,4 `appleboy/gin-jwt `_,``github.com/appleboy/gin-jwt*``,,,1 @@ -74,5 +74,5 @@ Go framework & library support `xpathparser `_,``github.com/santhosh-tekuri/xpathparser*``,,,2 `yaml `_,``gopkg.in/yaml*``,,9, `zap `_,``go.uber.org/zap*``,,11,33 - Totals,,688,1069,1557 + Totals,,688,1072,1557 diff --git a/go/extractor/autobuilder/build-environment.go b/go/extractor/autobuilder/build-environment.go index 0a4c7e2983b4..c660373205b2 100644 --- a/go/extractor/autobuilder/build-environment.go +++ b/go/extractor/autobuilder/build-environment.go @@ -12,7 +12,7 @@ import ( ) var minGoVersion = util.NewSemVer("1.11") -var maxGoVersion = util.NewSemVer("1.25") +var maxGoVersion = util.NewSemVer("1.26") type versionInfo struct { goModVersion util.SemVer // The version of Go found in the go directive in the `go.mod` file. diff --git a/go/extractor/diagnostics/diagnostics.go b/go/extractor/diagnostics/diagnostics.go index a91a9efac0d1..e7ff86cb878b 100644 --- a/go/extractor/diagnostics/diagnostics.go +++ b/go/extractor/diagnostics/diagnostics.go @@ -568,3 +568,25 @@ func EmitExtractionFailedForProjects(path []string) { noLocation, ) } + +func EmitPrivateRegistryUsed(writer DiagnosticsWriter, configs []string) { + n := len(configs) + lines := make([]string, n) + + for i := range configs { + lines[i] = fmt.Sprintf("* %s", configs[i]) + } + + emitDiagnosticTo( + writer, + "go/autobuilder/analysis-using-private-registries", + "Go extraction used private package registries", + fmt.Sprintf( + "Go was extracted using the following private package registr%s:\n\n%s\n", + plural(n, "y", "ies"), + strings.Join(lines, "\n")), + severityNote, + fullVisibility, + noLocation, + ) +} diff --git a/go/extractor/diagnostics/diagnostics_test.go b/go/extractor/diagnostics/diagnostics_test.go index f2b560004bae..3c28a57d4b5b 100644 --- a/go/extractor/diagnostics/diagnostics_test.go +++ b/go/extractor/diagnostics/diagnostics_test.go @@ -83,3 +83,46 @@ func Test_EmitCannotFindPackages_Actions(t *testing.T) { // Custom build command suggestion assert.Contains(t, d.MarkdownMessage, "If any of the packages are already present in the repository") } + +func Test_EmitPrivateRegistryUsed_Single(t *testing.T) { + writer := newMemoryDiagnosticsWriter() + + testItems := []string{ + "https://github.com/github/example (Git Source)", + } + + EmitPrivateRegistryUsed(writer, testItems) + + assert.Len(t, writer.diagnostics, 1, "Expected one diagnostic to be emitted") + + d := writer.diagnostics[0] + assert.Equal(t, d.Source.Id, "go/autobuilder/analysis-using-private-registries") + assert.Equal(t, d.Severity, string(severityNote)) + assert.Contains(t, d.MarkdownMessage, "following private package registry") + + for i := range testItems { + assert.Contains(t, d.MarkdownMessage, testItems[i]) + } +} + +func Test_EmitPrivateRegistryUsed_Multiple(t *testing.T) { + writer := newMemoryDiagnosticsWriter() + + testItems := []string{ + "https://github.com/github/example (Git Source)", + "https://example.com/goproxy (GOPROXY Server)", + } + + EmitPrivateRegistryUsed(writer, testItems) + + assert.Len(t, writer.diagnostics, 1, "Expected one diagnostic to be emitted") + + d := writer.diagnostics[0] + assert.Equal(t, d.Source.Id, "go/autobuilder/analysis-using-private-registries") + assert.Equal(t, d.Severity, string(severityNote)) + assert.Contains(t, d.MarkdownMessage, "following private package registries") + + for i := range testItems { + assert.Contains(t, d.MarkdownMessage, testItems[i]) + } +} diff --git a/go/extractor/go.mod b/go/extractor/go.mod index c88573bb8c2b..46d189d005e5 100644 --- a/go/extractor/go.mod +++ b/go/extractor/go.mod @@ -1,22 +1,23 @@ module github.com/github/codeql-go/extractor -go 1.25 +go 1.26 -toolchain go1.25.0 +toolchain go1.26.0 // when updating this, run // bazel run @rules_go//go -- mod tidy // when adding or removing dependencies, run // bazel mod tidy require ( - golang.org/x/mod v0.32.0 - golang.org/x/tools v0.41.0 + golang.org/x/mod v0.33.0 + golang.org/x/tools v0.42.0 ) +require github.com/stretchr/testify v1.11.1 + require ( github.com/davecgh/go-spew v1.1.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect - github.com/stretchr/testify v1.11.1 // indirect golang.org/x/sync v0.19.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/go/extractor/go.sum b/go/extractor/go.sum index 838db152fd67..ade080a41ad3 100644 --- a/go/extractor/go.sum +++ b/go/extractor/go.sum @@ -6,12 +6,13 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= -golang.org/x/mod v0.32.0 h1:9F4d3PHLljb6x//jOyokMv3eX+YDeepZSEo3mFJy93c= -golang.org/x/mod v0.32.0/go.mod h1:SgipZ/3h2Ci89DlEtEXWUk/HteuRin+HHhN+WbNhguU= +golang.org/x/mod v0.33.0 h1:tHFzIWbBifEmbwtGz65eaWyGiGZatSrT9prnU8DbVL8= +golang.org/x/mod v0.33.0/go.mod h1:swjeQEj+6r7fODbD2cqrnje9PnziFuw4bmLbBZFrQ5w= golang.org/x/sync v0.19.0 h1:vV+1eWNmZ5geRlYjzm2adRgW2/mcpevXNg50YZtPCE4= golang.org/x/sync v0.19.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI= -golang.org/x/tools v0.41.0 h1:a9b8iMweWG+S0OBnlU36rzLp20z1Rp10w+IY2czHTQc= -golang.org/x/tools v0.41.0/go.mod h1:XSY6eDqxVNiYgezAVqqCeihT4j1U2CCsqvH3WhQpnlg= +golang.org/x/tools v0.42.0 h1:uNgphsn75Tdz5Ji2q36v/nsFSfR/9BRFvqhGBaJGd5k= +golang.org/x/tools v0.42.0/go.mod h1:Ma6lCIwGZvHK6XtgbswSoWroEkhugApmsXyrUmBhfr0= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/go/extractor/registries/BUILD.bazel b/go/extractor/registries/BUILD.bazel new file mode 100644 index 000000000000..7947556ee5d8 --- /dev/null +++ b/go/extractor/registries/BUILD.bazel @@ -0,0 +1,17 @@ +# generated running `bazel run //go/gazelle`, do not edit + +load("@rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "registries", + srcs = ["registryproxy.go"], + importpath = "github.com/github/codeql-go/extractor/registries", + visibility = ["//visibility:public"], + deps = ["//go/extractor/diagnostics"], +) + +go_test( + name = "registries_test", + srcs = ["registryproxy_test.go"], + embed = [":registries"], +) diff --git a/go/extractor/util/registryproxy.go b/go/extractor/registries/registryproxy.go similarity index 85% rename from go/extractor/util/registryproxy.go rename to go/extractor/registries/registryproxy.go index 1f20832e8d81..39578af476be 100644 --- a/go/extractor/util/registryproxy.go +++ b/go/extractor/registries/registryproxy.go @@ -1,4 +1,4 @@ -package util +package registries import ( "encoding/json" @@ -8,6 +8,8 @@ import ( "os" "os/exec" "strings" + + "github.com/github/codeql-go/extractor/diagnostics" ) const PROXY_HOST = "CODEQL_PROXY_HOST" @@ -22,6 +24,19 @@ type RegistryConfig struct { URL string `json:"url"` } +func (config *RegistryConfig) Pretty() string { + pretty_type := "other" + + switch config.Type { + case GIT_SOURCE: + pretty_type = "Git Source" + case GOPROXY_SERVER: + pretty_type = "GOPROXY Server" + } + + return fmt.Sprintf("`%s` (%s)", config.URL, pretty_type) +} + // The address of the proxy including protocol and port (e.g. http://localhost:1234) var proxy_address string @@ -97,24 +112,40 @@ func getEnvVars() []string { if err != nil { slog.Error("Unable to parse proxy configurations", slog.String("error", err.Error())) } else { + activeConfigs := make([]RegistryConfig, 0, len(val)) + // We only care about private registry configurations that are relevant to Go and // filter others out at this point. for _, cfg := range val { if cfg.Type == GOPROXY_SERVER { goproxy_servers = append(goproxy_servers, cfg.URL) slog.Info("Found GOPROXY server", slog.String("url", cfg.URL)) + activeConfigs = append(activeConfigs, cfg) } else if cfg.Type == GIT_SOURCE { parsed, err := url.Parse(cfg.URL) if err == nil && parsed.Hostname() != "" { git_source := parsed.Hostname() + parsed.Path + "*" git_sources = append(git_sources, git_source) slog.Info("Found Git source", slog.String("source", git_source)) + activeConfigs = append(activeConfigs, cfg) } else { slog.Warn("Not a valid URL for Git source", slog.String("url", cfg.URL)) } } } + // Emit a diagnostic to make it easy for users to see that private registry + // configurations were picked up by the Go analysis. + if len(activeConfigs) > 0 { + prettyConfigs := []string{} + for i := range activeConfigs { + prettyConfigs = append(prettyConfigs, activeConfigs[i].Pretty()) + } + + diagnostics.EmitPrivateRegistryUsed(diagnostics.DefaultWriter, prettyConfigs) + } + + // Assemble environment variables for Go. goprivate := []string{} if len(goproxy_servers) > 0 { diff --git a/go/extractor/util/registryproxy_test.go b/go/extractor/registries/registryproxy_test.go similarity index 99% rename from go/extractor/util/registryproxy_test.go rename to go/extractor/registries/registryproxy_test.go index ef63bd9d3f87..c564040ff1b6 100644 --- a/go/extractor/util/registryproxy_test.go +++ b/go/extractor/registries/registryproxy_test.go @@ -1,4 +1,4 @@ -package util +package registries import ( "testing" diff --git a/go/extractor/toolchain/BUILD.bazel b/go/extractor/toolchain/BUILD.bazel index 583749993239..16c591f2a96a 100644 --- a/go/extractor/toolchain/BUILD.bazel +++ b/go/extractor/toolchain/BUILD.bazel @@ -7,7 +7,10 @@ go_library( srcs = ["toolchain.go"], importpath = "github.com/github/codeql-go/extractor/toolchain", visibility = ["//visibility:public"], - deps = ["//go/extractor/util"], + deps = [ + "//go/extractor/registries", + "//go/extractor/util", + ], ) go_test( diff --git a/go/extractor/toolchain/toolchain.go b/go/extractor/toolchain/toolchain.go index 01b3ab813bd5..fb9d5512cd83 100644 --- a/go/extractor/toolchain/toolchain.go +++ b/go/extractor/toolchain/toolchain.go @@ -10,6 +10,7 @@ import ( "path/filepath" "strings" + "github.com/github/codeql-go/extractor/registries" "github.com/github/codeql-go/extractor/util" ) @@ -140,7 +141,7 @@ func SupportsWorkspaces() bool { // Constructs a `*exec.Cmd` for `go` with the specified arguments. func GoCommand(arg ...string) *exec.Cmd { cmd := exec.Command("go", arg...) - util.ApplyProxyEnvVars(cmd) + registries.ApplyProxyEnvVars(cmd) return cmd } diff --git a/go/extractor/util/BUILD.bazel b/go/extractor/util/BUILD.bazel index ee090607ced5..ccebf5ebd865 100644 --- a/go/extractor/util/BUILD.bazel +++ b/go/extractor/util/BUILD.bazel @@ -8,7 +8,6 @@ go_library( "extractvendordirs.go", "logging.go", "overlays.go", - "registryproxy.go", "semver.go", "util.go", ], @@ -21,7 +20,6 @@ go_test( name = "util_test", srcs = [ "logging_test.go", - "registryproxy_test.go", "semver_test.go", "util_test.go", ], diff --git a/go/ql/consistency-queries/CHANGELOG.md b/go/ql/consistency-queries/CHANGELOG.md index d0c8171cdf67..e91058f491a0 100644 --- a/go/ql/consistency-queries/CHANGELOG.md +++ b/go/ql/consistency-queries/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/go/ql/consistency-queries/change-notes/released/1.0.42.md b/go/ql/consistency-queries/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/go/ql/consistency-queries/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/go/ql/consistency-queries/codeql-pack.release.yml b/go/ql/consistency-queries/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/go/ql/consistency-queries/codeql-pack.release.yml +++ b/go/ql/consistency-queries/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/go/ql/consistency-queries/qlpack.yml b/go/ql/consistency-queries/qlpack.yml index c07633f30b96..6f9302c9ac46 100644 --- a/go/ql/consistency-queries/qlpack.yml +++ b/go/ql/consistency-queries/qlpack.yml @@ -1,5 +1,5 @@ name: codeql-go-consistency-queries -version: 1.0.41 +version: 1.0.43-dev groups: - go - queries diff --git a/go/ql/lib/CHANGELOG.md b/go/ql/lib/CHANGELOG.md index 126058537cef..34751dc5d8ae 100644 --- a/go/ql/lib/CHANGELOG.md +++ b/go/ql/lib/CHANGELOG.md @@ -1,3 +1,13 @@ +## 7.0.0 + +### Breaking Changes + +* The `BasicBlock` class is now defined using the shared basic blocks library. `BasicBlock.getRoot` has been replaced by `BasicBlock.getScope`. `BasicBlock.getAPredecessor` and `BasicBlock.getASuccessor` now take a `SuccessorType` argument. `ReachableJoinBlock.inDominanceFrontierOf` has been removed, so use `BasicBlock.inDominanceFrontier` instead, swapping the receiver and the argument. + +### Major Analysis Improvements + +* Go 1.26 is now supported. + ## 6.0.1 ### Minor Analysis Improvements diff --git a/go/ql/lib/change-notes/released/7.0.0.md b/go/ql/lib/change-notes/released/7.0.0.md new file mode 100644 index 000000000000..602f9f36e35f --- /dev/null +++ b/go/ql/lib/change-notes/released/7.0.0.md @@ -0,0 +1,9 @@ +## 7.0.0 + +### Breaking Changes + +* The `BasicBlock` class is now defined using the shared basic blocks library. `BasicBlock.getRoot` has been replaced by `BasicBlock.getScope`. `BasicBlock.getAPredecessor` and `BasicBlock.getASuccessor` now take a `SuccessorType` argument. `ReachableJoinBlock.inDominanceFrontierOf` has been removed, so use `BasicBlock.inDominanceFrontier` instead, swapping the receiver and the argument. + +### Major Analysis Improvements + +* Go 1.26 is now supported. diff --git a/go/ql/lib/codeql-pack.release.yml b/go/ql/lib/codeql-pack.release.yml index d1f3c68c8120..e0db21c78694 100644 --- a/go/ql/lib/codeql-pack.release.yml +++ b/go/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 6.0.1 +lastReleaseVersion: 7.0.0 diff --git a/go/ql/lib/ext/builtin.model.yml b/go/ql/lib/ext/builtin.model.yml index 816c89008a84..616e6bc23b01 100644 --- a/go/ql/lib/ext/builtin.model.yml +++ b/go/ql/lib/ext/builtin.model.yml @@ -11,3 +11,4 @@ extensions: - ["", "", False, "copy", "", "", "Argument[1].ArrayElement", "Argument[0].ArrayElement", "value", "manual"] - ["", "", False, "max", "", "", "Argument[0..1000]", "ReturnValue", "value", "manual"] - ["", "", False, "min", "", "", "Argument[0..1000]", "ReturnValue", "value", "manual"] + - ["", "", False, "new", "", "", "Argument[0]", "ReturnValue.Dereference", "value", "manual"] diff --git a/go/ql/lib/ext/bytes.model.yml b/go/ql/lib/ext/bytes.model.yml index 762d0ca16ee6..b55749f828bf 100644 --- a/go/ql/lib/ext/bytes.model.yml +++ b/go/ql/lib/ext/bytes.model.yml @@ -43,6 +43,7 @@ extensions: - ["bytes", "", False, "TrimSuffix", "", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["bytes", "Buffer", True, "Bytes", "", "", "Argument[receiver]", "ReturnValue", "taint", "manual"] - ["bytes", "Buffer", True, "Next", "", "", "Argument[receiver]", "ReturnValue", "taint", "manual"] + - ["bytes", "Buffer", True, "Peek", "", "", "Argument[receiver]", "ReturnValue[0]", "taint", "manual"] - ["bytes", "Buffer", True, "ReadBytes", "", "", "Argument[receiver]", "ReturnValue[0]", "taint", "manual"] - ["bytes", "Buffer", True, "ReadString", "", "", "Argument[receiver]", "ReturnValue[0]", "taint", "manual"] - ["bytes", "Reader", True, "Reset", "", "", "Argument[0]", "Argument[receiver]", "taint", "manual"] diff --git a/go/ql/lib/ext/errors.model.yml b/go/ql/lib/ext/errors.model.yml index a94c8e558ff4..36b17a49ee02 100644 --- a/go/ql/lib/ext/errors.model.yml +++ b/go/ql/lib/ext/errors.model.yml @@ -4,5 +4,6 @@ extensions: extensible: summaryModel data: - ["errors", "", False, "As", "", "", "Argument[0]", "Argument[1]", "taint", "manual"] + - ["errors", "", False, "AsType", "", "", "Argument[0]", "ReturnValue[0]", "taint", "manual"] - ["errors", "", False, "New", "", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["errors", "", False, "Unwrap", "", "", "Argument[0]", "ReturnValue", "taint", "manual"] diff --git a/go/ql/lib/qlpack.yml b/go/ql/lib/qlpack.yml index af34da5d7d5a..ac5f63a29bc5 100644 --- a/go/ql/lib/qlpack.yml +++ b/go/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/go-all -version: 6.0.1 +version: 7.0.1-dev groups: go dbscheme: go.dbscheme extractor: go @@ -7,6 +7,7 @@ library: true upgrades: upgrades dependencies: codeql/concepts: ${workspace} + codeql/controlflow: ${workspace} codeql/dataflow: ${workspace} codeql/mad: ${workspace} codeql/threat-models: ${workspace} diff --git a/go/ql/lib/semmle/go/AST.qll b/go/ql/lib/semmle/go/AST.qll index c5e388ba000f..6a840f81cbbe 100644 --- a/go/ql/lib/semmle/go/AST.qll +++ b/go/ql/lib/semmle/go/AST.qll @@ -84,6 +84,16 @@ class AstNode extends @node, Locatable { pragma[nomagic] FuncDef getEnclosingFunction() { result = this.getParent().parentInSameFunction*() } + /** Gets the innermost block statement to which this AST node belongs, if any. */ + BlockStmt getEnclosingBlock() { + exists(AstNode p | p = this.getParent() | + result = p + or + not p instanceof BlockStmt and + result = p.getEnclosingBlock() + ) + } + /** * Gets a comma-separated list of the names of the primary CodeQL classes to which this element belongs. */ diff --git a/go/ql/lib/semmle/go/controlflow/BasicBlocks.qll b/go/ql/lib/semmle/go/controlflow/BasicBlocks.qll index 8380c6d6d5d2..43b8c7e8dd39 100644 --- a/go/ql/lib/semmle/go/controlflow/BasicBlocks.qll +++ b/go/ql/lib/semmle/go/controlflow/BasicBlocks.qll @@ -4,140 +4,53 @@ import go private import ControlFlowGraphImpl +private import codeql.controlflow.BasicBlock as BB +private import codeql.controlflow.SuccessorType + +private module Input implements BB::InputSig { + /** A delineated part of the AST with its own CFG. */ + class CfgScope = ControlFlow::Root; + + /** The class of control flow nodes. */ + class Node = ControlFlowNode; + + /** Gets the CFG scope in which this node occurs. */ + CfgScope nodeGetCfgScope(Node node) { node.getRoot() = result } + + /** Gets an immediate successor of this node. */ + Node nodeGetASuccessor(Node node, SuccessorType t) { + result = node.getASuccessor() and + ( + not result instanceof ControlFlow::ConditionGuardNode and t instanceof DirectSuccessor + or + t.(BooleanSuccessor).getValue() = result.(ControlFlow::ConditionGuardNode).getOutcome() + ) + } -/** - * Holds if `nd` starts a new basic block. - */ -private predicate startsBB(ControlFlow::Node nd) { - count(nd.getAPredecessor()) != 1 - or - nd.getAPredecessor().isBranch() -} - -/** - * Holds if the first node of basic block `succ` is a control flow - * successor of the last node of basic block `bb`. - */ -private predicate succBB(BasicBlock bb, BasicBlock succ) { succ = bb.getLastNode().getASuccessor() } - -/** - * Holds if the first node of basic block `bb` is a control flow - * successor of the last node of basic block `pre`. - */ -private predicate predBB(BasicBlock bb, BasicBlock pre) { succBB(pre, bb) } - -/** Holds if `bb` is an entry basic block. */ -private predicate entryBB(BasicBlock bb) { bb.getFirstNode().isEntryNode() } - -/** Holds if `bb` is an exit basic block. */ -private predicate exitBB(BasicBlock bb) { bb.getLastNode().isExitNode() } - -cached -private module Internal { /** - * Holds if `succ` is a control flow successor of `nd` within the same basic block. + * Holds if `node` represents an entry node to be used when calculating + * dominance. */ - private predicate intraBBSucc(ControlFlow::Node nd, ControlFlow::Node succ) { - succ = nd.getASuccessor() and - not startsBB(succ) - } + predicate nodeIsDominanceEntry(Node node) { node instanceof EntryNode } /** - * Holds if `nd` is the `i`th node in basic block `bb`. - * - * In other words, `i` is the shortest distance from a node `bb` - * that starts a basic block to `nd` along the `intraBBSucc` relation. + * Holds if `node` represents an exit node to be used when calculating + * post dominance. */ - cached - predicate bbIndex(BasicBlock bb, ControlFlow::Node nd, int i) = - shortestDistances(startsBB/1, intraBBSucc/2)(bb, nd, i) - - cached - int bbLength(BasicBlock bb) { result = strictcount(ControlFlow::Node nd | bbIndex(bb, nd, _)) } - - cached - predicate reachableBB(BasicBlock bb) { - entryBB(bb) - or - exists(BasicBlock predBB | succBB(predBB, bb) | reachableBB(predBB)) - } + predicate nodeIsPostDominanceExit(Node node) { node instanceof ExitNode } } -private import Internal - -/** Holds if `dom` is an immediate dominator of `bb`. */ -cached -private predicate bbIDominates(BasicBlock dom, BasicBlock bb) = - idominance(entryBB/1, succBB/2)(_, dom, bb) - -/** Holds if `dom` is an immediate post-dominator of `bb`. */ -cached -private predicate bbIPostDominates(BasicBlock dom, BasicBlock bb) = - idominance(exitBB/1, predBB/2)(_, dom, bb) - -/** - * A basic block, that is, a maximal straight-line sequence of control flow nodes - * without branches or joins. - * - * At the database level, a basic block is represented by its first control flow node. - */ -class BasicBlock extends TControlFlowNode { - BasicBlock() { startsBB(this) } - - /** Gets a basic block succeeding this one. */ - BasicBlock getASuccessor() { succBB(this, result) } - - /** Gets a basic block preceding this one. */ - BasicBlock getAPredecessor() { result.getASuccessor() = this } - - /** Gets a node in this block. */ - ControlFlow::Node getANode() { result = this.getNode(_) } - - /** Gets the node at the given position in this block. */ - ControlFlow::Node getNode(int pos) { bbIndex(this, result, pos) } - - /** Gets the first node in this block. */ - ControlFlow::Node getFirstNode() { result = this } +private module BbImpl = BB::Make; - /** Gets the last node in this block. */ - ControlFlow::Node getLastNode() { result = this.getNode(this.length() - 1) } +class BasicBlock = BbImpl::BasicBlock; - /** Gets the length of this block. */ - int length() { result = bbLength(this) } +class EntryBasicBlock = BbImpl::EntryBasicBlock; - /** Gets the basic block that immediately dominates this basic block. */ - ReachableBasicBlock getImmediateDominator() { bbIDominates(result, this) } - - /** Gets the innermost function or file to which this basic block belongs. */ - ControlFlow::Root getRoot() { result = this.getFirstNode().getRoot() } - - /** Gets a textual representation of this basic block. */ - string toString() { result = "basic block" } - - /** Gets the source location for this element. */ - Location getLocation() { result = this.getFirstNode().getLocation() } - - /** - * DEPRECATED: Use `getLocation()` instead. - * - * Holds if this basic block is at the specified location. - * The location spans column `startcolumn` of line `startline` to - * column `endcolumn` of line `endline` in file `filepath`. - * For more information, see - * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). - */ - deprecated predicate hasLocationInfo( - string filepath, int startline, int startcolumn, int endline, int endcolumn - ) { - this.getLocation().hasLocationInfo(filepath, startline, startcolumn, endline, endcolumn) - } -} - -/** - * An entry basic block, that is, a basic block whose first node is an entry node. - */ -class EntryBasicBlock extends BasicBlock { - EntryBasicBlock() { entryBB(this) } +cached +private predicate reachableBB(BasicBlock bb) { + bb instanceof EntryBasicBlock + or + exists(BasicBlock predBB | predBB.getASuccessor(_) = bb | reachableBB(predBB)) } /** @@ -145,38 +58,6 @@ class EntryBasicBlock extends BasicBlock { */ class ReachableBasicBlock extends BasicBlock { ReachableBasicBlock() { reachableBB(this) } - - /** - * Holds if this basic block strictly dominates `bb`. - */ - cached - predicate strictlyDominates(ReachableBasicBlock bb) { bbIDominates+(this, bb) } - - /** - * Holds if this basic block dominates `bb`. - * - * This predicate is reflexive: each reachable basic block dominates itself. - */ - predicate dominates(ReachableBasicBlock bb) { - bb = this or - this.strictlyDominates(bb) - } - - /** - * Holds if this basic block strictly post-dominates `bb`. - */ - cached - predicate strictlyPostDominates(ReachableBasicBlock bb) { bbIPostDominates+(this, bb) } - - /** - * Holds if this basic block post-dominates `bb`. - * - * This predicate is reflexive: each reachable basic block post-dominates itself. - */ - predicate postDominates(ReachableBasicBlock bb) { - bb = this or - this.strictlyPostDominates(bb) - } } /** @@ -184,21 +65,4 @@ class ReachableBasicBlock extends BasicBlock { */ class ReachableJoinBlock extends ReachableBasicBlock { ReachableJoinBlock() { this.getFirstNode().isJoin() } - - /** - * Holds if this basic block belongs to the dominance frontier of `b`, that is - * `b` dominates a predecessor of this block, but not this block itself. - * - * Algorithm from Cooper et al., "A Simple, Fast Dominance Algorithm" (Figure 5), - * who in turn attribute it to Ferrante et al., "The program dependence graph and - * its use in optimization". - */ - predicate inDominanceFrontierOf(ReachableBasicBlock b) { - b = this.getAPredecessor() and not b = this.getImmediateDominator() - or - exists(ReachableBasicBlock prev | this.inDominanceFrontierOf(prev) | - b = prev.getImmediateDominator() and - not b = this.getImmediateDominator() - ) - } } diff --git a/go/ql/lib/semmle/go/controlflow/ControlFlowGraph.qll b/go/ql/lib/semmle/go/controlflow/ControlFlowGraph.qll index 1e66bc61dc45..88adb88c0264 100644 --- a/go/ql/lib/semmle/go/controlflow/ControlFlowGraph.qll +++ b/go/ql/lib/semmle/go/controlflow/ControlFlowGraph.qll @@ -313,6 +313,9 @@ module ControlFlow { */ Expr getCondition() { result = cond } + /** Gets the value of the condition that this node corresponds to. */ + boolean getOutcome() { result = outcome } + override Root getRoot() { result.isRootOf(cond) } override string toString() { result = cond + " is " + outcome } @@ -350,4 +353,6 @@ module ControlFlow { } } +class ControlFlowNode = ControlFlow::Node; + class Write = ControlFlow::WriteNode; diff --git a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll index 7467d6c1d6c0..388921224ad8 100644 --- a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll +++ b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll @@ -153,7 +153,10 @@ module ModelValidation { not part = "" and not (part = "Argument" and pred = "sink") and not parseArg(part, _) and - not part.getName() = "Field" + // If the database does not contain any fields/pointer types then no + // FieldContent/PointerContent exists, so we spuriously think that + // these spec components are invalid. + not part.getName() = ["Field", "Dereference"] or part = input.getToken(0) and parseParam(part, _) @@ -176,7 +179,10 @@ module ModelValidation { invalidSpecComponent(output, part) and not part = "" and not (part = ["Argument", "Parameter"] and pred = "source") and - not part.getName() = "Field" + // If the database does not contain any fields/pointer types then no + // FieldContent/PointerContent exists, so we spuriously think that + // these spec components are invalid. + not part.getName() = ["Field", "Dereference"] or invalidIndexComponent(output, part) ) and diff --git a/go/ql/lib/semmle/go/dataflow/SSA.qll b/go/ql/lib/semmle/go/dataflow/SSA.qll index 98dae5f3d014..69fffa393c19 100644 --- a/go/ql/lib/semmle/go/dataflow/SSA.qll +++ b/go/ql/lib/semmle/go/dataflow/SSA.qll @@ -144,7 +144,7 @@ class SsaDefinition extends TSsaDefinition { abstract string prettyPrintRef(); /** Gets the innermost function or file to which this SSA definition belongs. */ - ControlFlow::Root getRoot() { result = this.getBasicBlock().getRoot() } + ControlFlow::Root getRoot() { result = this.getBasicBlock().getScope() } /** Gets a textual representation of this element. */ string toString() { result = this.prettyPrintDef() } @@ -285,7 +285,7 @@ abstract class SsaPseudoDefinition extends SsaImplicitDefinition { */ class SsaPhiNode extends SsaPseudoDefinition, TPhi { override SsaVariable getAnInput() { - result = getDefReachingEndOf(this.getBasicBlock().getAPredecessor(), this.getSourceVariable()) + result = getDefReachingEndOf(this.getBasicBlock().getAPredecessor(_), this.getSourceVariable()) } override predicate definesAt(ReachableBasicBlock bb, int i, SsaSourceVariable v) { diff --git a/go/ql/lib/semmle/go/dataflow/SsaImpl.qll b/go/ql/lib/semmle/go/dataflow/SsaImpl.qll index 8549d9b497ad..026c8114f9fb 100644 --- a/go/ql/lib/semmle/go/dataflow/SsaImpl.qll +++ b/go/ql/lib/semmle/go/dataflow/SsaImpl.qll @@ -71,7 +71,7 @@ private module Internal { private predicate inDefDominanceFrontier(ReachableJoinBlock bb, SsaSourceVariable v) { exists(ReachableBasicBlock defbb, SsaDefinition def | def.definesAt(defbb, _, v) and - bb.inDominanceFrontierOf(defbb) + defbb.inDominanceFrontier(bb) ) } @@ -86,7 +86,7 @@ private module Internal { /** Holds if the `i`th node of `bb` in function `f` is an entry node. */ private predicate entryNode(FuncDef f, ReachableBasicBlock bb, int i) { - f = bb.getRoot() and + f = bb.getScope() and bb.getNode(i).isEntryNode() } @@ -94,7 +94,7 @@ private module Internal { * Holds if the `i`th node of `bb` in function `f` is a function call. */ private predicate callNode(FuncDef f, ReachableBasicBlock bb, int i) { - f = bb.getRoot() and + f = bb.getScope() and bb.getNode(i).(IR::EvalInstruction).getExpr() instanceof CallExpr } @@ -186,7 +186,7 @@ private module Internal { * Holds if `v` is live at the beginning of any successor of basic block `bb`. */ private predicate liveAtSuccEntry(ReachableBasicBlock bb, SsaSourceVariable v) { - liveAtEntry(bb.getASuccessor(), v) + liveAtEntry(bb.getASuccessor(_), v) } /** @@ -317,7 +317,7 @@ private module Internal { SsaSourceVariable v, ReachableBasicBlock b1, ReachableBasicBlock b2 ) { varOccursInBlock(v, b1) and - b2 = b1.getASuccessor() + b2 = b1.getASuccessor(_) } /** @@ -335,7 +335,7 @@ private module Internal { ) { varBlockReaches(v, b1, mid) and not varOccursInBlock(v, mid) and - b2 = mid.getASuccessor() + b2 = mid.getASuccessor(_) } /** diff --git a/go/ql/src/CHANGELOG.md b/go/ql/src/CHANGELOG.md index f2475a92207c..95f203839c54 100644 --- a/go/ql/src/CHANGELOG.md +++ b/go/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.5.6 + +No user-facing changes. + ## 1.5.5 No user-facing changes. diff --git a/go/ql/src/Security/CWE-020/IncompleteHostnameRegexp.ql b/go/ql/src/Security/CWE-020/IncompleteHostnameRegexp.ql index f6e3df7d1d91..a6321b7d7cb3 100644 --- a/go/ql/src/Security/CWE-020/IncompleteHostnameRegexp.ql +++ b/go/ql/src/Security/CWE-020/IncompleteHostnameRegexp.ql @@ -45,7 +45,7 @@ predicate writesHttpError(ReachableBasicBlock b) { predicate onlyErrors(BasicBlock block) { writesHttpError(block) or - forex(ReachableBasicBlock pred | pred = block.getAPredecessor() | onlyErrors(pred)) + forex(ReachableBasicBlock pred | pred = block.getAPredecessor(_) | onlyErrors(pred)) } /** Gets a node that refers to a handler that is considered to return an HTTP error. */ diff --git a/go/ql/src/change-notes/released/1.5.6.md b/go/ql/src/change-notes/released/1.5.6.md new file mode 100644 index 000000000000..17fb577dc9e3 --- /dev/null +++ b/go/ql/src/change-notes/released/1.5.6.md @@ -0,0 +1,3 @@ +## 1.5.6 + +No user-facing changes. diff --git a/go/ql/src/codeql-pack.release.yml b/go/ql/src/codeql-pack.release.yml index 1c73e9d9ce9e..9a0b3c9461b0 100644 --- a/go/ql/src/codeql-pack.release.yml +++ b/go/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.5.5 +lastReleaseVersion: 1.5.6 diff --git a/go/ql/src/qlpack.yml b/go/ql/src/qlpack.yml index 20e25202476b..bbac3ffc2124 100644 --- a/go/ql/src/qlpack.yml +++ b/go/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/go-queries -version: 1.5.5 +version: 1.5.7-dev groups: - go - queries diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/go.mod b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/go.mod index f5b1162fa7a7..d5f2af3e7879 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/go.mod +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/go.mod @@ -1,5 +1,5 @@ module semmle.go.Packages -go 1.13 +go 1.26 require github.com/nonexistent/test v0.0.0-20200203000000-0000000000000 diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/sinks.expected b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/sinks.expected index b39135f827e3..e5966200370e 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/sinks.expected +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/sinks.expected @@ -44,4 +44,6 @@ invalidModelRow | test.go:199:23:199:26 | arg2 | qltest | | test.go:199:29:199:32 | arg3 | qltest | | test.go:202:22:202:25 | temp | qltest | -| test.go:206:10:206:12 | src | qltest | +| test.go:204:10:204:17 | call to new | qltest | +| test.go:205:10:205:18 | star expression | qltest | +| test.go:209:10:209:12 | src | qltest | diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/srcs.expected b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/srcs.expected index f99ee92a4928..e04fcf753095 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/srcs.expected +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/srcs.expected @@ -22,4 +22,4 @@ invalidModelRow | test.go:187:24:187:31 | call to Src1 | qltest | | test.go:191:24:191:31 | call to Src1 | qltest | | test.go:201:10:201:28 | selection of SourceVariable | qltest | -| test.go:205:15:205:17 | definition of src | qltest | +| test.go:208:15:208:17 | definition of src | qltest | diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/test.go b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/test.go index c9d732e74002..d244bc676aab 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/test.go +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/test.go @@ -200,6 +200,9 @@ func simpleflow() { temp := test.SourceVariable test.SinkVariable = temp // $ hasTaintFlow="temp" + + b.Sink1(new(src)) // $ hasTaintFlow="call to new" + b.Sink1(*new(src)) // $ hasTaintFlow="star expression" } func srcParam(src string, b test.B) { diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/go.mod b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/go.mod index 57813acac558..d5f2af3e7879 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/go.mod +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/go.mod @@ -1,5 +1,5 @@ module semmle.go.Packages -go 1.21 +go 1.26 require github.com/nonexistent/test v0.0.0-20200203000000-0000000000000 diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/sinks.expected b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/sinks.expected index e7421a9ad147..f3fef94dfa6e 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/sinks.expected +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/sinks.expected @@ -50,4 +50,6 @@ invalidModelRow | test.go:206:10:206:26 | call to min | qltest | | test.go:207:10:207:26 | call to min | qltest | | test.go:210:22:210:25 | temp | qltest | -| test.go:214:10:214:12 | src | qltest | +| test.go:212:10:212:17 | call to new | qltest | +| test.go:213:10:213:18 | star expression | qltest | +| test.go:217:10:217:12 | src | qltest | diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/srcs.expected b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/srcs.expected index 009238baa4d8..f5768d49d1b5 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/srcs.expected +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/srcs.expected @@ -22,4 +22,4 @@ invalidModelRow | test.go:187:24:187:31 | call to Src1 | qltest | | test.go:191:24:191:31 | call to Src1 | qltest | | test.go:209:10:209:28 | selection of SourceVariable | qltest | -| test.go:213:15:213:17 | definition of src | qltest | +| test.go:216:15:216:17 | definition of src | qltest | diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/test.go b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/test.go index 3c172e6082d2..4e4b0527787c 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/test.go +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/test.go @@ -208,6 +208,9 @@ func simpleflow() { temp := test.SourceVariable test.SinkVariable = temp // $ hasValueFlow="temp" + + b.Sink1(new(src)) + b.Sink1(*new(src)) // $ hasValueFlow="star expression" } func srcParam(src string, b test.B) { diff --git a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Builtin.go b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Builtin.go new file mode 100644 index 000000000000..f83dfa4ee23f --- /dev/null +++ b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Builtin.go @@ -0,0 +1,116 @@ +package main + +// Also tested in go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow +// and go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow. + +func TaintStepTest_Append1(sourceCQL interface{}) interface{} { + from := sourceCQL.([]byte) + var intoInterface interface{} + intoInterface = append(from, "a string"...) + return intoInterface +} + +func TaintStepTest_Append2(sourceCQL interface{}) interface{} { + from := sourceCQL.(int) + slice := []int{from} + var intoInterface []int + intoInterface = append(slice, 0) + return intoInterface[0] +} + +func TaintStepTest_Append3(sourceCQL interface{}) interface{} { + from := sourceCQL.(string) + var intoInterface interface{} + intoInterface = append([]byte{}, from...) + return intoInterface +} + +func TaintStepTest_Append4(sourceCQL interface{}) interface{} { + from := sourceCQL.(int) + var intoInterface []int + intoInterface = append([]int{}, 0, from, 1) + return intoInterface[0] +} + +func TaintStepTest_Copy1(sourceCQL interface{}) interface{} { + from := sourceCQL.(string) + var intoInterface []byte + copy(intoInterface, from) + return intoInterface +} + +func TaintStepTest_Copy2(sourceCQL interface{}) interface{} { + from := []int{sourceCQL.(int)} + var intoInterface []int + copy(intoInterface, from) + return intoInterface[0] +} + +func TaintStepTest_Max(sourceCQL interface{}) interface{} { + from := sourceCQL.(int) + var intoInterface int + intoInterface = max(0, 1, from, 2, 3) + return intoInterface +} + +func TaintStepTest_Min(sourceCQL interface{}) interface{} { + from := sourceCQL.(int) + var intoInterface int + intoInterface = min(0, 1, from, 2, 3) + return intoInterface +} + +func TaintStepTest_New(sourceCQL interface{}) interface{} { + from := sourceCQL.(int) + var intoInterface *int + intoInterface = new(from) + return *intoInterface +} + +func RunAllTaints_Builtin() { + { + source := newSource(0) + out := TaintStepTest_Append1(source) + sink(0, out) + } + { + source := newSource(1) + out := TaintStepTest_Append2(source) + sink(1, out) + } + { + source := newSource(2) + out := TaintStepTest_Append3(source) + sink(2, out) + } + { + source := newSource(3) + out := TaintStepTest_Append4(source) + sink(3, out) + } + { + source := newSource(4) + out := TaintStepTest_Copy1(source) + sink(4, out) + } + { + source := newSource(5) + out := TaintStepTest_Copy2(source) + sink(5, out) + } + { + source := newSource(3) + out := TaintStepTest_Max(source) + sink(3, out) + } + { + source := newSource(4) + out := TaintStepTest_Min(source) + sink(4, out) + } + { + source := newSource(5) + out := TaintStepTest_New(source) + sink(5, out) + } +} diff --git a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Bytes.go b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Bytes.go index 8e31c32aba4f..ac528c46267d 100644 --- a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Bytes.go +++ b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Bytes.go @@ -349,6 +349,12 @@ func TaintStepTest_CutSuffix(sourceCQL interface{}) interface{} { return result } +func TaintStepTest_BytesBufferPeek(sourceCQL interface{}) interface{} { + fromBuffer := sourceCQL.(bytes.Buffer) + intoByte, _ := fromBuffer.Peek(128) + return intoByte +} + func RunAllTaints_Bytes() { { source := newSource(0) @@ -625,4 +631,9 @@ func RunAllTaints_Bytes() { out := TaintStepTest_Clone(source) sink(54, out) } + { + source := newSource(55) + out := TaintStepTest_BytesBufferPeek(source) + sink(55, out) + } } diff --git a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Errors.go b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Errors.go index 324f1e36ae70..71b7f9441f81 100644 --- a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Errors.go +++ b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Errors.go @@ -35,6 +35,13 @@ func TaintStepTest_ErrorsJoin2(sourceCQL interface{}) interface{} { return intoError957 } +func TaintStepTest_ErrorsAsType(sourceCQL interface{}) interface{} { + fromError := sourceCQL.(error) + var intoInterface interface{} + intoInterface, _ = errors.AsType[error](fromError) + return intoInterface +} + func RunAllTaints_Errors() { { source := newSource(0) @@ -61,4 +68,9 @@ func RunAllTaints_Errors() { out := TaintStepTest_ErrorsJoin2(source) sink(4, out) } + { + source := newSource(5) + out := TaintStepTest_ErrorsAsType(source) + sink(5, out) + } } diff --git a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/go.mod b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/go.mod index 5ba39421f3b8..1a8220297f27 100644 --- a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/go.mod +++ b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/go.mod @@ -1,6 +1,6 @@ module example.com/m -go 1.24 +go 1.26 require ( golang.org/x/net v0.0.0-20201010224723-4f7140c49acb diff --git a/java/kotlin-extractor/dev/wrapper.py b/java/kotlin-extractor/dev/wrapper.py index 7785c623f4fb..8aa5b55ee672 100755 --- a/java/kotlin-extractor/dev/wrapper.py +++ b/java/kotlin-extractor/dev/wrapper.py @@ -27,7 +27,7 @@ import io import os -DEFAULT_VERSION = "2.3.0" +DEFAULT_VERSION = "2.3.10" def options(): diff --git a/java/ql/consistency-queries/UnaryExpr.ql b/java/ql/consistency-queries/UnaryExpr.ql index 29a895eca6a2..f71d51f19d18 100644 --- a/java/ql/consistency-queries/UnaryExpr.ql +++ b/java/ql/consistency-queries/UnaryExpr.ql @@ -2,7 +2,7 @@ import java from UnaryExpr ue where - not exists(ue.getExpr()) + not exists(ue.getOperand()) or exists(Expr e, int i | e.isNthChildOf(ue, i) and i != 0) select ue diff --git a/java/ql/examples/snippets/returnstatement.ql b/java/ql/examples/snippets/returnstatement.ql index 14270dc87c20..f2b6c601fb56 100644 --- a/java/ql/examples/snippets/returnstatement.ql +++ b/java/ql/examples/snippets/returnstatement.ql @@ -10,5 +10,5 @@ import java from ReturnStmt r -where r.getResult() instanceof NullLiteral +where r.getExpr() instanceof NullLiteral select r diff --git a/java/ql/examples/snippets/ternaryconditional.ql b/java/ql/examples/snippets/ternaryconditional.ql index bbd82770a16f..867ea024674a 100644 --- a/java/ql/examples/snippets/ternaryconditional.ql +++ b/java/ql/examples/snippets/ternaryconditional.ql @@ -11,7 +11,7 @@ import java from ConditionalExpr e where - e.getTrueExpr().getType() != e.getFalseExpr().getType() and - not e.getTrueExpr().getType() instanceof NullType and - not e.getFalseExpr().getType() instanceof NullType + e.getThen().getType() != e.getElse().getType() and + not e.getThen().getType() instanceof NullType and + not e.getElse().getType() instanceof NullType select e diff --git a/java/ql/integration-tests/kotlin/all-platforms/diagnostics/kotlin-version-too-new/diagnostics.expected b/java/ql/integration-tests/kotlin/all-platforms/diagnostics/kotlin-version-too-new/diagnostics.expected index 5ef0ef541962..bbc580f1e48b 100644 --- a/java/ql/integration-tests/kotlin/all-platforms/diagnostics/kotlin-version-too-new/diagnostics.expected +++ b/java/ql/integration-tests/kotlin/all-platforms/diagnostics/kotlin-version-too-new/diagnostics.expected @@ -1,5 +1,5 @@ { - "markdownMessage": "The Kotlin version installed (`999.999.999`) is too recent for this version of CodeQL. Install a version lower than 2.3.10.", + "markdownMessage": "The Kotlin version installed (`999.999.999`) is too recent for this version of CodeQL. Install a version lower than 2.3.20.", "severity": "error", "source": { "extractorName": "java", diff --git a/java/ql/lib/CHANGELOG.md b/java/ql/lib/CHANGELOG.md index f238699b4e5b..fb2908a561ec 100644 --- a/java/ql/lib/CHANGELOG.md +++ b/java/ql/lib/CHANGELOG.md @@ -1,3 +1,24 @@ +## 8.1.0 + +### Deprecated APIs + +* The `UnreachableBlocks.qll` library has been deprecated. +* Renamed the following predicates to increase uniformity across languages. The `getBody` predicate already existed on `LoopStmt`, but is now properly inherited. + - `UnaryExpr.getExpr` to `getOperand`. + - `ConditionalExpr.getTrueExpr` to `getThen`. + - `ConditionalExpr.getFalseExpr` to `getElse`. + - `ReturnStmt.getResult` to `getExpr`. + - `WhileStmt.getStmt` to `getBody`. + - `DoStmt.getStmt` to `getBody`. + - `ForStmt.getStmt` to `getBody`. + - `EnhancedForStmt.getStmt` to `getBody`. + +### Minor Analysis Improvements + +* Using a regular expression to check that a string doesn't contain any line breaks is already a sanitizer for `java/log-injection`. Additional ways of doing the regular expression check are now recognised, including annotation with `@javax.validation.constraints.Pattern`. +* More ways of checking that a string matches a regular expression are now considered as sanitizers for various queries, including `java/ssrf` and `java/path-injection`. In particular, being annotated with `@javax.validation.constraints.Pattern` is now recognised as a sanitizer for those queries. +* Kotlin versions up to 2.3.10 are now supported. + ## 8.0.0 ### Breaking Changes @@ -6,7 +27,7 @@ ### New Features -* Kotlin versions up to 2.3.0*x* are now supported. +* Kotlin versions up to 2.3.0 are now supported. ### Minor Analysis Improvements diff --git a/java/ql/lib/change-notes/released/8.1.0.md b/java/ql/lib/change-notes/released/8.1.0.md new file mode 100644 index 000000000000..e560747144d4 --- /dev/null +++ b/java/ql/lib/change-notes/released/8.1.0.md @@ -0,0 +1,20 @@ +## 8.1.0 + +### Deprecated APIs + +* The `UnreachableBlocks.qll` library has been deprecated. +* Renamed the following predicates to increase uniformity across languages. The `getBody` predicate already existed on `LoopStmt`, but is now properly inherited. + - `UnaryExpr.getExpr` to `getOperand`. + - `ConditionalExpr.getTrueExpr` to `getThen`. + - `ConditionalExpr.getFalseExpr` to `getElse`. + - `ReturnStmt.getResult` to `getExpr`. + - `WhileStmt.getStmt` to `getBody`. + - `DoStmt.getStmt` to `getBody`. + - `ForStmt.getStmt` to `getBody`. + - `EnhancedForStmt.getStmt` to `getBody`. + +### Minor Analysis Improvements + +* Using a regular expression to check that a string doesn't contain any line breaks is already a sanitizer for `java/log-injection`. Additional ways of doing the regular expression check are now recognised, including annotation with `@javax.validation.constraints.Pattern`. +* More ways of checking that a string matches a regular expression are now considered as sanitizers for various queries, including `java/ssrf` and `java/path-injection`. In particular, being annotated with `@javax.validation.constraints.Pattern` is now recognised as a sanitizer for those queries. +* Kotlin versions up to 2.3.10 are now supported. diff --git a/java/ql/lib/codeql-pack.release.yml b/java/ql/lib/codeql-pack.release.yml index 0f48687270dc..59984961848d 100644 --- a/java/ql/lib/codeql-pack.release.yml +++ b/java/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 8.0.0 +lastReleaseVersion: 8.1.0 diff --git a/java/ql/lib/java.qll b/java/ql/lib/java.qll index 9644343e93b6..7d0f0b7546db 100644 --- a/java/ql/lib/java.qll +++ b/java/ql/lib/java.qll @@ -9,6 +9,7 @@ import semmle.code.Unit import semmle.code.java.Annotation import semmle.code.java.Compilation import semmle.code.java.CompilationUnit +import semmle.code.java.Concepts import semmle.code.java.ControlFlowGraph import semmle.code.java.Dependency import semmle.code.java.Element diff --git a/java/ql/lib/printCfg.ql b/java/ql/lib/printCfg.ql new file mode 100644 index 000000000000..5e3cc22644ef --- /dev/null +++ b/java/ql/lib/printCfg.ql @@ -0,0 +1,45 @@ +/** + * @name Print CFG + * @description Produces a representation of a file's Control Flow Graph. + * This query is used by the VS Code extension. + * @id java/print-cfg + * @kind graph + * @tags ide-contextual-queries/print-cfg + */ + +import java + +external string selectedSourceFile(); + +private predicate selectedSourceFileAlias = selectedSourceFile/0; + +external int selectedSourceLine(); + +private predicate selectedSourceLineAlias = selectedSourceLine/0; + +external int selectedSourceColumn(); + +private predicate selectedSourceColumnAlias = selectedSourceColumn/0; + +module ViewCfgQueryInput implements ViewCfgQueryInputSig { + predicate selectedSourceFile = selectedSourceFileAlias/0; + + predicate selectedSourceLine = selectedSourceLineAlias/0; + + predicate selectedSourceColumn = selectedSourceColumnAlias/0; + + predicate cfgScopeSpan( + Callable callable, File file, int startLine, int startColumn, int endLine, int endColumn + ) { + file = callable.getFile() and + callable.getLocation().getStartLine() = startLine and + callable.getLocation().getStartColumn() = startColumn and + exists(Location loc | + loc.getEndLine() = endLine and + loc.getEndColumn() = endColumn and + loc = callable.getBody().getLocation() + ) + } +} + +import ViewCfgQuery diff --git a/java/ql/lib/qlpack.yml b/java/ql/lib/qlpack.yml index eb1a7f632c7f..a1737f2d1cbb 100644 --- a/java/ql/lib/qlpack.yml +++ b/java/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/java-all -version: 8.0.0 +version: 8.1.1-dev groups: java dbscheme: config/semmlecode.dbscheme extractor: java diff --git a/java/ql/lib/semmle/code/java/Concepts.qll b/java/ql/lib/semmle/code/java/Concepts.qll new file mode 100644 index 000000000000..7ed61223ea83 --- /dev/null +++ b/java/ql/lib/semmle/code/java/Concepts.qll @@ -0,0 +1,75 @@ +/** + * Provides abstract classes representing generic concepts such as file system + * access or system command execution, for which individual framework libraries + * provide concrete subclasses. + */ +overlay[local?] +module; + +import java + +/** + * A module importing the frameworks that implement `RegexMatch`es, + * ensuring that they are visible to the concepts library. + */ +private module Frameworks { + private import semmle.code.java.JDK + private import semmle.code.java.frameworks.JavaxAnnotations +} + +/** + * An expression that represents a regular expression match. + * + * Extend this class to refine existing API models. If you want to model new APIs, + * extend `RegexMatch::Range` instead. + * + * These are either method calls, which return `true` when there is a match, or + * annotations, which are considered to match if they are present. + */ +class RegexMatch extends Expr instanceof RegexMatch::Range { + /** Gets the expression for the regex being executed by this node. */ + Expr getRegex() { result = super.getRegex() } + + /** Gets an expression for the string to be searched or matched against. */ + Expr getString() { result = super.getString() } + + /** Gets an expression to be sanitized. */ + Expr getASanitizedExpr() { result = [this.getString(), super.getAdditionalSanitizedExpr()] } + + /** + * Gets the name of this regex match, typically the name of an executing + * method. This is used for nice alert messages and should include the + * type-qualified name if possible. + */ + string getName() { result = super.getName() } +} + +/** Provides classes for modeling regular-expression execution APIs. */ +module RegexMatch { + /** + * An expression that executes a regular expression. + * + * Extend this class to model new APIs. If you want to refine existing API models, + * extend `RegexMatch` instead. + * + * These are either method calls, which return `true` when there is a match, or + * annotations, which are considered to match if they are present. + */ + abstract class Range extends Expr { + /** Gets the expression for the regex being executed by this node. */ + abstract Expr getRegex(); + + /** Gets an expression for the string to be searched or matched against. */ + abstract Expr getString(); + + /** Gets an additional expression to be sanitized, if any. */ + Expr getAdditionalSanitizedExpr() { none() } + + /** + * Gets the name of this regex match, typically the name of an executing + * method. This is used for nice alert messages and should include the + * type-qualified name if possible. + */ + abstract string getName(); + } +} diff --git a/java/ql/lib/semmle/code/java/Constants.qll b/java/ql/lib/semmle/code/java/Constants.qll index 0cad92b7fc6d..b515eaefb286 100644 --- a/java/ql/lib/semmle/code/java/Constants.qll +++ b/java/ql/lib/semmle/code/java/Constants.qll @@ -22,7 +22,7 @@ module CalculateConstants boolean calculateBooleanValue(Expr e) { // No casts relevant to booleans. // `!` is the only unary operator that evaluates to a boolean. - result = getBoolVal(e.(LogNotExpr).getExpr()).booleanNot() + result = getBoolVal(e.(LogNotExpr).getOperand()).booleanNot() or // Handle binary expressions that have integer operands and a boolean result. exists(BinaryExpr b, int left, int right | @@ -115,11 +115,11 @@ module CalculateConstants else result = val ) or - result = getIntVal(e.(PlusExpr).getExpr()) + result = getIntVal(e.(PlusExpr).getOperand()) or - result = -getIntVal(e.(MinusExpr).getExpr()) + result = -getIntVal(e.(MinusExpr).getOperand()) or - result = getIntVal(e.(BitNotExpr).getExpr()).bitNot() + result = getIntVal(e.(BitNotExpr).getOperand()).bitNot() or // No `int` value for `LogNotExpr`. exists(BinaryExpr b, int v1, int v2 | diff --git a/java/ql/lib/semmle/code/java/ControlFlowGraph.qll b/java/ql/lib/semmle/code/java/ControlFlowGraph.qll index a31101888da3..64449b6f93d7 100644 --- a/java/ql/lib/semmle/code/java/ControlFlowGraph.qll +++ b/java/ql/lib/semmle/code/java/ControlFlowGraph.qll @@ -827,7 +827,7 @@ private module ControlFlowGraphImpl { index = 1 and result = e.getRightOperand() ) or - index = 0 and result = this.(UnaryExpr).getExpr() + index = 0 and result = this.(UnaryExpr).getOperand() or index = 0 and result = this.(CastingExpr).getExpr() or @@ -849,7 +849,7 @@ private module ControlFlowGraphImpl { or index = 0 and result = this.(ClassExpr).getExpr() or - index = 0 and result = this.(ReturnStmt).getResult() + index = 0 and result = this.(ReturnStmt).getExpr() or index = 0 and result = this.(ThrowStmt).getExpr() or @@ -1044,7 +1044,7 @@ private module ControlFlowGraphImpl { or // The last node of a `LogNotExpr` is in its sub-expression with an inverted boolean completion // (or a `normalCompletion`). - exists(Completion subcompletion | last(n.(LogNotExpr).getExpr(), last, subcompletion) | + exists(Completion subcompletion | last(n.(LogNotExpr).getOperand(), last, subcompletion) | subcompletion = NormalCompletion() and completion = NormalCompletion() and not inBooleanContext(n) @@ -1356,7 +1356,7 @@ private module ControlFlowGraphImpl { ( result = first(n.asExpr().(AndLogicalExpr).getLeftOperand()) or result = first(n.asExpr().(OrLogicalExpr).getLeftOperand()) or - result = first(n.asExpr().(LogNotExpr).getExpr()) or + result = first(n.asExpr().(LogNotExpr).getOperand()) or result = first(n.asExpr().(ConditionalExpr).getCondition()) ) or @@ -1427,7 +1427,7 @@ private module ControlFlowGraphImpl { condentry = first(for.getCondition()) or // ...or the body if the for doesn't include a condition. - not exists(for.getCondition()) and condentry = first(for.getStmt()) + not exists(for.getCondition()) and condentry = first(for.getBody()) | // From the entry point, which is the for statement itself, control goes to either the first init expression... n.asStmt() = for and result = first(for.getInit(0)) and completion = NormalCompletion() @@ -1448,7 +1448,7 @@ private module ControlFlowGraphImpl { // The true-successor of the condition is the body of the for loop. last(for.getCondition(), n, completion) and completion = BooleanCompletion(true, _) and - result = first(for.getStmt()) + result = first(for.getBody()) or // The updates execute sequentially, after which control is transferred to the condition. exists(int i | last(for.getUpdate(i), n, completion) and completion = NormalCompletion() | @@ -1458,7 +1458,7 @@ private module ControlFlowGraphImpl { ) or // The back edge of the loop: control goes to either the first update or the condition if no updates exist. - last(for.getStmt(), n, completion) and + last(for.getBody(), n, completion) and continues(completion, for) and ( result = first(for.getUpdate(0)) @@ -1479,11 +1479,11 @@ private module ControlFlowGraphImpl { or // ...and then control goes to the body of the loop. n.asExpr() = for.getVariable() and - result = first(for.getStmt()) and + result = first(for.getBody()) and completion = NormalCompletion() or // Finally, the back edge of the loop goes to reassign the variable. - last(for.getStmt(), n, completion) and + last(for.getBody(), n, completion) and continues(completion, for) and result.asExpr() = for.getVariable() ) @@ -1492,7 +1492,7 @@ private module ControlFlowGraphImpl { result = first(n.asStmt().(WhileStmt).getCondition()) and completion = NormalCompletion() or // ...and do-while loops start at the body. - result = first(n.asStmt().(DoStmt).getStmt()) and completion = NormalCompletion() + result = first(n.asStmt().(DoStmt).getBody()) and completion = NormalCompletion() or exists(LoopStmt loop | loop instanceof WhileStmt or loop instanceof DoStmt | // Control goes from the condition via a true-completion to the body... @@ -1775,3 +1775,17 @@ class ConditionNode extends ControlFlow::Node { /** Gets the condition of this `ConditionNode`. */ ExprParent getCondition() { result = this.asExpr() or result = this.asStmt() } } + +private import codeql.controlflow.PrintGraph as PrintGraph + +private module PrintGraphInput implements PrintGraph::InputSig { + private import java as J + + class Callable = J::Callable; + + class ControlFlowNode = J::ControlFlowNode; + + ControlFlowNode getASuccessor(ControlFlowNode n, SuccessorType t) { result = n.getASuccessor(t) } +} + +import PrintGraph::PrintGraph diff --git a/java/ql/lib/semmle/code/java/Conversions.qll b/java/ql/lib/semmle/code/java/Conversions.qll index 779eb7620bec..1855b7af54a1 100644 --- a/java/ql/lib/semmle/code/java/Conversions.qll +++ b/java/ql/lib/semmle/code/java/Conversions.qll @@ -69,7 +69,7 @@ class AssignmentConversionContext extends ConversionSite { class ReturnConversionSite extends ConversionSite { ReturnStmt r; - ReturnConversionSite() { this = r.getResult() } + ReturnConversionSite() { this = r.getExpr() } override Type getConversionTarget() { result = r.getEnclosingCallable().getReturnType() } diff --git a/java/ql/lib/semmle/code/java/Expr.qll b/java/ql/lib/semmle/code/java/Expr.qll index 4b03375c69ee..c609c35cd71e 100644 --- a/java/ql/lib/semmle/code/java/Expr.qll +++ b/java/ql/lib/semmle/code/java/Expr.qll @@ -113,7 +113,7 @@ class Expr extends ExprParent, @expr { if this instanceof CastingExpr or this instanceof NotNullExpr then result = this.(CastingExpr).getExpr().getUnderlyingExpr() or - result = this.(NotNullExpr).getExpr().getUnderlyingExpr() + result = this.(NotNullExpr).getOperand().getUnderlyingExpr() else result = this } } @@ -144,13 +144,13 @@ class CompileTimeConstantExpr extends Expr { this.(CastingExpr).getExpr().isCompileTimeConstant() or // The unary operators `+`, `-`, `~`, and `!` (but not `++` or `--`). - this.(PlusExpr).getExpr().isCompileTimeConstant() + this.(PlusExpr).getOperand().isCompileTimeConstant() or - this.(MinusExpr).getExpr().isCompileTimeConstant() + this.(MinusExpr).getOperand().isCompileTimeConstant() or - this.(BitNotExpr).getExpr().isCompileTimeConstant() + this.(BitNotExpr).getOperand().isCompileTimeConstant() or - this.(LogNotExpr).getExpr().isCompileTimeConstant() + this.(LogNotExpr).getOperand().isCompileTimeConstant() or // The multiplicative operators `*`, `/`, and `%`, // the additive operators `+` and `-`, @@ -166,8 +166,8 @@ class CompileTimeConstantExpr extends Expr { // The ternary conditional operator ` ? : `. exists(ConditionalExpr e | this = e | e.getCondition().isCompileTimeConstant() and - e.getTrueExpr().isCompileTimeConstant() and - e.getFalseExpr().isCompileTimeConstant() + e.getThen().isCompileTimeConstant() and + e.getElse().isCompileTimeConstant() ) or // Access to a final variable initialized by a compile-time constant. @@ -943,7 +943,7 @@ class LogicExpr extends Expr { /** Gets an operand of this logical expression. */ Expr getAnOperand() { this.(BinaryExpr).getAnOperand() = result or - this.(UnaryExpr).getExpr() = result + this.(UnaryExpr).getOperand() = result } } @@ -1039,8 +1039,15 @@ class ReferenceEqualityTest extends EqualityTest { /** A common super-class that represents unary operator expressions. */ class UnaryExpr extends Expr, @unaryexpr { + /** + * DEPRECATED: Use `getOperand()` instead. + * + * Gets the operand expression. + */ + deprecated Expr getExpr() { result.getParent() = this } + /** Gets the operand expression. */ - Expr getExpr() { result.getParent() = this } + Expr getOperand() { result.getParent() = this } } /** @@ -1305,7 +1312,7 @@ class LambdaExpr extends FunctionalExpr, @lambdaexpr { /** Gets the body of this lambda expression, if it is an expression. */ Expr getExprBody() { - this.hasExprBody() and result = this.asMethod().getBody().getAChild().(ReturnStmt).getResult() + this.hasExprBody() and result = this.asMethod().getBody().getAChild().(ReturnStmt).getExpr() } /** Gets the body of this lambda expression, if it is a statement. */ @@ -1340,7 +1347,7 @@ class MemberRefExpr extends FunctionalExpr, @memberref { exists(Stmt stmt | stmt = this.asMethod().getBody().(SingletonBlock).getStmt() and ( - result = stmt.(ReturnStmt).getResult() + result = stmt.(ReturnStmt).getExpr() or // Note: Currently never an ExprStmt, but might change once https://github.com/github/codeql/issues/3605 is fixed result = stmt.(ExprStmt).getExpr() @@ -1456,27 +1463,43 @@ class ConditionalExpr extends Expr, @conditionalexpr { /** Gets the condition of this conditional expression. */ Expr getCondition() { result.isNthChildOf(this, 0) } + /** + * DEPRECATED: Use `getThen()` instead. + * + * Gets the expression that is evaluated if the condition of this + * conditional expression evaluates to `true`. + */ + deprecated Expr getTrueExpr() { result.isNthChildOf(this, 1) } + + /** + * DEPRECATED: Use `getElse()` instead. + * + * Gets the expression that is evaluated if the condition of this + * conditional expression evaluates to `false`. + */ + deprecated Expr getFalseExpr() { result.isNthChildOf(this, 2) } + /** * Gets the expression that is evaluated if the condition of this * conditional expression evaluates to `true`. */ - Expr getTrueExpr() { result.isNthChildOf(this, 1) } + Expr getThen() { result.isNthChildOf(this, 1) } /** * Gets the expression that is evaluated if the condition of this * conditional expression evaluates to `false`. */ - Expr getFalseExpr() { result.isNthChildOf(this, 2) } + Expr getElse() { result.isNthChildOf(this, 2) } /** * Gets the expression that is evaluated by the specific branch of this - * conditional expression. If `true` that is `getTrueExpr()`, if `false` - * it is `getFalseExpr()`. + * conditional expression. If `true` that is `getThen()`, if `false` + * it is `getElse()`. */ Expr getBranchExpr(boolean branch) { - branch = true and result = this.getTrueExpr() + branch = true and result = this.getThen() or - branch = false and result = this.getFalseExpr() + branch = false and result = this.getElse() } /** @@ -1773,14 +1796,14 @@ class VariableUpdate extends Expr { VariableUpdate() { this.(Assignment).getDest() instanceof VarAccess or this instanceof LocalVariableDeclExpr or - this.(UnaryAssignExpr).getExpr() instanceof VarAccess + this.(UnaryAssignExpr).getOperand() instanceof VarAccess } /** Gets the destination of this variable update. */ Variable getDestVar() { result.getAnAccess() = this.(Assignment).getDest() or result = this.(LocalVariableDeclExpr).getVariable() or - result.getAnAccess() = this.(UnaryAssignExpr).getExpr() + result.getAnAccess() = this.(UnaryAssignExpr).getOperand() } } @@ -1970,7 +1993,7 @@ class VarAccess extends Expr, @varaccess { */ predicate isVarWrite() { exists(Assignment a | a.getDest() = this) or - exists(UnaryAssignExpr e | e.getExpr() = this) + exists(UnaryAssignExpr e | e.getOperand() = this) } /** diff --git a/java/ql/lib/semmle/code/java/JDK.qll b/java/ql/lib/semmle/code/java/JDK.qll index f965fbfe6ba6..93562c7c3d80 100644 --- a/java/ql/lib/semmle/code/java/JDK.qll +++ b/java/ql/lib/semmle/code/java/JDK.qll @@ -48,13 +48,19 @@ class StringContainsMethod extends Method { } /** A call to the `java.lang.String.matches` method. */ -class StringMatchesCall extends MethodCall { +class StringMatchesCall extends MethodCall, RegexMatch::Range { StringMatchesCall() { exists(Method m | m = this.getMethod() | m.getDeclaringType() instanceof TypeString and m.hasName("matches") ) } + + override Expr getRegex() { result = this.getArgument(0) } + + override Expr getString() { result = this.getQualifier() } + + override string getName() { result = "String.matches" } } /** A call to the `java.lang.String.replaceAll` method. */ diff --git a/java/ql/lib/semmle/code/java/Member.qll b/java/ql/lib/semmle/code/java/Member.qll index 17fe696972f6..23e08c4e6b60 100644 --- a/java/ql/lib/semmle/code/java/Member.qll +++ b/java/ql/lib/semmle/code/java/Member.qll @@ -680,13 +680,13 @@ class GetterMethod extends Method { GetterMethod() { this.hasNoParameters() and exists(ReturnStmt s, Field f | s = this.getBody().(SingletonBlock).getStmt() | - s.getResult() = f.getAnAccess() + s.getExpr() = f.getAnAccess() ) } /** Gets the field whose value is returned by this getter method. */ Field getField() { - exists(ReturnStmt r | r.getEnclosingCallable() = this | r.getResult() = result.getAnAccess()) + exists(ReturnStmt r | r.getEnclosingCallable() = this | r.getExpr() = result.getAnAccess()) } } diff --git a/java/ql/lib/semmle/code/java/PrettyPrintAst.qll b/java/ql/lib/semmle/code/java/PrettyPrintAst.qll index 3d907a5a0991..59a59cd9cdd0 100644 --- a/java/ql/lib/semmle/code/java/PrettyPrintAst.qll +++ b/java/ql/lib/semmle/code/java/PrettyPrintAst.qll @@ -257,7 +257,7 @@ private class PpUnaryExpr extends PpAst, UnaryExpr { i = 2 and result = "--" and this instanceof PostDecExpr } - override PpAst getChild(int i) { i = 1 and result = this.getExpr() } + override PpAst getChild(int i) { i = 1 and result = this.getOperand() } } private class PpCastExpr extends PpAst, CastExpr { @@ -351,9 +351,9 @@ private class PpConditionalExpr extends PpAst, ConditionalExpr { override PpAst getChild(int i) { i = 0 and result = this.getCondition() or - i = 2 and result = this.getTrueExpr() + i = 2 and result = this.getThen() or - i = 4 and result = this.getFalseExpr() + i = 4 and result = this.getElse() } } @@ -577,7 +577,7 @@ private class PpForStmt extends PpAst, ForStmt { or i = 1 + this.lastUpdateIndex() and result = ")" or - i = 2 + this.lastUpdateIndex() and result = " " and this.getStmt() instanceof BlockStmt + i = 2 + this.lastUpdateIndex() and result = " " and this.getBody() instanceof BlockStmt } private int lastInitIndex() { result = 3 + 2 * max(int j | exists(this.getInit(j))) } @@ -587,7 +587,7 @@ private class PpForStmt extends PpAst, ForStmt { } override predicate newline(int i) { - i = 2 + this.lastUpdateIndex() and not this.getStmt() instanceof BlockStmt + i = 2 + this.lastUpdateIndex() and not this.getBody() instanceof BlockStmt } override PpAst getChild(int i) { @@ -599,11 +599,11 @@ private class PpForStmt extends PpAst, ForStmt { or exists(int j | result = this.getUpdate(j) and i = 4 + this.lastInitIndex() + 2 * j) or - i = 3 + this.lastUpdateIndex() and result = this.getStmt() + i = 3 + this.lastUpdateIndex() and result = this.getBody() } override predicate indents(int i) { - i = 3 + this.lastUpdateIndex() and not this.getStmt() instanceof BlockStmt + i = 3 + this.lastUpdateIndex() and not this.getBody() instanceof BlockStmt } } @@ -616,7 +616,7 @@ private class PpEnhancedForStmt extends PpAst, EnhancedForStmt { i = 4 and result = " : " or i = 6 and - if this.getStmt() instanceof BlockStmt then result = ") " else result = ")" + if this.getBody() instanceof BlockStmt then result = ") " else result = ")" } override PpAst getChild(int i) { @@ -626,10 +626,10 @@ private class PpEnhancedForStmt extends PpAst, EnhancedForStmt { or i = 5 and result = this.getExpr() or - i = 7 and result = this.getStmt() + i = 7 and result = this.getBody() } - override predicate indents(int i) { i = 7 and not this.getStmt() instanceof BlockStmt } + override predicate indents(int i) { i = 7 and not this.getBody() instanceof BlockStmt } } private class PpWhileStmt extends PpAst, WhileStmt { @@ -638,40 +638,40 @@ private class PpWhileStmt extends PpAst, WhileStmt { or i = 2 and result = ")" or - i = 3 and result = " " and this.getStmt() instanceof BlockStmt + i = 3 and result = " " and this.getBody() instanceof BlockStmt } - override predicate newline(int i) { i = 3 and not this.getStmt() instanceof BlockStmt } + override predicate newline(int i) { i = 3 and not this.getBody() instanceof BlockStmt } override PpAst getChild(int i) { i = 1 and result = this.getCondition() or - i = 4 and result = this.getStmt() + i = 4 and result = this.getBody() } - override predicate indents(int i) { i = 4 and not this.getStmt() instanceof BlockStmt } + override predicate indents(int i) { i = 4 and not this.getBody() instanceof BlockStmt } } private class PpDoStmt extends PpAst, DoStmt { override string getPart(int i) { i = 0 and result = "do" or - i in [1, 3] and result = " " and this.getStmt() instanceof BlockStmt + i in [1, 3] and result = " " and this.getBody() instanceof BlockStmt or i = 4 and result = "while (" or i = 6 and result = ");" } - override predicate newline(int i) { i in [1, 3] and not this.getStmt() instanceof BlockStmt } + override predicate newline(int i) { i in [1, 3] and not this.getBody() instanceof BlockStmt } override PpAst getChild(int i) { - i = 2 and result = this.getStmt() + i = 2 and result = this.getBody() or i = 5 and result = this.getCondition() } - override predicate indents(int i) { i = 2 and not this.getStmt() instanceof BlockStmt } + override predicate indents(int i) { i = 2 and not this.getBody() instanceof BlockStmt } } private class PpTryStmt extends PpAst, TryStmt { @@ -854,7 +854,7 @@ private class PpSynchronizedStmt extends PpAst, SynchronizedStmt { private class PpReturnStmt extends PpAst, ReturnStmt { override string getPart(int i) { - if exists(this.getResult()) + if exists(this.getExpr()) then i = 0 and result = "return " or @@ -864,7 +864,7 @@ private class PpReturnStmt extends PpAst, ReturnStmt { ) } - override PpAst getChild(int i) { i = 1 and result = this.getResult() } + override PpAst getChild(int i) { i = 1 and result = this.getExpr() } } private class PpThrowStmt extends PpAst, ThrowStmt { diff --git a/java/ql/lib/semmle/code/java/Statement.qll b/java/ql/lib/semmle/code/java/Statement.qll index 2aea8b006ae1..4366334dfbdc 100644 --- a/java/ql/lib/semmle/code/java/Statement.qll +++ b/java/ql/lib/semmle/code/java/Statement.qll @@ -140,7 +140,7 @@ class IfStmt extends ConditionalStmt, @ifstmt { } /** A `for` loop. */ -class ForStmt extends ConditionalStmt, @forstmt { +class ForStmt extends ConditionalStmt, LoopStmtImpl, @forstmt { /** * Gets an initializer expression of the loop. * @@ -167,8 +167,15 @@ class ForStmt extends ConditionalStmt, @forstmt { index = result.getIndex() - 3 } + /** + * DEPRECATED: Use `getBody()` instead. + * + * Gets the body of this `for` loop. + */ + deprecated Stmt getStmt() { result.getParent() = this and result.getIndex() = 2 } + /** Gets the body of this `for` loop. */ - Stmt getStmt() { result.getParent() = this and result.getIndex() = 2 } + override Stmt getBody() { result.getParent() = this and result.getIndex() = 2 } /** * Gets a variable that is used as an iteration variable: it is defined, @@ -184,14 +191,14 @@ class ForStmt extends ConditionalStmt, @forstmt { Variable getAnIterationVariable() { // Check that the variable is assigned to, incremented or decremented in the update expression, and... exists(Expr update | update = this.getAnUpdate().getAChildExpr*() | - update.(UnaryAssignExpr).getExpr() = result.getAnAccess() or + update.(UnaryAssignExpr).getOperand() = result.getAnAccess() or update = result.getAnAssignedValue() ) and // ...that it is checked or used in the condition. this.getCondition().getAChildExpr*() = result.getAnAccess() } - override string pp() { result = "for (...;...;...) " + this.getStmt().pp() } + override string pp() { result = "for (...;...;...) " + this.getBody().pp() } override string toString() { result = "for (...;...;...)" } @@ -201,17 +208,24 @@ class ForStmt extends ConditionalStmt, @forstmt { } /** An enhanced `for` loop. (Introduced in Java 5.) */ -class EnhancedForStmt extends Stmt, @enhancedforstmt { +class EnhancedForStmt extends LoopStmtImpl, @enhancedforstmt { /** Gets the local variable declaration expression of this enhanced `for` loop. */ LocalVariableDeclExpr getVariable() { result.getParent() = this } /** Gets the expression over which this enhanced `for` loop iterates. */ Expr getExpr() { result.isNthChildOf(this, 1) } + /** + * DEPRECATED: Use `getBody()` instead. + * + * Gets the body of this enhanced `for` loop. + */ + deprecated Stmt getStmt() { result.getParent() = this } + /** Gets the body of this enhanced `for` loop. */ - Stmt getStmt() { result.getParent() = this } + override Stmt getBody() { result.getParent() = this } - override string pp() { result = "for (... : ...) " + this.getStmt().pp() } + override string pp() { result = "for (... : ...) " + this.getBody().pp() } override string toString() { result = "for (... : ...)" } @@ -221,14 +235,21 @@ class EnhancedForStmt extends Stmt, @enhancedforstmt { } /** A `while` loop. */ -class WhileStmt extends ConditionalStmt, @whilestmt { +class WhileStmt extends ConditionalStmt, LoopStmtImpl, @whilestmt { /** Gets the boolean condition of this `while` loop. */ override Expr getCondition() { result.getParent() = this } + /** + * DEPRECATED: Use `getBody()` instead. + * + * Gets the body of this `while` loop. + */ + deprecated Stmt getStmt() { result.getParent() = this } + /** Gets the body of this `while` loop. */ - Stmt getStmt() { result.getParent() = this } + override Stmt getBody() { result.getParent() = this } - override string pp() { result = "while (...) " + this.getStmt().pp() } + override string pp() { result = "while (...) " + this.getBody().pp() } override string toString() { result = "while (...)" } @@ -238,14 +259,21 @@ class WhileStmt extends ConditionalStmt, @whilestmt { } /** A `do` loop. */ -class DoStmt extends ConditionalStmt, @dostmt { +class DoStmt extends ConditionalStmt, LoopStmtImpl, @dostmt { /** Gets the condition of this `do` loop. */ override Expr getCondition() { result.getParent() = this } + /** + * DEPRECATED: Use `getBody()` instead. + * + * Gets the body of this `do` loop. + */ + deprecated Stmt getStmt() { result.getParent() = this } + /** Gets the body of this `do` loop. */ - Stmt getStmt() { result.getParent() = this } + override Stmt getBody() { result.getParent() = this } - override string pp() { result = "do " + this.getStmt().pp() + " while (...)" } + override string pp() { result = "do " + this.getBody().pp() + " while (...)" } override string toString() { result = "do ... while (...)" } @@ -258,30 +286,16 @@ class DoStmt extends ConditionalStmt, @dostmt { * A loop statement, including `for`, enhanced `for`, * `while` and `do` statements. */ -class LoopStmt extends Stmt { - LoopStmt() { - this instanceof ForStmt or - this instanceof EnhancedForStmt or - this instanceof WhileStmt or - this instanceof DoStmt - } - +abstract private class LoopStmtImpl extends Stmt { /** Gets the body of this loop statement. */ - Stmt getBody() { - result = this.(ForStmt).getStmt() or - result = this.(EnhancedForStmt).getStmt() or - result = this.(WhileStmt).getStmt() or - result = this.(DoStmt).getStmt() - } + abstract Stmt getBody(); /** Gets the boolean condition of this loop statement. */ - Expr getCondition() { - result = this.(ForStmt).getCondition() or - result = this.(WhileStmt).getCondition() or - result = this.(DoStmt).getCondition() - } + Expr getCondition() { none() } } +final class LoopStmt = LoopStmtImpl; + /** A `try` statement. */ class TryStmt extends Stmt, @trystmt { /** Gets the block of the `try` statement. */ @@ -627,8 +641,15 @@ class SynchronizedStmt extends Stmt, @synchronizedstmt { /** A `return` statement. */ class ReturnStmt extends Stmt, @returnstmt { + /** + * DEPRECATED: Use `getExpr()` instead. + * + * Gets the expression returned by this `return` statement, if any. + */ + deprecated Expr getResult() { result.getParent() = this } + /** Gets the expression returned by this `return` statement, if any. */ - Expr getResult() { result.getParent() = this } + Expr getExpr() { result.getParent() = this } override string pp() { result = "return ..." } diff --git a/java/ql/lib/semmle/code/java/arithmetic/Overflow.qll b/java/ql/lib/semmle/code/java/arithmetic/Overflow.qll index 471f271eb866..e82192b0fbaf 100644 --- a/java/ql/lib/semmle/code/java/arithmetic/Overflow.qll +++ b/java/ql/lib/semmle/code/java/arithmetic/Overflow.qll @@ -93,7 +93,7 @@ class ArithExpr extends Expr { ) and forall(Expr e | e = this.(BinaryExpr).getAnOperand() or - e = this.(UnaryAssignExpr).getExpr() or + e = this.(UnaryAssignExpr).getOperand() or e = this.(AssignOp).getSource() | e.getType() instanceof NumType @@ -114,7 +114,7 @@ class ArithExpr extends Expr { */ Expr getLeftOperand() { result = this.(BinaryExpr).getLeftOperand() or - result = this.(UnaryAssignExpr).getExpr() or + result = this.(UnaryAssignExpr).getOperand() or result = this.(AssignOp).getDest() } @@ -128,7 +128,7 @@ class ArithExpr extends Expr { /** Gets an operand of this arithmetic expression. */ Expr getAnOperand() { result = this.(BinaryExpr).getAnOperand() or - result = this.(UnaryAssignExpr).getExpr() or + result = this.(UnaryAssignExpr).getOperand() or result = this.(AssignOp).getSource() } } diff --git a/java/ql/lib/semmle/code/java/comparison/Comparison.qll b/java/ql/lib/semmle/code/java/comparison/Comparison.qll index 7aea0f6fb258..4a2601678e2f 100644 --- a/java/ql/lib/semmle/code/java/comparison/Comparison.qll +++ b/java/ql/lib/semmle/code/java/comparison/Comparison.qll @@ -9,7 +9,7 @@ import java * Used as basis for the transitive closure in `exprImplies`. */ private predicate exprImpliesStep(Expr e1, boolean b1, Expr e2, boolean b2) { - e1.(LogNotExpr).getExpr() = e2 and + e1.(LogNotExpr).getOperand() = e2 and b2 = b1.booleanNot() and (b1 = true or b1 = false) or diff --git a/java/ql/lib/semmle/code/java/controlflow/Guards.qll b/java/ql/lib/semmle/code/java/controlflow/Guards.qll index 0e1db1600949..49cd0d189414 100644 --- a/java/ql/lib/semmle/code/java/controlflow/Guards.qll +++ b/java/ql/lib/semmle/code/java/controlflow/Guards.qll @@ -279,9 +279,7 @@ private module GuardsInput implements SharedGuards::InputSig { } class NegateExpr extends UnaryExpr instanceof MinusExpr { - override Expr getOperand() { result = super.getExpr() } + override Expr getOperand() { result = MinusExpr.super.getOperand() } } class PreIncExpr extends UnaryExpr instanceof J::PreIncExpr { - override Expr getOperand() { result = super.getExpr() } + override Expr getOperand() { result = J::PreIncExpr.super.getOperand() } } class PreDecExpr extends UnaryExpr instanceof J::PreDecExpr { - override Expr getOperand() { result = super.getExpr() } + override Expr getOperand() { result = J::PreDecExpr.super.getOperand() } } class PostIncExpr extends UnaryExpr instanceof J::PostIncExpr { - override Expr getOperand() { result = super.getExpr() } + override Expr getOperand() { result = J::PostIncExpr.super.getOperand() } } class PostDecExpr extends UnaryExpr instanceof J::PostDecExpr { - override Expr getOperand() { result = super.getExpr() } + override Expr getOperand() { result = J::PostDecExpr.super.getOperand() } } class CopyValueExpr extends UnaryExpr { @@ -200,7 +200,7 @@ module Sem implements Semantic { } override Expr getOperand() { - result = this.(J::PlusExpr).getExpr() or + result = this.(J::PlusExpr).getOperand() or result = this.(J::AssignExpr).getSource() or result = this.(J::LocalVariableDeclExpr).getInit() } diff --git a/java/ql/lib/semmle/code/java/dataflow/TypeFlow.qll b/java/ql/lib/semmle/code/java/dataflow/TypeFlow.qll index 361b4feb54a8..9aca7fad2f2a 100644 --- a/java/ql/lib/semmle/code/java/dataflow/TypeFlow.qll +++ b/java/ql/lib/semmle/code/java/dataflow/TypeFlow.qll @@ -110,7 +110,7 @@ module FlowStepsInput implements UniversalFlow::UniversalFlowInput { n2.asSsa().(Base::SsaPhiDefinition).getAnUltimateDefinition() = n1.asSsa() or exists(ReturnStmt ret | - n2.asMethod() = ret.getEnclosingCallable() and ret.getResult() = n1.asExpr() + n2.asMethod() = ret.getEnclosingCallable() and ret.getExpr() = n1.asExpr() ) or viableImpl_v1(n2.asExpr()) = n1.asMethod() @@ -137,7 +137,7 @@ module FlowStepsInput implements UniversalFlow::UniversalFlowInput { or n2.asSsa().(Base::SsaCapturedDefinition).captures(n1.asSsa()) or - n2.asExpr().(NotNullExpr).getExpr() = n1.asExpr() + n2.asExpr().(NotNullExpr).getOperand() = n1.asExpr() } /** diff --git a/java/ql/lib/semmle/code/java/dataflow/internal/BaseSSA.qll b/java/ql/lib/semmle/code/java/dataflow/internal/BaseSSA.qll index e373340d7d7c..5e3a8550e3cc 100644 --- a/java/ql/lib/semmle/code/java/dataflow/internal/BaseSSA.qll +++ b/java/ql/lib/semmle/code/java/dataflow/internal/BaseSSA.qll @@ -87,7 +87,7 @@ private module BaseSsaImpl { result = TLocalVar(v.getCallable(), v) ) or - result.getAnAccess() = upd.(UnaryAssignExpr).getExpr() + result.getAnAccess() = upd.(UnaryAssignExpr).getOperand() } /** Holds if `n` updates the local variable `v`. */ diff --git a/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowNodes.qll b/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowNodes.qll index 9786286389c8..a280e531f91c 100644 --- a/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowNodes.qll +++ b/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowNodes.qll @@ -510,7 +510,7 @@ module Private { /** A data flow node that occurs as the result of a `ReturnStmt`. */ class ReturnNode extends Node { ReturnNode() { - exists(ReturnStmt ret | this.asExpr() = ret.getResult()) or + exists(ReturnStmt ret | this.asExpr() = ret.getExpr()) or this.(FlowSummaryNode).isReturn() } diff --git a/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowUtil.qll b/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowUtil.qll index e2e80c293ef0..9c2bb13a09f5 100644 --- a/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowUtil.qll +++ b/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowUtil.qll @@ -201,7 +201,7 @@ predicate simpleAstFlowStep(Expr e1, Expr e2) { or e2 = any(StmtExpr stmtExpr | e1 = stmtExpr.getResultExpr()) or - e2 = any(NotNullExpr nne | e1 = nne.getExpr()) + e2 = any(NotNullExpr nne | e1 = nne.getOperand()) or e2.(WhenExpr).getBranch(_).getAResult() = e1 or diff --git a/java/ql/lib/semmle/code/java/dataflow/internal/SsaImpl.qll b/java/ql/lib/semmle/code/java/dataflow/internal/SsaImpl.qll index bafb16d6ab53..409cf5863630 100644 --- a/java/ql/lib/semmle/code/java/dataflow/internal/SsaImpl.qll +++ b/java/ql/lib/semmle/code/java/dataflow/internal/SsaImpl.qll @@ -302,7 +302,7 @@ private module Cached { result = TLocalVar(v.getCallable(), v) ) or - result.getAnAccess() = upd.(UnaryAssignExpr).getExpr() + result.getAnAccess() = upd.(UnaryAssignExpr).getOperand() } /* diff --git a/java/ql/lib/semmle/code/java/dataflow/internal/rangeanalysis/SignAnalysisSpecific.qll b/java/ql/lib/semmle/code/java/dataflow/internal/rangeanalysis/SignAnalysisSpecific.qll index 4a4181604770..e4525ed36ea9 100644 --- a/java/ql/lib/semmle/code/java/dataflow/internal/rangeanalysis/SignAnalysisSpecific.qll +++ b/java/ql/lib/semmle/code/java/dataflow/internal/rangeanalysis/SignAnalysisSpecific.qll @@ -69,10 +69,10 @@ module Private { /** Returns the operand of this expression. */ Expr getOperand() { - result = this.(J::PreIncExpr).getExpr() or - result = this.(J::PreDecExpr).getExpr() or - result = this.(J::MinusExpr).getExpr() or - result = this.(J::BitNotExpr).getExpr() + result = this.(J::PreIncExpr).getOperand() or + result = this.(J::PreDecExpr).getOperand() or + result = this.(J::MinusExpr).getOperand() or + result = this.(J::BitNotExpr).getOperand() } /** Returns the operation representing this expression. */ @@ -258,12 +258,12 @@ private module Impl { /** Returns the operand of the operation if `e` is a decrement. */ Expr getDecrementOperand(Element e) { - result = e.(PostDecExpr).getExpr() or result = e.(PreDecExpr).getExpr() + result = e.(PostDecExpr).getOperand() or result = e.(PreDecExpr).getOperand() } /** Returns the operand of the operation if `e` is an increment. */ Expr getIncrementOperand(Element e) { - result = e.(PostIncExpr).getExpr() or result = e.(PreIncExpr).getExpr() + result = e.(PostIncExpr).getOperand() or result = e.(PreIncExpr).getOperand() } /** Gets the variable underlying the implicit SSA variable `v`. */ @@ -287,14 +287,14 @@ private module Impl { /** Holds if `f` is accessed in an increment operation. */ predicate fieldIncrementOperationOperand(Field f) { - any(PostIncExpr inc).getExpr() = f.getAnAccess() or - any(PreIncExpr inc).getExpr() = f.getAnAccess() + any(PostIncExpr inc).getOperand() = f.getAnAccess() or + any(PreIncExpr inc).getOperand() = f.getAnAccess() } /** Holds if `f` is accessed in a decrement operation. */ predicate fieldDecrementOperationOperand(Field f) { - any(PostDecExpr dec).getExpr() = f.getAnAccess() or - any(PreDecExpr dec).getExpr() = f.getAnAccess() + any(PostDecExpr dec).getOperand() = f.getAnAccess() or + any(PreDecExpr dec).getOperand() = f.getAnAccess() } /** Returns possible signs of `f` based on the declaration. */ @@ -316,9 +316,9 @@ private module Impl { /** Returns a sub expression of `e` for expression types where the sign depends on the child. */ Expr getASubExprWithSameSign(Expr e) { result = e.(AssignExpr).getSource() or - result = e.(PlusExpr).getExpr() or - result = e.(PostIncExpr).getExpr() or - result = e.(PostDecExpr).getExpr() or + result = e.(PlusExpr).getOperand() or + result = e.(PostIncExpr).getOperand() or + result = e.(PostDecExpr).getOperand() or result = e.(ChooseExpr).getAResultExpr() or result = e.(CastingExpr).getExpr() } diff --git a/java/ql/lib/semmle/code/java/deadcode/DeadEnumConstant.qll b/java/ql/lib/semmle/code/java/deadcode/DeadEnumConstant.qll index 3a8491b8428e..011049eec4bc 100644 --- a/java/ql/lib/semmle/code/java/deadcode/DeadEnumConstant.qll +++ b/java/ql/lib/semmle/code/java/deadcode/DeadEnumConstant.qll @@ -27,7 +27,7 @@ VarAccess valueAccess(EnumConstant e) { or exists(Assignment a | a.getSource() = valueFlow+(result)) or - exists(ReturnStmt r | r.getResult() = valueFlow+(result)) + exists(ReturnStmt r | r.getExpr() = valueFlow+(result)) or exists(LocalVariableDeclExpr v | v.getInit() = valueFlow+(result)) or diff --git a/java/ql/lib/semmle/code/java/dispatch/DispatchFlow.qll b/java/ql/lib/semmle/code/java/dispatch/DispatchFlow.qll index 2af5df281070..d4425eae2b8a 100644 --- a/java/ql/lib/semmle/code/java/dispatch/DispatchFlow.qll +++ b/java/ql/lib/semmle/code/java/dispatch/DispatchFlow.qll @@ -354,7 +354,7 @@ private module TrackLambda { predicate returnStep(Node n1, LocalSourceNode n2) { exists(ReturnStmt ret, Method m | ret.getEnclosingCallable() = m and - ret.getResult() = n1.asExpr() and + ret.getExpr() = n1.asExpr() and m = dispatch(n2.asExpr()) ) } diff --git a/java/ql/lib/semmle/code/java/dispatch/ObjFlow.qll b/java/ql/lib/semmle/code/java/dispatch/ObjFlow.qll index 239f4dd0fbc1..d5a4ee605712 100644 --- a/java/ql/lib/semmle/code/java/dispatch/ObjFlow.qll +++ b/java/ql/lib/semmle/code/java/dispatch/ObjFlow.qll @@ -53,7 +53,7 @@ private predicate viableArgParam(ArgumentNode arg, ParameterNode p) { private predicate returnStep(Node n1, Node n2) { exists(ReturnStmt ret, Method m | ret.getEnclosingCallable() = m and - ret.getResult() = n1.asExpr() and + ret.getExpr() = n1.asExpr() and pragma[only_bind_out](m) = dispatchCand(n2.asExpr()) ) } diff --git a/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll b/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll index 22f33d346df0..517f55fcc868 100644 --- a/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll +++ b/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll @@ -163,3 +163,38 @@ class WebServiceAnnotation extends Annotation { class WebServiceRefAnnotation extends Annotation { WebServiceRefAnnotation() { this.getType().hasQualifiedName("javax.xml.ws", "WebServiceRef") } } + +/* + * Annotations in the package `javax.validation.constraints`. + */ + +/** + * A `@javax.validation.constraints.Pattern` annotation. + */ +class PatternAnnotation extends Annotation, RegexMatch::Range { + PatternAnnotation() { + this.getType() + .hasQualifiedName(["javax.validation.constraints", "jakarta.validation.constraints"], + "Pattern") + } + + override Expr getRegex() { result = this.getValue("regexp") } + + override Expr getString() { + // Annotation on field accessed by direct read - value of field will match regexp + result.(FieldRead).getField() = this.getAnnotatedElement() + or + // Annotation on field accessed by getter - value of field will match regexp + result.(MethodCall).getMethod().(GetterMethod).getField() = this.getAnnotatedElement() + or + // Annotation on parameter - value of parameter will match regexp + result.(VarRead).getVariable().(Parameter) = this.getAnnotatedElement() + or + // Annotation on method - return value of method will match regexp + result.(Call).getCallee() = this.getAnnotatedElement() + // TODO - we could also consider the case where the annotation is on a type + // but this harder to model and not very common. + } + + override string getName() { result = "@javax.validation.constraints.Pattern annotation" } +} diff --git a/java/ql/lib/semmle/code/java/frameworks/JaxWS.qll b/java/ql/lib/semmle/code/java/frameworks/JaxWS.qll index 62289f737c02..8b3ab081ee0f 100644 --- a/java/ql/lib/semmle/code/java/frameworks/JaxWS.qll +++ b/java/ql/lib/semmle/code/java/frameworks/JaxWS.qll @@ -424,7 +424,7 @@ private class JaxRSXssSink extends XssSink { exists(JaxRsResourceMethod resourceMethod, ReturnStmt rs | resourceMethod = any(JaxRsResourceClass resourceClass).getAResourceMethod() and rs.getEnclosingCallable() = resourceMethod and - this.asExpr() = rs.getResult() + this.asExpr() = rs.getExpr() | not exists(resourceMethod.getProducesAnnotation()) or diff --git a/java/ql/lib/semmle/code/java/frameworks/Mockito.qll b/java/ql/lib/semmle/code/java/frameworks/Mockito.qll index a8559060d306..2613b0e5c51c 100644 --- a/java/ql/lib/semmle/code/java/frameworks/Mockito.qll +++ b/java/ql/lib/semmle/code/java/frameworks/Mockito.qll @@ -386,7 +386,7 @@ class MockitoMockedObject extends Expr { or exists(ReturnStmt ret | this.(MethodCall).getMethod() = ret.getEnclosingCallable() and - ret.getResult() instanceof MockitoMockedObject + ret.getExpr() instanceof MockitoMockedObject ) } } diff --git a/java/ql/lib/semmle/code/java/frameworks/MyBatis.qll b/java/ql/lib/semmle/code/java/frameworks/MyBatis.qll index e3f89186821b..6a354a0a42a7 100644 --- a/java/ql/lib/semmle/code/java/frameworks/MyBatis.qll +++ b/java/ql/lib/semmle/code/java/frameworks/MyBatis.qll @@ -109,7 +109,7 @@ class MyBatisInjectionSink extends DataFlow::Node { a.getType() instanceof MyBatisProvider and m.getDeclaringType() = a.getValue(["type", "value"]).(TypeLiteral).getTypeName().getType() and m.hasName(a.getValue("method").(StringLiteral).getValue()) and - exists(ReturnStmt ret | this.asExpr() = ret.getResult() and ret.getEnclosingCallable() = m) + exists(ReturnStmt ret | this.asExpr() = ret.getExpr() and ret.getEnclosingCallable() = m) ) } } diff --git a/java/ql/lib/semmle/code/java/frameworks/Regex.qll b/java/ql/lib/semmle/code/java/frameworks/Regex.qll index 56be77eae825..83d7336a341a 100644 --- a/java/ql/lib/semmle/code/java/frameworks/Regex.qll +++ b/java/ql/lib/semmle/code/java/frameworks/Regex.qll @@ -3,6 +3,7 @@ overlay[local?] module; import java +private import semmle.code.java.dataflow.DataFlow /** The class `java.util.regex.Matcher`. */ class TypeRegexMatcher extends Class { @@ -24,6 +25,16 @@ class TypeRegexPattern extends Class { TypeRegexPattern() { this.hasQualifiedName("java.util.regex", "Pattern") } } +/** + * The `compile` method of `java.util.regex.Pattern`. + */ +class PatternCompileMethod extends Method { + PatternCompileMethod() { + this.getDeclaringType() instanceof TypeRegexPattern and + this.hasName("compile") + } +} + /** * The `matches` method of `java.util.regex.Pattern`. */ @@ -59,3 +70,66 @@ class PatternLiteralField extends Field { this.hasName("LITERAL") } } + +/** A call to the `compile` method of `java.util.regex.Pattern`. */ +class PatternCompileCall extends MethodCall { + PatternCompileCall() { this.getMethod() instanceof PatternCompileMethod } +} + +/** A call to the `matcher` method of `java.util.regex.Pattern`. */ +class PatternMatcherCall extends MethodCall { + PatternMatcherCall() { this.getMethod() instanceof PatternMatcherMethod } +} + +/** A call to the `matches` method of `java.util.regex.Pattern`. */ +class PatternMatchesCall extends MethodCall, RegexMatch::Range { + PatternMatchesCall() { this.getMethod() instanceof PatternMatchesMethod } + + override Expr getRegex() { result = this.getArgument(0) } + + override Expr getString() { result = this.getArgument(1) } + + override string getName() { result = "Pattern.matches" } +} + +/** A call to the `matches` method of `java.util.regex.Matcher`. */ +class MatcherMatchesCall extends MethodCall, RegexMatch::Range { + MatcherMatchesCall() { this.getMethod() instanceof MatcherMatchesMethod } + + /** + * Gets the call to `java.util.regex.Pattern.matcher` that returned the + * qualifier of this call. This is needed to determine the string being + * matched. + */ + PatternMatcherCall getPatternMatcherCall() { + DataFlow::localExprFlow(result, this.getQualifier()) + } + + /** + * Gets the call to `java.util.regex.Pattern.compile` that returned the + * `Pattern` used by this matcher. This is needed to determine the regular + * expression being used. + */ + PatternCompileCall getPatternCompileCall() { + DataFlow::localExprFlow(result, this.getPatternMatcherCall()) + } + + override Expr getRegex() { result = this.getPatternCompileCall().getArgument(0) } + + override Expr getString() { result = this.getPatternMatcherCall().getArgument(0) } + + override Expr getAdditionalSanitizedExpr() { + // Special case for MatcherMatchesCall. Consider the following code: + // + // Matcher matcher = Pattern.compile(regexp).matcher(taintedInput); + // if (matcher.matches()) { + // sink(matcher.group(1)); + // } + // + // Even though the string is `taintedInput`, we also want to sanitize + // `matcher` as it can be used to get substrings of `taintedInput`. + result = this.getQualifier() + } + + override string getName() { result = "Matcher.matches" } +} diff --git a/java/ql/lib/semmle/code/java/frameworks/ThreadLocal.qll b/java/ql/lib/semmle/code/java/frameworks/ThreadLocal.qll index c813c0383eb6..5a550ff95013 100644 --- a/java/ql/lib/semmle/code/java/frameworks/ThreadLocal.qll +++ b/java/ql/lib/semmle/code/java/frameworks/ThreadLocal.qll @@ -15,7 +15,7 @@ private predicate threadLocalInitialValue(ClassInstanceExpr cie, Method initialV exists(RefType t, ReturnStmt ret | cie.getConstructedType().getSourceDeclaration() = t and t.getASourceSupertype+().hasQualifiedName("java.lang", "ThreadLocal") and - ret.getResult() = init and + ret.getExpr() = init and ret.getEnclosingCallable() = initialValue and initialValue.hasName("initialValue") and initialValue.getDeclaringType() = t diff --git a/java/ql/lib/semmle/code/java/frameworks/android/AsyncTask.qll b/java/ql/lib/semmle/code/java/frameworks/android/AsyncTask.qll index 1aba64a4c7e0..e7948fcd5f4d 100644 --- a/java/ql/lib/semmle/code/java/frameworks/android/AsyncTask.qll +++ b/java/ql/lib/semmle/code/java/frameworks/android/AsyncTask.qll @@ -37,7 +37,7 @@ private class AsyncTaskOnPostExecuteAdditionalValueStep extends AdditionalValueS | onPostExecute.getDeclaringType() = runInBackground.getDeclaringType() | - node1.asExpr() = any(ReturnStmt r | r.getEnclosingCallable() = runInBackground).getResult() and + node1.asExpr() = any(ReturnStmt r | r.getEnclosingCallable() = runInBackground).getExpr() and node2.asParameter() = onPostExecute.getParameter(0) ) } diff --git a/java/ql/lib/semmle/code/java/frameworks/android/Compose.qll b/java/ql/lib/semmle/code/java/frameworks/android/Compose.qll index 9123600d4e48..134e93ea4eb7 100644 --- a/java/ql/lib/semmle/code/java/frameworks/android/Compose.qll +++ b/java/ql/lib/semmle/code/java/frameworks/android/Compose.qll @@ -44,7 +44,7 @@ class LiveLiteralMethod extends Method { private predicate methodReturns(Method m, Expr res) { exists(ReturnStmt r | - r.getResult() = res and + r.getExpr() = res and r.getEnclosingCallable() = m ) } diff --git a/java/ql/lib/semmle/code/java/frameworks/android/Intent.qll b/java/ql/lib/semmle/code/java/frameworks/android/Intent.qll index 3df890c95f41..b11e4e5d4ef8 100644 --- a/java/ql/lib/semmle/code/java/frameworks/android/Intent.qll +++ b/java/ql/lib/semmle/code/java/frameworks/android/Intent.qll @@ -279,7 +279,7 @@ private predicate reaches(Expr src, Argument arg) { or exists(StmtExpr e | e.getResultExpr() = src | reaches(e, arg)) or - exists(NotNullExpr e | e.getExpr() = src | reaches(e, arg)) + exists(NotNullExpr e | e.getOperand() = src | reaches(e, arg)) or exists(WhenExpr e | e.getBranch(_).getAResult() = src | reaches(e, arg)) } diff --git a/java/ql/lib/semmle/code/java/frameworks/javaee/ejb/EJBRestrictions.qll b/java/ql/lib/semmle/code/java/frameworks/javaee/ejb/EJBRestrictions.qll index 2f5a88ba5c81..10b6e7f3df2f 100644 --- a/java/ql/lib/semmle/code/java/frameworks/javaee/ejb/EJBRestrictions.qll +++ b/java/ql/lib/semmle/code/java/frameworks/javaee/ejb/EJBRestrictions.qll @@ -138,7 +138,7 @@ ThisAccess forbiddenThisUse(Callable c) { result.getEnclosingCallable() = c and ( exists(MethodCall ma | ma.getAnArgument() = result) or - exists(ReturnStmt rs | rs.getResult() = result) + exists(ReturnStmt rs | rs.getExpr() = result) ) } diff --git a/java/ql/lib/semmle/code/java/frameworks/spring/SpringHttp.qll b/java/ql/lib/semmle/code/java/frameworks/spring/SpringHttp.qll index 5f9271c01490..d110caa1703c 100644 --- a/java/ql/lib/semmle/code/java/frameworks/spring/SpringHttp.qll +++ b/java/ql/lib/semmle/code/java/frameworks/spring/SpringHttp.qll @@ -52,7 +52,7 @@ private class SpringXssSink extends XSS::XssSink { SpringXssSink() { exists(SpringRequestMappingMethod requestMappingMethod, ReturnStmt rs | requestMappingMethod = rs.getEnclosingCallable() and - this.asExpr() = rs.getResult() and + this.asExpr() = rs.getExpr() and ( not specifiesContentType(requestMappingMethod) or isXssVulnerableContentTypeExpr(requestMappingMethod.getAProducesExpr()) diff --git a/java/ql/lib/semmle/code/java/frameworks/stapler/Stapler.qll b/java/ql/lib/semmle/code/java/frameworks/stapler/Stapler.qll index 28ca95b55413..d7563100d974 100644 --- a/java/ql/lib/semmle/code/java/frameworks/stapler/Stapler.qll +++ b/java/ql/lib/semmle/code/java/frameworks/stapler/Stapler.qll @@ -58,9 +58,9 @@ private class HttpResponseGetDescriptionStep extends AdditionalValueStep { override predicate step(DataFlow::Node n1, DataFlow::Node n2) { exists(ReturnStmt s, GenerateResponseMethod m | s.getEnclosingCallable() instanceof HudsonWebMethod and - boundOrStaticType(s.getResult(), m.getDeclaringType().getADescendant()) + boundOrStaticType(s.getExpr(), m.getDeclaringType().getADescendant()) | - n1.asExpr() = s.getResult() and + n1.asExpr() = s.getExpr() and n2.(DataFlow::InstanceParameterNode).getCallable() = m ) } diff --git a/java/ql/lib/semmle/code/java/security/ArithmeticCommon.qll b/java/ql/lib/semmle/code/java/security/ArithmeticCommon.qll index 4f4c20a5263b..9282e7666273 100644 --- a/java/ql/lib/semmle/code/java/security/ArithmeticCommon.qll +++ b/java/ql/lib/semmle/code/java/security/ArithmeticCommon.qll @@ -113,7 +113,7 @@ predicate upcastToWiderType(Expr e) { or exists(CastingExpr c | c.getExpr() = e and t2 = c.getType()) or - exists(ReturnStmt ret | ret.getResult() = e and t2 = ret.getEnclosingCallable().getReturnType()) + exists(ReturnStmt ret | ret.getExpr() = e and t2 = ret.getEnclosingCallable().getReturnType()) or exists(Parameter p | p.getAnArgument() = e and t2 = p.getType()) or diff --git a/java/ql/lib/semmle/code/java/security/FragmentInjection.qll b/java/ql/lib/semmle/code/java/security/FragmentInjection.qll index d27677b22717..7dc5f68d2d1e 100644 --- a/java/ql/lib/semmle/code/java/security/FragmentInjection.qll +++ b/java/ql/lib/semmle/code/java/security/FragmentInjection.qll @@ -25,7 +25,7 @@ class IsValidFragmentMethod extends Method { predicate isUnsafe() { this.getDeclaringType().(AndroidActivity).isExported() and forex(ReturnStmt retStmt | retStmt.getEnclosingCallable() = this | - retStmt.getResult().(BooleanLiteral).getBooleanValue() = true + retStmt.getExpr().(BooleanLiteral).getBooleanValue() = true ) } } diff --git a/java/ql/lib/semmle/code/java/security/InsecureRandomnessQuery.qll b/java/ql/lib/semmle/code/java/security/InsecureRandomnessQuery.qll index 77da25d35866..7474c977fe68 100644 --- a/java/ql/lib/semmle/code/java/security/InsecureRandomnessQuery.qll +++ b/java/ql/lib/semmle/code/java/security/InsecureRandomnessQuery.qll @@ -75,7 +75,7 @@ module InsecureRandomnessConfig implements DataFlow::ConfigSig { predicate isAdditionalFlowStep(DataFlow::Node n1, DataFlow::Node n2) { n1.asExpr() = n2.asExpr().(BinaryExpr).getAnOperand() or - n1.asExpr() = n2.asExpr().(UnaryExpr).getExpr() + n1.asExpr() = n2.asExpr().(UnaryExpr).getOperand() or exists(MethodCall mc, string methodName | mc.getMethod().hasQualifiedName("org.owasp.esapi", "Encoder", methodName) and diff --git a/java/ql/lib/semmle/code/java/security/LogInjection.qll b/java/ql/lib/semmle/code/java/security/LogInjection.qll index da5a1dc73a0c..b585c249d1eb 100644 --- a/java/ql/lib/semmle/code/java/security/LogInjection.qll +++ b/java/ql/lib/semmle/code/java/security/LogInjection.qll @@ -45,11 +45,11 @@ private class LineBreaksLogInjectionSanitizer extends LogInjectionSanitizer { } private predicate stringMethodCall( - MethodCall ma, CompileTimeConstantExpr arg0, CompileTimeConstantExpr arg1 + MethodCall mc, CompileTimeConstantExpr arg0, CompileTimeConstantExpr arg1 ) { - ma.getMethod().getDeclaringType() instanceof TypeString and - arg0 = ma.getArgument(0) and - arg1 = ma.getArgument(1) + mc.getMethod().getDeclaringType() instanceof TypeString and + arg0 = mc.getArgument(0) and + arg1 = mc.getArgument(1) } private predicate stringMethodArgument(CompileTimeConstantExpr arg) { @@ -64,22 +64,23 @@ private predicate stringMethodArgumentValueMatches(CompileTimeConstantExpr const } /** - * Holds if the return value of `ma` is sanitized against log injection attacks - * by removing line breaks from it. + * Holds if `e` is sanitized against log injection attacks by removing line + * breaks from it. */ -private predicate logInjectionSanitizer(MethodCall ma) { - exists(CompileTimeConstantExpr target, CompileTimeConstantExpr replacement | - stringMethodCall(ma, target, replacement) and +private predicate logInjectionSanitizer(Expr e) { + exists(MethodCall mc, CompileTimeConstantExpr target, CompileTimeConstantExpr replacement | + e = mc and + stringMethodCall(mc, target, replacement) and not stringMethodArgumentValueMatches(replacement, ["%\n%", "%\r%"]) | - ma.getMethod().hasName("replace") and + mc.getMethod().hasName("replace") and not replacement.getIntValue() = [10, 13] and ( target.getIntValue() = [10, 13] or // 10 == '\n', 13 == '\r' target.getStringValue() = ["\n", "\r"] ) or - ma.getMethod().hasName("replaceAll") and + mc.getMethod().hasName("replaceAll") and ( // Replace anything not in an allow list target.getStringValue().matches("[^%]") and @@ -89,6 +90,13 @@ private predicate logInjectionSanitizer(MethodCall ma) { target.getStringValue() = ["\n", "\r", "\\n", "\\r", "\\R"] ) ) + or + exists(RegexMatch rm, CompileTimeConstantExpr target | + rm instanceof Annotation and + e = rm.getASanitizedExpr() and + target = rm.getRegex() and + regexPreventsLogInjection(target.getStringValue(), true) + ) } /** @@ -96,41 +104,44 @@ private predicate logInjectionSanitizer(MethodCall ma) { * by checking if there are line breaks in `e`. */ private predicate logInjectionGuard(Guard g, Expr e, boolean branch) { - exists(MethodCall ma, CompileTimeConstantExpr target | - ma = g and - target = ma.getArgument(0) - | - ma.getMethod().getDeclaringType() instanceof TypeString and - ma.getMethod().hasName("contains") and - target.getStringValue() = ["\n", "\r"] and - e = ma.getQualifier() and + exists(MethodCall mc | mc = g | + mc.getMethod() instanceof StringContainsMethod and + mc.getArgument(0).(CompileTimeConstantExpr).getStringValue() = ["\n", "\r"] and + e = mc.getQualifier() and branch = false - or - ma.getMethod().hasName("matches") and - ( - ma.getMethod().getDeclaringType() instanceof TypeString and - e = ma.getQualifier() - or - ma.getMethod().getDeclaringType().hasQualifiedName("java.util.regex", "Pattern") and - e = ma.getArgument(1) - ) and - ( - // Allow anything except line breaks - ( - not target.getStringValue().matches("%[^%]%") and - not target.getStringValue().matches("%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%") - or - target.getStringValue().matches("%[^%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%]%") - ) and - branch = true - or - // Disallow line breaks - ( - not target.getStringValue().matches("%[^%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%]%") and - // Assuming a regex containing line breaks is correctly matching line breaks in a string - target.getStringValue().matches("%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%") - ) and - branch = false - ) ) + or + exists(RegexMatch rm, CompileTimeConstantExpr target | + rm = g and + not rm instanceof Annotation and + target = rm.getRegex() and + e = rm.getASanitizedExpr() + | + regexPreventsLogInjection(target.getStringValue(), branch) + ) +} + +/** + * Holds if `regex` matches against a pattern that allows anything except + * line breaks when `branch` is `true`, or a pattern that matches line breaks + * when `branch` is `false`. + */ +bindingset[regex] +private predicate regexPreventsLogInjection(string regex, boolean branch) { + // Allow anything except line breaks + ( + not regex.matches("%[^%]%") and + not regex.matches("%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%") + or + regex.matches("%[^%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%]%") + ) and + branch = true + or + // Disallow line breaks + ( + not regex.matches("%[^%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%]%") and + // Assuming a regex containing line breaks is correctly matching line breaks in a string + regex.matches("%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%") + ) and + branch = false } diff --git a/java/ql/lib/semmle/code/java/security/PathSanitizer.qll b/java/ql/lib/semmle/code/java/security/PathSanitizer.qll index 4685f5e48f71..788cd5429397 100644 --- a/java/ql/lib/semmle/code/java/security/PathSanitizer.qll +++ b/java/ql/lib/semmle/code/java/security/PathSanitizer.qll @@ -427,20 +427,15 @@ private class ReplaceDirectoryCharactersSanitizer extends StringReplaceOrReplace } } -/** Holds if `target` is the first argument of `matchesCall`. */ -private predicate isMatchesTarget(StringMatchesCall matchesCall, CompileTimeConstantExpr target) { - target = matchesCall.getArgument(0) -} - /** * Holds if `matchesCall` confirms that `checkedExpr` does not contain any directory characters * on the given `branch`. */ -private predicate isMatchesCall(StringMatchesCall matchesCall, Expr checkedExpr, boolean branch) { +private predicate isMatchesCall(RegexMatch regexMatch, Expr checkedExpr, boolean branch) { exists(CompileTimeConstantExpr target, string targetValue | - isMatchesTarget(matchesCall, target) and + target = regexMatch.getRegex() and target.getStringValue() = targetValue and - checkedExpr = matchesCall.getQualifier() + checkedExpr = regexMatch.getString() | ( // Allow anything except `.`, '/', '\' diff --git a/java/ql/lib/semmle/code/java/security/Sanitizers.qll b/java/ql/lib/semmle/code/java/security/Sanitizers.qll index 3f909864d2cd..e00071da2d8c 100644 --- a/java/ql/lib/semmle/code/java/security/Sanitizers.qll +++ b/java/ql/lib/semmle/code/java/security/Sanitizers.qll @@ -41,24 +41,10 @@ class SimpleTypeSanitizer extends DataFlow::Node { * make the type recursive. Otherwise use `RegexpCheckBarrier`. */ predicate regexpMatchGuardChecks(Guard guard, Expr e, boolean branch) { - exists(Method method, MethodCall mc | - method = mc.getMethod() and - guard = mc and + exists(RegexMatch rm | not rm instanceof Annotation | + guard = rm and + e = rm.getASanitizedExpr() and branch = true - | - // `String.matches` and other `matches` methods. - method.getName() = "matches" and - e = mc.getQualifier() - or - method instanceof PatternMatchesMethod and - e = mc.getArgument(1) - or - method instanceof MatcherMatchesMethod and - exists(MethodCall matcherCall | - matcherCall.getMethod() instanceof PatternMatcherMethod and - e = matcherCall.getArgument(0) and - DataFlow::localExprFlow(matcherCall, mc.getQualifier()) - ) ) } @@ -70,5 +56,10 @@ predicate regexpMatchGuardChecks(Guard guard, Expr e, boolean branch) { class RegexpCheckBarrier extends DataFlow::Node { RegexpCheckBarrier() { this = DataFlow::BarrierGuard::getABarrierNode() + or + // Annotations don't fit into the model of barrier guards because the + // annotation doesn't dominate the sanitized expression, so we instead + // treat them as barriers directly. + exists(RegexMatch rm | rm instanceof Annotation | this.asExpr() = rm.getString()) } } diff --git a/java/ql/lib/semmle/code/java/security/StaticInitializationVectorQuery.qll b/java/ql/lib/semmle/code/java/security/StaticInitializationVectorQuery.qll index a03775990541..e97a31614999 100644 --- a/java/ql/lib/semmle/code/java/security/StaticInitializationVectorQuery.qll +++ b/java/ql/lib/semmle/code/java/security/StaticInitializationVectorQuery.qll @@ -107,7 +107,7 @@ private class StaticInitializationVectorSource extends DataFlow::Node { // Reduce FPs from utility methods that return an empty array in an exceptional case not exists(ReturnStmt ret | array.getADimension().(CompileTimeConstantExpr).getIntValue() = 0 and - DataFlow::localExprFlow(array, ret.getResult()) + DataFlow::localExprFlow(array, ret.getExpr()) ) ) } diff --git a/java/ql/lib/semmle/code/java/security/UnsafeDeserializationQuery.qll b/java/ql/lib/semmle/code/java/security/UnsafeDeserializationQuery.qll index dc771a466063..4b9f5c61f591 100644 --- a/java/ql/lib/semmle/code/java/security/UnsafeDeserializationQuery.qll +++ b/java/ql/lib/semmle/code/java/security/UnsafeDeserializationQuery.qll @@ -95,7 +95,7 @@ private module SafeKryoConfig implements DataFlow::ConfigSig { ) { exists(ConstructorCall cc, FunctionalExpr fe | cc.getConstructedType() instanceof KryoPoolBuilder and - fe.asMethod().getBody().getAStmt().(ReturnStmt).getResult() = node1.asExpr() and + fe.asMethod().getBody().getAStmt().(ReturnStmt).getExpr() = node1.asExpr() and node2.asExpr() = cc and cc.getArgument(0) = fe ) diff --git a/java/ql/lib/semmle/code/java/security/UnsafeHostnameVerificationQuery.qll b/java/ql/lib/semmle/code/java/security/UnsafeHostnameVerificationQuery.qll index 60829f426f75..724bccceb1fd 100644 --- a/java/ql/lib/semmle/code/java/security/UnsafeHostnameVerificationQuery.qll +++ b/java/ql/lib/semmle/code/java/security/UnsafeHostnameVerificationQuery.qll @@ -13,7 +13,7 @@ private import semmle.code.java.dataflow.ExternalFlow */ private predicate alwaysReturnsTrue(HostnameVerifierVerify m) { forex(ReturnStmt rs | rs.getEnclosingCallable() = m | - rs.getResult().(CompileTimeConstantExpr).getBooleanValue() = true + rs.getExpr().(CompileTimeConstantExpr).getBooleanValue() = true ) } diff --git a/java/ql/lib/semmle/code/java/security/internal/ArraySizing.qll b/java/ql/lib/semmle/code/java/security/internal/ArraySizing.qll index 185b1b8a46e2..ab9ac70e7c44 100644 --- a/java/ql/lib/semmle/code/java/security/internal/ArraySizing.qll +++ b/java/ql/lib/semmle/code/java/security/internal/ArraySizing.qll @@ -49,7 +49,7 @@ class PointlessLoop extends WhileStmt { this.getCondition().(BooleanLiteral).getBooleanValue() = true and // The only `break` must be the last statement. forall(BreakStmt break | break.getTarget() = this | - this.getStmt().(BlockStmt).getLastStmt() = break + this.getBody().(BlockStmt).getLastStmt() = break ) and // No `continue` statements. not exists(ContinueStmt continue | continue.getTarget() = this) diff --git a/java/ql/lib/semmle/code/java/security/regexp/RegexInjection.qll b/java/ql/lib/semmle/code/java/security/regexp/RegexInjection.qll index 944ffca803ae..a14a07e04463 100644 --- a/java/ql/lib/semmle/code/java/security/regexp/RegexInjection.qll +++ b/java/ql/lib/semmle/code/java/security/regexp/RegexInjection.qll @@ -31,11 +31,9 @@ private class ExternalRegexInjectionSanitizer extends RegexInjectionSanitizer { */ private class PatternLiteralFlag extends RegexInjectionSanitizer { PatternLiteralFlag() { - exists(MethodCall ma, Method m, PatternLiteralField field | m = ma.getMethod() | - ma.getArgument(0) = this.asExpr() and - m.getDeclaringType() instanceof TypeRegexPattern and - m.hasName("compile") and - ma.getArgument(1) = field.getAnAccess() + exists(PatternCompileCall pcc, PatternLiteralField field | + pcc.getArgument(0) = this.asExpr() and + pcc.getArgument(1) = field.getAnAccess() ) } } diff --git a/java/ql/src/Advisory/Declarations/NonFinalImmutableField.ql b/java/ql/src/Advisory/Declarations/NonFinalImmutableField.ql index 1ca836ab2317..a94d54a92048 100644 --- a/java/ql/src/Advisory/Declarations/NonFinalImmutableField.ql +++ b/java/ql/src/Advisory/Declarations/NonFinalImmutableField.ql @@ -32,7 +32,7 @@ class AnyAssignment extends Expr { /** The expression modified by this assignment. */ Expr getDest() { this.(Assignment).getDest() = result or - this.(UnaryAssignExpr).getExpr() = result + this.(UnaryAssignExpr).getOperand() = result } } diff --git a/java/ql/src/CHANGELOG.md b/java/ql/src/CHANGELOG.md index a7307229a499..20585a7e1cc1 100644 --- a/java/ql/src/CHANGELOG.md +++ b/java/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.10.7 + +No user-facing changes. + ## 1.10.6 No user-facing changes. diff --git a/java/ql/src/Language Abuse/IterableClass.qll b/java/ql/src/Language Abuse/IterableClass.qll index a6b4c86cffda..896fc2e11607 100644 --- a/java/ql/src/Language Abuse/IterableClass.qll +++ b/java/ql/src/Language Abuse/IterableClass.qll @@ -12,7 +12,7 @@ class Iterable extends Class { exists(Method m | m.getDeclaringType().getSourceDeclaration() = this and m.getName() = "iterator" and - m.getBody().(SingletonBlock).getStmt().(ReturnStmt).getResult() = result + m.getBody().(SingletonBlock).getStmt().(ReturnStmt).getExpr() = result ) } } diff --git a/java/ql/src/Language Abuse/IterableIterator.ql b/java/ql/src/Language Abuse/IterableIterator.ql index 72dfbcd99655..f2ba1a727de7 100644 --- a/java/ql/src/Language Abuse/IterableIterator.ql +++ b/java/ql/src/Language Abuse/IterableIterator.ql @@ -30,7 +30,7 @@ class EmptyIterableIterator extends IterableIterator { .(SingletonBlock) .getStmt() .(ReturnStmt) - .getResult() + .getExpr() .(BooleanLiteral) .getBooleanValue() = false ) diff --git a/java/ql/src/Likely Bugs/Arithmetic/CondExprTypes.ql b/java/ql/src/Likely Bugs/Arithmetic/CondExprTypes.ql index 4d375864b2a8..89663e801b1e 100644 --- a/java/ql/src/Likely Bugs/Arithmetic/CondExprTypes.ql +++ b/java/ql/src/Likely Bugs/Arithmetic/CondExprTypes.ql @@ -25,5 +25,5 @@ where t instanceof PrimitiveType and not t instanceof CharType ) -select ce, "Mismatch between types of branches: $@ and $@.", ce.getTrueExpr(), - ce.getTrueExpr().getType().getName(), ce.getFalseExpr(), ce.getFalseExpr().getType().getName() +select ce, "Mismatch between types of branches: $@ and $@.", ce.getThen(), + ce.getThen().getType().getName(), ce.getElse(), ce.getElse().getType().getName() diff --git a/java/ql/src/Likely Bugs/Collections/IteratorRemoveMayFail.ql b/java/ql/src/Likely Bugs/Collections/IteratorRemoveMayFail.ql index 09d686947e00..92faee89be7b 100644 --- a/java/ql/src/Likely Bugs/Collections/IteratorRemoveMayFail.ql +++ b/java/ql/src/Likely Bugs/Collections/IteratorRemoveMayFail.ql @@ -39,7 +39,7 @@ predicate containsSpecialCollection(Expr e, SpecialCollectionCreation origin) { or exists(Call c, ReturnStmt r | e = c | r.getEnclosingCallable() = c.getCallee().getSourceDeclaration() and - containsSpecialCollection(r.getResult(), origin) + containsSpecialCollection(r.getExpr(), origin) ) } @@ -61,7 +61,7 @@ predicate iterOfSpecialCollection(Expr e, SpecialCollectionCreation origin) { or exists(Call c, ReturnStmt r | e = c | r.getEnclosingCallable() = c.getCallee().getSourceDeclaration() and - iterOfSpecialCollection(r.getResult(), origin) + iterOfSpecialCollection(r.getExpr(), origin) ) } diff --git a/java/ql/src/Likely Bugs/Collections/ReadOnlyContainer.ql b/java/ql/src/Likely Bugs/Collections/ReadOnlyContainer.ql index 2951f97d65fe..6de1e52ed98d 100644 --- a/java/ql/src/Likely Bugs/Collections/ReadOnlyContainer.ql +++ b/java/ql/src/Likely Bugs/Collections/ReadOnlyContainer.ql @@ -29,7 +29,7 @@ where exists(AssignExpr assgn | va = assgn.getDest() | assgn.getSource() instanceof FreshContainer) or // ...a return (but only if `v` is a local variable) - v instanceof LocalVariableDecl and exists(ReturnStmt ret | ret.getResult() = va) + v instanceof LocalVariableDecl and exists(ReturnStmt ret | ret.getExpr() = va) or // ...or a call to a query method on `v`. exists(MethodCall ma | va = ma.getQualifier() | ma.getMethod() instanceof ContainerQueryMethod) diff --git a/java/ql/src/Likely Bugs/Comparison/DefineEqualsWhenAddingFields.ql b/java/ql/src/Likely Bugs/Comparison/DefineEqualsWhenAddingFields.ql index 2edeea4ec57f..6695d6b677c2 100644 --- a/java/ql/src/Likely Bugs/Comparison/DefineEqualsWhenAddingFields.ql +++ b/java/ql/src/Likely Bugs/Comparison/DefineEqualsWhenAddingFields.ql @@ -32,13 +32,13 @@ predicate checksReferenceEquality(EqualsMethod em) { eq.getAnOperand().(VarAccess).getVariable() = em.getParameter(0) and ( // `{ return (ojb==this); }` - eq = blk.getStmt().(ReturnStmt).getResult() + eq = blk.getStmt().(ReturnStmt).getExpr() or // `{ if (ojb==this) return true; else return false; }` exists(IfStmt ifStmt | ifStmt = blk.getStmt() | eq = ifStmt.getCondition() and - ifStmt.getThen().(ReturnStmt).getResult().(BooleanLiteral).getBooleanValue() = true and - ifStmt.getElse().(ReturnStmt).getResult().(BooleanLiteral).getBooleanValue() = false + ifStmt.getThen().(ReturnStmt).getExpr().(BooleanLiteral).getBooleanValue() = true and + ifStmt.getElse().(ReturnStmt).getExpr().(BooleanLiteral).getBooleanValue() = false ) ) ) @@ -47,7 +47,7 @@ predicate checksReferenceEquality(EqualsMethod em) { // More precisely, we check whether the body of `em` is of the form `return super.equals(o);`, // where `o` is the (only) parameter of `em`, and the invoked method is a reference equality check. exists(SuperMethodCall sup | - sup = em.getBody().(SingletonBlock).getStmt().(ReturnStmt).getResult() and + sup = em.getBody().(SingletonBlock).getStmt().(ReturnStmt).getExpr() and sup.getArgument(0) = em.getParameter(0).getAnAccess() and checksReferenceEquality(sup.getCallee()) ) diff --git a/java/ql/src/Likely Bugs/Comparison/Equality.qll b/java/ql/src/Likely Bugs/Comparison/Equality.qll index 9aeb4a46047e..babd41157426 100644 --- a/java/ql/src/Likely Bugs/Comparison/Equality.qll +++ b/java/ql/src/Likely Bugs/Comparison/Equality.qll @@ -22,7 +22,7 @@ class RefiningEquals extends EqualsMethod { // ... on the (only) parameter of this method ... sup.getArgument(0).(VarAccess).getVariable() = this.getAParameter() and // ... and its result is implied by the result of `ret`. - exprImplies(ret.getResult(), true, sup, true) + exprImplies(ret.getExpr(), true, sup, true) ) ) } diff --git a/java/ql/src/Likely Bugs/Comparison/MissingInstanceofInEquals.ql b/java/ql/src/Likely Bugs/Comparison/MissingInstanceofInEquals.ql index 7cd495f90733..2c33143ccf0f 100644 --- a/java/ql/src/Likely Bugs/Comparison/MissingInstanceofInEquals.ql +++ b/java/ql/src/Likely Bugs/Comparison/MissingInstanceofInEquals.ql @@ -52,7 +52,7 @@ class ReferenceEquals extends EqualsMethod { exists(BlockStmt b, ReturnStmt ret, EQExpr eq | this.getBody() = b and b.getStmt(0) = ret and - ret.getResult() = eq and + ret.getExpr() = eq and eq.getAnOperand() = this.getAParameter().getAnAccess() and (eq.getAnOperand() instanceof ThisAccess or eq.getAnOperand() instanceof FieldAccess) ) diff --git a/java/ql/src/Likely Bugs/Comparison/StringComparison.ql b/java/ql/src/Likely Bugs/Comparison/StringComparison.ql index cfca2c8d7ddb..9818f965e05c 100644 --- a/java/ql/src/Likely Bugs/Comparison/StringComparison.ql +++ b/java/ql/src/Likely Bugs/Comparison/StringComparison.ql @@ -27,8 +27,8 @@ class StringValue extends Expr { ) or // Ternary conditional operator. - this.(ConditionalExpr).getTrueExpr().(StringValue).isInterned() and - this.(ConditionalExpr).getFalseExpr().(StringValue).isInterned() + this.(ConditionalExpr).getThen().(StringValue).isInterned() and + this.(ConditionalExpr).getElse().(StringValue).isInterned() or // Values of type `String` that are compile-time constant expressions (JLS 15.28). this instanceof CompileTimeConstantExpr @@ -38,7 +38,7 @@ class StringValue extends Expr { or // Method accesses whose results are all interned. forex(ReturnStmt rs | rs.getEnclosingCallable() = this.(MethodCall).getMethod() | - rs.getResult().(StringValue).isInterned() + rs.getExpr().(StringValue).isInterned() ) } } diff --git a/java/ql/src/Likely Bugs/Comparison/UselessComparisonTest.ql b/java/ql/src/Likely Bugs/Comparison/UselessComparisonTest.ql index 5c2fd94a9179..d9a1f8a3f65b 100644 --- a/java/ql/src/Likely Bugs/Comparison/UselessComparisonTest.ql +++ b/java/ql/src/Likely Bugs/Comparison/UselessComparisonTest.ql @@ -134,8 +134,8 @@ Expr overFlowCand() { result.(LocalVariableDeclExpr).getInit() = overFlowCand() or exists(ConditionalExpr c | c = result | - c.getTrueExpr() = overFlowCand() and - c.getFalseExpr() = overFlowCand() + c.getThen() = overFlowCand() and + c.getElse() = overFlowCand() ) } diff --git a/java/ql/src/Likely Bugs/Concurrency/NonSynchronizedOverride.ql b/java/ql/src/Likely Bugs/Concurrency/NonSynchronizedOverride.ql index 3dcd44a5273d..25eaca21aba1 100644 --- a/java/ql/src/Likely Bugs/Concurrency/NonSynchronizedOverride.ql +++ b/java/ql/src/Likely Bugs/Concurrency/NonSynchronizedOverride.ql @@ -42,7 +42,7 @@ predicate delegatingOverride(Method sub, Method sup) { delegatingSuperCall(stmt.(ExprStmt).getExpr(), sup) or // ...or a `return` statement containing such a call. - delegatingSuperCall(stmt.(ReturnStmt).getResult(), sup) + delegatingSuperCall(stmt.(ReturnStmt).getExpr(), sup) ) ) } diff --git a/java/ql/src/Likely Bugs/Serialization/NonSerializableInnerClass.ql b/java/ql/src/Likely Bugs/Serialization/NonSerializableInnerClass.ql index 520dba86c418..316352b9b687 100644 --- a/java/ql/src/Likely Bugs/Serialization/NonSerializableInnerClass.ql +++ b/java/ql/src/Likely Bugs/Serialization/NonSerializableInnerClass.ql @@ -32,7 +32,7 @@ predicate castTo(ClassInstanceExpr cie, RefType to) { or exists(Call call, int n | call.getArgument(n) = cie | to = call.getCallee().getParameterType(n)) or - exists(ReturnStmt ret | ret.getResult() = cie | to = ret.getEnclosingCallable().getReturnType()) + exists(ReturnStmt ret | ret.getExpr() = cie | to = ret.getEnclosingCallable().getReturnType()) or exists(ArrayCreationExpr ace | ace.getInit().getAnInit() = cie | to = ace.getType().(Array).getComponentType() diff --git a/java/ql/src/Likely Bugs/Statements/Chaining.qll b/java/ql/src/Likely Bugs/Statements/Chaining.qll index bb7fba549e7b..a02c07fac42a 100644 --- a/java/ql/src/Likely Bugs/Statements/Chaining.qll +++ b/java/ql/src/Likely Bugs/Statements/Chaining.qll @@ -31,13 +31,13 @@ private predicate nonChaining(Method m) { private predicate nonChainingReturn(Method m, ReturnStmt ret) { // The wrong `this` is returned. - ret.getResult() instanceof ThisAccess and - ret.getResult().getType() != m.getDeclaringType() + ret.getExpr() instanceof ThisAccess and + ret.getExpr().getType() != m.getDeclaringType() or // A method call to the wrong method is returned. - ret.getResult() instanceof MethodCall and + ret.getExpr() instanceof MethodCall and exists(MethodCall delegateCall, Method delegate | - delegateCall = ret.getResult() and + delegateCall = ret.getExpr() and delegate = delegateCall.getMethod() | delegate.getDeclaringType() != m.getDeclaringType() @@ -54,7 +54,7 @@ private predicate nonChainingReturn(Method m, ReturnStmt ret) { or // Something else is returned. not ( - ret.getResult() instanceof ThisAccess or - ret.getResult() instanceof MethodCall + ret.getExpr() instanceof ThisAccess or + ret.getExpr() instanceof MethodCall ) } diff --git a/java/ql/src/Likely Bugs/Statements/ImpossibleCast.ql b/java/ql/src/Likely Bugs/Statements/ImpossibleCast.ql index 753c40774f6f..1232e775be50 100644 --- a/java/ql/src/Likely Bugs/Statements/ImpossibleCast.ql +++ b/java/ql/src/Likely Bugs/Statements/ImpossibleCast.ql @@ -45,13 +45,13 @@ predicate castFlow(ArrayCast ce, Variable v) { } predicate returnedFrom(ArrayCast ce, Method m) { - exists(ReturnStmt ret | ret.getEnclosingCallable() = m | ret.getResult() = ce) + exists(ReturnStmt ret | ret.getEnclosingCallable() = m | ret.getExpr() = ce) or exists(Variable v | castFlow(ce, v) | returnedVariableFrom(v, m)) } predicate returnedVariableFrom(Variable v, Method m) { - exists(ReturnStmt ret | ret.getResult() = v.getAnAccess() and ret.getEnclosingCallable() = m) + exists(ReturnStmt ret | ret.getExpr() = v.getAnAccess() and ret.getEnclosingCallable() = m) } predicate rawTypeConversion(RawType source, ParameterizedType target) { diff --git a/java/ql/src/Likely Bugs/Termination/SpinOnField.ql b/java/ql/src/Likely Bugs/Termination/SpinOnField.ql index 7cfb2308c966..1b4185531cad 100644 --- a/java/ql/src/Likely Bugs/Termination/SpinOnField.ql +++ b/java/ql/src/Likely Bugs/Termination/SpinOnField.ql @@ -37,12 +37,12 @@ class EmptyLoop extends Stmt { exists(ForStmt stmt | stmt = this | not exists(stmt.getAnInit()) and not exists(stmt.getAnUpdate()) and - stmt.getStmt() instanceof Empty + stmt.getBody() instanceof Empty ) or - this.(WhileStmt).getStmt() instanceof Empty + this.(WhileStmt).getBody() instanceof Empty or - this.(DoStmt).getStmt() instanceof Empty + this.(DoStmt).getBody() instanceof Empty } Expr getCondition() { diff --git a/java/ql/src/Security/CWE/CWE-338/JHipsterGeneratedPRNG.ql b/java/ql/src/Security/CWE/CWE-338/JHipsterGeneratedPRNG.ql index c51e5d4acc57..d94436f2127c 100644 --- a/java/ql/src/Security/CWE/CWE-338/JHipsterGeneratedPRNG.ql +++ b/java/ql/src/Security/CWE/CWE-338/JHipsterGeneratedPRNG.ql @@ -41,7 +41,7 @@ private class VulnerableJHipsterRandomUtilMethod extends Method { this.getReturnType() instanceof TypeString and exists(ReturnStmt s | s = this.getBody().(SingletonBlock).getStmt() and - s.getResult() instanceof PredictableApacheRandomStringUtilsMethodCall + s.getExpr() instanceof PredictableApacheRandomStringUtilsMethodCall ) } } diff --git a/java/ql/src/Security/CWE/CWE-367/TOCTOURace.ql b/java/ql/src/Security/CWE/CWE-367/TOCTOURace.ql index 868085524337..521c7a1ca909 100644 --- a/java/ql/src/Security/CWE/CWE-367/TOCTOURace.ql +++ b/java/ql/src/Security/CWE/CWE-367/TOCTOURace.ql @@ -96,7 +96,7 @@ predicate probablyNeverEscapes(LocalVariableDecl v) { // Not assigned directly to another variable. not exists(Assignment a | a.getSource() = v.getAnAccess()) and // Not returned. - not exists(ReturnStmt r | r.getResult() = v.getAnAccess()) and + not exists(ReturnStmt r | r.getExpr() = v.getAnAccess()) and // All assignments are to new instances of a class. forex(Expr e | e = v.getAnAssignedValue() | e instanceof ClassInstanceExpr) } diff --git a/java/ql/src/Security/CWE/CWE-835/InfiniteLoop.ql b/java/ql/src/Security/CWE/CWE-835/InfiniteLoop.ql index a04cfd6ac43f..ef167189ebfe 100644 --- a/java/ql/src/Security/CWE/CWE-835/InfiniteLoop.ql +++ b/java/ql/src/Security/CWE/CWE-835/InfiniteLoop.ql @@ -49,7 +49,7 @@ predicate subCondition(Expr cond, Expr subcond, boolean negated) { or subCondition(cond.(OrLogicalExpr).getAnOperand(), subcond, negated) or - subCondition(cond.(LogNotExpr).getExpr(), subcond, negated.booleanNot()) + subCondition(cond.(LogNotExpr).getOperand(), subcond, negated.booleanNot()) } from diff --git a/java/ql/src/Violations of Best Practice/Boolean Logic/SimplifyBoolExpr.ql b/java/ql/src/Violations of Best Practice/Boolean Logic/SimplifyBoolExpr.ql index 9b87a3589056..6ff4956da8c0 100644 --- a/java/ql/src/Violations of Best Practice/Boolean Logic/SimplifyBoolExpr.ql +++ b/java/ql/src/Violations of Best Practice/Boolean Logic/SimplifyBoolExpr.ql @@ -40,9 +40,9 @@ class BoolCompare extends EqualityTest { predicate conditionalWithBool(ConditionalExpr c, string pattern, string rewrite) { exists(boolean truebranch | - c.getTrueExpr().(BooleanLiteral).getBooleanValue() = truebranch and - not c.getFalseExpr() instanceof BooleanLiteral and - not c.getFalseExpr().getType() instanceof NullType and + c.getThen().(BooleanLiteral).getBooleanValue() = truebranch and + not c.getElse() instanceof BooleanLiteral and + not c.getElse().getType() instanceof NullType and ( truebranch = true and pattern = "A ? true : B" and rewrite = "A || B" or @@ -51,9 +51,9 @@ predicate conditionalWithBool(ConditionalExpr c, string pattern, string rewrite) ) or exists(boolean falsebranch | - not c.getTrueExpr() instanceof BooleanLiteral and - not c.getTrueExpr().getType() instanceof NullType and - c.getFalseExpr().(BooleanLiteral).getBooleanValue() = falsebranch and + not c.getThen() instanceof BooleanLiteral and + not c.getThen().getType() instanceof NullType and + c.getElse().(BooleanLiteral).getBooleanValue() = falsebranch and ( falsebranch = true and pattern = "A ? B : true" and rewrite = "!A || B" or @@ -62,8 +62,8 @@ predicate conditionalWithBool(ConditionalExpr c, string pattern, string rewrite) ) or exists(boolean truebranch, boolean falsebranch | - c.getTrueExpr().(BooleanLiteral).getBooleanValue() = truebranch and - c.getFalseExpr().(BooleanLiteral).getBooleanValue() = falsebranch and + c.getThen().(BooleanLiteral).getBooleanValue() = truebranch and + c.getElse().(BooleanLiteral).getBooleanValue() = falsebranch and ( truebranch = true and falsebranch = false and pattern = "A ? true : false" and rewrite = "A" or @@ -98,9 +98,9 @@ where or conditionalWithBool(e, pattern, rewrite) or - e.(LogNotExpr).getExpr().(ComparisonOrEquality).negate(pattern, rewrite) + e.(LogNotExpr).getOperand().(ComparisonOrEquality).negate(pattern, rewrite) or - e.(LogNotExpr).getExpr() instanceof LogNotExpr and + e.(LogNotExpr).getOperand() instanceof LogNotExpr and pattern = "!!A" and rewrite = "A" ) diff --git a/java/ql/src/Violations of Best Practice/Boxed Types/BoxedVariable.ql b/java/ql/src/Violations of Best Practice/Boxed Types/BoxedVariable.ql index fec9a2e8e442..713fdad5726f 100644 --- a/java/ql/src/Violations of Best Practice/Boxed Types/BoxedVariable.ql +++ b/java/ql/src/Violations of Best Practice/Boxed Types/BoxedVariable.ql @@ -35,7 +35,7 @@ predicate notDeliberatelyBoxed(LocalBoxedVar v) { ) or exists(ReturnStmt ret | - ret.getResult() = a and + ret.getExpr() = a and ret.getEnclosingCallable().getReturnType() instanceof RefType ) ) diff --git a/java/ql/src/Violations of Best Practice/Dead Code/DeadStoreOfLocal.ql b/java/ql/src/Violations of Best Practice/Dead Code/DeadStoreOfLocal.ql index 3f96f43bc249..0f45b9cae538 100644 --- a/java/ql/src/Violations of Best Practice/Dead Code/DeadStoreOfLocal.ql +++ b/java/ql/src/Violations of Best Practice/Dead Code/DeadStoreOfLocal.ql @@ -15,7 +15,7 @@ import java import DeadLocals -predicate minusOne(MinusExpr e) { e.getExpr().(Literal).getValue() = "1" } +predicate minusOne(MinusExpr e) { e.getOperand().(Literal).getValue() = "1" } predicate flowStep(Expr decl, Expr init) { decl = init diff --git a/java/ql/src/Violations of Best Practice/Dead Code/NonAssignedFields.ql b/java/ql/src/Violations of Best Practice/Dead Code/NonAssignedFields.ql index 28f06c4edfc0..fd2cac889014 100644 --- a/java/ql/src/Violations of Best Practice/Dead Code/NonAssignedFields.ql +++ b/java/ql/src/Violations of Best Practice/Dead Code/NonAssignedFields.ql @@ -66,7 +66,7 @@ where fr.getField() = f and not f.getDeclaringType() instanceof EnumType and forall(Assignment ae | ae.getDest() = f.getAnAccess() | ae.getSource() instanceof NullLiteral) and - not exists(UnaryAssignExpr ua | ua.getExpr() = f.getAnAccess()) and + not exists(UnaryAssignExpr ua | ua.getOperand() = f.getAnAccess()) and not f.isFinal() and // Exclude fields that may be accessed reflectively. not reflectivelyWritten(f) and diff --git a/java/ql/src/Violations of Best Practice/Implementation Hiding/ExposeRepresentation.ql b/java/ql/src/Violations of Best Practice/Implementation Hiding/ExposeRepresentation.ql index b5d27655f8d9..205023202865 100644 --- a/java/ql/src/Violations of Best Practice/Implementation Hiding/ExposeRepresentation.ql +++ b/java/ql/src/Violations of Best Practice/Implementation Hiding/ExposeRepresentation.ql @@ -51,7 +51,7 @@ predicate storesArray(Callable c, int i, Field f) { predicate returnsArray(Callable c, Field f) { f.getDeclaringType() = c.getDeclaringType().getAnAncestor().getSourceDeclaration() and relevantType(f.getType()) and - exists(ReturnStmt rs | rs.getEnclosingCallable() = c and rs.getResult() = f.getAnAccess()) and + exists(ReturnStmt rs | rs.getEnclosingCallable() = c and rs.getExpr() = f.getAnAccess()) and not c.isStatic() } @@ -71,7 +71,7 @@ predicate mayWriteToArray(Expr modified) { ) or // return __array__; ... method()[1] = 0 - exists(ReturnStmt rs | modified = rs.getResult() and relevantType(modified.getType()) | + exists(ReturnStmt rs | modified = rs.getExpr() and relevantType(modified.getType()) | exists(Callable enclosing, MethodCall ma | enclosing = rs.getEnclosingCallable() and ma.getMethod().getSourceDeclaration() = enclosing | diff --git a/java/ql/src/Violations of Best Practice/Implementation Hiding/StaticArray.ql b/java/ql/src/Violations of Best Practice/Implementation Hiding/StaticArray.ql index 84bc421ee665..ef3e6bd814a2 100644 --- a/java/ql/src/Violations of Best Practice/Implementation Hiding/StaticArray.ql +++ b/java/ql/src/Violations of Best Practice/Implementation Hiding/StaticArray.ql @@ -28,8 +28,8 @@ predicate nonEmptyArrayLiteralOrNull(Expr e) { e instanceof NullLiteral or exists(ConditionalExpr cond | cond = e | - nonEmptyArrayLiteralOrNull(cond.getTrueExpr()) and - nonEmptyArrayLiteralOrNull(cond.getFalseExpr()) + nonEmptyArrayLiteralOrNull(cond.getThen()) and + nonEmptyArrayLiteralOrNull(cond.getElse()) ) } diff --git a/java/ql/src/Violations of Best Practice/Naming Conventions/ConfusingOverloading.ql b/java/ql/src/Violations of Best Practice/Naming Conventions/ConfusingOverloading.ql index 0a1e8785b4ec..fa3ea20f05f4 100644 --- a/java/ql/src/Violations of Best Practice/Naming Conventions/ConfusingOverloading.ql +++ b/java/ql/src/Violations of Best Practice/Naming Conventions/ConfusingOverloading.ql @@ -126,7 +126,7 @@ private predicate delegate(Method caller, Method callee) { exists(MethodCall ma | ma.getMethod() = callee | exists(Stmt stmt | stmt = caller.getBody().(SingletonBlock).getStmt() | wrappedAccess(stmt.(ExprStmt).getExpr(), ma) or - wrappedAccess(stmt.(ReturnStmt).getResult(), ma) + wrappedAccess(stmt.(ReturnStmt).getExpr(), ma) ) and forex(Parameter p, int i, Expr arg | p = caller.getParameter(i) and ma.getArgument(i) = arg | // The parameter is propagated without modification. diff --git a/java/ql/src/Violations of Best Practice/Naming Conventions/Shadowing.qll b/java/ql/src/Violations of Best Practice/Naming Conventions/Shadowing.qll index 561c57b7cd9b..02f00d4ffb22 100644 --- a/java/ql/src/Violations of Best Practice/Naming Conventions/Shadowing.qll +++ b/java/ql/src/Violations of Best Practice/Naming Conventions/Shadowing.qll @@ -3,7 +3,7 @@ import java predicate getterFor(Method m, Field f) { m.getName().matches("get%") and m.getDeclaringType() = f.getDeclaringType() and - exists(ReturnStmt ret | ret.getEnclosingCallable() = m and ret.getResult() = f.getAnAccess()) + exists(ReturnStmt ret | ret.getEnclosingCallable() = m and ret.getExpr() = f.getAnAccess()) } predicate setterFor(Method m, Field f) { diff --git a/java/ql/src/Violations of Best Practice/legacy/AutoBoxing.ql b/java/ql/src/Violations of Best Practice/legacy/AutoBoxing.ql index c6d8d796309f..0fc6527d258c 100644 --- a/java/ql/src/Violations of Best Practice/legacy/AutoBoxing.ql +++ b/java/ql/src/Violations of Best Practice/legacy/AutoBoxing.ql @@ -56,9 +56,7 @@ predicate boxed(PrimitiveExpr e) { or flowTarget(e).getType() instanceof BoxedType or - exists(ConditionalExpr cond | cond instanceof BoxedExpr | - cond.getTrueExpr() = e or cond.getFalseExpr() = e - ) + exists(ConditionalExpr cond | cond instanceof BoxedExpr | cond.getABranchExpr() = e) } /** diff --git a/java/ql/src/change-notes/released/1.10.7.md b/java/ql/src/change-notes/released/1.10.7.md new file mode 100644 index 000000000000..14e7f9a8ecc1 --- /dev/null +++ b/java/ql/src/change-notes/released/1.10.7.md @@ -0,0 +1,3 @@ +## 1.10.7 + +No user-facing changes. diff --git a/java/ql/src/codeql-pack.release.yml b/java/ql/src/codeql-pack.release.yml index 4e10f150f2e7..6e2189b76c6d 100644 --- a/java/ql/src/codeql-pack.release.yml +++ b/java/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.10.6 +lastReleaseVersion: 1.10.7 diff --git a/java/ql/src/experimental/Security/CWE/CWE-094/SpringViewManipulationLib.qll b/java/ql/src/experimental/Security/CWE/CWE-094/SpringViewManipulationLib.qll index 5d65431b415a..c9dc2bda6c7b 100644 --- a/java/ql/src/experimental/Security/CWE/CWE-094/SpringViewManipulationLib.qll +++ b/java/ql/src/experimental/Security/CWE/CWE-094/SpringViewManipulationLib.qll @@ -125,10 +125,10 @@ private class StringFormatMethod extends StringCombiningMethod { class SpringViewManipulationSink extends DataFlow::ExprNode { SpringViewManipulationSink() { exists(ReturnStmt r, SpringRequestMappingMethod m | - r.getResult() = this.asExpr() and + r.getExpr() = this.asExpr() and m.getBody().getAStmt() = r and not m.isResponseBody() and - r.getResult().getType() instanceof TypeString + r.getExpr().getType() instanceof TypeString ) or exists(ConstructorCall c | c.getConstructedType() instanceof ModelAndView | diff --git a/java/ql/src/experimental/Security/CWE/CWE-295/JxBrowserWithoutCertValidation.ql b/java/ql/src/experimental/Security/CWE/CWE-295/JxBrowserWithoutCertValidation.ql index c53c2cacdaed..cb340ce0f69b 100644 --- a/java/ql/src/experimental/Security/CWE/CWE-295/JxBrowserWithoutCertValidation.ql +++ b/java/ql/src/experimental/Security/CWE/CWE-295/JxBrowserWithoutCertValidation.ql @@ -48,7 +48,7 @@ private class JxBrowserLoadHandler extends RefType { private predicate isOnCertificateErrorMethodSafe(Method m) { forex(ReturnStmt rs | rs.getEnclosingCallable() = m | - rs.getResult().(CompileTimeConstantExpr).getBooleanValue() = true + rs.getExpr().(CompileTimeConstantExpr).getBooleanValue() = true ) } diff --git a/java/ql/src/experimental/Security/CWE/CWE-625/PermissiveDotRegexQuery.qll b/java/ql/src/experimental/Security/CWE/CWE-625/PermissiveDotRegexQuery.qll index f8e328902504..2c372d1778c6 100644 --- a/java/ql/src/experimental/Security/CWE/CWE-625/PermissiveDotRegexQuery.qll +++ b/java/ql/src/experimental/Security/CWE/CWE-625/PermissiveDotRegexQuery.qll @@ -7,7 +7,7 @@ private import semmle.code.java.dataflow.FlowSources import experimental.semmle.code.java.security.SpringUrlRedirect import semmle.code.java.controlflow.Guards import semmle.code.java.security.UrlRedirect -import Regex +private import semmle.code.java.frameworks.Regex overlay[local?] private class ActivateModels extends ActiveExperimentalModels { @@ -77,17 +77,12 @@ private class SpringUriInputParameterSource extends DataFlow::Node { */ private class CompileRegexSink extends DataFlow::ExprNode { CompileRegexSink() { - exists(MethodCall ma, Method m | m = ma.getMethod() | - ( - ma.getArgument(0) = this.asExpr() and - ( - m instanceof StringMatchMethod // input.matches(regexPattern) - or - m instanceof PatternCompileMethod // p = Pattern.compile(regexPattern) - or - m instanceof PatternMatchMethod // p = Pattern.matches(regexPattern, input) - ) - ) + exists(MethodCall ma | ma.getArgument(0) = this.asExpr() | + ma instanceof StringMatchesCall // input.matches(regexPattern) + or + ma instanceof PatternCompileCall // p = Pattern.compile(regexPattern) + or + ma instanceof PatternMatchesCall // p = Pattern.matches(regexPattern, input) ) } } @@ -107,7 +102,7 @@ private module PermissiveDotRegexConfig implements DataFlow::ConfigSig { ma.getMethod() instanceof PatternCompileMethod and ma.getArgument(1) = f.getAnAccess() and f.hasName("DOTALL") and - f.getDeclaringType() instanceof Pattern and + f.getDeclaringType() instanceof TypeRegexPattern and node.asExpr() = ma.getArgument(0) ) } @@ -147,11 +142,11 @@ module MatchRegexConfig implements DataFlow::ConfigSig { ) and exists(MethodCall ma | PermissiveDotRegexFlow::flowToExpr(ma.getArgument(0)) | // input.matches(regexPattern) - ma.getMethod() instanceof StringMatchMethod and + ma instanceof StringMatchesCall and ma.getQualifier() = sink.asExpr() or // p = Pattern.compile(regexPattern); p.matcher(input) - ma.getMethod() instanceof PatternCompileMethod and + ma instanceof PatternCompileCall and exists(MethodCall pma | pma.getMethod() instanceof PatternMatcherMethod and sink.asExpr() = pma.getArgument(0) and @@ -159,7 +154,7 @@ module MatchRegexConfig implements DataFlow::ConfigSig { ) or // p = Pattern.matches(regexPattern, input) - ma.getMethod() instanceof PatternMatchMethod and + ma instanceof PatternMatchesCall and sink.asExpr() = ma.getArgument(1) ) } @@ -176,28 +171,14 @@ abstract class MatchRegexSink extends DataFlow::ExprNode { } * A string being matched against a regular expression. */ private class StringMatchRegexSink extends MatchRegexSink { - StringMatchRegexSink() { - exists(MethodCall ma, Method m | m = ma.getMethod() | - ( - m instanceof StringMatchMethod and - ma.getQualifier() = this.asExpr() - ) - ) - } + StringMatchRegexSink() { any(StringMatchesCall mc).getQualifier() = this.asExpr() } } /** * A string being matched against a regular expression using a pattern. */ private class PatternMatchRegexSink extends MatchRegexSink { - PatternMatchRegexSink() { - exists(MethodCall ma, Method m | m = ma.getMethod() | - ( - m instanceof PatternMatchMethod and - ma.getArgument(1) = this.asExpr() - ) - ) - } + PatternMatchRegexSink() { any(PatternMatchesCall mc).getArgument(1) = this.asExpr() } } /** diff --git a/java/ql/src/experimental/Security/CWE/CWE-625/Regex.qll b/java/ql/src/experimental/Security/CWE/CWE-625/Regex.qll deleted file mode 100644 index e605f31a0b35..000000000000 --- a/java/ql/src/experimental/Security/CWE/CWE-625/Regex.qll +++ /dev/null @@ -1,51 +0,0 @@ -/** Provides methods related to regular expression matching. */ -deprecated module; - -import java - -/** - * The class `java.util.regex.Pattern`. - */ -class Pattern extends RefType { - Pattern() { this.hasQualifiedName("java.util.regex", "Pattern") } -} - -/** - * The method `compile` of `java.util.regex.Pattern`. - */ -class PatternCompileMethod extends Method { - PatternCompileMethod() { - this.getDeclaringType().getASupertype*() instanceof Pattern and - this.hasName("compile") - } -} - -/** - * The method `matches` of `java.util.regex.Pattern`. - */ -class PatternMatchMethod extends Method { - PatternMatchMethod() { - this.getDeclaringType().getASupertype*() instanceof Pattern and - this.hasName("matches") - } -} - -/** - * The method `matcher` of `java.util.regex.Pattern`. - */ -class PatternMatcherMethod extends Method { - PatternMatcherMethod() { - this.getDeclaringType().getASupertype*() instanceof Pattern and - this.hasName("matcher") - } -} - -/** - * The method `matches` of `java.lang.String`. - */ -class StringMatchMethod extends Method { - StringMatchMethod() { - this.getDeclaringType().getASupertype*() instanceof TypeString and - this.hasName("matches") - } -} diff --git a/java/ql/src/qlpack.yml b/java/ql/src/qlpack.yml index 570c8bf7e184..fda7663d6864 100644 --- a/java/ql/src/qlpack.yml +++ b/java/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/java-queries -version: 1.10.6 +version: 1.10.8-dev groups: - java - queries diff --git a/java/ql/test-kotlin1/library-tests/exprs/unaryOp.ql b/java/ql/test-kotlin1/library-tests/exprs/unaryOp.ql index 9e7359e1e075..bce290e4afc8 100644 --- a/java/ql/test-kotlin1/library-tests/exprs/unaryOp.ql +++ b/java/ql/test-kotlin1/library-tests/exprs/unaryOp.ql @@ -29,7 +29,7 @@ class NoMaybeElement extends MaybeElement { } MaybeElement op(UnaryExpr e) { - if exists(e.getExpr()) then result = TElement(e.getExpr()) else result = TNoElement() + if exists(e.getOperand()) then result = TElement(e.getOperand()) else result = TNoElement() } from Expr e diff --git a/java/ql/test-kotlin2/library-tests/exprs/unaryOp.ql b/java/ql/test-kotlin2/library-tests/exprs/unaryOp.ql index 9e7359e1e075..bce290e4afc8 100644 --- a/java/ql/test-kotlin2/library-tests/exprs/unaryOp.ql +++ b/java/ql/test-kotlin2/library-tests/exprs/unaryOp.ql @@ -29,7 +29,7 @@ class NoMaybeElement extends MaybeElement { } MaybeElement op(UnaryExpr e) { - if exists(e.getExpr()) then result = TElement(e.getExpr()) else result = TNoElement() + if exists(e.getOperand()) then result = TElement(e.getOperand()) else result = TNoElement() } from Expr e diff --git a/java/ql/test/library-tests/frameworks/android/taint-database/flowSteps.ql b/java/ql/test/library-tests/frameworks/android/taint-database/flowSteps.ql index ae4f8ca0da02..578846438bee 100644 --- a/java/ql/test/library-tests/frameworks/android/taint-database/flowSteps.ql +++ b/java/ql/test/library-tests/frameworks/android/taint-database/flowSteps.ql @@ -9,7 +9,7 @@ module Config implements DataFlow::ConfigSig { source.asExpr().(MethodCall).getMethod().hasName("taint") } - predicate isSink(DataFlow::Node sink) { sink.asExpr() = any(ReturnStmt r).getResult() } + predicate isSink(DataFlow::Node sink) { sink.asExpr() = any(ReturnStmt r).getExpr() } } module Flow = TaintTracking::Global; diff --git a/java/ql/test/library-tests/locations/NegativeLiteralLocation.ql b/java/ql/test/library-tests/locations/NegativeLiteralLocation.ql index c91c02639945..a5e9054cd756 100644 --- a/java/ql/test/library-tests/locations/NegativeLiteralLocation.ql +++ b/java/ql/test/library-tests/locations/NegativeLiteralLocation.ql @@ -1,5 +1,5 @@ import default from MinusExpr me, Literal l -where l = me.getExpr() +where l = me.getOperand() select me, l diff --git a/java/ql/test/library-tests/unreachableblocks/UnreachableBlocks.expected b/java/ql/test/library-tests/unreachableblocks/UnreachableBlocks.expected deleted file mode 100644 index acf240ae3136..000000000000 --- a/java/ql/test/library-tests/unreachableblocks/UnreachableBlocks.expected +++ /dev/null @@ -1,12 +0,0 @@ -| unreachableblocks/Unreachable.java:3:14:3:24 | Exceptional Exit | -| unreachableblocks/Unreachable.java:3:14:3:24 | Exceptional Exit | -| unreachableblocks/Unreachable.java:5:14:5:19 | Exceptional Exit | -| unreachableblocks/Unreachable.java:6:14:8:3 | { ... } | -| unreachableblocks/Unreachable.java:9:21:11:3 | { ... } | -| unreachableblocks/Unreachable.java:12:22:14:3 | { ... } | -| unreachableblocks/Unreachable.java:17:3:17:9 | case ... | -| unreachableblocks/Unreachable.java:19:3:19:9 | case ... | -| unreachableblocks/Unreachable.java:24:3:24:9 | case ... | -| unreachableblocks/Unreachable.java:26:3:26:10 | case ... | -| unreachableblocks/Unreachable.java:27:3:27:10 | default | -| unreachableblocks/Unreachable.java:32:18:32:28 | Exceptional Exit | diff --git a/java/ql/test/library-tests/unreachableblocks/UnreachableBlocks.ql b/java/ql/test/library-tests/unreachableblocks/UnreachableBlocks.ql deleted file mode 100644 index b7229c059f36..000000000000 --- a/java/ql/test/library-tests/unreachableblocks/UnreachableBlocks.ql +++ /dev/null @@ -1,5 +0,0 @@ -import default -import semmle.code.java.controlflow.UnreachableBlocks - -from UnreachableBasicBlock unreachableBasicBlock -select unreachableBasicBlock diff --git a/java/ql/test/library-tests/unreachableblocks/unreachableblocks/Unreachable.java b/java/ql/test/library-tests/unreachableblocks/unreachableblocks/Unreachable.java deleted file mode 100644 index a8dc419975bf..000000000000 --- a/java/ql/test/library-tests/unreachableblocks/unreachableblocks/Unreachable.java +++ /dev/null @@ -1,35 +0,0 @@ -package unreachableblocks; - -public class Unreachable { - private boolean privateFalse = false; - public void method() { - if (false) { - // unreachable - } - if (privateFalse) { - // unreachable - } - if (methodFalse()) { - // unreachable - } - - switch (7) { - case 5: // unreachable - break; - case 6: // unreachable - System.out.println("dead"); // unreachable - case 7: - case 8: // reachable from 7 - break; // reachable - case 9: //unreachable - break; - case 10: // unreachable - default: - break; //unreachable - } - } - - private boolean methodFalse() { - return privateFalse; - } -} \ No newline at end of file diff --git a/java/ql/test/query-tests/lgtm-example-queries/returnstatement.ql b/java/ql/test/query-tests/lgtm-example-queries/returnstatement.ql index 8ace7e729314..fec039f24daa 100644 --- a/java/ql/test/query-tests/lgtm-example-queries/returnstatement.ql +++ b/java/ql/test/query-tests/lgtm-example-queries/returnstatement.ql @@ -9,5 +9,5 @@ import java from ReturnStmt r -where r.getResult() instanceof NullLiteral +where r.getExpr() instanceof NullLiteral select r diff --git a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected index 39e2f04f0e03..035658641ffc 100644 --- a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected +++ b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected @@ -1,123 +1,113 @@ #select -| LogInjectionTest.java:30:22:30:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:30:22:30:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:31:22:31:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:31:22:31:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:33:22:33:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:33:22:33:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:34:22:34:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:34:22:34:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:35:22:35:57 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:35:22:35:57 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:37:22:37:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:37:22:37:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:38:22:38:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:38:22:38:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:40:22:40:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:40:22:40:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:41:22:41:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:41:22:41:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:42:22:42:45 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:42:22:42:45 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:44:22:44:50 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:44:22:44:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:45:22:45:50 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:45:22:45:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:47:22:47:50 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:47:22:47:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:48:22:48:50 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:48:22:48:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:50:22:50:51 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:50:22:50:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:51:22:51:51 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:51:22:51:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:53:22:53:51 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:53:22:53:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:54:22:54:51 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:54:22:54:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:56:22:56:51 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:56:22:56:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:57:22:57:51 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:57:22:57:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:59:22:59:57 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:59:22:59:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:60:22:60:57 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:60:22:60:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:61:22:61:57 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:61:22:61:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:62:22:62:57 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:62:22:62:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:63:22:63:58 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:63:22:63:58 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:71:26:71:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:71:26:71:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:77:26:77:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:77:26:77:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:83:26:83:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:83:26:83:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:89:26:89:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:89:26:89:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:95:26:95:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:95:26:95:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:101:26:101:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:101:26:101:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:107:26:107:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:107:26:107:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:113:26:113:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:113:26:113:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:119:26:119:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:119:26:119:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:125:26:125:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:125:26:125:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:133:26:133:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:133:26:133:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:139:26:139:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:139:26:139:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:145:26:145:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:145:26:145:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:151:26:151:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:151:26:151:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:157:26:157:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:157:26:157:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:163:26:163:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:163:26:163:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:167:26:167:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:167:26:167:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:169:26:169:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:169:26:169:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:173:26:173:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:173:26:173:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:175:26:175:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:175:26:175:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:179:26:179:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:179:26:179:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:185:26:185:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:185:26:185:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:195:39:195:55 | (...)... | LogInjectionTest.java:195:48:195:55 | source(...) : Object | LogInjectionTest.java:195:39:195:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:195:48:195:55 | source(...) | user-provided value | -| LogInjectionTest.java:196:28:196:35 | source(...) | LogInjectionTest.java:196:28:196:35 | source(...) | LogInjectionTest.java:196:28:196:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:196:28:196:35 | source(...) | user-provided value | -| LogInjectionTest.java:197:28:197:35 | source(...) | LogInjectionTest.java:197:28:197:35 | source(...) | LogInjectionTest.java:197:28:197:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:197:28:197:35 | source(...) | user-provided value | -| LogInjectionTest.java:198:28:198:35 | source(...) | LogInjectionTest.java:198:28:198:35 | source(...) | LogInjectionTest.java:198:28:198:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:198:28:198:35 | source(...) | user-provided value | -| LogInjectionTest.java:199:28:199:35 | source(...) | LogInjectionTest.java:199:28:199:35 | source(...) | LogInjectionTest.java:199:28:199:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:199:28:199:35 | source(...) | user-provided value | -| LogInjectionTest.java:200:28:200:35 | source(...) | LogInjectionTest.java:200:28:200:35 | source(...) | LogInjectionTest.java:200:28:200:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:200:28:200:35 | source(...) | user-provided value | -| LogInjectionTest.java:201:28:201:35 | source(...) | LogInjectionTest.java:201:28:201:35 | source(...) | LogInjectionTest.java:201:28:201:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:201:28:201:35 | source(...) | user-provided value | -| LogInjectionTest.java:202:44:202:51 | source(...) | LogInjectionTest.java:202:44:202:51 | source(...) | LogInjectionTest.java:202:44:202:51 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:202:44:202:51 | source(...) | user-provided value | -| LogInjectionTest.java:203:27:203:34 | source(...) | LogInjectionTest.java:203:27:203:34 | source(...) | LogInjectionTest.java:203:27:203:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:203:27:203:34 | source(...) | user-provided value | -| LogInjectionTest.java:204:27:204:34 | source(...) | LogInjectionTest.java:204:27:204:34 | source(...) | LogInjectionTest.java:204:27:204:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:204:27:204:34 | source(...) | user-provided value | -| LogInjectionTest.java:205:41:205:63 | new Object[] | LogInjectionTest.java:205:55:205:62 | source(...) : Object | LogInjectionTest.java:205:41:205:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:205:55:205:62 | source(...) | user-provided value | -| LogInjectionTest.java:206:32:206:39 | source(...) | LogInjectionTest.java:206:32:206:39 | source(...) | LogInjectionTest.java:206:32:206:39 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:206:32:206:39 | source(...) | user-provided value | -| LogInjectionTest.java:207:32:207:39 | source(...) | LogInjectionTest.java:207:32:207:39 | source(...) | LogInjectionTest.java:207:32:207:39 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:207:32:207:39 | source(...) | user-provided value | -| LogInjectionTest.java:208:38:208:45 | source(...) | LogInjectionTest.java:208:38:208:45 | source(...) | LogInjectionTest.java:208:38:208:45 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:208:38:208:45 | source(...) | user-provided value | -| LogInjectionTest.java:209:27:209:34 | source(...) | LogInjectionTest.java:209:27:209:34 | source(...) | LogInjectionTest.java:209:27:209:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:209:27:209:34 | source(...) | user-provided value | -| LogInjectionTest.java:210:27:210:34 | source(...) | LogInjectionTest.java:210:27:210:34 | source(...) | LogInjectionTest.java:210:27:210:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:210:27:210:34 | source(...) | user-provided value | -| LogInjectionTest.java:215:26:215:48 | (...)... | LogInjectionTest.java:215:41:215:48 | source(...) : Object | LogInjectionTest.java:215:26:215:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:215:41:215:48 | source(...) | user-provided value | -| LogInjectionTest.java:216:26:216:48 | (...)... | LogInjectionTest.java:216:41:216:48 | source(...) : Object | LogInjectionTest.java:216:26:216:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:216:41:216:48 | source(...) | user-provided value | -| LogInjectionTest.java:217:41:217:63 | (...)... | LogInjectionTest.java:217:56:217:63 | source(...) : Object | LogInjectionTest.java:217:41:217:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:217:56:217:63 | source(...) | user-provided value | -| LogInjectionTest.java:218:41:218:63 | (...)... | LogInjectionTest.java:218:56:218:63 | source(...) : Object | LogInjectionTest.java:218:41:218:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:218:56:218:63 | source(...) | user-provided value | -| LogInjectionTest.java:219:41:219:58 | (...)... | LogInjectionTest.java:219:51:219:58 | source(...) : Object | LogInjectionTest.java:219:41:219:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:219:51:219:58 | source(...) | user-provided value | -| LogInjectionTest.java:220:41:220:66 | (...)... | LogInjectionTest.java:220:59:220:66 | source(...) : Object | LogInjectionTest.java:220:41:220:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:220:59:220:66 | source(...) | user-provided value | -| LogInjectionTest.java:221:41:221:66 | (...)... | LogInjectionTest.java:221:59:221:66 | source(...) : Object | LogInjectionTest.java:221:41:221:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:221:59:221:66 | source(...) | user-provided value | -| LogInjectionTest.java:222:41:222:48 | source(...) | LogInjectionTest.java:222:41:222:48 | source(...) | LogInjectionTest.java:222:41:222:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:222:41:222:48 | source(...) | user-provided value | -| LogInjectionTest.java:223:41:223:57 | (...)... | LogInjectionTest.java:223:50:223:57 | source(...) : Object | LogInjectionTest.java:223:41:223:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:223:50:223:57 | source(...) | user-provided value | -| LogInjectionTest.java:224:41:224:57 | (...)... | LogInjectionTest.java:224:50:224:57 | source(...) : Object | LogInjectionTest.java:224:41:224:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:224:50:224:57 | source(...) | user-provided value | -| LogInjectionTest.java:225:56:225:78 | new Object[] | LogInjectionTest.java:225:70:225:77 | source(...) : Object | LogInjectionTest.java:225:56:225:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:225:70:225:77 | source(...) | user-provided value | -| LogInjectionTest.java:226:56:226:72 | (...)... | LogInjectionTest.java:226:65:226:72 | source(...) : Object | LogInjectionTest.java:226:56:226:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:226:65:226:72 | source(...) | user-provided value | -| LogInjectionTest.java:227:41:227:57 | (...)... | LogInjectionTest.java:227:50:227:57 | source(...) : Object | LogInjectionTest.java:227:41:227:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:227:50:227:57 | source(...) | user-provided value | -| LogInjectionTest.java:228:71:228:87 | (...)... | LogInjectionTest.java:228:80:228:87 | source(...) : Object | LogInjectionTest.java:228:71:228:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:228:80:228:87 | source(...) | user-provided value | -| LogInjectionTest.java:229:56:229:72 | (...)... | LogInjectionTest.java:229:65:229:72 | source(...) : Object | LogInjectionTest.java:229:56:229:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:229:65:229:72 | source(...) | user-provided value | -| LogInjectionTest.java:230:41:230:57 | (...)... | LogInjectionTest.java:230:50:230:57 | source(...) : Object | LogInjectionTest.java:230:41:230:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:230:50:230:57 | source(...) | user-provided value | -| LogInjectionTest.java:231:86:231:102 | (...)... | LogInjectionTest.java:231:95:231:102 | source(...) : Object | LogInjectionTest.java:231:86:231:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:231:95:231:102 | source(...) | user-provided value | -| LogInjectionTest.java:232:71:232:87 | (...)... | LogInjectionTest.java:232:80:232:87 | source(...) : Object | LogInjectionTest.java:232:71:232:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:232:80:232:87 | source(...) | user-provided value | -| LogInjectionTest.java:233:56:233:72 | (...)... | LogInjectionTest.java:233:65:233:72 | source(...) : Object | LogInjectionTest.java:233:56:233:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:233:65:233:72 | source(...) | user-provided value | +| LogInjectionTest.java:38:22:38:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:38:22:38:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:39:22:39:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:39:22:39:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:41:22:41:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:41:22:41:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:42:22:42:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:42:22:42:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:43:22:43:57 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:43:22:43:57 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:45:22:45:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:45:22:45:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:46:22:46:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:46:22:46:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:48:22:48:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:48:22:48:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:49:22:49:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:49:22:49:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:50:22:50:45 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:50:22:50:45 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:52:22:52:50 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:52:22:52:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:53:22:53:50 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:53:22:53:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:55:22:55:50 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:55:22:55:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:56:22:56:50 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:56:22:56:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:58:22:58:51 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:58:22:58:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:59:22:59:51 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:59:22:59:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:61:22:61:51 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:61:22:61:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:62:22:62:51 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:62:22:62:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:64:22:64:51 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:64:22:64:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:65:22:65:51 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:65:22:65:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:67:22:67:57 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:67:22:67:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:68:22:68:57 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:68:22:68:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:69:22:69:57 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:69:22:69:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:70:22:70:57 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:70:22:70:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:71:22:71:58 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:71:22:71:58 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:79:26:79:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:79:26:79:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:85:26:85:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:85:26:85:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:91:26:91:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:91:26:91:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:97:26:97:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:97:26:97:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:103:26:103:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:103:26:103:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:109:26:109:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:109:26:109:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:115:26:115:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:115:26:115:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:121:26:121:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:121:26:121:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:127:26:127:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:127:26:127:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:133:26:133:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:133:26:133:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:141:26:141:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:141:26:141:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:147:26:147:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:147:26:147:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:153:26:153:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:153:26:153:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:159:26:159:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:159:26:159:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:165:26:165:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:165:26:165:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:171:26:171:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:171:26:171:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:175:26:175:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:175:26:175:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:177:26:177:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:177:26:177:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:181:26:181:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:181:26:181:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:183:26:183:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:183:26:183:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:187:26:187:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:187:26:187:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:193:26:193:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:193:26:193:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:205:39:205:55 | (...)... | LogInjectionTest.java:205:48:205:55 | source(...) : Object | LogInjectionTest.java:205:39:205:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:205:48:205:55 | source(...) | user-provided value | +| LogInjectionTest.java:206:28:206:35 | source(...) | LogInjectionTest.java:206:28:206:35 | source(...) | LogInjectionTest.java:206:28:206:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:206:28:206:35 | source(...) | user-provided value | +| LogInjectionTest.java:207:28:207:35 | source(...) | LogInjectionTest.java:207:28:207:35 | source(...) | LogInjectionTest.java:207:28:207:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:207:28:207:35 | source(...) | user-provided value | +| LogInjectionTest.java:208:28:208:35 | source(...) | LogInjectionTest.java:208:28:208:35 | source(...) | LogInjectionTest.java:208:28:208:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:208:28:208:35 | source(...) | user-provided value | +| LogInjectionTest.java:209:28:209:35 | source(...) | LogInjectionTest.java:209:28:209:35 | source(...) | LogInjectionTest.java:209:28:209:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:209:28:209:35 | source(...) | user-provided value | +| LogInjectionTest.java:210:28:210:35 | source(...) | LogInjectionTest.java:210:28:210:35 | source(...) | LogInjectionTest.java:210:28:210:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:210:28:210:35 | source(...) | user-provided value | +| LogInjectionTest.java:211:28:211:35 | source(...) | LogInjectionTest.java:211:28:211:35 | source(...) | LogInjectionTest.java:211:28:211:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:211:28:211:35 | source(...) | user-provided value | +| LogInjectionTest.java:212:44:212:51 | source(...) | LogInjectionTest.java:212:44:212:51 | source(...) | LogInjectionTest.java:212:44:212:51 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:212:44:212:51 | source(...) | user-provided value | +| LogInjectionTest.java:213:27:213:34 | source(...) | LogInjectionTest.java:213:27:213:34 | source(...) | LogInjectionTest.java:213:27:213:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:213:27:213:34 | source(...) | user-provided value | +| LogInjectionTest.java:214:27:214:34 | source(...) | LogInjectionTest.java:214:27:214:34 | source(...) | LogInjectionTest.java:214:27:214:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:214:27:214:34 | source(...) | user-provided value | +| LogInjectionTest.java:215:41:215:63 | new Object[] | LogInjectionTest.java:215:55:215:62 | source(...) : Object | LogInjectionTest.java:215:41:215:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:215:55:215:62 | source(...) | user-provided value | +| LogInjectionTest.java:216:32:216:39 | source(...) | LogInjectionTest.java:216:32:216:39 | source(...) | LogInjectionTest.java:216:32:216:39 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:216:32:216:39 | source(...) | user-provided value | +| LogInjectionTest.java:217:32:217:39 | source(...) | LogInjectionTest.java:217:32:217:39 | source(...) | LogInjectionTest.java:217:32:217:39 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:217:32:217:39 | source(...) | user-provided value | +| LogInjectionTest.java:218:38:218:45 | source(...) | LogInjectionTest.java:218:38:218:45 | source(...) | LogInjectionTest.java:218:38:218:45 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:218:38:218:45 | source(...) | user-provided value | +| LogInjectionTest.java:219:27:219:34 | source(...) | LogInjectionTest.java:219:27:219:34 | source(...) | LogInjectionTest.java:219:27:219:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:219:27:219:34 | source(...) | user-provided value | +| LogInjectionTest.java:220:27:220:34 | source(...) | LogInjectionTest.java:220:27:220:34 | source(...) | LogInjectionTest.java:220:27:220:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:220:27:220:34 | source(...) | user-provided value | +| LogInjectionTest.java:225:26:225:48 | (...)... | LogInjectionTest.java:225:41:225:48 | source(...) : Object | LogInjectionTest.java:225:26:225:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:225:41:225:48 | source(...) | user-provided value | +| LogInjectionTest.java:226:26:226:48 | (...)... | LogInjectionTest.java:226:41:226:48 | source(...) : Object | LogInjectionTest.java:226:26:226:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:226:41:226:48 | source(...) | user-provided value | +| LogInjectionTest.java:227:41:227:63 | (...)... | LogInjectionTest.java:227:56:227:63 | source(...) : Object | LogInjectionTest.java:227:41:227:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:227:56:227:63 | source(...) | user-provided value | +| LogInjectionTest.java:228:41:228:63 | (...)... | LogInjectionTest.java:228:56:228:63 | source(...) : Object | LogInjectionTest.java:228:41:228:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:228:56:228:63 | source(...) | user-provided value | +| LogInjectionTest.java:229:41:229:58 | (...)... | LogInjectionTest.java:229:51:229:58 | source(...) : Object | LogInjectionTest.java:229:41:229:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:229:51:229:58 | source(...) | user-provided value | +| LogInjectionTest.java:230:41:230:66 | (...)... | LogInjectionTest.java:230:59:230:66 | source(...) : Object | LogInjectionTest.java:230:41:230:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:230:59:230:66 | source(...) | user-provided value | +| LogInjectionTest.java:231:41:231:66 | (...)... | LogInjectionTest.java:231:59:231:66 | source(...) : Object | LogInjectionTest.java:231:41:231:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:231:59:231:66 | source(...) | user-provided value | +| LogInjectionTest.java:232:41:232:48 | source(...) | LogInjectionTest.java:232:41:232:48 | source(...) | LogInjectionTest.java:232:41:232:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:232:41:232:48 | source(...) | user-provided value | +| LogInjectionTest.java:233:41:233:57 | (...)... | LogInjectionTest.java:233:50:233:57 | source(...) : Object | LogInjectionTest.java:233:41:233:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:233:50:233:57 | source(...) | user-provided value | | LogInjectionTest.java:234:41:234:57 | (...)... | LogInjectionTest.java:234:50:234:57 | source(...) : Object | LogInjectionTest.java:234:41:234:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:234:50:234:57 | source(...) | user-provided value | -| LogInjectionTest.java:235:101:235:117 | (...)... | LogInjectionTest.java:235:110:235:117 | source(...) : Object | LogInjectionTest.java:235:101:235:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:235:110:235:117 | source(...) | user-provided value | -| LogInjectionTest.java:236:86:236:102 | (...)... | LogInjectionTest.java:236:95:236:102 | source(...) : Object | LogInjectionTest.java:236:86:236:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:236:95:236:102 | source(...) | user-provided value | -| LogInjectionTest.java:237:71:237:87 | (...)... | LogInjectionTest.java:237:80:237:87 | source(...) : Object | LogInjectionTest.java:237:71:237:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:237:80:237:87 | source(...) | user-provided value | -| LogInjectionTest.java:238:56:238:72 | (...)... | LogInjectionTest.java:238:65:238:72 | source(...) : Object | LogInjectionTest.java:238:56:238:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:238:65:238:72 | source(...) | user-provided value | -| LogInjectionTest.java:239:41:239:57 | (...)... | LogInjectionTest.java:239:50:239:57 | source(...) : Object | LogInjectionTest.java:239:41:239:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:239:50:239:57 | source(...) | user-provided value | -| LogInjectionTest.java:240:116:240:132 | (...)... | LogInjectionTest.java:240:125:240:132 | source(...) : Object | LogInjectionTest.java:240:116:240:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:240:125:240:132 | source(...) | user-provided value | -| LogInjectionTest.java:241:101:241:117 | (...)... | LogInjectionTest.java:241:110:241:117 | source(...) : Object | LogInjectionTest.java:241:101:241:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:241:110:241:117 | source(...) | user-provided value | -| LogInjectionTest.java:242:86:242:102 | (...)... | LogInjectionTest.java:242:95:242:102 | source(...) : Object | LogInjectionTest.java:242:86:242:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:242:95:242:102 | source(...) | user-provided value | -| LogInjectionTest.java:243:71:243:87 | (...)... | LogInjectionTest.java:243:80:243:87 | source(...) : Object | LogInjectionTest.java:243:71:243:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:243:80:243:87 | source(...) | user-provided value | -| LogInjectionTest.java:244:56:244:72 | (...)... | LogInjectionTest.java:244:65:244:72 | source(...) : Object | LogInjectionTest.java:244:56:244:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:244:65:244:72 | source(...) | user-provided value | -| LogInjectionTest.java:245:41:245:57 | (...)... | LogInjectionTest.java:245:50:245:57 | source(...) : Object | LogInjectionTest.java:245:41:245:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:245:50:245:57 | source(...) | user-provided value | -| LogInjectionTest.java:246:131:246:147 | (...)... | LogInjectionTest.java:246:140:246:147 | source(...) : Object | LogInjectionTest.java:246:131:246:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:246:140:246:147 | source(...) | user-provided value | -| LogInjectionTest.java:247:116:247:132 | (...)... | LogInjectionTest.java:247:125:247:132 | source(...) : Object | LogInjectionTest.java:247:116:247:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:247:125:247:132 | source(...) | user-provided value | -| LogInjectionTest.java:248:101:248:117 | (...)... | LogInjectionTest.java:248:110:248:117 | source(...) : Object | LogInjectionTest.java:248:101:248:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:248:110:248:117 | source(...) | user-provided value | -| LogInjectionTest.java:249:86:249:102 | (...)... | LogInjectionTest.java:249:95:249:102 | source(...) : Object | LogInjectionTest.java:249:86:249:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:249:95:249:102 | source(...) | user-provided value | -| LogInjectionTest.java:250:71:250:87 | (...)... | LogInjectionTest.java:250:80:250:87 | source(...) : Object | LogInjectionTest.java:250:71:250:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:250:80:250:87 | source(...) | user-provided value | -| LogInjectionTest.java:251:56:251:72 | (...)... | LogInjectionTest.java:251:65:251:72 | source(...) : Object | LogInjectionTest.java:251:56:251:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:251:65:251:72 | source(...) | user-provided value | -| LogInjectionTest.java:252:41:252:57 | (...)... | LogInjectionTest.java:252:50:252:57 | source(...) : Object | LogInjectionTest.java:252:41:252:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:252:50:252:57 | source(...) | user-provided value | -| LogInjectionTest.java:253:146:253:162 | (...)... | LogInjectionTest.java:253:155:253:162 | source(...) : Object | LogInjectionTest.java:253:146:253:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:253:155:253:162 | source(...) | user-provided value | -| LogInjectionTest.java:254:131:254:147 | (...)... | LogInjectionTest.java:254:140:254:147 | source(...) : Object | LogInjectionTest.java:254:131:254:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:254:140:254:147 | source(...) | user-provided value | -| LogInjectionTest.java:255:116:255:132 | (...)... | LogInjectionTest.java:255:125:255:132 | source(...) : Object | LogInjectionTest.java:255:116:255:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:255:125:255:132 | source(...) | user-provided value | -| LogInjectionTest.java:256:101:256:117 | (...)... | LogInjectionTest.java:256:110:256:117 | source(...) : Object | LogInjectionTest.java:256:101:256:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:256:110:256:117 | source(...) | user-provided value | -| LogInjectionTest.java:257:86:257:102 | (...)... | LogInjectionTest.java:257:95:257:102 | source(...) : Object | LogInjectionTest.java:257:86:257:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:257:95:257:102 | source(...) | user-provided value | -| LogInjectionTest.java:258:71:258:87 | (...)... | LogInjectionTest.java:258:80:258:87 | source(...) : Object | LogInjectionTest.java:258:71:258:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:258:80:258:87 | source(...) | user-provided value | -| LogInjectionTest.java:259:56:259:72 | (...)... | LogInjectionTest.java:259:65:259:72 | source(...) : Object | LogInjectionTest.java:259:56:259:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:259:65:259:72 | source(...) | user-provided value | -| LogInjectionTest.java:260:41:260:57 | (...)... | LogInjectionTest.java:260:50:260:57 | source(...) : Object | LogInjectionTest.java:260:41:260:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:260:50:260:57 | source(...) | user-provided value | -| LogInjectionTest.java:261:161:261:177 | (...)... | LogInjectionTest.java:261:170:261:177 | source(...) : Object | LogInjectionTest.java:261:161:261:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:261:170:261:177 | source(...) | user-provided value | -| LogInjectionTest.java:262:146:262:162 | (...)... | LogInjectionTest.java:262:155:262:162 | source(...) : Object | LogInjectionTest.java:262:146:262:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:262:155:262:162 | source(...) | user-provided value | -| LogInjectionTest.java:263:131:263:147 | (...)... | LogInjectionTest.java:263:140:263:147 | source(...) : Object | LogInjectionTest.java:263:131:263:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:263:140:263:147 | source(...) | user-provided value | -| LogInjectionTest.java:264:116:264:132 | (...)... | LogInjectionTest.java:264:125:264:132 | source(...) : Object | LogInjectionTest.java:264:116:264:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:264:125:264:132 | source(...) | user-provided value | -| LogInjectionTest.java:265:101:265:117 | (...)... | LogInjectionTest.java:265:110:265:117 | source(...) : Object | LogInjectionTest.java:265:101:265:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:265:110:265:117 | source(...) | user-provided value | -| LogInjectionTest.java:266:86:266:102 | (...)... | LogInjectionTest.java:266:95:266:102 | source(...) : Object | LogInjectionTest.java:266:86:266:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:266:95:266:102 | source(...) | user-provided value | -| LogInjectionTest.java:267:71:267:87 | (...)... | LogInjectionTest.java:267:80:267:87 | source(...) : Object | LogInjectionTest.java:267:71:267:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:267:80:267:87 | source(...) | user-provided value | -| LogInjectionTest.java:268:56:268:72 | (...)... | LogInjectionTest.java:268:65:268:72 | source(...) : Object | LogInjectionTest.java:268:56:268:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:268:65:268:72 | source(...) | user-provided value | -| LogInjectionTest.java:269:41:269:57 | (...)... | LogInjectionTest.java:269:50:269:57 | source(...) : Object | LogInjectionTest.java:269:41:269:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:269:50:269:57 | source(...) | user-provided value | -| LogInjectionTest.java:270:176:270:192 | (...)... | LogInjectionTest.java:270:185:270:192 | source(...) : Object | LogInjectionTest.java:270:176:270:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:270:185:270:192 | source(...) | user-provided value | +| LogInjectionTest.java:235:56:235:78 | new Object[] | LogInjectionTest.java:235:70:235:77 | source(...) : Object | LogInjectionTest.java:235:56:235:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:235:70:235:77 | source(...) | user-provided value | +| LogInjectionTest.java:236:56:236:72 | (...)... | LogInjectionTest.java:236:65:236:72 | source(...) : Object | LogInjectionTest.java:236:56:236:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:236:65:236:72 | source(...) | user-provided value | +| LogInjectionTest.java:237:41:237:57 | (...)... | LogInjectionTest.java:237:50:237:57 | source(...) : Object | LogInjectionTest.java:237:41:237:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:237:50:237:57 | source(...) | user-provided value | +| LogInjectionTest.java:238:71:238:87 | (...)... | LogInjectionTest.java:238:80:238:87 | source(...) : Object | LogInjectionTest.java:238:71:238:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:238:80:238:87 | source(...) | user-provided value | +| LogInjectionTest.java:239:56:239:72 | (...)... | LogInjectionTest.java:239:65:239:72 | source(...) : Object | LogInjectionTest.java:239:56:239:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:239:65:239:72 | source(...) | user-provided value | +| LogInjectionTest.java:240:41:240:57 | (...)... | LogInjectionTest.java:240:50:240:57 | source(...) : Object | LogInjectionTest.java:240:41:240:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:240:50:240:57 | source(...) | user-provided value | +| LogInjectionTest.java:241:86:241:102 | (...)... | LogInjectionTest.java:241:95:241:102 | source(...) : Object | LogInjectionTest.java:241:86:241:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:241:95:241:102 | source(...) | user-provided value | +| LogInjectionTest.java:242:71:242:87 | (...)... | LogInjectionTest.java:242:80:242:87 | source(...) : Object | LogInjectionTest.java:242:71:242:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:242:80:242:87 | source(...) | user-provided value | +| LogInjectionTest.java:243:56:243:72 | (...)... | LogInjectionTest.java:243:65:243:72 | source(...) : Object | LogInjectionTest.java:243:56:243:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:243:65:243:72 | source(...) | user-provided value | +| LogInjectionTest.java:244:41:244:57 | (...)... | LogInjectionTest.java:244:50:244:57 | source(...) : Object | LogInjectionTest.java:244:41:244:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:244:50:244:57 | source(...) | user-provided value | +| LogInjectionTest.java:245:101:245:117 | (...)... | LogInjectionTest.java:245:110:245:117 | source(...) : Object | LogInjectionTest.java:245:101:245:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:245:110:245:117 | source(...) | user-provided value | +| LogInjectionTest.java:246:86:246:102 | (...)... | LogInjectionTest.java:246:95:246:102 | source(...) : Object | LogInjectionTest.java:246:86:246:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:246:95:246:102 | source(...) | user-provided value | +| LogInjectionTest.java:247:71:247:87 | (...)... | LogInjectionTest.java:247:80:247:87 | source(...) : Object | LogInjectionTest.java:247:71:247:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:247:80:247:87 | source(...) | user-provided value | +| LogInjectionTest.java:248:56:248:72 | (...)... | LogInjectionTest.java:248:65:248:72 | source(...) : Object | LogInjectionTest.java:248:56:248:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:248:65:248:72 | source(...) | user-provided value | +| LogInjectionTest.java:249:41:249:57 | (...)... | LogInjectionTest.java:249:50:249:57 | source(...) : Object | LogInjectionTest.java:249:41:249:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:249:50:249:57 | source(...) | user-provided value | +| LogInjectionTest.java:250:116:250:132 | (...)... | LogInjectionTest.java:250:125:250:132 | source(...) : Object | LogInjectionTest.java:250:116:250:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:250:125:250:132 | source(...) | user-provided value | +| LogInjectionTest.java:251:101:251:117 | (...)... | LogInjectionTest.java:251:110:251:117 | source(...) : Object | LogInjectionTest.java:251:101:251:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:251:110:251:117 | source(...) | user-provided value | +| LogInjectionTest.java:252:86:252:102 | (...)... | LogInjectionTest.java:252:95:252:102 | source(...) : Object | LogInjectionTest.java:252:86:252:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:252:95:252:102 | source(...) | user-provided value | +| LogInjectionTest.java:253:71:253:87 | (...)... | LogInjectionTest.java:253:80:253:87 | source(...) : Object | LogInjectionTest.java:253:71:253:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:253:80:253:87 | source(...) | user-provided value | +| LogInjectionTest.java:254:56:254:72 | (...)... | LogInjectionTest.java:254:65:254:72 | source(...) : Object | LogInjectionTest.java:254:56:254:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:254:65:254:72 | source(...) | user-provided value | +| LogInjectionTest.java:255:41:255:57 | (...)... | LogInjectionTest.java:255:50:255:57 | source(...) : Object | LogInjectionTest.java:255:41:255:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:255:50:255:57 | source(...) | user-provided value | +| LogInjectionTest.java:256:131:256:147 | (...)... | LogInjectionTest.java:256:140:256:147 | source(...) : Object | LogInjectionTest.java:256:131:256:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:256:140:256:147 | source(...) | user-provided value | +| LogInjectionTest.java:257:116:257:132 | (...)... | LogInjectionTest.java:257:125:257:132 | source(...) : Object | LogInjectionTest.java:257:116:257:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:257:125:257:132 | source(...) | user-provided value | +| LogInjectionTest.java:258:101:258:117 | (...)... | LogInjectionTest.java:258:110:258:117 | source(...) : Object | LogInjectionTest.java:258:101:258:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:258:110:258:117 | source(...) | user-provided value | +| LogInjectionTest.java:259:86:259:102 | (...)... | LogInjectionTest.java:259:95:259:102 | source(...) : Object | LogInjectionTest.java:259:86:259:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:259:95:259:102 | source(...) | user-provided value | +| LogInjectionTest.java:260:71:260:87 | (...)... | LogInjectionTest.java:260:80:260:87 | source(...) : Object | LogInjectionTest.java:260:71:260:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:260:80:260:87 | source(...) | user-provided value | +| LogInjectionTest.java:261:56:261:72 | (...)... | LogInjectionTest.java:261:65:261:72 | source(...) : Object | LogInjectionTest.java:261:56:261:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:261:65:261:72 | source(...) | user-provided value | +| LogInjectionTest.java:262:41:262:57 | (...)... | LogInjectionTest.java:262:50:262:57 | source(...) : Object | LogInjectionTest.java:262:41:262:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:262:50:262:57 | source(...) | user-provided value | +| LogInjectionTest.java:263:146:263:162 | (...)... | LogInjectionTest.java:263:155:263:162 | source(...) : Object | LogInjectionTest.java:263:146:263:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:263:155:263:162 | source(...) | user-provided value | +| LogInjectionTest.java:264:131:264:147 | (...)... | LogInjectionTest.java:264:140:264:147 | source(...) : Object | LogInjectionTest.java:264:131:264:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:264:140:264:147 | source(...) | user-provided value | +| LogInjectionTest.java:265:116:265:132 | (...)... | LogInjectionTest.java:265:125:265:132 | source(...) : Object | LogInjectionTest.java:265:116:265:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:265:125:265:132 | source(...) | user-provided value | +| LogInjectionTest.java:266:101:266:117 | (...)... | LogInjectionTest.java:266:110:266:117 | source(...) : Object | LogInjectionTest.java:266:101:266:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:266:110:266:117 | source(...) | user-provided value | +| LogInjectionTest.java:267:86:267:102 | (...)... | LogInjectionTest.java:267:95:267:102 | source(...) : Object | LogInjectionTest.java:267:86:267:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:267:95:267:102 | source(...) | user-provided value | +| LogInjectionTest.java:268:71:268:87 | (...)... | LogInjectionTest.java:268:80:268:87 | source(...) : Object | LogInjectionTest.java:268:71:268:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:268:80:268:87 | source(...) | user-provided value | +| LogInjectionTest.java:269:56:269:72 | (...)... | LogInjectionTest.java:269:65:269:72 | source(...) : Object | LogInjectionTest.java:269:56:269:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:269:65:269:72 | source(...) | user-provided value | +| LogInjectionTest.java:270:41:270:57 | (...)... | LogInjectionTest.java:270:50:270:57 | source(...) : Object | LogInjectionTest.java:270:41:270:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:270:50:270:57 | source(...) | user-provided value | | LogInjectionTest.java:271:161:271:177 | (...)... | LogInjectionTest.java:271:170:271:177 | source(...) : Object | LogInjectionTest.java:271:161:271:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:271:170:271:177 | source(...) | user-provided value | | LogInjectionTest.java:272:146:272:162 | (...)... | LogInjectionTest.java:272:155:272:162 | source(...) : Object | LogInjectionTest.java:272:146:272:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:272:155:272:162 | source(...) | user-provided value | | LogInjectionTest.java:273:131:273:147 | (...)... | LogInjectionTest.java:273:140:273:147 | source(...) : Object | LogInjectionTest.java:273:131:273:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:273:140:273:147 | source(...) | user-provided value | @@ -127,65 +117,65 @@ | LogInjectionTest.java:277:71:277:87 | (...)... | LogInjectionTest.java:277:80:277:87 | source(...) : Object | LogInjectionTest.java:277:71:277:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:277:80:277:87 | source(...) | user-provided value | | LogInjectionTest.java:278:56:278:72 | (...)... | LogInjectionTest.java:278:65:278:72 | source(...) : Object | LogInjectionTest.java:278:56:278:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:278:65:278:72 | source(...) | user-provided value | | LogInjectionTest.java:279:41:279:57 | (...)... | LogInjectionTest.java:279:50:279:57 | source(...) : Object | LogInjectionTest.java:279:41:279:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:279:50:279:57 | source(...) | user-provided value | -| LogInjectionTest.java:280:41:280:57 | (...)... | LogInjectionTest.java:280:50:280:57 | source(...) : Object | LogInjectionTest.java:280:41:280:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:280:50:280:57 | source(...) | user-provided value | -| LogInjectionTest.java:281:56:281:77 | (...)... | LogInjectionTest.java:281:70:281:77 | source(...) : Object | LogInjectionTest.java:281:56:281:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:281:70:281:77 | source(...) | user-provided value | -| LogInjectionTest.java:282:41:282:57 | (...)... | LogInjectionTest.java:282:50:282:57 | source(...) : Object | LogInjectionTest.java:282:41:282:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:282:50:282:57 | source(...) | user-provided value | -| LogInjectionTest.java:283:41:283:62 | (...)... | LogInjectionTest.java:283:55:283:62 | source(...) : Object | LogInjectionTest.java:283:41:283:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:283:55:283:62 | source(...) | user-provided value | -| LogInjectionTest.java:284:41:284:62 | (...)... | LogInjectionTest.java:284:55:284:62 | source(...) : Object | LogInjectionTest.java:284:41:284:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:284:55:284:62 | source(...) | user-provided value | -| LogInjectionTest.java:285:26:285:51 | (...)... | LogInjectionTest.java:285:44:285:51 | source(...) : Object | LogInjectionTest.java:285:26:285:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:285:44:285:51 | source(...) | user-provided value | -| LogInjectionTest.java:286:26:286:51 | (...)... | LogInjectionTest.java:286:44:286:51 | source(...) : Object | LogInjectionTest.java:286:26:286:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:286:44:286:51 | source(...) | user-provided value | -| LogInjectionTest.java:287:26:287:43 | (...)... | LogInjectionTest.java:287:36:287:43 | source(...) : Object | LogInjectionTest.java:287:26:287:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:287:36:287:43 | source(...) | user-provided value | -| LogInjectionTest.java:288:26:288:43 | (...)... | LogInjectionTest.java:288:36:288:43 | source(...) : Object | LogInjectionTest.java:288:26:288:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:288:36:288:43 | source(...) | user-provided value | -| LogInjectionTest.java:289:26:289:33 | source(...) | LogInjectionTest.java:289:26:289:33 | source(...) | LogInjectionTest.java:289:26:289:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:289:26:289:33 | source(...) | user-provided value | -| LogInjectionTest.java:290:26:290:33 | source(...) | LogInjectionTest.java:290:26:290:33 | source(...) | LogInjectionTest.java:290:26:290:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:290:26:290:33 | source(...) | user-provided value | -| LogInjectionTest.java:291:26:291:42 | (...)... | LogInjectionTest.java:291:35:291:42 | source(...) : Object | LogInjectionTest.java:291:26:291:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:291:35:291:42 | source(...) | user-provided value | -| LogInjectionTest.java:292:26:292:42 | (...)... | LogInjectionTest.java:292:35:292:42 | source(...) : Object | LogInjectionTest.java:292:26:292:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:292:35:292:42 | source(...) | user-provided value | -| LogInjectionTest.java:293:41:293:63 | new Object[] | LogInjectionTest.java:293:55:293:62 | source(...) : Object | LogInjectionTest.java:293:41:293:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:293:55:293:62 | source(...) | user-provided value | -| LogInjectionTest.java:294:41:294:57 | (...)... | LogInjectionTest.java:294:50:294:57 | source(...) : Object | LogInjectionTest.java:294:41:294:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:294:50:294:57 | source(...) | user-provided value | -| LogInjectionTest.java:295:26:295:42 | (...)... | LogInjectionTest.java:295:35:295:42 | source(...) : Object | LogInjectionTest.java:295:26:295:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:295:35:295:42 | source(...) | user-provided value | -| LogInjectionTest.java:296:56:296:72 | (...)... | LogInjectionTest.java:296:65:296:72 | source(...) : Object | LogInjectionTest.java:296:56:296:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:296:65:296:72 | source(...) | user-provided value | -| LogInjectionTest.java:297:41:297:57 | (...)... | LogInjectionTest.java:297:50:297:57 | source(...) : Object | LogInjectionTest.java:297:41:297:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:297:50:297:57 | source(...) | user-provided value | -| LogInjectionTest.java:298:26:298:42 | (...)... | LogInjectionTest.java:298:35:298:42 | source(...) : Object | LogInjectionTest.java:298:26:298:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:298:35:298:42 | source(...) | user-provided value | -| LogInjectionTest.java:299:71:299:87 | (...)... | LogInjectionTest.java:299:80:299:87 | source(...) : Object | LogInjectionTest.java:299:71:299:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:299:80:299:87 | source(...) | user-provided value | -| LogInjectionTest.java:300:56:300:72 | (...)... | LogInjectionTest.java:300:65:300:72 | source(...) : Object | LogInjectionTest.java:300:56:300:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:300:65:300:72 | source(...) | user-provided value | -| LogInjectionTest.java:301:41:301:57 | (...)... | LogInjectionTest.java:301:50:301:57 | source(...) : Object | LogInjectionTest.java:301:41:301:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:301:50:301:57 | source(...) | user-provided value | +| LogInjectionTest.java:280:176:280:192 | (...)... | LogInjectionTest.java:280:185:280:192 | source(...) : Object | LogInjectionTest.java:280:176:280:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:280:185:280:192 | source(...) | user-provided value | +| LogInjectionTest.java:281:161:281:177 | (...)... | LogInjectionTest.java:281:170:281:177 | source(...) : Object | LogInjectionTest.java:281:161:281:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:281:170:281:177 | source(...) | user-provided value | +| LogInjectionTest.java:282:146:282:162 | (...)... | LogInjectionTest.java:282:155:282:162 | source(...) : Object | LogInjectionTest.java:282:146:282:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:282:155:282:162 | source(...) | user-provided value | +| LogInjectionTest.java:283:131:283:147 | (...)... | LogInjectionTest.java:283:140:283:147 | source(...) : Object | LogInjectionTest.java:283:131:283:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:283:140:283:147 | source(...) | user-provided value | +| LogInjectionTest.java:284:116:284:132 | (...)... | LogInjectionTest.java:284:125:284:132 | source(...) : Object | LogInjectionTest.java:284:116:284:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:284:125:284:132 | source(...) | user-provided value | +| LogInjectionTest.java:285:101:285:117 | (...)... | LogInjectionTest.java:285:110:285:117 | source(...) : Object | LogInjectionTest.java:285:101:285:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:285:110:285:117 | source(...) | user-provided value | +| LogInjectionTest.java:286:86:286:102 | (...)... | LogInjectionTest.java:286:95:286:102 | source(...) : Object | LogInjectionTest.java:286:86:286:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:286:95:286:102 | source(...) | user-provided value | +| LogInjectionTest.java:287:71:287:87 | (...)... | LogInjectionTest.java:287:80:287:87 | source(...) : Object | LogInjectionTest.java:287:71:287:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:287:80:287:87 | source(...) | user-provided value | +| LogInjectionTest.java:288:56:288:72 | (...)... | LogInjectionTest.java:288:65:288:72 | source(...) : Object | LogInjectionTest.java:288:56:288:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:288:65:288:72 | source(...) | user-provided value | +| LogInjectionTest.java:289:41:289:57 | (...)... | LogInjectionTest.java:289:50:289:57 | source(...) : Object | LogInjectionTest.java:289:41:289:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:289:50:289:57 | source(...) | user-provided value | +| LogInjectionTest.java:290:41:290:57 | (...)... | LogInjectionTest.java:290:50:290:57 | source(...) : Object | LogInjectionTest.java:290:41:290:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:290:50:290:57 | source(...) | user-provided value | +| LogInjectionTest.java:291:56:291:77 | (...)... | LogInjectionTest.java:291:70:291:77 | source(...) : Object | LogInjectionTest.java:291:56:291:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:291:70:291:77 | source(...) | user-provided value | +| LogInjectionTest.java:292:41:292:57 | (...)... | LogInjectionTest.java:292:50:292:57 | source(...) : Object | LogInjectionTest.java:292:41:292:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:292:50:292:57 | source(...) | user-provided value | +| LogInjectionTest.java:293:41:293:62 | (...)... | LogInjectionTest.java:293:55:293:62 | source(...) : Object | LogInjectionTest.java:293:41:293:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:293:55:293:62 | source(...) | user-provided value | +| LogInjectionTest.java:294:41:294:62 | (...)... | LogInjectionTest.java:294:55:294:62 | source(...) : Object | LogInjectionTest.java:294:41:294:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:294:55:294:62 | source(...) | user-provided value | +| LogInjectionTest.java:295:26:295:51 | (...)... | LogInjectionTest.java:295:44:295:51 | source(...) : Object | LogInjectionTest.java:295:26:295:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:295:44:295:51 | source(...) | user-provided value | +| LogInjectionTest.java:296:26:296:51 | (...)... | LogInjectionTest.java:296:44:296:51 | source(...) : Object | LogInjectionTest.java:296:26:296:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:296:44:296:51 | source(...) | user-provided value | +| LogInjectionTest.java:297:26:297:43 | (...)... | LogInjectionTest.java:297:36:297:43 | source(...) : Object | LogInjectionTest.java:297:26:297:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:297:36:297:43 | source(...) | user-provided value | +| LogInjectionTest.java:298:26:298:43 | (...)... | LogInjectionTest.java:298:36:298:43 | source(...) : Object | LogInjectionTest.java:298:26:298:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:298:36:298:43 | source(...) | user-provided value | +| LogInjectionTest.java:299:26:299:33 | source(...) | LogInjectionTest.java:299:26:299:33 | source(...) | LogInjectionTest.java:299:26:299:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:299:26:299:33 | source(...) | user-provided value | +| LogInjectionTest.java:300:26:300:33 | source(...) | LogInjectionTest.java:300:26:300:33 | source(...) | LogInjectionTest.java:300:26:300:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:300:26:300:33 | source(...) | user-provided value | +| LogInjectionTest.java:301:26:301:42 | (...)... | LogInjectionTest.java:301:35:301:42 | source(...) : Object | LogInjectionTest.java:301:26:301:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:301:35:301:42 | source(...) | user-provided value | | LogInjectionTest.java:302:26:302:42 | (...)... | LogInjectionTest.java:302:35:302:42 | source(...) : Object | LogInjectionTest.java:302:26:302:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:302:35:302:42 | source(...) | user-provided value | -| LogInjectionTest.java:303:86:303:102 | (...)... | LogInjectionTest.java:303:95:303:102 | source(...) : Object | LogInjectionTest.java:303:86:303:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:303:95:303:102 | source(...) | user-provided value | -| LogInjectionTest.java:304:71:304:87 | (...)... | LogInjectionTest.java:304:80:304:87 | source(...) : Object | LogInjectionTest.java:304:71:304:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:304:80:304:87 | source(...) | user-provided value | -| LogInjectionTest.java:305:56:305:72 | (...)... | LogInjectionTest.java:305:65:305:72 | source(...) : Object | LogInjectionTest.java:305:56:305:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:305:65:305:72 | source(...) | user-provided value | -| LogInjectionTest.java:306:41:306:57 | (...)... | LogInjectionTest.java:306:50:306:57 | source(...) : Object | LogInjectionTest.java:306:41:306:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:306:50:306:57 | source(...) | user-provided value | -| LogInjectionTest.java:307:26:307:42 | (...)... | LogInjectionTest.java:307:35:307:42 | source(...) : Object | LogInjectionTest.java:307:26:307:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:307:35:307:42 | source(...) | user-provided value | -| LogInjectionTest.java:308:101:308:117 | (...)... | LogInjectionTest.java:308:110:308:117 | source(...) : Object | LogInjectionTest.java:308:101:308:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:308:110:308:117 | source(...) | user-provided value | -| LogInjectionTest.java:309:86:309:102 | (...)... | LogInjectionTest.java:309:95:309:102 | source(...) : Object | LogInjectionTest.java:309:86:309:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:309:95:309:102 | source(...) | user-provided value | -| LogInjectionTest.java:310:71:310:87 | (...)... | LogInjectionTest.java:310:80:310:87 | source(...) : Object | LogInjectionTest.java:310:71:310:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:310:80:310:87 | source(...) | user-provided value | -| LogInjectionTest.java:311:56:311:72 | (...)... | LogInjectionTest.java:311:65:311:72 | source(...) : Object | LogInjectionTest.java:311:56:311:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:311:65:311:72 | source(...) | user-provided value | -| LogInjectionTest.java:312:41:312:57 | (...)... | LogInjectionTest.java:312:50:312:57 | source(...) : Object | LogInjectionTest.java:312:41:312:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:312:50:312:57 | source(...) | user-provided value | -| LogInjectionTest.java:313:26:313:42 | (...)... | LogInjectionTest.java:313:35:313:42 | source(...) : Object | LogInjectionTest.java:313:26:313:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:313:35:313:42 | source(...) | user-provided value | -| LogInjectionTest.java:314:116:314:132 | (...)... | LogInjectionTest.java:314:125:314:132 | source(...) : Object | LogInjectionTest.java:314:116:314:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:314:125:314:132 | source(...) | user-provided value | -| LogInjectionTest.java:315:101:315:117 | (...)... | LogInjectionTest.java:315:110:315:117 | source(...) : Object | LogInjectionTest.java:315:101:315:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:315:110:315:117 | source(...) | user-provided value | -| LogInjectionTest.java:316:86:316:102 | (...)... | LogInjectionTest.java:316:95:316:102 | source(...) : Object | LogInjectionTest.java:316:86:316:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:316:95:316:102 | source(...) | user-provided value | -| LogInjectionTest.java:317:71:317:87 | (...)... | LogInjectionTest.java:317:80:317:87 | source(...) : Object | LogInjectionTest.java:317:71:317:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:317:80:317:87 | source(...) | user-provided value | -| LogInjectionTest.java:318:56:318:72 | (...)... | LogInjectionTest.java:318:65:318:72 | source(...) : Object | LogInjectionTest.java:318:56:318:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:318:65:318:72 | source(...) | user-provided value | -| LogInjectionTest.java:319:41:319:57 | (...)... | LogInjectionTest.java:319:50:319:57 | source(...) : Object | LogInjectionTest.java:319:41:319:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:319:50:319:57 | source(...) | user-provided value | -| LogInjectionTest.java:320:26:320:42 | (...)... | LogInjectionTest.java:320:35:320:42 | source(...) : Object | LogInjectionTest.java:320:26:320:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:320:35:320:42 | source(...) | user-provided value | -| LogInjectionTest.java:321:131:321:147 | (...)... | LogInjectionTest.java:321:140:321:147 | source(...) : Object | LogInjectionTest.java:321:131:321:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:321:140:321:147 | source(...) | user-provided value | -| LogInjectionTest.java:322:116:322:132 | (...)... | LogInjectionTest.java:322:125:322:132 | source(...) : Object | LogInjectionTest.java:322:116:322:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:322:125:322:132 | source(...) | user-provided value | -| LogInjectionTest.java:323:101:323:117 | (...)... | LogInjectionTest.java:323:110:323:117 | source(...) : Object | LogInjectionTest.java:323:101:323:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:323:110:323:117 | source(...) | user-provided value | -| LogInjectionTest.java:324:86:324:102 | (...)... | LogInjectionTest.java:324:95:324:102 | source(...) : Object | LogInjectionTest.java:324:86:324:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:324:95:324:102 | source(...) | user-provided value | -| LogInjectionTest.java:325:71:325:87 | (...)... | LogInjectionTest.java:325:80:325:87 | source(...) : Object | LogInjectionTest.java:325:71:325:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:325:80:325:87 | source(...) | user-provided value | -| LogInjectionTest.java:326:56:326:72 | (...)... | LogInjectionTest.java:326:65:326:72 | source(...) : Object | LogInjectionTest.java:326:56:326:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:326:65:326:72 | source(...) | user-provided value | -| LogInjectionTest.java:327:41:327:57 | (...)... | LogInjectionTest.java:327:50:327:57 | source(...) : Object | LogInjectionTest.java:327:41:327:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:327:50:327:57 | source(...) | user-provided value | -| LogInjectionTest.java:328:26:328:42 | (...)... | LogInjectionTest.java:328:35:328:42 | source(...) : Object | LogInjectionTest.java:328:26:328:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:328:35:328:42 | source(...) | user-provided value | -| LogInjectionTest.java:329:146:329:162 | (...)... | LogInjectionTest.java:329:155:329:162 | source(...) : Object | LogInjectionTest.java:329:146:329:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:329:155:329:162 | source(...) | user-provided value | -| LogInjectionTest.java:330:131:330:147 | (...)... | LogInjectionTest.java:330:140:330:147 | source(...) : Object | LogInjectionTest.java:330:131:330:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:330:140:330:147 | source(...) | user-provided value | -| LogInjectionTest.java:331:116:331:132 | (...)... | LogInjectionTest.java:331:125:331:132 | source(...) : Object | LogInjectionTest.java:331:116:331:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:331:125:331:132 | source(...) | user-provided value | -| LogInjectionTest.java:332:101:332:117 | (...)... | LogInjectionTest.java:332:110:332:117 | source(...) : Object | LogInjectionTest.java:332:101:332:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:332:110:332:117 | source(...) | user-provided value | -| LogInjectionTest.java:333:86:333:102 | (...)... | LogInjectionTest.java:333:95:333:102 | source(...) : Object | LogInjectionTest.java:333:86:333:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:333:95:333:102 | source(...) | user-provided value | -| LogInjectionTest.java:334:71:334:87 | (...)... | LogInjectionTest.java:334:80:334:87 | source(...) : Object | LogInjectionTest.java:334:71:334:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:334:80:334:87 | source(...) | user-provided value | -| LogInjectionTest.java:335:56:335:72 | (...)... | LogInjectionTest.java:335:65:335:72 | source(...) : Object | LogInjectionTest.java:335:56:335:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:335:65:335:72 | source(...) | user-provided value | -| LogInjectionTest.java:336:41:336:57 | (...)... | LogInjectionTest.java:336:50:336:57 | source(...) : Object | LogInjectionTest.java:336:41:336:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:336:50:336:57 | source(...) | user-provided value | -| LogInjectionTest.java:337:26:337:42 | (...)... | LogInjectionTest.java:337:35:337:42 | source(...) : Object | LogInjectionTest.java:337:26:337:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:337:35:337:42 | source(...) | user-provided value | -| LogInjectionTest.java:338:161:338:177 | (...)... | LogInjectionTest.java:338:170:338:177 | source(...) : Object | LogInjectionTest.java:338:161:338:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:338:170:338:177 | source(...) | user-provided value | +| LogInjectionTest.java:303:41:303:63 | new Object[] | LogInjectionTest.java:303:55:303:62 | source(...) : Object | LogInjectionTest.java:303:41:303:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:303:55:303:62 | source(...) | user-provided value | +| LogInjectionTest.java:304:41:304:57 | (...)... | LogInjectionTest.java:304:50:304:57 | source(...) : Object | LogInjectionTest.java:304:41:304:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:304:50:304:57 | source(...) | user-provided value | +| LogInjectionTest.java:305:26:305:42 | (...)... | LogInjectionTest.java:305:35:305:42 | source(...) : Object | LogInjectionTest.java:305:26:305:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:305:35:305:42 | source(...) | user-provided value | +| LogInjectionTest.java:306:56:306:72 | (...)... | LogInjectionTest.java:306:65:306:72 | source(...) : Object | LogInjectionTest.java:306:56:306:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:306:65:306:72 | source(...) | user-provided value | +| LogInjectionTest.java:307:41:307:57 | (...)... | LogInjectionTest.java:307:50:307:57 | source(...) : Object | LogInjectionTest.java:307:41:307:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:307:50:307:57 | source(...) | user-provided value | +| LogInjectionTest.java:308:26:308:42 | (...)... | LogInjectionTest.java:308:35:308:42 | source(...) : Object | LogInjectionTest.java:308:26:308:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:308:35:308:42 | source(...) | user-provided value | +| LogInjectionTest.java:309:71:309:87 | (...)... | LogInjectionTest.java:309:80:309:87 | source(...) : Object | LogInjectionTest.java:309:71:309:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:309:80:309:87 | source(...) | user-provided value | +| LogInjectionTest.java:310:56:310:72 | (...)... | LogInjectionTest.java:310:65:310:72 | source(...) : Object | LogInjectionTest.java:310:56:310:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:310:65:310:72 | source(...) | user-provided value | +| LogInjectionTest.java:311:41:311:57 | (...)... | LogInjectionTest.java:311:50:311:57 | source(...) : Object | LogInjectionTest.java:311:41:311:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:311:50:311:57 | source(...) | user-provided value | +| LogInjectionTest.java:312:26:312:42 | (...)... | LogInjectionTest.java:312:35:312:42 | source(...) : Object | LogInjectionTest.java:312:26:312:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:312:35:312:42 | source(...) | user-provided value | +| LogInjectionTest.java:313:86:313:102 | (...)... | LogInjectionTest.java:313:95:313:102 | source(...) : Object | LogInjectionTest.java:313:86:313:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:313:95:313:102 | source(...) | user-provided value | +| LogInjectionTest.java:314:71:314:87 | (...)... | LogInjectionTest.java:314:80:314:87 | source(...) : Object | LogInjectionTest.java:314:71:314:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:314:80:314:87 | source(...) | user-provided value | +| LogInjectionTest.java:315:56:315:72 | (...)... | LogInjectionTest.java:315:65:315:72 | source(...) : Object | LogInjectionTest.java:315:56:315:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:315:65:315:72 | source(...) | user-provided value | +| LogInjectionTest.java:316:41:316:57 | (...)... | LogInjectionTest.java:316:50:316:57 | source(...) : Object | LogInjectionTest.java:316:41:316:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:316:50:316:57 | source(...) | user-provided value | +| LogInjectionTest.java:317:26:317:42 | (...)... | LogInjectionTest.java:317:35:317:42 | source(...) : Object | LogInjectionTest.java:317:26:317:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:317:35:317:42 | source(...) | user-provided value | +| LogInjectionTest.java:318:101:318:117 | (...)... | LogInjectionTest.java:318:110:318:117 | source(...) : Object | LogInjectionTest.java:318:101:318:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:318:110:318:117 | source(...) | user-provided value | +| LogInjectionTest.java:319:86:319:102 | (...)... | LogInjectionTest.java:319:95:319:102 | source(...) : Object | LogInjectionTest.java:319:86:319:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:319:95:319:102 | source(...) | user-provided value | +| LogInjectionTest.java:320:71:320:87 | (...)... | LogInjectionTest.java:320:80:320:87 | source(...) : Object | LogInjectionTest.java:320:71:320:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:320:80:320:87 | source(...) | user-provided value | +| LogInjectionTest.java:321:56:321:72 | (...)... | LogInjectionTest.java:321:65:321:72 | source(...) : Object | LogInjectionTest.java:321:56:321:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:321:65:321:72 | source(...) | user-provided value | +| LogInjectionTest.java:322:41:322:57 | (...)... | LogInjectionTest.java:322:50:322:57 | source(...) : Object | LogInjectionTest.java:322:41:322:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:322:50:322:57 | source(...) | user-provided value | +| LogInjectionTest.java:323:26:323:42 | (...)... | LogInjectionTest.java:323:35:323:42 | source(...) : Object | LogInjectionTest.java:323:26:323:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:323:35:323:42 | source(...) | user-provided value | +| LogInjectionTest.java:324:116:324:132 | (...)... | LogInjectionTest.java:324:125:324:132 | source(...) : Object | LogInjectionTest.java:324:116:324:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:324:125:324:132 | source(...) | user-provided value | +| LogInjectionTest.java:325:101:325:117 | (...)... | LogInjectionTest.java:325:110:325:117 | source(...) : Object | LogInjectionTest.java:325:101:325:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:325:110:325:117 | source(...) | user-provided value | +| LogInjectionTest.java:326:86:326:102 | (...)... | LogInjectionTest.java:326:95:326:102 | source(...) : Object | LogInjectionTest.java:326:86:326:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:326:95:326:102 | source(...) | user-provided value | +| LogInjectionTest.java:327:71:327:87 | (...)... | LogInjectionTest.java:327:80:327:87 | source(...) : Object | LogInjectionTest.java:327:71:327:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:327:80:327:87 | source(...) | user-provided value | +| LogInjectionTest.java:328:56:328:72 | (...)... | LogInjectionTest.java:328:65:328:72 | source(...) : Object | LogInjectionTest.java:328:56:328:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:328:65:328:72 | source(...) | user-provided value | +| LogInjectionTest.java:329:41:329:57 | (...)... | LogInjectionTest.java:329:50:329:57 | source(...) : Object | LogInjectionTest.java:329:41:329:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:329:50:329:57 | source(...) | user-provided value | +| LogInjectionTest.java:330:26:330:42 | (...)... | LogInjectionTest.java:330:35:330:42 | source(...) : Object | LogInjectionTest.java:330:26:330:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:330:35:330:42 | source(...) | user-provided value | +| LogInjectionTest.java:331:131:331:147 | (...)... | LogInjectionTest.java:331:140:331:147 | source(...) : Object | LogInjectionTest.java:331:131:331:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:331:140:331:147 | source(...) | user-provided value | +| LogInjectionTest.java:332:116:332:132 | (...)... | LogInjectionTest.java:332:125:332:132 | source(...) : Object | LogInjectionTest.java:332:116:332:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:332:125:332:132 | source(...) | user-provided value | +| LogInjectionTest.java:333:101:333:117 | (...)... | LogInjectionTest.java:333:110:333:117 | source(...) : Object | LogInjectionTest.java:333:101:333:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:333:110:333:117 | source(...) | user-provided value | +| LogInjectionTest.java:334:86:334:102 | (...)... | LogInjectionTest.java:334:95:334:102 | source(...) : Object | LogInjectionTest.java:334:86:334:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:334:95:334:102 | source(...) | user-provided value | +| LogInjectionTest.java:335:71:335:87 | (...)... | LogInjectionTest.java:335:80:335:87 | source(...) : Object | LogInjectionTest.java:335:71:335:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:335:80:335:87 | source(...) | user-provided value | +| LogInjectionTest.java:336:56:336:72 | (...)... | LogInjectionTest.java:336:65:336:72 | source(...) : Object | LogInjectionTest.java:336:56:336:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:336:65:336:72 | source(...) | user-provided value | +| LogInjectionTest.java:337:41:337:57 | (...)... | LogInjectionTest.java:337:50:337:57 | source(...) : Object | LogInjectionTest.java:337:41:337:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:337:50:337:57 | source(...) | user-provided value | +| LogInjectionTest.java:338:26:338:42 | (...)... | LogInjectionTest.java:338:35:338:42 | source(...) : Object | LogInjectionTest.java:338:26:338:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:338:35:338:42 | source(...) | user-provided value | | LogInjectionTest.java:339:146:339:162 | (...)... | LogInjectionTest.java:339:155:339:162 | source(...) : Object | LogInjectionTest.java:339:146:339:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:339:155:339:162 | source(...) | user-provided value | | LogInjectionTest.java:340:131:340:147 | (...)... | LogInjectionTest.java:340:140:340:147 | source(...) : Object | LogInjectionTest.java:340:131:340:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:340:140:340:147 | source(...) | user-provided value | | LogInjectionTest.java:341:116:341:132 | (...)... | LogInjectionTest.java:341:125:341:132 | source(...) : Object | LogInjectionTest.java:341:116:341:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:341:125:341:132 | source(...) | user-provided value | @@ -195,67 +185,67 @@ | LogInjectionTest.java:345:56:345:72 | (...)... | LogInjectionTest.java:345:65:345:72 | source(...) : Object | LogInjectionTest.java:345:56:345:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:345:65:345:72 | source(...) | user-provided value | | LogInjectionTest.java:346:41:346:57 | (...)... | LogInjectionTest.java:346:50:346:57 | source(...) : Object | LogInjectionTest.java:346:41:346:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:346:50:346:57 | source(...) | user-provided value | | LogInjectionTest.java:347:26:347:42 | (...)... | LogInjectionTest.java:347:35:347:42 | source(...) : Object | LogInjectionTest.java:347:26:347:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:347:35:347:42 | source(...) | user-provided value | -| LogInjectionTest.java:348:26:348:42 | (...)... | LogInjectionTest.java:348:35:348:42 | source(...) : Object | LogInjectionTest.java:348:26:348:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:348:35:348:42 | source(...) | user-provided value | -| LogInjectionTest.java:349:41:349:62 | (...)... | LogInjectionTest.java:349:55:349:62 | source(...) : Object | LogInjectionTest.java:349:41:349:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:349:55:349:62 | source(...) | user-provided value | -| LogInjectionTest.java:350:26:350:42 | (...)... | LogInjectionTest.java:350:35:350:42 | source(...) : Object | LogInjectionTest.java:350:26:350:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:350:35:350:42 | source(...) | user-provided value | -| LogInjectionTest.java:351:26:351:47 | (...)... | LogInjectionTest.java:351:40:351:47 | source(...) : Object | LogInjectionTest.java:351:26:351:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:351:40:351:47 | source(...) | user-provided value | -| LogInjectionTest.java:352:26:352:47 | (...)... | LogInjectionTest.java:352:40:352:47 | source(...) : Object | LogInjectionTest.java:352:26:352:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:352:40:352:47 | source(...) | user-provided value | -| LogInjectionTest.java:353:26:353:48 | (...)... | LogInjectionTest.java:353:41:353:48 | source(...) : Object | LogInjectionTest.java:353:26:353:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:353:41:353:48 | source(...) | user-provided value | -| LogInjectionTest.java:354:26:354:48 | (...)... | LogInjectionTest.java:354:41:354:48 | source(...) : Object | LogInjectionTest.java:354:26:354:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:354:41:354:48 | source(...) | user-provided value | -| LogInjectionTest.java:355:41:355:63 | (...)... | LogInjectionTest.java:355:56:355:63 | source(...) : Object | LogInjectionTest.java:355:41:355:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:355:56:355:63 | source(...) | user-provided value | -| LogInjectionTest.java:356:41:356:63 | (...)... | LogInjectionTest.java:356:56:356:63 | source(...) : Object | LogInjectionTest.java:356:41:356:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:356:56:356:63 | source(...) | user-provided value | -| LogInjectionTest.java:357:41:357:58 | (...)... | LogInjectionTest.java:357:51:357:58 | source(...) : Object | LogInjectionTest.java:357:41:357:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:357:51:357:58 | source(...) | user-provided value | -| LogInjectionTest.java:358:41:358:66 | (...)... | LogInjectionTest.java:358:59:358:66 | source(...) : Object | LogInjectionTest.java:358:41:358:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:358:59:358:66 | source(...) | user-provided value | -| LogInjectionTest.java:359:41:359:66 | (...)... | LogInjectionTest.java:359:59:359:66 | source(...) : Object | LogInjectionTest.java:359:41:359:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:359:59:359:66 | source(...) | user-provided value | -| LogInjectionTest.java:360:41:360:48 | source(...) | LogInjectionTest.java:360:41:360:48 | source(...) | LogInjectionTest.java:360:41:360:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:360:41:360:48 | source(...) | user-provided value | -| LogInjectionTest.java:361:41:361:57 | (...)... | LogInjectionTest.java:361:50:361:57 | source(...) : Object | LogInjectionTest.java:361:41:361:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:361:50:361:57 | source(...) | user-provided value | -| LogInjectionTest.java:362:41:362:57 | (...)... | LogInjectionTest.java:362:50:362:57 | source(...) : Object | LogInjectionTest.java:362:41:362:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:362:50:362:57 | source(...) | user-provided value | -| LogInjectionTest.java:363:56:363:78 | new Object[] | LogInjectionTest.java:363:70:363:77 | source(...) : Object | LogInjectionTest.java:363:56:363:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:363:70:363:77 | source(...) | user-provided value | -| LogInjectionTest.java:364:56:364:72 | (...)... | LogInjectionTest.java:364:65:364:72 | source(...) : Object | LogInjectionTest.java:364:56:364:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:364:65:364:72 | source(...) | user-provided value | -| LogInjectionTest.java:365:41:365:57 | (...)... | LogInjectionTest.java:365:50:365:57 | source(...) : Object | LogInjectionTest.java:365:41:365:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:365:50:365:57 | source(...) | user-provided value | -| LogInjectionTest.java:366:71:366:87 | (...)... | LogInjectionTest.java:366:80:366:87 | source(...) : Object | LogInjectionTest.java:366:71:366:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:366:80:366:87 | source(...) | user-provided value | -| LogInjectionTest.java:367:56:367:72 | (...)... | LogInjectionTest.java:367:65:367:72 | source(...) : Object | LogInjectionTest.java:367:56:367:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:367:65:367:72 | source(...) | user-provided value | -| LogInjectionTest.java:368:41:368:57 | (...)... | LogInjectionTest.java:368:50:368:57 | source(...) : Object | LogInjectionTest.java:368:41:368:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:368:50:368:57 | source(...) | user-provided value | -| LogInjectionTest.java:369:86:369:102 | (...)... | LogInjectionTest.java:369:95:369:102 | source(...) : Object | LogInjectionTest.java:369:86:369:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:369:95:369:102 | source(...) | user-provided value | -| LogInjectionTest.java:370:71:370:87 | (...)... | LogInjectionTest.java:370:80:370:87 | source(...) : Object | LogInjectionTest.java:370:71:370:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:370:80:370:87 | source(...) | user-provided value | -| LogInjectionTest.java:371:56:371:72 | (...)... | LogInjectionTest.java:371:65:371:72 | source(...) : Object | LogInjectionTest.java:371:56:371:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:371:65:371:72 | source(...) | user-provided value | +| LogInjectionTest.java:348:161:348:177 | (...)... | LogInjectionTest.java:348:170:348:177 | source(...) : Object | LogInjectionTest.java:348:161:348:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:348:170:348:177 | source(...) | user-provided value | +| LogInjectionTest.java:349:146:349:162 | (...)... | LogInjectionTest.java:349:155:349:162 | source(...) : Object | LogInjectionTest.java:349:146:349:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:349:155:349:162 | source(...) | user-provided value | +| LogInjectionTest.java:350:131:350:147 | (...)... | LogInjectionTest.java:350:140:350:147 | source(...) : Object | LogInjectionTest.java:350:131:350:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:350:140:350:147 | source(...) | user-provided value | +| LogInjectionTest.java:351:116:351:132 | (...)... | LogInjectionTest.java:351:125:351:132 | source(...) : Object | LogInjectionTest.java:351:116:351:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:351:125:351:132 | source(...) | user-provided value | +| LogInjectionTest.java:352:101:352:117 | (...)... | LogInjectionTest.java:352:110:352:117 | source(...) : Object | LogInjectionTest.java:352:101:352:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:352:110:352:117 | source(...) | user-provided value | +| LogInjectionTest.java:353:86:353:102 | (...)... | LogInjectionTest.java:353:95:353:102 | source(...) : Object | LogInjectionTest.java:353:86:353:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:353:95:353:102 | source(...) | user-provided value | +| LogInjectionTest.java:354:71:354:87 | (...)... | LogInjectionTest.java:354:80:354:87 | source(...) : Object | LogInjectionTest.java:354:71:354:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:354:80:354:87 | source(...) | user-provided value | +| LogInjectionTest.java:355:56:355:72 | (...)... | LogInjectionTest.java:355:65:355:72 | source(...) : Object | LogInjectionTest.java:355:56:355:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:355:65:355:72 | source(...) | user-provided value | +| LogInjectionTest.java:356:41:356:57 | (...)... | LogInjectionTest.java:356:50:356:57 | source(...) : Object | LogInjectionTest.java:356:41:356:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:356:50:356:57 | source(...) | user-provided value | +| LogInjectionTest.java:357:26:357:42 | (...)... | LogInjectionTest.java:357:35:357:42 | source(...) : Object | LogInjectionTest.java:357:26:357:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:357:35:357:42 | source(...) | user-provided value | +| LogInjectionTest.java:358:26:358:42 | (...)... | LogInjectionTest.java:358:35:358:42 | source(...) : Object | LogInjectionTest.java:358:26:358:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:358:35:358:42 | source(...) | user-provided value | +| LogInjectionTest.java:359:41:359:62 | (...)... | LogInjectionTest.java:359:55:359:62 | source(...) : Object | LogInjectionTest.java:359:41:359:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:359:55:359:62 | source(...) | user-provided value | +| LogInjectionTest.java:360:26:360:42 | (...)... | LogInjectionTest.java:360:35:360:42 | source(...) : Object | LogInjectionTest.java:360:26:360:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:360:35:360:42 | source(...) | user-provided value | +| LogInjectionTest.java:361:26:361:47 | (...)... | LogInjectionTest.java:361:40:361:47 | source(...) : Object | LogInjectionTest.java:361:26:361:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:361:40:361:47 | source(...) | user-provided value | +| LogInjectionTest.java:362:26:362:47 | (...)... | LogInjectionTest.java:362:40:362:47 | source(...) : Object | LogInjectionTest.java:362:26:362:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:362:40:362:47 | source(...) | user-provided value | +| LogInjectionTest.java:363:26:363:48 | (...)... | LogInjectionTest.java:363:41:363:48 | source(...) : Object | LogInjectionTest.java:363:26:363:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:363:41:363:48 | source(...) | user-provided value | +| LogInjectionTest.java:364:26:364:48 | (...)... | LogInjectionTest.java:364:41:364:48 | source(...) : Object | LogInjectionTest.java:364:26:364:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:364:41:364:48 | source(...) | user-provided value | +| LogInjectionTest.java:365:41:365:63 | (...)... | LogInjectionTest.java:365:56:365:63 | source(...) : Object | LogInjectionTest.java:365:41:365:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:365:56:365:63 | source(...) | user-provided value | +| LogInjectionTest.java:366:41:366:63 | (...)... | LogInjectionTest.java:366:56:366:63 | source(...) : Object | LogInjectionTest.java:366:41:366:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:366:56:366:63 | source(...) | user-provided value | +| LogInjectionTest.java:367:41:367:58 | (...)... | LogInjectionTest.java:367:51:367:58 | source(...) : Object | LogInjectionTest.java:367:41:367:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:367:51:367:58 | source(...) | user-provided value | +| LogInjectionTest.java:368:41:368:66 | (...)... | LogInjectionTest.java:368:59:368:66 | source(...) : Object | LogInjectionTest.java:368:41:368:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:368:59:368:66 | source(...) | user-provided value | +| LogInjectionTest.java:369:41:369:66 | (...)... | LogInjectionTest.java:369:59:369:66 | source(...) : Object | LogInjectionTest.java:369:41:369:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:369:59:369:66 | source(...) | user-provided value | +| LogInjectionTest.java:370:41:370:48 | source(...) | LogInjectionTest.java:370:41:370:48 | source(...) | LogInjectionTest.java:370:41:370:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:370:41:370:48 | source(...) | user-provided value | +| LogInjectionTest.java:371:41:371:57 | (...)... | LogInjectionTest.java:371:50:371:57 | source(...) : Object | LogInjectionTest.java:371:41:371:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:371:50:371:57 | source(...) | user-provided value | | LogInjectionTest.java:372:41:372:57 | (...)... | LogInjectionTest.java:372:50:372:57 | source(...) : Object | LogInjectionTest.java:372:41:372:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:372:50:372:57 | source(...) | user-provided value | -| LogInjectionTest.java:373:101:373:117 | (...)... | LogInjectionTest.java:373:110:373:117 | source(...) : Object | LogInjectionTest.java:373:101:373:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:373:110:373:117 | source(...) | user-provided value | -| LogInjectionTest.java:374:86:374:102 | (...)... | LogInjectionTest.java:374:95:374:102 | source(...) : Object | LogInjectionTest.java:374:86:374:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:374:95:374:102 | source(...) | user-provided value | -| LogInjectionTest.java:375:71:375:87 | (...)... | LogInjectionTest.java:375:80:375:87 | source(...) : Object | LogInjectionTest.java:375:71:375:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:375:80:375:87 | source(...) | user-provided value | -| LogInjectionTest.java:376:56:376:72 | (...)... | LogInjectionTest.java:376:65:376:72 | source(...) : Object | LogInjectionTest.java:376:56:376:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:376:65:376:72 | source(...) | user-provided value | -| LogInjectionTest.java:377:41:377:57 | (...)... | LogInjectionTest.java:377:50:377:57 | source(...) : Object | LogInjectionTest.java:377:41:377:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:377:50:377:57 | source(...) | user-provided value | -| LogInjectionTest.java:378:116:378:132 | (...)... | LogInjectionTest.java:378:125:378:132 | source(...) : Object | LogInjectionTest.java:378:116:378:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:378:125:378:132 | source(...) | user-provided value | -| LogInjectionTest.java:379:101:379:117 | (...)... | LogInjectionTest.java:379:110:379:117 | source(...) : Object | LogInjectionTest.java:379:101:379:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:379:110:379:117 | source(...) | user-provided value | -| LogInjectionTest.java:380:86:380:102 | (...)... | LogInjectionTest.java:380:95:380:102 | source(...) : Object | LogInjectionTest.java:380:86:380:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:380:95:380:102 | source(...) | user-provided value | -| LogInjectionTest.java:381:71:381:87 | (...)... | LogInjectionTest.java:381:80:381:87 | source(...) : Object | LogInjectionTest.java:381:71:381:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:381:80:381:87 | source(...) | user-provided value | -| LogInjectionTest.java:382:56:382:72 | (...)... | LogInjectionTest.java:382:65:382:72 | source(...) : Object | LogInjectionTest.java:382:56:382:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:382:65:382:72 | source(...) | user-provided value | -| LogInjectionTest.java:383:41:383:57 | (...)... | LogInjectionTest.java:383:50:383:57 | source(...) : Object | LogInjectionTest.java:383:41:383:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:383:50:383:57 | source(...) | user-provided value | -| LogInjectionTest.java:384:131:384:147 | (...)... | LogInjectionTest.java:384:140:384:147 | source(...) : Object | LogInjectionTest.java:384:131:384:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:384:140:384:147 | source(...) | user-provided value | -| LogInjectionTest.java:385:116:385:132 | (...)... | LogInjectionTest.java:385:125:385:132 | source(...) : Object | LogInjectionTest.java:385:116:385:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:385:125:385:132 | source(...) | user-provided value | -| LogInjectionTest.java:386:101:386:117 | (...)... | LogInjectionTest.java:386:110:386:117 | source(...) : Object | LogInjectionTest.java:386:101:386:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:386:110:386:117 | source(...) | user-provided value | -| LogInjectionTest.java:387:86:387:102 | (...)... | LogInjectionTest.java:387:95:387:102 | source(...) : Object | LogInjectionTest.java:387:86:387:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:387:95:387:102 | source(...) | user-provided value | -| LogInjectionTest.java:388:71:388:87 | (...)... | LogInjectionTest.java:388:80:388:87 | source(...) : Object | LogInjectionTest.java:388:71:388:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:388:80:388:87 | source(...) | user-provided value | -| LogInjectionTest.java:389:56:389:72 | (...)... | LogInjectionTest.java:389:65:389:72 | source(...) : Object | LogInjectionTest.java:389:56:389:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:389:65:389:72 | source(...) | user-provided value | -| LogInjectionTest.java:390:41:390:57 | (...)... | LogInjectionTest.java:390:50:390:57 | source(...) : Object | LogInjectionTest.java:390:41:390:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:390:50:390:57 | source(...) | user-provided value | -| LogInjectionTest.java:391:146:391:162 | (...)... | LogInjectionTest.java:391:155:391:162 | source(...) : Object | LogInjectionTest.java:391:146:391:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:391:155:391:162 | source(...) | user-provided value | -| LogInjectionTest.java:392:131:392:147 | (...)... | LogInjectionTest.java:392:140:392:147 | source(...) : Object | LogInjectionTest.java:392:131:392:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:392:140:392:147 | source(...) | user-provided value | -| LogInjectionTest.java:393:116:393:132 | (...)... | LogInjectionTest.java:393:125:393:132 | source(...) : Object | LogInjectionTest.java:393:116:393:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:393:125:393:132 | source(...) | user-provided value | -| LogInjectionTest.java:394:101:394:117 | (...)... | LogInjectionTest.java:394:110:394:117 | source(...) : Object | LogInjectionTest.java:394:101:394:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:394:110:394:117 | source(...) | user-provided value | -| LogInjectionTest.java:395:86:395:102 | (...)... | LogInjectionTest.java:395:95:395:102 | source(...) : Object | LogInjectionTest.java:395:86:395:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:395:95:395:102 | source(...) | user-provided value | -| LogInjectionTest.java:396:71:396:87 | (...)... | LogInjectionTest.java:396:80:396:87 | source(...) : Object | LogInjectionTest.java:396:71:396:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:396:80:396:87 | source(...) | user-provided value | -| LogInjectionTest.java:397:56:397:72 | (...)... | LogInjectionTest.java:397:65:397:72 | source(...) : Object | LogInjectionTest.java:397:56:397:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:397:65:397:72 | source(...) | user-provided value | -| LogInjectionTest.java:398:41:398:57 | (...)... | LogInjectionTest.java:398:50:398:57 | source(...) : Object | LogInjectionTest.java:398:41:398:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:398:50:398:57 | source(...) | user-provided value | -| LogInjectionTest.java:399:161:399:177 | (...)... | LogInjectionTest.java:399:170:399:177 | source(...) : Object | LogInjectionTest.java:399:161:399:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:399:170:399:177 | source(...) | user-provided value | -| LogInjectionTest.java:400:146:400:162 | (...)... | LogInjectionTest.java:400:155:400:162 | source(...) : Object | LogInjectionTest.java:400:146:400:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:400:155:400:162 | source(...) | user-provided value | -| LogInjectionTest.java:401:131:401:147 | (...)... | LogInjectionTest.java:401:140:401:147 | source(...) : Object | LogInjectionTest.java:401:131:401:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:401:140:401:147 | source(...) | user-provided value | -| LogInjectionTest.java:402:116:402:132 | (...)... | LogInjectionTest.java:402:125:402:132 | source(...) : Object | LogInjectionTest.java:402:116:402:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:402:125:402:132 | source(...) | user-provided value | -| LogInjectionTest.java:403:101:403:117 | (...)... | LogInjectionTest.java:403:110:403:117 | source(...) : Object | LogInjectionTest.java:403:101:403:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:403:110:403:117 | source(...) | user-provided value | -| LogInjectionTest.java:404:86:404:102 | (...)... | LogInjectionTest.java:404:95:404:102 | source(...) : Object | LogInjectionTest.java:404:86:404:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:404:95:404:102 | source(...) | user-provided value | -| LogInjectionTest.java:405:71:405:87 | (...)... | LogInjectionTest.java:405:80:405:87 | source(...) : Object | LogInjectionTest.java:405:71:405:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:405:80:405:87 | source(...) | user-provided value | -| LogInjectionTest.java:406:56:406:72 | (...)... | LogInjectionTest.java:406:65:406:72 | source(...) : Object | LogInjectionTest.java:406:56:406:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:406:65:406:72 | source(...) | user-provided value | -| LogInjectionTest.java:407:41:407:57 | (...)... | LogInjectionTest.java:407:50:407:57 | source(...) : Object | LogInjectionTest.java:407:41:407:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:407:50:407:57 | source(...) | user-provided value | -| LogInjectionTest.java:408:176:408:192 | (...)... | LogInjectionTest.java:408:185:408:192 | source(...) : Object | LogInjectionTest.java:408:176:408:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:408:185:408:192 | source(...) | user-provided value | +| LogInjectionTest.java:373:56:373:78 | new Object[] | LogInjectionTest.java:373:70:373:77 | source(...) : Object | LogInjectionTest.java:373:56:373:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:373:70:373:77 | source(...) | user-provided value | +| LogInjectionTest.java:374:56:374:72 | (...)... | LogInjectionTest.java:374:65:374:72 | source(...) : Object | LogInjectionTest.java:374:56:374:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:374:65:374:72 | source(...) | user-provided value | +| LogInjectionTest.java:375:41:375:57 | (...)... | LogInjectionTest.java:375:50:375:57 | source(...) : Object | LogInjectionTest.java:375:41:375:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:375:50:375:57 | source(...) | user-provided value | +| LogInjectionTest.java:376:71:376:87 | (...)... | LogInjectionTest.java:376:80:376:87 | source(...) : Object | LogInjectionTest.java:376:71:376:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:376:80:376:87 | source(...) | user-provided value | +| LogInjectionTest.java:377:56:377:72 | (...)... | LogInjectionTest.java:377:65:377:72 | source(...) : Object | LogInjectionTest.java:377:56:377:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:377:65:377:72 | source(...) | user-provided value | +| LogInjectionTest.java:378:41:378:57 | (...)... | LogInjectionTest.java:378:50:378:57 | source(...) : Object | LogInjectionTest.java:378:41:378:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:378:50:378:57 | source(...) | user-provided value | +| LogInjectionTest.java:379:86:379:102 | (...)... | LogInjectionTest.java:379:95:379:102 | source(...) : Object | LogInjectionTest.java:379:86:379:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:379:95:379:102 | source(...) | user-provided value | +| LogInjectionTest.java:380:71:380:87 | (...)... | LogInjectionTest.java:380:80:380:87 | source(...) : Object | LogInjectionTest.java:380:71:380:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:380:80:380:87 | source(...) | user-provided value | +| LogInjectionTest.java:381:56:381:72 | (...)... | LogInjectionTest.java:381:65:381:72 | source(...) : Object | LogInjectionTest.java:381:56:381:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:381:65:381:72 | source(...) | user-provided value | +| LogInjectionTest.java:382:41:382:57 | (...)... | LogInjectionTest.java:382:50:382:57 | source(...) : Object | LogInjectionTest.java:382:41:382:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:382:50:382:57 | source(...) | user-provided value | +| LogInjectionTest.java:383:101:383:117 | (...)... | LogInjectionTest.java:383:110:383:117 | source(...) : Object | LogInjectionTest.java:383:101:383:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:383:110:383:117 | source(...) | user-provided value | +| LogInjectionTest.java:384:86:384:102 | (...)... | LogInjectionTest.java:384:95:384:102 | source(...) : Object | LogInjectionTest.java:384:86:384:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:384:95:384:102 | source(...) | user-provided value | +| LogInjectionTest.java:385:71:385:87 | (...)... | LogInjectionTest.java:385:80:385:87 | source(...) : Object | LogInjectionTest.java:385:71:385:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:385:80:385:87 | source(...) | user-provided value | +| LogInjectionTest.java:386:56:386:72 | (...)... | LogInjectionTest.java:386:65:386:72 | source(...) : Object | LogInjectionTest.java:386:56:386:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:386:65:386:72 | source(...) | user-provided value | +| LogInjectionTest.java:387:41:387:57 | (...)... | LogInjectionTest.java:387:50:387:57 | source(...) : Object | LogInjectionTest.java:387:41:387:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:387:50:387:57 | source(...) | user-provided value | +| LogInjectionTest.java:388:116:388:132 | (...)... | LogInjectionTest.java:388:125:388:132 | source(...) : Object | LogInjectionTest.java:388:116:388:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:388:125:388:132 | source(...) | user-provided value | +| LogInjectionTest.java:389:101:389:117 | (...)... | LogInjectionTest.java:389:110:389:117 | source(...) : Object | LogInjectionTest.java:389:101:389:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:389:110:389:117 | source(...) | user-provided value | +| LogInjectionTest.java:390:86:390:102 | (...)... | LogInjectionTest.java:390:95:390:102 | source(...) : Object | LogInjectionTest.java:390:86:390:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:390:95:390:102 | source(...) | user-provided value | +| LogInjectionTest.java:391:71:391:87 | (...)... | LogInjectionTest.java:391:80:391:87 | source(...) : Object | LogInjectionTest.java:391:71:391:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:391:80:391:87 | source(...) | user-provided value | +| LogInjectionTest.java:392:56:392:72 | (...)... | LogInjectionTest.java:392:65:392:72 | source(...) : Object | LogInjectionTest.java:392:56:392:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:392:65:392:72 | source(...) | user-provided value | +| LogInjectionTest.java:393:41:393:57 | (...)... | LogInjectionTest.java:393:50:393:57 | source(...) : Object | LogInjectionTest.java:393:41:393:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:393:50:393:57 | source(...) | user-provided value | +| LogInjectionTest.java:394:131:394:147 | (...)... | LogInjectionTest.java:394:140:394:147 | source(...) : Object | LogInjectionTest.java:394:131:394:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:394:140:394:147 | source(...) | user-provided value | +| LogInjectionTest.java:395:116:395:132 | (...)... | LogInjectionTest.java:395:125:395:132 | source(...) : Object | LogInjectionTest.java:395:116:395:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:395:125:395:132 | source(...) | user-provided value | +| LogInjectionTest.java:396:101:396:117 | (...)... | LogInjectionTest.java:396:110:396:117 | source(...) : Object | LogInjectionTest.java:396:101:396:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:396:110:396:117 | source(...) | user-provided value | +| LogInjectionTest.java:397:86:397:102 | (...)... | LogInjectionTest.java:397:95:397:102 | source(...) : Object | LogInjectionTest.java:397:86:397:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:397:95:397:102 | source(...) | user-provided value | +| LogInjectionTest.java:398:71:398:87 | (...)... | LogInjectionTest.java:398:80:398:87 | source(...) : Object | LogInjectionTest.java:398:71:398:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:398:80:398:87 | source(...) | user-provided value | +| LogInjectionTest.java:399:56:399:72 | (...)... | LogInjectionTest.java:399:65:399:72 | source(...) : Object | LogInjectionTest.java:399:56:399:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:399:65:399:72 | source(...) | user-provided value | +| LogInjectionTest.java:400:41:400:57 | (...)... | LogInjectionTest.java:400:50:400:57 | source(...) : Object | LogInjectionTest.java:400:41:400:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:400:50:400:57 | source(...) | user-provided value | +| LogInjectionTest.java:401:146:401:162 | (...)... | LogInjectionTest.java:401:155:401:162 | source(...) : Object | LogInjectionTest.java:401:146:401:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:401:155:401:162 | source(...) | user-provided value | +| LogInjectionTest.java:402:131:402:147 | (...)... | LogInjectionTest.java:402:140:402:147 | source(...) : Object | LogInjectionTest.java:402:131:402:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:402:140:402:147 | source(...) | user-provided value | +| LogInjectionTest.java:403:116:403:132 | (...)... | LogInjectionTest.java:403:125:403:132 | source(...) : Object | LogInjectionTest.java:403:116:403:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:403:125:403:132 | source(...) | user-provided value | +| LogInjectionTest.java:404:101:404:117 | (...)... | LogInjectionTest.java:404:110:404:117 | source(...) : Object | LogInjectionTest.java:404:101:404:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:404:110:404:117 | source(...) | user-provided value | +| LogInjectionTest.java:405:86:405:102 | (...)... | LogInjectionTest.java:405:95:405:102 | source(...) : Object | LogInjectionTest.java:405:86:405:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:405:95:405:102 | source(...) | user-provided value | +| LogInjectionTest.java:406:71:406:87 | (...)... | LogInjectionTest.java:406:80:406:87 | source(...) : Object | LogInjectionTest.java:406:71:406:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:406:80:406:87 | source(...) | user-provided value | +| LogInjectionTest.java:407:56:407:72 | (...)... | LogInjectionTest.java:407:65:407:72 | source(...) : Object | LogInjectionTest.java:407:56:407:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:407:65:407:72 | source(...) | user-provided value | +| LogInjectionTest.java:408:41:408:57 | (...)... | LogInjectionTest.java:408:50:408:57 | source(...) : Object | LogInjectionTest.java:408:41:408:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:408:50:408:57 | source(...) | user-provided value | | LogInjectionTest.java:409:161:409:177 | (...)... | LogInjectionTest.java:409:170:409:177 | source(...) : Object | LogInjectionTest.java:409:161:409:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:409:170:409:177 | source(...) | user-provided value | | LogInjectionTest.java:410:146:410:162 | (...)... | LogInjectionTest.java:410:155:410:162 | source(...) : Object | LogInjectionTest.java:410:146:410:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:410:155:410:162 | source(...) | user-provided value | | LogInjectionTest.java:411:131:411:147 | (...)... | LogInjectionTest.java:411:140:411:147 | source(...) : Object | LogInjectionTest.java:411:131:411:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:411:140:411:147 | source(...) | user-provided value | @@ -265,65 +255,65 @@ | LogInjectionTest.java:415:71:415:87 | (...)... | LogInjectionTest.java:415:80:415:87 | source(...) : Object | LogInjectionTest.java:415:71:415:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:415:80:415:87 | source(...) | user-provided value | | LogInjectionTest.java:416:56:416:72 | (...)... | LogInjectionTest.java:416:65:416:72 | source(...) : Object | LogInjectionTest.java:416:56:416:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:416:65:416:72 | source(...) | user-provided value | | LogInjectionTest.java:417:41:417:57 | (...)... | LogInjectionTest.java:417:50:417:57 | source(...) : Object | LogInjectionTest.java:417:41:417:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:417:50:417:57 | source(...) | user-provided value | -| LogInjectionTest.java:418:41:418:57 | (...)... | LogInjectionTest.java:418:50:418:57 | source(...) : Object | LogInjectionTest.java:418:41:418:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:418:50:418:57 | source(...) | user-provided value | -| LogInjectionTest.java:419:56:419:77 | (...)... | LogInjectionTest.java:419:70:419:77 | source(...) : Object | LogInjectionTest.java:419:56:419:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:419:70:419:77 | source(...) | user-provided value | -| LogInjectionTest.java:420:41:420:57 | (...)... | LogInjectionTest.java:420:50:420:57 | source(...) : Object | LogInjectionTest.java:420:41:420:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:420:50:420:57 | source(...) | user-provided value | -| LogInjectionTest.java:421:41:421:62 | (...)... | LogInjectionTest.java:421:55:421:62 | source(...) : Object | LogInjectionTest.java:421:41:421:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:421:55:421:62 | source(...) | user-provided value | -| LogInjectionTest.java:422:41:422:62 | (...)... | LogInjectionTest.java:422:55:422:62 | source(...) : Object | LogInjectionTest.java:422:41:422:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:422:55:422:62 | source(...) | user-provided value | -| LogInjectionTest.java:423:26:423:51 | (...)... | LogInjectionTest.java:423:44:423:51 | source(...) : Object | LogInjectionTest.java:423:26:423:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:423:44:423:51 | source(...) | user-provided value | -| LogInjectionTest.java:424:26:424:51 | (...)... | LogInjectionTest.java:424:44:424:51 | source(...) : Object | LogInjectionTest.java:424:26:424:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:424:44:424:51 | source(...) | user-provided value | -| LogInjectionTest.java:425:26:425:43 | (...)... | LogInjectionTest.java:425:36:425:43 | source(...) : Object | LogInjectionTest.java:425:26:425:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:425:36:425:43 | source(...) | user-provided value | -| LogInjectionTest.java:426:26:426:43 | (...)... | LogInjectionTest.java:426:36:426:43 | source(...) : Object | LogInjectionTest.java:426:26:426:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:426:36:426:43 | source(...) | user-provided value | -| LogInjectionTest.java:427:26:427:33 | source(...) | LogInjectionTest.java:427:26:427:33 | source(...) | LogInjectionTest.java:427:26:427:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:427:26:427:33 | source(...) | user-provided value | -| LogInjectionTest.java:428:26:428:33 | source(...) | LogInjectionTest.java:428:26:428:33 | source(...) | LogInjectionTest.java:428:26:428:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:428:26:428:33 | source(...) | user-provided value | -| LogInjectionTest.java:429:26:429:42 | (...)... | LogInjectionTest.java:429:35:429:42 | source(...) : Object | LogInjectionTest.java:429:26:429:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:429:35:429:42 | source(...) | user-provided value | -| LogInjectionTest.java:430:26:430:42 | (...)... | LogInjectionTest.java:430:35:430:42 | source(...) : Object | LogInjectionTest.java:430:26:430:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:430:35:430:42 | source(...) | user-provided value | -| LogInjectionTest.java:431:41:431:63 | new Object[] | LogInjectionTest.java:431:55:431:62 | source(...) : Object | LogInjectionTest.java:431:41:431:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:431:55:431:62 | source(...) | user-provided value | -| LogInjectionTest.java:432:41:432:57 | (...)... | LogInjectionTest.java:432:50:432:57 | source(...) : Object | LogInjectionTest.java:432:41:432:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:432:50:432:57 | source(...) | user-provided value | -| LogInjectionTest.java:433:26:433:42 | (...)... | LogInjectionTest.java:433:35:433:42 | source(...) : Object | LogInjectionTest.java:433:26:433:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:433:35:433:42 | source(...) | user-provided value | -| LogInjectionTest.java:434:56:434:72 | (...)... | LogInjectionTest.java:434:65:434:72 | source(...) : Object | LogInjectionTest.java:434:56:434:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:434:65:434:72 | source(...) | user-provided value | -| LogInjectionTest.java:435:41:435:57 | (...)... | LogInjectionTest.java:435:50:435:57 | source(...) : Object | LogInjectionTest.java:435:41:435:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:435:50:435:57 | source(...) | user-provided value | -| LogInjectionTest.java:436:26:436:42 | (...)... | LogInjectionTest.java:436:35:436:42 | source(...) : Object | LogInjectionTest.java:436:26:436:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:436:35:436:42 | source(...) | user-provided value | -| LogInjectionTest.java:437:71:437:87 | (...)... | LogInjectionTest.java:437:80:437:87 | source(...) : Object | LogInjectionTest.java:437:71:437:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:437:80:437:87 | source(...) | user-provided value | -| LogInjectionTest.java:438:56:438:72 | (...)... | LogInjectionTest.java:438:65:438:72 | source(...) : Object | LogInjectionTest.java:438:56:438:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:438:65:438:72 | source(...) | user-provided value | -| LogInjectionTest.java:439:41:439:57 | (...)... | LogInjectionTest.java:439:50:439:57 | source(...) : Object | LogInjectionTest.java:439:41:439:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:439:50:439:57 | source(...) | user-provided value | +| LogInjectionTest.java:418:176:418:192 | (...)... | LogInjectionTest.java:418:185:418:192 | source(...) : Object | LogInjectionTest.java:418:176:418:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:418:185:418:192 | source(...) | user-provided value | +| LogInjectionTest.java:419:161:419:177 | (...)... | LogInjectionTest.java:419:170:419:177 | source(...) : Object | LogInjectionTest.java:419:161:419:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:419:170:419:177 | source(...) | user-provided value | +| LogInjectionTest.java:420:146:420:162 | (...)... | LogInjectionTest.java:420:155:420:162 | source(...) : Object | LogInjectionTest.java:420:146:420:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:420:155:420:162 | source(...) | user-provided value | +| LogInjectionTest.java:421:131:421:147 | (...)... | LogInjectionTest.java:421:140:421:147 | source(...) : Object | LogInjectionTest.java:421:131:421:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:421:140:421:147 | source(...) | user-provided value | +| LogInjectionTest.java:422:116:422:132 | (...)... | LogInjectionTest.java:422:125:422:132 | source(...) : Object | LogInjectionTest.java:422:116:422:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:422:125:422:132 | source(...) | user-provided value | +| LogInjectionTest.java:423:101:423:117 | (...)... | LogInjectionTest.java:423:110:423:117 | source(...) : Object | LogInjectionTest.java:423:101:423:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:423:110:423:117 | source(...) | user-provided value | +| LogInjectionTest.java:424:86:424:102 | (...)... | LogInjectionTest.java:424:95:424:102 | source(...) : Object | LogInjectionTest.java:424:86:424:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:424:95:424:102 | source(...) | user-provided value | +| LogInjectionTest.java:425:71:425:87 | (...)... | LogInjectionTest.java:425:80:425:87 | source(...) : Object | LogInjectionTest.java:425:71:425:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:425:80:425:87 | source(...) | user-provided value | +| LogInjectionTest.java:426:56:426:72 | (...)... | LogInjectionTest.java:426:65:426:72 | source(...) : Object | LogInjectionTest.java:426:56:426:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:426:65:426:72 | source(...) | user-provided value | +| LogInjectionTest.java:427:41:427:57 | (...)... | LogInjectionTest.java:427:50:427:57 | source(...) : Object | LogInjectionTest.java:427:41:427:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:427:50:427:57 | source(...) | user-provided value | +| LogInjectionTest.java:428:41:428:57 | (...)... | LogInjectionTest.java:428:50:428:57 | source(...) : Object | LogInjectionTest.java:428:41:428:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:428:50:428:57 | source(...) | user-provided value | +| LogInjectionTest.java:429:56:429:77 | (...)... | LogInjectionTest.java:429:70:429:77 | source(...) : Object | LogInjectionTest.java:429:56:429:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:429:70:429:77 | source(...) | user-provided value | +| LogInjectionTest.java:430:41:430:57 | (...)... | LogInjectionTest.java:430:50:430:57 | source(...) : Object | LogInjectionTest.java:430:41:430:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:430:50:430:57 | source(...) | user-provided value | +| LogInjectionTest.java:431:41:431:62 | (...)... | LogInjectionTest.java:431:55:431:62 | source(...) : Object | LogInjectionTest.java:431:41:431:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:431:55:431:62 | source(...) | user-provided value | +| LogInjectionTest.java:432:41:432:62 | (...)... | LogInjectionTest.java:432:55:432:62 | source(...) : Object | LogInjectionTest.java:432:41:432:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:432:55:432:62 | source(...) | user-provided value | +| LogInjectionTest.java:433:26:433:51 | (...)... | LogInjectionTest.java:433:44:433:51 | source(...) : Object | LogInjectionTest.java:433:26:433:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:433:44:433:51 | source(...) | user-provided value | +| LogInjectionTest.java:434:26:434:51 | (...)... | LogInjectionTest.java:434:44:434:51 | source(...) : Object | LogInjectionTest.java:434:26:434:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:434:44:434:51 | source(...) | user-provided value | +| LogInjectionTest.java:435:26:435:43 | (...)... | LogInjectionTest.java:435:36:435:43 | source(...) : Object | LogInjectionTest.java:435:26:435:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:435:36:435:43 | source(...) | user-provided value | +| LogInjectionTest.java:436:26:436:43 | (...)... | LogInjectionTest.java:436:36:436:43 | source(...) : Object | LogInjectionTest.java:436:26:436:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:436:36:436:43 | source(...) | user-provided value | +| LogInjectionTest.java:437:26:437:33 | source(...) | LogInjectionTest.java:437:26:437:33 | source(...) | LogInjectionTest.java:437:26:437:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:437:26:437:33 | source(...) | user-provided value | +| LogInjectionTest.java:438:26:438:33 | source(...) | LogInjectionTest.java:438:26:438:33 | source(...) | LogInjectionTest.java:438:26:438:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:438:26:438:33 | source(...) | user-provided value | +| LogInjectionTest.java:439:26:439:42 | (...)... | LogInjectionTest.java:439:35:439:42 | source(...) : Object | LogInjectionTest.java:439:26:439:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:439:35:439:42 | source(...) | user-provided value | | LogInjectionTest.java:440:26:440:42 | (...)... | LogInjectionTest.java:440:35:440:42 | source(...) : Object | LogInjectionTest.java:440:26:440:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:440:35:440:42 | source(...) | user-provided value | -| LogInjectionTest.java:441:86:441:102 | (...)... | LogInjectionTest.java:441:95:441:102 | source(...) : Object | LogInjectionTest.java:441:86:441:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:441:95:441:102 | source(...) | user-provided value | -| LogInjectionTest.java:442:71:442:87 | (...)... | LogInjectionTest.java:442:80:442:87 | source(...) : Object | LogInjectionTest.java:442:71:442:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:442:80:442:87 | source(...) | user-provided value | -| LogInjectionTest.java:443:56:443:72 | (...)... | LogInjectionTest.java:443:65:443:72 | source(...) : Object | LogInjectionTest.java:443:56:443:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:443:65:443:72 | source(...) | user-provided value | -| LogInjectionTest.java:444:41:444:57 | (...)... | LogInjectionTest.java:444:50:444:57 | source(...) : Object | LogInjectionTest.java:444:41:444:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:444:50:444:57 | source(...) | user-provided value | -| LogInjectionTest.java:445:26:445:42 | (...)... | LogInjectionTest.java:445:35:445:42 | source(...) : Object | LogInjectionTest.java:445:26:445:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:445:35:445:42 | source(...) | user-provided value | -| LogInjectionTest.java:446:101:446:117 | (...)... | LogInjectionTest.java:446:110:446:117 | source(...) : Object | LogInjectionTest.java:446:101:446:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:446:110:446:117 | source(...) | user-provided value | -| LogInjectionTest.java:447:86:447:102 | (...)... | LogInjectionTest.java:447:95:447:102 | source(...) : Object | LogInjectionTest.java:447:86:447:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:447:95:447:102 | source(...) | user-provided value | -| LogInjectionTest.java:448:71:448:87 | (...)... | LogInjectionTest.java:448:80:448:87 | source(...) : Object | LogInjectionTest.java:448:71:448:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:448:80:448:87 | source(...) | user-provided value | -| LogInjectionTest.java:449:56:449:72 | (...)... | LogInjectionTest.java:449:65:449:72 | source(...) : Object | LogInjectionTest.java:449:56:449:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:449:65:449:72 | source(...) | user-provided value | -| LogInjectionTest.java:450:41:450:57 | (...)... | LogInjectionTest.java:450:50:450:57 | source(...) : Object | LogInjectionTest.java:450:41:450:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:450:50:450:57 | source(...) | user-provided value | -| LogInjectionTest.java:451:26:451:42 | (...)... | LogInjectionTest.java:451:35:451:42 | source(...) : Object | LogInjectionTest.java:451:26:451:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:451:35:451:42 | source(...) | user-provided value | -| LogInjectionTest.java:452:116:452:132 | (...)... | LogInjectionTest.java:452:125:452:132 | source(...) : Object | LogInjectionTest.java:452:116:452:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:452:125:452:132 | source(...) | user-provided value | -| LogInjectionTest.java:453:101:453:117 | (...)... | LogInjectionTest.java:453:110:453:117 | source(...) : Object | LogInjectionTest.java:453:101:453:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:453:110:453:117 | source(...) | user-provided value | -| LogInjectionTest.java:454:86:454:102 | (...)... | LogInjectionTest.java:454:95:454:102 | source(...) : Object | LogInjectionTest.java:454:86:454:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:454:95:454:102 | source(...) | user-provided value | -| LogInjectionTest.java:455:71:455:87 | (...)... | LogInjectionTest.java:455:80:455:87 | source(...) : Object | LogInjectionTest.java:455:71:455:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:455:80:455:87 | source(...) | user-provided value | -| LogInjectionTest.java:456:56:456:72 | (...)... | LogInjectionTest.java:456:65:456:72 | source(...) : Object | LogInjectionTest.java:456:56:456:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:456:65:456:72 | source(...) | user-provided value | -| LogInjectionTest.java:457:41:457:57 | (...)... | LogInjectionTest.java:457:50:457:57 | source(...) : Object | LogInjectionTest.java:457:41:457:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:457:50:457:57 | source(...) | user-provided value | -| LogInjectionTest.java:458:26:458:42 | (...)... | LogInjectionTest.java:458:35:458:42 | source(...) : Object | LogInjectionTest.java:458:26:458:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:458:35:458:42 | source(...) | user-provided value | -| LogInjectionTest.java:459:131:459:147 | (...)... | LogInjectionTest.java:459:140:459:147 | source(...) : Object | LogInjectionTest.java:459:131:459:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:459:140:459:147 | source(...) | user-provided value | -| LogInjectionTest.java:460:116:460:132 | (...)... | LogInjectionTest.java:460:125:460:132 | source(...) : Object | LogInjectionTest.java:460:116:460:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:460:125:460:132 | source(...) | user-provided value | -| LogInjectionTest.java:461:101:461:117 | (...)... | LogInjectionTest.java:461:110:461:117 | source(...) : Object | LogInjectionTest.java:461:101:461:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:461:110:461:117 | source(...) | user-provided value | -| LogInjectionTest.java:462:86:462:102 | (...)... | LogInjectionTest.java:462:95:462:102 | source(...) : Object | LogInjectionTest.java:462:86:462:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:462:95:462:102 | source(...) | user-provided value | -| LogInjectionTest.java:463:71:463:87 | (...)... | LogInjectionTest.java:463:80:463:87 | source(...) : Object | LogInjectionTest.java:463:71:463:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:463:80:463:87 | source(...) | user-provided value | -| LogInjectionTest.java:464:56:464:72 | (...)... | LogInjectionTest.java:464:65:464:72 | source(...) : Object | LogInjectionTest.java:464:56:464:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:464:65:464:72 | source(...) | user-provided value | -| LogInjectionTest.java:465:41:465:57 | (...)... | LogInjectionTest.java:465:50:465:57 | source(...) : Object | LogInjectionTest.java:465:41:465:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:465:50:465:57 | source(...) | user-provided value | -| LogInjectionTest.java:466:26:466:42 | (...)... | LogInjectionTest.java:466:35:466:42 | source(...) : Object | LogInjectionTest.java:466:26:466:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:466:35:466:42 | source(...) | user-provided value | -| LogInjectionTest.java:467:146:467:162 | (...)... | LogInjectionTest.java:467:155:467:162 | source(...) : Object | LogInjectionTest.java:467:146:467:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:467:155:467:162 | source(...) | user-provided value | -| LogInjectionTest.java:468:131:468:147 | (...)... | LogInjectionTest.java:468:140:468:147 | source(...) : Object | LogInjectionTest.java:468:131:468:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:468:140:468:147 | source(...) | user-provided value | -| LogInjectionTest.java:469:116:469:132 | (...)... | LogInjectionTest.java:469:125:469:132 | source(...) : Object | LogInjectionTest.java:469:116:469:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:469:125:469:132 | source(...) | user-provided value | -| LogInjectionTest.java:470:101:470:117 | (...)... | LogInjectionTest.java:470:110:470:117 | source(...) : Object | LogInjectionTest.java:470:101:470:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:470:110:470:117 | source(...) | user-provided value | -| LogInjectionTest.java:471:86:471:102 | (...)... | LogInjectionTest.java:471:95:471:102 | source(...) : Object | LogInjectionTest.java:471:86:471:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:471:95:471:102 | source(...) | user-provided value | -| LogInjectionTest.java:472:71:472:87 | (...)... | LogInjectionTest.java:472:80:472:87 | source(...) : Object | LogInjectionTest.java:472:71:472:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:472:80:472:87 | source(...) | user-provided value | -| LogInjectionTest.java:473:56:473:72 | (...)... | LogInjectionTest.java:473:65:473:72 | source(...) : Object | LogInjectionTest.java:473:56:473:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:473:65:473:72 | source(...) | user-provided value | -| LogInjectionTest.java:474:41:474:57 | (...)... | LogInjectionTest.java:474:50:474:57 | source(...) : Object | LogInjectionTest.java:474:41:474:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:474:50:474:57 | source(...) | user-provided value | -| LogInjectionTest.java:475:26:475:42 | (...)... | LogInjectionTest.java:475:35:475:42 | source(...) : Object | LogInjectionTest.java:475:26:475:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:475:35:475:42 | source(...) | user-provided value | -| LogInjectionTest.java:476:161:476:177 | (...)... | LogInjectionTest.java:476:170:476:177 | source(...) : Object | LogInjectionTest.java:476:161:476:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:476:170:476:177 | source(...) | user-provided value | +| LogInjectionTest.java:441:41:441:63 | new Object[] | LogInjectionTest.java:441:55:441:62 | source(...) : Object | LogInjectionTest.java:441:41:441:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:441:55:441:62 | source(...) | user-provided value | +| LogInjectionTest.java:442:41:442:57 | (...)... | LogInjectionTest.java:442:50:442:57 | source(...) : Object | LogInjectionTest.java:442:41:442:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:442:50:442:57 | source(...) | user-provided value | +| LogInjectionTest.java:443:26:443:42 | (...)... | LogInjectionTest.java:443:35:443:42 | source(...) : Object | LogInjectionTest.java:443:26:443:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:443:35:443:42 | source(...) | user-provided value | +| LogInjectionTest.java:444:56:444:72 | (...)... | LogInjectionTest.java:444:65:444:72 | source(...) : Object | LogInjectionTest.java:444:56:444:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:444:65:444:72 | source(...) | user-provided value | +| LogInjectionTest.java:445:41:445:57 | (...)... | LogInjectionTest.java:445:50:445:57 | source(...) : Object | LogInjectionTest.java:445:41:445:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:445:50:445:57 | source(...) | user-provided value | +| LogInjectionTest.java:446:26:446:42 | (...)... | LogInjectionTest.java:446:35:446:42 | source(...) : Object | LogInjectionTest.java:446:26:446:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:446:35:446:42 | source(...) | user-provided value | +| LogInjectionTest.java:447:71:447:87 | (...)... | LogInjectionTest.java:447:80:447:87 | source(...) : Object | LogInjectionTest.java:447:71:447:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:447:80:447:87 | source(...) | user-provided value | +| LogInjectionTest.java:448:56:448:72 | (...)... | LogInjectionTest.java:448:65:448:72 | source(...) : Object | LogInjectionTest.java:448:56:448:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:448:65:448:72 | source(...) | user-provided value | +| LogInjectionTest.java:449:41:449:57 | (...)... | LogInjectionTest.java:449:50:449:57 | source(...) : Object | LogInjectionTest.java:449:41:449:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:449:50:449:57 | source(...) | user-provided value | +| LogInjectionTest.java:450:26:450:42 | (...)... | LogInjectionTest.java:450:35:450:42 | source(...) : Object | LogInjectionTest.java:450:26:450:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:450:35:450:42 | source(...) | user-provided value | +| LogInjectionTest.java:451:86:451:102 | (...)... | LogInjectionTest.java:451:95:451:102 | source(...) : Object | LogInjectionTest.java:451:86:451:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:451:95:451:102 | source(...) | user-provided value | +| LogInjectionTest.java:452:71:452:87 | (...)... | LogInjectionTest.java:452:80:452:87 | source(...) : Object | LogInjectionTest.java:452:71:452:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:452:80:452:87 | source(...) | user-provided value | +| LogInjectionTest.java:453:56:453:72 | (...)... | LogInjectionTest.java:453:65:453:72 | source(...) : Object | LogInjectionTest.java:453:56:453:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:453:65:453:72 | source(...) | user-provided value | +| LogInjectionTest.java:454:41:454:57 | (...)... | LogInjectionTest.java:454:50:454:57 | source(...) : Object | LogInjectionTest.java:454:41:454:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:454:50:454:57 | source(...) | user-provided value | +| LogInjectionTest.java:455:26:455:42 | (...)... | LogInjectionTest.java:455:35:455:42 | source(...) : Object | LogInjectionTest.java:455:26:455:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:455:35:455:42 | source(...) | user-provided value | +| LogInjectionTest.java:456:101:456:117 | (...)... | LogInjectionTest.java:456:110:456:117 | source(...) : Object | LogInjectionTest.java:456:101:456:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:456:110:456:117 | source(...) | user-provided value | +| LogInjectionTest.java:457:86:457:102 | (...)... | LogInjectionTest.java:457:95:457:102 | source(...) : Object | LogInjectionTest.java:457:86:457:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:457:95:457:102 | source(...) | user-provided value | +| LogInjectionTest.java:458:71:458:87 | (...)... | LogInjectionTest.java:458:80:458:87 | source(...) : Object | LogInjectionTest.java:458:71:458:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:458:80:458:87 | source(...) | user-provided value | +| LogInjectionTest.java:459:56:459:72 | (...)... | LogInjectionTest.java:459:65:459:72 | source(...) : Object | LogInjectionTest.java:459:56:459:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:459:65:459:72 | source(...) | user-provided value | +| LogInjectionTest.java:460:41:460:57 | (...)... | LogInjectionTest.java:460:50:460:57 | source(...) : Object | LogInjectionTest.java:460:41:460:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:460:50:460:57 | source(...) | user-provided value | +| LogInjectionTest.java:461:26:461:42 | (...)... | LogInjectionTest.java:461:35:461:42 | source(...) : Object | LogInjectionTest.java:461:26:461:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:461:35:461:42 | source(...) | user-provided value | +| LogInjectionTest.java:462:116:462:132 | (...)... | LogInjectionTest.java:462:125:462:132 | source(...) : Object | LogInjectionTest.java:462:116:462:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:462:125:462:132 | source(...) | user-provided value | +| LogInjectionTest.java:463:101:463:117 | (...)... | LogInjectionTest.java:463:110:463:117 | source(...) : Object | LogInjectionTest.java:463:101:463:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:463:110:463:117 | source(...) | user-provided value | +| LogInjectionTest.java:464:86:464:102 | (...)... | LogInjectionTest.java:464:95:464:102 | source(...) : Object | LogInjectionTest.java:464:86:464:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:464:95:464:102 | source(...) | user-provided value | +| LogInjectionTest.java:465:71:465:87 | (...)... | LogInjectionTest.java:465:80:465:87 | source(...) : Object | LogInjectionTest.java:465:71:465:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:465:80:465:87 | source(...) | user-provided value | +| LogInjectionTest.java:466:56:466:72 | (...)... | LogInjectionTest.java:466:65:466:72 | source(...) : Object | LogInjectionTest.java:466:56:466:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:466:65:466:72 | source(...) | user-provided value | +| LogInjectionTest.java:467:41:467:57 | (...)... | LogInjectionTest.java:467:50:467:57 | source(...) : Object | LogInjectionTest.java:467:41:467:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:467:50:467:57 | source(...) | user-provided value | +| LogInjectionTest.java:468:26:468:42 | (...)... | LogInjectionTest.java:468:35:468:42 | source(...) : Object | LogInjectionTest.java:468:26:468:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:468:35:468:42 | source(...) | user-provided value | +| LogInjectionTest.java:469:131:469:147 | (...)... | LogInjectionTest.java:469:140:469:147 | source(...) : Object | LogInjectionTest.java:469:131:469:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:469:140:469:147 | source(...) | user-provided value | +| LogInjectionTest.java:470:116:470:132 | (...)... | LogInjectionTest.java:470:125:470:132 | source(...) : Object | LogInjectionTest.java:470:116:470:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:470:125:470:132 | source(...) | user-provided value | +| LogInjectionTest.java:471:101:471:117 | (...)... | LogInjectionTest.java:471:110:471:117 | source(...) : Object | LogInjectionTest.java:471:101:471:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:471:110:471:117 | source(...) | user-provided value | +| LogInjectionTest.java:472:86:472:102 | (...)... | LogInjectionTest.java:472:95:472:102 | source(...) : Object | LogInjectionTest.java:472:86:472:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:472:95:472:102 | source(...) | user-provided value | +| LogInjectionTest.java:473:71:473:87 | (...)... | LogInjectionTest.java:473:80:473:87 | source(...) : Object | LogInjectionTest.java:473:71:473:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:473:80:473:87 | source(...) | user-provided value | +| LogInjectionTest.java:474:56:474:72 | (...)... | LogInjectionTest.java:474:65:474:72 | source(...) : Object | LogInjectionTest.java:474:56:474:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:474:65:474:72 | source(...) | user-provided value | +| LogInjectionTest.java:475:41:475:57 | (...)... | LogInjectionTest.java:475:50:475:57 | source(...) : Object | LogInjectionTest.java:475:41:475:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:475:50:475:57 | source(...) | user-provided value | +| LogInjectionTest.java:476:26:476:42 | (...)... | LogInjectionTest.java:476:35:476:42 | source(...) : Object | LogInjectionTest.java:476:26:476:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:476:35:476:42 | source(...) | user-provided value | | LogInjectionTest.java:477:146:477:162 | (...)... | LogInjectionTest.java:477:155:477:162 | source(...) : Object | LogInjectionTest.java:477:146:477:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:477:155:477:162 | source(...) | user-provided value | | LogInjectionTest.java:478:131:478:147 | (...)... | LogInjectionTest.java:478:140:478:147 | source(...) : Object | LogInjectionTest.java:478:131:478:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:478:140:478:147 | source(...) | user-provided value | | LogInjectionTest.java:479:116:479:132 | (...)... | LogInjectionTest.java:479:125:479:132 | source(...) : Object | LogInjectionTest.java:479:116:479:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:479:125:479:132 | source(...) | user-provided value | @@ -333,67 +323,67 @@ | LogInjectionTest.java:483:56:483:72 | (...)... | LogInjectionTest.java:483:65:483:72 | source(...) : Object | LogInjectionTest.java:483:56:483:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:483:65:483:72 | source(...) | user-provided value | | LogInjectionTest.java:484:41:484:57 | (...)... | LogInjectionTest.java:484:50:484:57 | source(...) : Object | LogInjectionTest.java:484:41:484:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:484:50:484:57 | source(...) | user-provided value | | LogInjectionTest.java:485:26:485:42 | (...)... | LogInjectionTest.java:485:35:485:42 | source(...) : Object | LogInjectionTest.java:485:26:485:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:485:35:485:42 | source(...) | user-provided value | -| LogInjectionTest.java:486:26:486:42 | (...)... | LogInjectionTest.java:486:35:486:42 | source(...) : Object | LogInjectionTest.java:486:26:486:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:486:35:486:42 | source(...) | user-provided value | -| LogInjectionTest.java:487:41:487:62 | (...)... | LogInjectionTest.java:487:55:487:62 | source(...) : Object | LogInjectionTest.java:487:41:487:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:487:55:487:62 | source(...) | user-provided value | -| LogInjectionTest.java:488:26:488:42 | (...)... | LogInjectionTest.java:488:35:488:42 | source(...) : Object | LogInjectionTest.java:488:26:488:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:488:35:488:42 | source(...) | user-provided value | -| LogInjectionTest.java:489:26:489:47 | (...)... | LogInjectionTest.java:489:40:489:47 | source(...) : Object | LogInjectionTest.java:489:26:489:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:489:40:489:47 | source(...) | user-provided value | -| LogInjectionTest.java:490:26:490:47 | (...)... | LogInjectionTest.java:490:40:490:47 | source(...) : Object | LogInjectionTest.java:490:26:490:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:490:40:490:47 | source(...) | user-provided value | -| LogInjectionTest.java:491:26:491:48 | (...)... | LogInjectionTest.java:491:41:491:48 | source(...) : Object | LogInjectionTest.java:491:26:491:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:491:41:491:48 | source(...) | user-provided value | -| LogInjectionTest.java:492:26:492:48 | (...)... | LogInjectionTest.java:492:41:492:48 | source(...) : Object | LogInjectionTest.java:492:26:492:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:492:41:492:48 | source(...) | user-provided value | -| LogInjectionTest.java:493:41:493:63 | (...)... | LogInjectionTest.java:493:56:493:63 | source(...) : Object | LogInjectionTest.java:493:41:493:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:493:56:493:63 | source(...) | user-provided value | -| LogInjectionTest.java:494:41:494:63 | (...)... | LogInjectionTest.java:494:56:494:63 | source(...) : Object | LogInjectionTest.java:494:41:494:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:494:56:494:63 | source(...) | user-provided value | -| LogInjectionTest.java:495:41:495:58 | (...)... | LogInjectionTest.java:495:51:495:58 | source(...) : Object | LogInjectionTest.java:495:41:495:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:495:51:495:58 | source(...) | user-provided value | -| LogInjectionTest.java:496:41:496:66 | (...)... | LogInjectionTest.java:496:59:496:66 | source(...) : Object | LogInjectionTest.java:496:41:496:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:496:59:496:66 | source(...) | user-provided value | -| LogInjectionTest.java:497:41:497:66 | (...)... | LogInjectionTest.java:497:59:497:66 | source(...) : Object | LogInjectionTest.java:497:41:497:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:497:59:497:66 | source(...) | user-provided value | -| LogInjectionTest.java:498:41:498:48 | source(...) | LogInjectionTest.java:498:41:498:48 | source(...) | LogInjectionTest.java:498:41:498:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:498:41:498:48 | source(...) | user-provided value | -| LogInjectionTest.java:499:41:499:57 | (...)... | LogInjectionTest.java:499:50:499:57 | source(...) : Object | LogInjectionTest.java:499:41:499:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:499:50:499:57 | source(...) | user-provided value | -| LogInjectionTest.java:500:41:500:57 | (...)... | LogInjectionTest.java:500:50:500:57 | source(...) : Object | LogInjectionTest.java:500:41:500:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:500:50:500:57 | source(...) | user-provided value | -| LogInjectionTest.java:501:56:501:78 | new Object[] | LogInjectionTest.java:501:70:501:77 | source(...) : Object | LogInjectionTest.java:501:56:501:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:501:70:501:77 | source(...) | user-provided value | -| LogInjectionTest.java:502:56:502:72 | (...)... | LogInjectionTest.java:502:65:502:72 | source(...) : Object | LogInjectionTest.java:502:56:502:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:502:65:502:72 | source(...) | user-provided value | -| LogInjectionTest.java:503:41:503:57 | (...)... | LogInjectionTest.java:503:50:503:57 | source(...) : Object | LogInjectionTest.java:503:41:503:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:503:50:503:57 | source(...) | user-provided value | -| LogInjectionTest.java:504:71:504:87 | (...)... | LogInjectionTest.java:504:80:504:87 | source(...) : Object | LogInjectionTest.java:504:71:504:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:504:80:504:87 | source(...) | user-provided value | -| LogInjectionTest.java:505:56:505:72 | (...)... | LogInjectionTest.java:505:65:505:72 | source(...) : Object | LogInjectionTest.java:505:56:505:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:505:65:505:72 | source(...) | user-provided value | -| LogInjectionTest.java:506:41:506:57 | (...)... | LogInjectionTest.java:506:50:506:57 | source(...) : Object | LogInjectionTest.java:506:41:506:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:506:50:506:57 | source(...) | user-provided value | -| LogInjectionTest.java:507:86:507:102 | (...)... | LogInjectionTest.java:507:95:507:102 | source(...) : Object | LogInjectionTest.java:507:86:507:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:507:95:507:102 | source(...) | user-provided value | -| LogInjectionTest.java:508:71:508:87 | (...)... | LogInjectionTest.java:508:80:508:87 | source(...) : Object | LogInjectionTest.java:508:71:508:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:508:80:508:87 | source(...) | user-provided value | -| LogInjectionTest.java:509:56:509:72 | (...)... | LogInjectionTest.java:509:65:509:72 | source(...) : Object | LogInjectionTest.java:509:56:509:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:509:65:509:72 | source(...) | user-provided value | +| LogInjectionTest.java:486:161:486:177 | (...)... | LogInjectionTest.java:486:170:486:177 | source(...) : Object | LogInjectionTest.java:486:161:486:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:486:170:486:177 | source(...) | user-provided value | +| LogInjectionTest.java:487:146:487:162 | (...)... | LogInjectionTest.java:487:155:487:162 | source(...) : Object | LogInjectionTest.java:487:146:487:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:487:155:487:162 | source(...) | user-provided value | +| LogInjectionTest.java:488:131:488:147 | (...)... | LogInjectionTest.java:488:140:488:147 | source(...) : Object | LogInjectionTest.java:488:131:488:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:488:140:488:147 | source(...) | user-provided value | +| LogInjectionTest.java:489:116:489:132 | (...)... | LogInjectionTest.java:489:125:489:132 | source(...) : Object | LogInjectionTest.java:489:116:489:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:489:125:489:132 | source(...) | user-provided value | +| LogInjectionTest.java:490:101:490:117 | (...)... | LogInjectionTest.java:490:110:490:117 | source(...) : Object | LogInjectionTest.java:490:101:490:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:490:110:490:117 | source(...) | user-provided value | +| LogInjectionTest.java:491:86:491:102 | (...)... | LogInjectionTest.java:491:95:491:102 | source(...) : Object | LogInjectionTest.java:491:86:491:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:491:95:491:102 | source(...) | user-provided value | +| LogInjectionTest.java:492:71:492:87 | (...)... | LogInjectionTest.java:492:80:492:87 | source(...) : Object | LogInjectionTest.java:492:71:492:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:492:80:492:87 | source(...) | user-provided value | +| LogInjectionTest.java:493:56:493:72 | (...)... | LogInjectionTest.java:493:65:493:72 | source(...) : Object | LogInjectionTest.java:493:56:493:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:493:65:493:72 | source(...) | user-provided value | +| LogInjectionTest.java:494:41:494:57 | (...)... | LogInjectionTest.java:494:50:494:57 | source(...) : Object | LogInjectionTest.java:494:41:494:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:494:50:494:57 | source(...) | user-provided value | +| LogInjectionTest.java:495:26:495:42 | (...)... | LogInjectionTest.java:495:35:495:42 | source(...) : Object | LogInjectionTest.java:495:26:495:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:495:35:495:42 | source(...) | user-provided value | +| LogInjectionTest.java:496:26:496:42 | (...)... | LogInjectionTest.java:496:35:496:42 | source(...) : Object | LogInjectionTest.java:496:26:496:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:496:35:496:42 | source(...) | user-provided value | +| LogInjectionTest.java:497:41:497:62 | (...)... | LogInjectionTest.java:497:55:497:62 | source(...) : Object | LogInjectionTest.java:497:41:497:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:497:55:497:62 | source(...) | user-provided value | +| LogInjectionTest.java:498:26:498:42 | (...)... | LogInjectionTest.java:498:35:498:42 | source(...) : Object | LogInjectionTest.java:498:26:498:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:498:35:498:42 | source(...) | user-provided value | +| LogInjectionTest.java:499:26:499:47 | (...)... | LogInjectionTest.java:499:40:499:47 | source(...) : Object | LogInjectionTest.java:499:26:499:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:499:40:499:47 | source(...) | user-provided value | +| LogInjectionTest.java:500:26:500:47 | (...)... | LogInjectionTest.java:500:40:500:47 | source(...) : Object | LogInjectionTest.java:500:26:500:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:500:40:500:47 | source(...) | user-provided value | +| LogInjectionTest.java:501:26:501:48 | (...)... | LogInjectionTest.java:501:41:501:48 | source(...) : Object | LogInjectionTest.java:501:26:501:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:501:41:501:48 | source(...) | user-provided value | +| LogInjectionTest.java:502:26:502:48 | (...)... | LogInjectionTest.java:502:41:502:48 | source(...) : Object | LogInjectionTest.java:502:26:502:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:502:41:502:48 | source(...) | user-provided value | +| LogInjectionTest.java:503:41:503:63 | (...)... | LogInjectionTest.java:503:56:503:63 | source(...) : Object | LogInjectionTest.java:503:41:503:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:503:56:503:63 | source(...) | user-provided value | +| LogInjectionTest.java:504:41:504:63 | (...)... | LogInjectionTest.java:504:56:504:63 | source(...) : Object | LogInjectionTest.java:504:41:504:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:504:56:504:63 | source(...) | user-provided value | +| LogInjectionTest.java:505:41:505:58 | (...)... | LogInjectionTest.java:505:51:505:58 | source(...) : Object | LogInjectionTest.java:505:41:505:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:505:51:505:58 | source(...) | user-provided value | +| LogInjectionTest.java:506:41:506:66 | (...)... | LogInjectionTest.java:506:59:506:66 | source(...) : Object | LogInjectionTest.java:506:41:506:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:506:59:506:66 | source(...) | user-provided value | +| LogInjectionTest.java:507:41:507:66 | (...)... | LogInjectionTest.java:507:59:507:66 | source(...) : Object | LogInjectionTest.java:507:41:507:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:507:59:507:66 | source(...) | user-provided value | +| LogInjectionTest.java:508:41:508:48 | source(...) | LogInjectionTest.java:508:41:508:48 | source(...) | LogInjectionTest.java:508:41:508:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:508:41:508:48 | source(...) | user-provided value | +| LogInjectionTest.java:509:41:509:57 | (...)... | LogInjectionTest.java:509:50:509:57 | source(...) : Object | LogInjectionTest.java:509:41:509:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:509:50:509:57 | source(...) | user-provided value | | LogInjectionTest.java:510:41:510:57 | (...)... | LogInjectionTest.java:510:50:510:57 | source(...) : Object | LogInjectionTest.java:510:41:510:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:510:50:510:57 | source(...) | user-provided value | -| LogInjectionTest.java:511:101:511:117 | (...)... | LogInjectionTest.java:511:110:511:117 | source(...) : Object | LogInjectionTest.java:511:101:511:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:511:110:511:117 | source(...) | user-provided value | -| LogInjectionTest.java:512:86:512:102 | (...)... | LogInjectionTest.java:512:95:512:102 | source(...) : Object | LogInjectionTest.java:512:86:512:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:512:95:512:102 | source(...) | user-provided value | -| LogInjectionTest.java:513:71:513:87 | (...)... | LogInjectionTest.java:513:80:513:87 | source(...) : Object | LogInjectionTest.java:513:71:513:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:513:80:513:87 | source(...) | user-provided value | -| LogInjectionTest.java:514:56:514:72 | (...)... | LogInjectionTest.java:514:65:514:72 | source(...) : Object | LogInjectionTest.java:514:56:514:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:514:65:514:72 | source(...) | user-provided value | -| LogInjectionTest.java:515:41:515:57 | (...)... | LogInjectionTest.java:515:50:515:57 | source(...) : Object | LogInjectionTest.java:515:41:515:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:515:50:515:57 | source(...) | user-provided value | -| LogInjectionTest.java:516:116:516:132 | (...)... | LogInjectionTest.java:516:125:516:132 | source(...) : Object | LogInjectionTest.java:516:116:516:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:516:125:516:132 | source(...) | user-provided value | -| LogInjectionTest.java:517:101:517:117 | (...)... | LogInjectionTest.java:517:110:517:117 | source(...) : Object | LogInjectionTest.java:517:101:517:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:517:110:517:117 | source(...) | user-provided value | -| LogInjectionTest.java:518:86:518:102 | (...)... | LogInjectionTest.java:518:95:518:102 | source(...) : Object | LogInjectionTest.java:518:86:518:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:518:95:518:102 | source(...) | user-provided value | -| LogInjectionTest.java:519:71:519:87 | (...)... | LogInjectionTest.java:519:80:519:87 | source(...) : Object | LogInjectionTest.java:519:71:519:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:519:80:519:87 | source(...) | user-provided value | -| LogInjectionTest.java:520:56:520:72 | (...)... | LogInjectionTest.java:520:65:520:72 | source(...) : Object | LogInjectionTest.java:520:56:520:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:520:65:520:72 | source(...) | user-provided value | -| LogInjectionTest.java:521:41:521:57 | (...)... | LogInjectionTest.java:521:50:521:57 | source(...) : Object | LogInjectionTest.java:521:41:521:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:521:50:521:57 | source(...) | user-provided value | -| LogInjectionTest.java:522:131:522:147 | (...)... | LogInjectionTest.java:522:140:522:147 | source(...) : Object | LogInjectionTest.java:522:131:522:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:522:140:522:147 | source(...) | user-provided value | -| LogInjectionTest.java:523:116:523:132 | (...)... | LogInjectionTest.java:523:125:523:132 | source(...) : Object | LogInjectionTest.java:523:116:523:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:523:125:523:132 | source(...) | user-provided value | -| LogInjectionTest.java:524:101:524:117 | (...)... | LogInjectionTest.java:524:110:524:117 | source(...) : Object | LogInjectionTest.java:524:101:524:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:524:110:524:117 | source(...) | user-provided value | -| LogInjectionTest.java:525:86:525:102 | (...)... | LogInjectionTest.java:525:95:525:102 | source(...) : Object | LogInjectionTest.java:525:86:525:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:525:95:525:102 | source(...) | user-provided value | -| LogInjectionTest.java:526:71:526:87 | (...)... | LogInjectionTest.java:526:80:526:87 | source(...) : Object | LogInjectionTest.java:526:71:526:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:526:80:526:87 | source(...) | user-provided value | -| LogInjectionTest.java:527:56:527:72 | (...)... | LogInjectionTest.java:527:65:527:72 | source(...) : Object | LogInjectionTest.java:527:56:527:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:527:65:527:72 | source(...) | user-provided value | -| LogInjectionTest.java:528:41:528:57 | (...)... | LogInjectionTest.java:528:50:528:57 | source(...) : Object | LogInjectionTest.java:528:41:528:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:528:50:528:57 | source(...) | user-provided value | -| LogInjectionTest.java:529:146:529:162 | (...)... | LogInjectionTest.java:529:155:529:162 | source(...) : Object | LogInjectionTest.java:529:146:529:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:529:155:529:162 | source(...) | user-provided value | -| LogInjectionTest.java:530:131:530:147 | (...)... | LogInjectionTest.java:530:140:530:147 | source(...) : Object | LogInjectionTest.java:530:131:530:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:530:140:530:147 | source(...) | user-provided value | -| LogInjectionTest.java:531:116:531:132 | (...)... | LogInjectionTest.java:531:125:531:132 | source(...) : Object | LogInjectionTest.java:531:116:531:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:531:125:531:132 | source(...) | user-provided value | -| LogInjectionTest.java:532:101:532:117 | (...)... | LogInjectionTest.java:532:110:532:117 | source(...) : Object | LogInjectionTest.java:532:101:532:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:532:110:532:117 | source(...) | user-provided value | -| LogInjectionTest.java:533:86:533:102 | (...)... | LogInjectionTest.java:533:95:533:102 | source(...) : Object | LogInjectionTest.java:533:86:533:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:533:95:533:102 | source(...) | user-provided value | -| LogInjectionTest.java:534:71:534:87 | (...)... | LogInjectionTest.java:534:80:534:87 | source(...) : Object | LogInjectionTest.java:534:71:534:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:534:80:534:87 | source(...) | user-provided value | -| LogInjectionTest.java:535:56:535:72 | (...)... | LogInjectionTest.java:535:65:535:72 | source(...) : Object | LogInjectionTest.java:535:56:535:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:535:65:535:72 | source(...) | user-provided value | -| LogInjectionTest.java:536:41:536:57 | (...)... | LogInjectionTest.java:536:50:536:57 | source(...) : Object | LogInjectionTest.java:536:41:536:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:536:50:536:57 | source(...) | user-provided value | -| LogInjectionTest.java:537:161:537:177 | (...)... | LogInjectionTest.java:537:170:537:177 | source(...) : Object | LogInjectionTest.java:537:161:537:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:537:170:537:177 | source(...) | user-provided value | -| LogInjectionTest.java:538:146:538:162 | (...)... | LogInjectionTest.java:538:155:538:162 | source(...) : Object | LogInjectionTest.java:538:146:538:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:538:155:538:162 | source(...) | user-provided value | -| LogInjectionTest.java:539:131:539:147 | (...)... | LogInjectionTest.java:539:140:539:147 | source(...) : Object | LogInjectionTest.java:539:131:539:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:539:140:539:147 | source(...) | user-provided value | -| LogInjectionTest.java:540:116:540:132 | (...)... | LogInjectionTest.java:540:125:540:132 | source(...) : Object | LogInjectionTest.java:540:116:540:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:540:125:540:132 | source(...) | user-provided value | -| LogInjectionTest.java:541:101:541:117 | (...)... | LogInjectionTest.java:541:110:541:117 | source(...) : Object | LogInjectionTest.java:541:101:541:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:541:110:541:117 | source(...) | user-provided value | -| LogInjectionTest.java:542:86:542:102 | (...)... | LogInjectionTest.java:542:95:542:102 | source(...) : Object | LogInjectionTest.java:542:86:542:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:542:95:542:102 | source(...) | user-provided value | -| LogInjectionTest.java:543:71:543:87 | (...)... | LogInjectionTest.java:543:80:543:87 | source(...) : Object | LogInjectionTest.java:543:71:543:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:543:80:543:87 | source(...) | user-provided value | -| LogInjectionTest.java:544:56:544:72 | (...)... | LogInjectionTest.java:544:65:544:72 | source(...) : Object | LogInjectionTest.java:544:56:544:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:544:65:544:72 | source(...) | user-provided value | -| LogInjectionTest.java:545:41:545:57 | (...)... | LogInjectionTest.java:545:50:545:57 | source(...) : Object | LogInjectionTest.java:545:41:545:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:545:50:545:57 | source(...) | user-provided value | -| LogInjectionTest.java:546:176:546:192 | (...)... | LogInjectionTest.java:546:185:546:192 | source(...) : Object | LogInjectionTest.java:546:176:546:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:546:185:546:192 | source(...) | user-provided value | +| LogInjectionTest.java:511:56:511:78 | new Object[] | LogInjectionTest.java:511:70:511:77 | source(...) : Object | LogInjectionTest.java:511:56:511:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:511:70:511:77 | source(...) | user-provided value | +| LogInjectionTest.java:512:56:512:72 | (...)... | LogInjectionTest.java:512:65:512:72 | source(...) : Object | LogInjectionTest.java:512:56:512:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:512:65:512:72 | source(...) | user-provided value | +| LogInjectionTest.java:513:41:513:57 | (...)... | LogInjectionTest.java:513:50:513:57 | source(...) : Object | LogInjectionTest.java:513:41:513:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:513:50:513:57 | source(...) | user-provided value | +| LogInjectionTest.java:514:71:514:87 | (...)... | LogInjectionTest.java:514:80:514:87 | source(...) : Object | LogInjectionTest.java:514:71:514:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:514:80:514:87 | source(...) | user-provided value | +| LogInjectionTest.java:515:56:515:72 | (...)... | LogInjectionTest.java:515:65:515:72 | source(...) : Object | LogInjectionTest.java:515:56:515:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:515:65:515:72 | source(...) | user-provided value | +| LogInjectionTest.java:516:41:516:57 | (...)... | LogInjectionTest.java:516:50:516:57 | source(...) : Object | LogInjectionTest.java:516:41:516:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:516:50:516:57 | source(...) | user-provided value | +| LogInjectionTest.java:517:86:517:102 | (...)... | LogInjectionTest.java:517:95:517:102 | source(...) : Object | LogInjectionTest.java:517:86:517:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:517:95:517:102 | source(...) | user-provided value | +| LogInjectionTest.java:518:71:518:87 | (...)... | LogInjectionTest.java:518:80:518:87 | source(...) : Object | LogInjectionTest.java:518:71:518:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:518:80:518:87 | source(...) | user-provided value | +| LogInjectionTest.java:519:56:519:72 | (...)... | LogInjectionTest.java:519:65:519:72 | source(...) : Object | LogInjectionTest.java:519:56:519:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:519:65:519:72 | source(...) | user-provided value | +| LogInjectionTest.java:520:41:520:57 | (...)... | LogInjectionTest.java:520:50:520:57 | source(...) : Object | LogInjectionTest.java:520:41:520:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:520:50:520:57 | source(...) | user-provided value | +| LogInjectionTest.java:521:101:521:117 | (...)... | LogInjectionTest.java:521:110:521:117 | source(...) : Object | LogInjectionTest.java:521:101:521:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:521:110:521:117 | source(...) | user-provided value | +| LogInjectionTest.java:522:86:522:102 | (...)... | LogInjectionTest.java:522:95:522:102 | source(...) : Object | LogInjectionTest.java:522:86:522:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:522:95:522:102 | source(...) | user-provided value | +| LogInjectionTest.java:523:71:523:87 | (...)... | LogInjectionTest.java:523:80:523:87 | source(...) : Object | LogInjectionTest.java:523:71:523:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:523:80:523:87 | source(...) | user-provided value | +| LogInjectionTest.java:524:56:524:72 | (...)... | LogInjectionTest.java:524:65:524:72 | source(...) : Object | LogInjectionTest.java:524:56:524:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:524:65:524:72 | source(...) | user-provided value | +| LogInjectionTest.java:525:41:525:57 | (...)... | LogInjectionTest.java:525:50:525:57 | source(...) : Object | LogInjectionTest.java:525:41:525:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:525:50:525:57 | source(...) | user-provided value | +| LogInjectionTest.java:526:116:526:132 | (...)... | LogInjectionTest.java:526:125:526:132 | source(...) : Object | LogInjectionTest.java:526:116:526:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:526:125:526:132 | source(...) | user-provided value | +| LogInjectionTest.java:527:101:527:117 | (...)... | LogInjectionTest.java:527:110:527:117 | source(...) : Object | LogInjectionTest.java:527:101:527:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:527:110:527:117 | source(...) | user-provided value | +| LogInjectionTest.java:528:86:528:102 | (...)... | LogInjectionTest.java:528:95:528:102 | source(...) : Object | LogInjectionTest.java:528:86:528:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:528:95:528:102 | source(...) | user-provided value | +| LogInjectionTest.java:529:71:529:87 | (...)... | LogInjectionTest.java:529:80:529:87 | source(...) : Object | LogInjectionTest.java:529:71:529:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:529:80:529:87 | source(...) | user-provided value | +| LogInjectionTest.java:530:56:530:72 | (...)... | LogInjectionTest.java:530:65:530:72 | source(...) : Object | LogInjectionTest.java:530:56:530:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:530:65:530:72 | source(...) | user-provided value | +| LogInjectionTest.java:531:41:531:57 | (...)... | LogInjectionTest.java:531:50:531:57 | source(...) : Object | LogInjectionTest.java:531:41:531:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:531:50:531:57 | source(...) | user-provided value | +| LogInjectionTest.java:532:131:532:147 | (...)... | LogInjectionTest.java:532:140:532:147 | source(...) : Object | LogInjectionTest.java:532:131:532:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:532:140:532:147 | source(...) | user-provided value | +| LogInjectionTest.java:533:116:533:132 | (...)... | LogInjectionTest.java:533:125:533:132 | source(...) : Object | LogInjectionTest.java:533:116:533:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:533:125:533:132 | source(...) | user-provided value | +| LogInjectionTest.java:534:101:534:117 | (...)... | LogInjectionTest.java:534:110:534:117 | source(...) : Object | LogInjectionTest.java:534:101:534:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:534:110:534:117 | source(...) | user-provided value | +| LogInjectionTest.java:535:86:535:102 | (...)... | LogInjectionTest.java:535:95:535:102 | source(...) : Object | LogInjectionTest.java:535:86:535:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:535:95:535:102 | source(...) | user-provided value | +| LogInjectionTest.java:536:71:536:87 | (...)... | LogInjectionTest.java:536:80:536:87 | source(...) : Object | LogInjectionTest.java:536:71:536:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:536:80:536:87 | source(...) | user-provided value | +| LogInjectionTest.java:537:56:537:72 | (...)... | LogInjectionTest.java:537:65:537:72 | source(...) : Object | LogInjectionTest.java:537:56:537:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:537:65:537:72 | source(...) | user-provided value | +| LogInjectionTest.java:538:41:538:57 | (...)... | LogInjectionTest.java:538:50:538:57 | source(...) : Object | LogInjectionTest.java:538:41:538:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:538:50:538:57 | source(...) | user-provided value | +| LogInjectionTest.java:539:146:539:162 | (...)... | LogInjectionTest.java:539:155:539:162 | source(...) : Object | LogInjectionTest.java:539:146:539:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:539:155:539:162 | source(...) | user-provided value | +| LogInjectionTest.java:540:131:540:147 | (...)... | LogInjectionTest.java:540:140:540:147 | source(...) : Object | LogInjectionTest.java:540:131:540:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:540:140:540:147 | source(...) | user-provided value | +| LogInjectionTest.java:541:116:541:132 | (...)... | LogInjectionTest.java:541:125:541:132 | source(...) : Object | LogInjectionTest.java:541:116:541:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:541:125:541:132 | source(...) | user-provided value | +| LogInjectionTest.java:542:101:542:117 | (...)... | LogInjectionTest.java:542:110:542:117 | source(...) : Object | LogInjectionTest.java:542:101:542:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:542:110:542:117 | source(...) | user-provided value | +| LogInjectionTest.java:543:86:543:102 | (...)... | LogInjectionTest.java:543:95:543:102 | source(...) : Object | LogInjectionTest.java:543:86:543:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:543:95:543:102 | source(...) | user-provided value | +| LogInjectionTest.java:544:71:544:87 | (...)... | LogInjectionTest.java:544:80:544:87 | source(...) : Object | LogInjectionTest.java:544:71:544:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:544:80:544:87 | source(...) | user-provided value | +| LogInjectionTest.java:545:56:545:72 | (...)... | LogInjectionTest.java:545:65:545:72 | source(...) : Object | LogInjectionTest.java:545:56:545:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:545:65:545:72 | source(...) | user-provided value | +| LogInjectionTest.java:546:41:546:57 | (...)... | LogInjectionTest.java:546:50:546:57 | source(...) : Object | LogInjectionTest.java:546:41:546:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:546:50:546:57 | source(...) | user-provided value | | LogInjectionTest.java:547:161:547:177 | (...)... | LogInjectionTest.java:547:170:547:177 | source(...) : Object | LogInjectionTest.java:547:161:547:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:547:170:547:177 | source(...) | user-provided value | | LogInjectionTest.java:548:146:548:162 | (...)... | LogInjectionTest.java:548:155:548:162 | source(...) : Object | LogInjectionTest.java:548:146:548:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:548:155:548:162 | source(...) | user-provided value | | LogInjectionTest.java:549:131:549:147 | (...)... | LogInjectionTest.java:549:140:549:147 | source(...) : Object | LogInjectionTest.java:549:131:549:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:549:140:549:147 | source(...) | user-provided value | @@ -403,65 +393,65 @@ | LogInjectionTest.java:553:71:553:87 | (...)... | LogInjectionTest.java:553:80:553:87 | source(...) : Object | LogInjectionTest.java:553:71:553:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:553:80:553:87 | source(...) | user-provided value | | LogInjectionTest.java:554:56:554:72 | (...)... | LogInjectionTest.java:554:65:554:72 | source(...) : Object | LogInjectionTest.java:554:56:554:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:554:65:554:72 | source(...) | user-provided value | | LogInjectionTest.java:555:41:555:57 | (...)... | LogInjectionTest.java:555:50:555:57 | source(...) : Object | LogInjectionTest.java:555:41:555:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:555:50:555:57 | source(...) | user-provided value | -| LogInjectionTest.java:556:41:556:57 | (...)... | LogInjectionTest.java:556:50:556:57 | source(...) : Object | LogInjectionTest.java:556:41:556:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:556:50:556:57 | source(...) | user-provided value | -| LogInjectionTest.java:557:56:557:77 | (...)... | LogInjectionTest.java:557:70:557:77 | source(...) : Object | LogInjectionTest.java:557:56:557:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:557:70:557:77 | source(...) | user-provided value | -| LogInjectionTest.java:558:41:558:57 | (...)... | LogInjectionTest.java:558:50:558:57 | source(...) : Object | LogInjectionTest.java:558:41:558:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:558:50:558:57 | source(...) | user-provided value | -| LogInjectionTest.java:559:41:559:62 | (...)... | LogInjectionTest.java:559:55:559:62 | source(...) : Object | LogInjectionTest.java:559:41:559:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:559:55:559:62 | source(...) | user-provided value | -| LogInjectionTest.java:560:41:560:62 | (...)... | LogInjectionTest.java:560:55:560:62 | source(...) : Object | LogInjectionTest.java:560:41:560:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:560:55:560:62 | source(...) | user-provided value | -| LogInjectionTest.java:561:26:561:51 | (...)... | LogInjectionTest.java:561:44:561:51 | source(...) : Object | LogInjectionTest.java:561:26:561:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:561:44:561:51 | source(...) | user-provided value | -| LogInjectionTest.java:562:26:562:51 | (...)... | LogInjectionTest.java:562:44:562:51 | source(...) : Object | LogInjectionTest.java:562:26:562:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:562:44:562:51 | source(...) | user-provided value | -| LogInjectionTest.java:563:26:563:43 | (...)... | LogInjectionTest.java:563:36:563:43 | source(...) : Object | LogInjectionTest.java:563:26:563:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:563:36:563:43 | source(...) | user-provided value | -| LogInjectionTest.java:564:26:564:43 | (...)... | LogInjectionTest.java:564:36:564:43 | source(...) : Object | LogInjectionTest.java:564:26:564:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:564:36:564:43 | source(...) | user-provided value | -| LogInjectionTest.java:565:26:565:33 | source(...) | LogInjectionTest.java:565:26:565:33 | source(...) | LogInjectionTest.java:565:26:565:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:565:26:565:33 | source(...) | user-provided value | -| LogInjectionTest.java:566:26:566:33 | source(...) | LogInjectionTest.java:566:26:566:33 | source(...) | LogInjectionTest.java:566:26:566:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:566:26:566:33 | source(...) | user-provided value | -| LogInjectionTest.java:567:26:567:42 | (...)... | LogInjectionTest.java:567:35:567:42 | source(...) : Object | LogInjectionTest.java:567:26:567:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:567:35:567:42 | source(...) | user-provided value | -| LogInjectionTest.java:568:26:568:42 | (...)... | LogInjectionTest.java:568:35:568:42 | source(...) : Object | LogInjectionTest.java:568:26:568:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:568:35:568:42 | source(...) | user-provided value | -| LogInjectionTest.java:569:41:569:63 | new Object[] | LogInjectionTest.java:569:55:569:62 | source(...) : Object | LogInjectionTest.java:569:41:569:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:569:55:569:62 | source(...) | user-provided value | -| LogInjectionTest.java:570:41:570:57 | (...)... | LogInjectionTest.java:570:50:570:57 | source(...) : Object | LogInjectionTest.java:570:41:570:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:570:50:570:57 | source(...) | user-provided value | -| LogInjectionTest.java:571:26:571:42 | (...)... | LogInjectionTest.java:571:35:571:42 | source(...) : Object | LogInjectionTest.java:571:26:571:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:571:35:571:42 | source(...) | user-provided value | -| LogInjectionTest.java:572:56:572:72 | (...)... | LogInjectionTest.java:572:65:572:72 | source(...) : Object | LogInjectionTest.java:572:56:572:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:572:65:572:72 | source(...) | user-provided value | -| LogInjectionTest.java:573:41:573:57 | (...)... | LogInjectionTest.java:573:50:573:57 | source(...) : Object | LogInjectionTest.java:573:41:573:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:573:50:573:57 | source(...) | user-provided value | -| LogInjectionTest.java:574:26:574:42 | (...)... | LogInjectionTest.java:574:35:574:42 | source(...) : Object | LogInjectionTest.java:574:26:574:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:574:35:574:42 | source(...) | user-provided value | -| LogInjectionTest.java:575:71:575:87 | (...)... | LogInjectionTest.java:575:80:575:87 | source(...) : Object | LogInjectionTest.java:575:71:575:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:575:80:575:87 | source(...) | user-provided value | -| LogInjectionTest.java:576:56:576:72 | (...)... | LogInjectionTest.java:576:65:576:72 | source(...) : Object | LogInjectionTest.java:576:56:576:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:576:65:576:72 | source(...) | user-provided value | -| LogInjectionTest.java:577:41:577:57 | (...)... | LogInjectionTest.java:577:50:577:57 | source(...) : Object | LogInjectionTest.java:577:41:577:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:577:50:577:57 | source(...) | user-provided value | +| LogInjectionTest.java:556:176:556:192 | (...)... | LogInjectionTest.java:556:185:556:192 | source(...) : Object | LogInjectionTest.java:556:176:556:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:556:185:556:192 | source(...) | user-provided value | +| LogInjectionTest.java:557:161:557:177 | (...)... | LogInjectionTest.java:557:170:557:177 | source(...) : Object | LogInjectionTest.java:557:161:557:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:557:170:557:177 | source(...) | user-provided value | +| LogInjectionTest.java:558:146:558:162 | (...)... | LogInjectionTest.java:558:155:558:162 | source(...) : Object | LogInjectionTest.java:558:146:558:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:558:155:558:162 | source(...) | user-provided value | +| LogInjectionTest.java:559:131:559:147 | (...)... | LogInjectionTest.java:559:140:559:147 | source(...) : Object | LogInjectionTest.java:559:131:559:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:559:140:559:147 | source(...) | user-provided value | +| LogInjectionTest.java:560:116:560:132 | (...)... | LogInjectionTest.java:560:125:560:132 | source(...) : Object | LogInjectionTest.java:560:116:560:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:560:125:560:132 | source(...) | user-provided value | +| LogInjectionTest.java:561:101:561:117 | (...)... | LogInjectionTest.java:561:110:561:117 | source(...) : Object | LogInjectionTest.java:561:101:561:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:561:110:561:117 | source(...) | user-provided value | +| LogInjectionTest.java:562:86:562:102 | (...)... | LogInjectionTest.java:562:95:562:102 | source(...) : Object | LogInjectionTest.java:562:86:562:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:562:95:562:102 | source(...) | user-provided value | +| LogInjectionTest.java:563:71:563:87 | (...)... | LogInjectionTest.java:563:80:563:87 | source(...) : Object | LogInjectionTest.java:563:71:563:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:563:80:563:87 | source(...) | user-provided value | +| LogInjectionTest.java:564:56:564:72 | (...)... | LogInjectionTest.java:564:65:564:72 | source(...) : Object | LogInjectionTest.java:564:56:564:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:564:65:564:72 | source(...) | user-provided value | +| LogInjectionTest.java:565:41:565:57 | (...)... | LogInjectionTest.java:565:50:565:57 | source(...) : Object | LogInjectionTest.java:565:41:565:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:565:50:565:57 | source(...) | user-provided value | +| LogInjectionTest.java:566:41:566:57 | (...)... | LogInjectionTest.java:566:50:566:57 | source(...) : Object | LogInjectionTest.java:566:41:566:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:566:50:566:57 | source(...) | user-provided value | +| LogInjectionTest.java:567:56:567:77 | (...)... | LogInjectionTest.java:567:70:567:77 | source(...) : Object | LogInjectionTest.java:567:56:567:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:567:70:567:77 | source(...) | user-provided value | +| LogInjectionTest.java:568:41:568:57 | (...)... | LogInjectionTest.java:568:50:568:57 | source(...) : Object | LogInjectionTest.java:568:41:568:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:568:50:568:57 | source(...) | user-provided value | +| LogInjectionTest.java:569:41:569:62 | (...)... | LogInjectionTest.java:569:55:569:62 | source(...) : Object | LogInjectionTest.java:569:41:569:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:569:55:569:62 | source(...) | user-provided value | +| LogInjectionTest.java:570:41:570:62 | (...)... | LogInjectionTest.java:570:55:570:62 | source(...) : Object | LogInjectionTest.java:570:41:570:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:570:55:570:62 | source(...) | user-provided value | +| LogInjectionTest.java:571:26:571:51 | (...)... | LogInjectionTest.java:571:44:571:51 | source(...) : Object | LogInjectionTest.java:571:26:571:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:571:44:571:51 | source(...) | user-provided value | +| LogInjectionTest.java:572:26:572:51 | (...)... | LogInjectionTest.java:572:44:572:51 | source(...) : Object | LogInjectionTest.java:572:26:572:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:572:44:572:51 | source(...) | user-provided value | +| LogInjectionTest.java:573:26:573:43 | (...)... | LogInjectionTest.java:573:36:573:43 | source(...) : Object | LogInjectionTest.java:573:26:573:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:573:36:573:43 | source(...) | user-provided value | +| LogInjectionTest.java:574:26:574:43 | (...)... | LogInjectionTest.java:574:36:574:43 | source(...) : Object | LogInjectionTest.java:574:26:574:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:574:36:574:43 | source(...) | user-provided value | +| LogInjectionTest.java:575:26:575:33 | source(...) | LogInjectionTest.java:575:26:575:33 | source(...) | LogInjectionTest.java:575:26:575:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:575:26:575:33 | source(...) | user-provided value | +| LogInjectionTest.java:576:26:576:33 | source(...) | LogInjectionTest.java:576:26:576:33 | source(...) | LogInjectionTest.java:576:26:576:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:576:26:576:33 | source(...) | user-provided value | +| LogInjectionTest.java:577:26:577:42 | (...)... | LogInjectionTest.java:577:35:577:42 | source(...) : Object | LogInjectionTest.java:577:26:577:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:577:35:577:42 | source(...) | user-provided value | | LogInjectionTest.java:578:26:578:42 | (...)... | LogInjectionTest.java:578:35:578:42 | source(...) : Object | LogInjectionTest.java:578:26:578:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:578:35:578:42 | source(...) | user-provided value | -| LogInjectionTest.java:579:86:579:102 | (...)... | LogInjectionTest.java:579:95:579:102 | source(...) : Object | LogInjectionTest.java:579:86:579:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:579:95:579:102 | source(...) | user-provided value | -| LogInjectionTest.java:580:71:580:87 | (...)... | LogInjectionTest.java:580:80:580:87 | source(...) : Object | LogInjectionTest.java:580:71:580:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:580:80:580:87 | source(...) | user-provided value | -| LogInjectionTest.java:581:56:581:72 | (...)... | LogInjectionTest.java:581:65:581:72 | source(...) : Object | LogInjectionTest.java:581:56:581:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:581:65:581:72 | source(...) | user-provided value | -| LogInjectionTest.java:582:41:582:57 | (...)... | LogInjectionTest.java:582:50:582:57 | source(...) : Object | LogInjectionTest.java:582:41:582:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:582:50:582:57 | source(...) | user-provided value | -| LogInjectionTest.java:583:26:583:42 | (...)... | LogInjectionTest.java:583:35:583:42 | source(...) : Object | LogInjectionTest.java:583:26:583:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:583:35:583:42 | source(...) | user-provided value | -| LogInjectionTest.java:584:101:584:117 | (...)... | LogInjectionTest.java:584:110:584:117 | source(...) : Object | LogInjectionTest.java:584:101:584:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:584:110:584:117 | source(...) | user-provided value | -| LogInjectionTest.java:585:86:585:102 | (...)... | LogInjectionTest.java:585:95:585:102 | source(...) : Object | LogInjectionTest.java:585:86:585:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:585:95:585:102 | source(...) | user-provided value | -| LogInjectionTest.java:586:71:586:87 | (...)... | LogInjectionTest.java:586:80:586:87 | source(...) : Object | LogInjectionTest.java:586:71:586:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:586:80:586:87 | source(...) | user-provided value | -| LogInjectionTest.java:587:56:587:72 | (...)... | LogInjectionTest.java:587:65:587:72 | source(...) : Object | LogInjectionTest.java:587:56:587:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:587:65:587:72 | source(...) | user-provided value | -| LogInjectionTest.java:588:41:588:57 | (...)... | LogInjectionTest.java:588:50:588:57 | source(...) : Object | LogInjectionTest.java:588:41:588:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:588:50:588:57 | source(...) | user-provided value | -| LogInjectionTest.java:589:26:589:42 | (...)... | LogInjectionTest.java:589:35:589:42 | source(...) : Object | LogInjectionTest.java:589:26:589:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:589:35:589:42 | source(...) | user-provided value | -| LogInjectionTest.java:590:116:590:132 | (...)... | LogInjectionTest.java:590:125:590:132 | source(...) : Object | LogInjectionTest.java:590:116:590:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:590:125:590:132 | source(...) | user-provided value | -| LogInjectionTest.java:591:101:591:117 | (...)... | LogInjectionTest.java:591:110:591:117 | source(...) : Object | LogInjectionTest.java:591:101:591:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:591:110:591:117 | source(...) | user-provided value | -| LogInjectionTest.java:592:86:592:102 | (...)... | LogInjectionTest.java:592:95:592:102 | source(...) : Object | LogInjectionTest.java:592:86:592:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:592:95:592:102 | source(...) | user-provided value | -| LogInjectionTest.java:593:71:593:87 | (...)... | LogInjectionTest.java:593:80:593:87 | source(...) : Object | LogInjectionTest.java:593:71:593:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:593:80:593:87 | source(...) | user-provided value | -| LogInjectionTest.java:594:56:594:72 | (...)... | LogInjectionTest.java:594:65:594:72 | source(...) : Object | LogInjectionTest.java:594:56:594:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:594:65:594:72 | source(...) | user-provided value | -| LogInjectionTest.java:595:41:595:57 | (...)... | LogInjectionTest.java:595:50:595:57 | source(...) : Object | LogInjectionTest.java:595:41:595:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:595:50:595:57 | source(...) | user-provided value | -| LogInjectionTest.java:596:26:596:42 | (...)... | LogInjectionTest.java:596:35:596:42 | source(...) : Object | LogInjectionTest.java:596:26:596:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:596:35:596:42 | source(...) | user-provided value | -| LogInjectionTest.java:597:131:597:147 | (...)... | LogInjectionTest.java:597:140:597:147 | source(...) : Object | LogInjectionTest.java:597:131:597:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:597:140:597:147 | source(...) | user-provided value | -| LogInjectionTest.java:598:116:598:132 | (...)... | LogInjectionTest.java:598:125:598:132 | source(...) : Object | LogInjectionTest.java:598:116:598:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:598:125:598:132 | source(...) | user-provided value | -| LogInjectionTest.java:599:101:599:117 | (...)... | LogInjectionTest.java:599:110:599:117 | source(...) : Object | LogInjectionTest.java:599:101:599:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:599:110:599:117 | source(...) | user-provided value | -| LogInjectionTest.java:600:86:600:102 | (...)... | LogInjectionTest.java:600:95:600:102 | source(...) : Object | LogInjectionTest.java:600:86:600:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:600:95:600:102 | source(...) | user-provided value | -| LogInjectionTest.java:601:71:601:87 | (...)... | LogInjectionTest.java:601:80:601:87 | source(...) : Object | LogInjectionTest.java:601:71:601:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:601:80:601:87 | source(...) | user-provided value | -| LogInjectionTest.java:602:56:602:72 | (...)... | LogInjectionTest.java:602:65:602:72 | source(...) : Object | LogInjectionTest.java:602:56:602:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:602:65:602:72 | source(...) | user-provided value | -| LogInjectionTest.java:603:41:603:57 | (...)... | LogInjectionTest.java:603:50:603:57 | source(...) : Object | LogInjectionTest.java:603:41:603:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:603:50:603:57 | source(...) | user-provided value | -| LogInjectionTest.java:604:26:604:42 | (...)... | LogInjectionTest.java:604:35:604:42 | source(...) : Object | LogInjectionTest.java:604:26:604:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:604:35:604:42 | source(...) | user-provided value | -| LogInjectionTest.java:605:146:605:162 | (...)... | LogInjectionTest.java:605:155:605:162 | source(...) : Object | LogInjectionTest.java:605:146:605:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:605:155:605:162 | source(...) | user-provided value | -| LogInjectionTest.java:606:131:606:147 | (...)... | LogInjectionTest.java:606:140:606:147 | source(...) : Object | LogInjectionTest.java:606:131:606:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:606:140:606:147 | source(...) | user-provided value | -| LogInjectionTest.java:607:116:607:132 | (...)... | LogInjectionTest.java:607:125:607:132 | source(...) : Object | LogInjectionTest.java:607:116:607:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:607:125:607:132 | source(...) | user-provided value | -| LogInjectionTest.java:608:101:608:117 | (...)... | LogInjectionTest.java:608:110:608:117 | source(...) : Object | LogInjectionTest.java:608:101:608:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:608:110:608:117 | source(...) | user-provided value | -| LogInjectionTest.java:609:86:609:102 | (...)... | LogInjectionTest.java:609:95:609:102 | source(...) : Object | LogInjectionTest.java:609:86:609:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:609:95:609:102 | source(...) | user-provided value | -| LogInjectionTest.java:610:71:610:87 | (...)... | LogInjectionTest.java:610:80:610:87 | source(...) : Object | LogInjectionTest.java:610:71:610:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:610:80:610:87 | source(...) | user-provided value | -| LogInjectionTest.java:611:56:611:72 | (...)... | LogInjectionTest.java:611:65:611:72 | source(...) : Object | LogInjectionTest.java:611:56:611:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:611:65:611:72 | source(...) | user-provided value | -| LogInjectionTest.java:612:41:612:57 | (...)... | LogInjectionTest.java:612:50:612:57 | source(...) : Object | LogInjectionTest.java:612:41:612:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:612:50:612:57 | source(...) | user-provided value | -| LogInjectionTest.java:613:26:613:42 | (...)... | LogInjectionTest.java:613:35:613:42 | source(...) : Object | LogInjectionTest.java:613:26:613:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:613:35:613:42 | source(...) | user-provided value | -| LogInjectionTest.java:614:161:614:177 | (...)... | LogInjectionTest.java:614:170:614:177 | source(...) : Object | LogInjectionTest.java:614:161:614:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:614:170:614:177 | source(...) | user-provided value | +| LogInjectionTest.java:579:41:579:63 | new Object[] | LogInjectionTest.java:579:55:579:62 | source(...) : Object | LogInjectionTest.java:579:41:579:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:579:55:579:62 | source(...) | user-provided value | +| LogInjectionTest.java:580:41:580:57 | (...)... | LogInjectionTest.java:580:50:580:57 | source(...) : Object | LogInjectionTest.java:580:41:580:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:580:50:580:57 | source(...) | user-provided value | +| LogInjectionTest.java:581:26:581:42 | (...)... | LogInjectionTest.java:581:35:581:42 | source(...) : Object | LogInjectionTest.java:581:26:581:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:581:35:581:42 | source(...) | user-provided value | +| LogInjectionTest.java:582:56:582:72 | (...)... | LogInjectionTest.java:582:65:582:72 | source(...) : Object | LogInjectionTest.java:582:56:582:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:582:65:582:72 | source(...) | user-provided value | +| LogInjectionTest.java:583:41:583:57 | (...)... | LogInjectionTest.java:583:50:583:57 | source(...) : Object | LogInjectionTest.java:583:41:583:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:583:50:583:57 | source(...) | user-provided value | +| LogInjectionTest.java:584:26:584:42 | (...)... | LogInjectionTest.java:584:35:584:42 | source(...) : Object | LogInjectionTest.java:584:26:584:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:584:35:584:42 | source(...) | user-provided value | +| LogInjectionTest.java:585:71:585:87 | (...)... | LogInjectionTest.java:585:80:585:87 | source(...) : Object | LogInjectionTest.java:585:71:585:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:585:80:585:87 | source(...) | user-provided value | +| LogInjectionTest.java:586:56:586:72 | (...)... | LogInjectionTest.java:586:65:586:72 | source(...) : Object | LogInjectionTest.java:586:56:586:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:586:65:586:72 | source(...) | user-provided value | +| LogInjectionTest.java:587:41:587:57 | (...)... | LogInjectionTest.java:587:50:587:57 | source(...) : Object | LogInjectionTest.java:587:41:587:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:587:50:587:57 | source(...) | user-provided value | +| LogInjectionTest.java:588:26:588:42 | (...)... | LogInjectionTest.java:588:35:588:42 | source(...) : Object | LogInjectionTest.java:588:26:588:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:588:35:588:42 | source(...) | user-provided value | +| LogInjectionTest.java:589:86:589:102 | (...)... | LogInjectionTest.java:589:95:589:102 | source(...) : Object | LogInjectionTest.java:589:86:589:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:589:95:589:102 | source(...) | user-provided value | +| LogInjectionTest.java:590:71:590:87 | (...)... | LogInjectionTest.java:590:80:590:87 | source(...) : Object | LogInjectionTest.java:590:71:590:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:590:80:590:87 | source(...) | user-provided value | +| LogInjectionTest.java:591:56:591:72 | (...)... | LogInjectionTest.java:591:65:591:72 | source(...) : Object | LogInjectionTest.java:591:56:591:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:591:65:591:72 | source(...) | user-provided value | +| LogInjectionTest.java:592:41:592:57 | (...)... | LogInjectionTest.java:592:50:592:57 | source(...) : Object | LogInjectionTest.java:592:41:592:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:592:50:592:57 | source(...) | user-provided value | +| LogInjectionTest.java:593:26:593:42 | (...)... | LogInjectionTest.java:593:35:593:42 | source(...) : Object | LogInjectionTest.java:593:26:593:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:593:35:593:42 | source(...) | user-provided value | +| LogInjectionTest.java:594:101:594:117 | (...)... | LogInjectionTest.java:594:110:594:117 | source(...) : Object | LogInjectionTest.java:594:101:594:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:594:110:594:117 | source(...) | user-provided value | +| LogInjectionTest.java:595:86:595:102 | (...)... | LogInjectionTest.java:595:95:595:102 | source(...) : Object | LogInjectionTest.java:595:86:595:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:595:95:595:102 | source(...) | user-provided value | +| LogInjectionTest.java:596:71:596:87 | (...)... | LogInjectionTest.java:596:80:596:87 | source(...) : Object | LogInjectionTest.java:596:71:596:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:596:80:596:87 | source(...) | user-provided value | +| LogInjectionTest.java:597:56:597:72 | (...)... | LogInjectionTest.java:597:65:597:72 | source(...) : Object | LogInjectionTest.java:597:56:597:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:597:65:597:72 | source(...) | user-provided value | +| LogInjectionTest.java:598:41:598:57 | (...)... | LogInjectionTest.java:598:50:598:57 | source(...) : Object | LogInjectionTest.java:598:41:598:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:598:50:598:57 | source(...) | user-provided value | +| LogInjectionTest.java:599:26:599:42 | (...)... | LogInjectionTest.java:599:35:599:42 | source(...) : Object | LogInjectionTest.java:599:26:599:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:599:35:599:42 | source(...) | user-provided value | +| LogInjectionTest.java:600:116:600:132 | (...)... | LogInjectionTest.java:600:125:600:132 | source(...) : Object | LogInjectionTest.java:600:116:600:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:600:125:600:132 | source(...) | user-provided value | +| LogInjectionTest.java:601:101:601:117 | (...)... | LogInjectionTest.java:601:110:601:117 | source(...) : Object | LogInjectionTest.java:601:101:601:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:601:110:601:117 | source(...) | user-provided value | +| LogInjectionTest.java:602:86:602:102 | (...)... | LogInjectionTest.java:602:95:602:102 | source(...) : Object | LogInjectionTest.java:602:86:602:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:602:95:602:102 | source(...) | user-provided value | +| LogInjectionTest.java:603:71:603:87 | (...)... | LogInjectionTest.java:603:80:603:87 | source(...) : Object | LogInjectionTest.java:603:71:603:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:603:80:603:87 | source(...) | user-provided value | +| LogInjectionTest.java:604:56:604:72 | (...)... | LogInjectionTest.java:604:65:604:72 | source(...) : Object | LogInjectionTest.java:604:56:604:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:604:65:604:72 | source(...) | user-provided value | +| LogInjectionTest.java:605:41:605:57 | (...)... | LogInjectionTest.java:605:50:605:57 | source(...) : Object | LogInjectionTest.java:605:41:605:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:605:50:605:57 | source(...) | user-provided value | +| LogInjectionTest.java:606:26:606:42 | (...)... | LogInjectionTest.java:606:35:606:42 | source(...) : Object | LogInjectionTest.java:606:26:606:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:606:35:606:42 | source(...) | user-provided value | +| LogInjectionTest.java:607:131:607:147 | (...)... | LogInjectionTest.java:607:140:607:147 | source(...) : Object | LogInjectionTest.java:607:131:607:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:607:140:607:147 | source(...) | user-provided value | +| LogInjectionTest.java:608:116:608:132 | (...)... | LogInjectionTest.java:608:125:608:132 | source(...) : Object | LogInjectionTest.java:608:116:608:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:608:125:608:132 | source(...) | user-provided value | +| LogInjectionTest.java:609:101:609:117 | (...)... | LogInjectionTest.java:609:110:609:117 | source(...) : Object | LogInjectionTest.java:609:101:609:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:609:110:609:117 | source(...) | user-provided value | +| LogInjectionTest.java:610:86:610:102 | (...)... | LogInjectionTest.java:610:95:610:102 | source(...) : Object | LogInjectionTest.java:610:86:610:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:610:95:610:102 | source(...) | user-provided value | +| LogInjectionTest.java:611:71:611:87 | (...)... | LogInjectionTest.java:611:80:611:87 | source(...) : Object | LogInjectionTest.java:611:71:611:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:611:80:611:87 | source(...) | user-provided value | +| LogInjectionTest.java:612:56:612:72 | (...)... | LogInjectionTest.java:612:65:612:72 | source(...) : Object | LogInjectionTest.java:612:56:612:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:612:65:612:72 | source(...) | user-provided value | +| LogInjectionTest.java:613:41:613:57 | (...)... | LogInjectionTest.java:613:50:613:57 | source(...) : Object | LogInjectionTest.java:613:41:613:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:613:50:613:57 | source(...) | user-provided value | +| LogInjectionTest.java:614:26:614:42 | (...)... | LogInjectionTest.java:614:35:614:42 | source(...) : Object | LogInjectionTest.java:614:26:614:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:614:35:614:42 | source(...) | user-provided value | | LogInjectionTest.java:615:146:615:162 | (...)... | LogInjectionTest.java:615:155:615:162 | source(...) : Object | LogInjectionTest.java:615:146:615:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:615:155:615:162 | source(...) | user-provided value | | LogInjectionTest.java:616:131:616:147 | (...)... | LogInjectionTest.java:616:140:616:147 | source(...) : Object | LogInjectionTest.java:616:131:616:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:616:140:616:147 | source(...) | user-provided value | | LogInjectionTest.java:617:116:617:132 | (...)... | LogInjectionTest.java:617:125:617:132 | source(...) : Object | LogInjectionTest.java:617:116:617:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:617:125:617:132 | source(...) | user-provided value | @@ -471,67 +461,67 @@ | LogInjectionTest.java:621:56:621:72 | (...)... | LogInjectionTest.java:621:65:621:72 | source(...) : Object | LogInjectionTest.java:621:56:621:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:621:65:621:72 | source(...) | user-provided value | | LogInjectionTest.java:622:41:622:57 | (...)... | LogInjectionTest.java:622:50:622:57 | source(...) : Object | LogInjectionTest.java:622:41:622:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:622:50:622:57 | source(...) | user-provided value | | LogInjectionTest.java:623:26:623:42 | (...)... | LogInjectionTest.java:623:35:623:42 | source(...) : Object | LogInjectionTest.java:623:26:623:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:623:35:623:42 | source(...) | user-provided value | -| LogInjectionTest.java:624:26:624:42 | (...)... | LogInjectionTest.java:624:35:624:42 | source(...) : Object | LogInjectionTest.java:624:26:624:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:624:35:624:42 | source(...) | user-provided value | -| LogInjectionTest.java:625:41:625:62 | (...)... | LogInjectionTest.java:625:55:625:62 | source(...) : Object | LogInjectionTest.java:625:41:625:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:625:55:625:62 | source(...) | user-provided value | -| LogInjectionTest.java:626:26:626:42 | (...)... | LogInjectionTest.java:626:35:626:42 | source(...) : Object | LogInjectionTest.java:626:26:626:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:626:35:626:42 | source(...) | user-provided value | -| LogInjectionTest.java:627:26:627:47 | (...)... | LogInjectionTest.java:627:40:627:47 | source(...) : Object | LogInjectionTest.java:627:26:627:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:627:40:627:47 | source(...) | user-provided value | -| LogInjectionTest.java:628:26:628:47 | (...)... | LogInjectionTest.java:628:40:628:47 | source(...) : Object | LogInjectionTest.java:628:26:628:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:628:40:628:47 | source(...) | user-provided value | -| LogInjectionTest.java:629:25:629:47 | (...)... | LogInjectionTest.java:629:40:629:47 | source(...) : Object | LogInjectionTest.java:629:25:629:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:629:40:629:47 | source(...) | user-provided value | -| LogInjectionTest.java:630:25:630:47 | (...)... | LogInjectionTest.java:630:40:630:47 | source(...) : Object | LogInjectionTest.java:630:25:630:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:630:40:630:47 | source(...) | user-provided value | -| LogInjectionTest.java:631:40:631:62 | (...)... | LogInjectionTest.java:631:55:631:62 | source(...) : Object | LogInjectionTest.java:631:40:631:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:631:55:631:62 | source(...) | user-provided value | -| LogInjectionTest.java:632:40:632:62 | (...)... | LogInjectionTest.java:632:55:632:62 | source(...) : Object | LogInjectionTest.java:632:40:632:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:632:55:632:62 | source(...) | user-provided value | -| LogInjectionTest.java:633:40:633:57 | (...)... | LogInjectionTest.java:633:50:633:57 | source(...) : Object | LogInjectionTest.java:633:40:633:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:633:50:633:57 | source(...) | user-provided value | -| LogInjectionTest.java:634:40:634:65 | (...)... | LogInjectionTest.java:634:58:634:65 | source(...) : Object | LogInjectionTest.java:634:40:634:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:634:58:634:65 | source(...) | user-provided value | -| LogInjectionTest.java:635:40:635:65 | (...)... | LogInjectionTest.java:635:58:635:65 | source(...) : Object | LogInjectionTest.java:635:40:635:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:635:58:635:65 | source(...) | user-provided value | -| LogInjectionTest.java:636:40:636:47 | source(...) | LogInjectionTest.java:636:40:636:47 | source(...) | LogInjectionTest.java:636:40:636:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:636:40:636:47 | source(...) | user-provided value | -| LogInjectionTest.java:637:40:637:56 | (...)... | LogInjectionTest.java:637:49:637:56 | source(...) : Object | LogInjectionTest.java:637:40:637:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:637:49:637:56 | source(...) | user-provided value | -| LogInjectionTest.java:638:40:638:56 | (...)... | LogInjectionTest.java:638:49:638:56 | source(...) : Object | LogInjectionTest.java:638:40:638:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:638:49:638:56 | source(...) | user-provided value | -| LogInjectionTest.java:639:55:639:77 | new Object[] | LogInjectionTest.java:639:69:639:76 | source(...) : Object | LogInjectionTest.java:639:55:639:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:639:69:639:76 | source(...) | user-provided value | -| LogInjectionTest.java:640:55:640:71 | (...)... | LogInjectionTest.java:640:64:640:71 | source(...) : Object | LogInjectionTest.java:640:55:640:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:640:64:640:71 | source(...) | user-provided value | -| LogInjectionTest.java:641:40:641:56 | (...)... | LogInjectionTest.java:641:49:641:56 | source(...) : Object | LogInjectionTest.java:641:40:641:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:641:49:641:56 | source(...) | user-provided value | -| LogInjectionTest.java:642:70:642:86 | (...)... | LogInjectionTest.java:642:79:642:86 | source(...) : Object | LogInjectionTest.java:642:70:642:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:642:79:642:86 | source(...) | user-provided value | -| LogInjectionTest.java:643:55:643:71 | (...)... | LogInjectionTest.java:643:64:643:71 | source(...) : Object | LogInjectionTest.java:643:55:643:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:643:64:643:71 | source(...) | user-provided value | -| LogInjectionTest.java:644:40:644:56 | (...)... | LogInjectionTest.java:644:49:644:56 | source(...) : Object | LogInjectionTest.java:644:40:644:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:644:49:644:56 | source(...) | user-provided value | -| LogInjectionTest.java:645:85:645:101 | (...)... | LogInjectionTest.java:645:94:645:101 | source(...) : Object | LogInjectionTest.java:645:85:645:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:645:94:645:101 | source(...) | user-provided value | -| LogInjectionTest.java:646:70:646:86 | (...)... | LogInjectionTest.java:646:79:646:86 | source(...) : Object | LogInjectionTest.java:646:70:646:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:646:79:646:86 | source(...) | user-provided value | -| LogInjectionTest.java:647:55:647:71 | (...)... | LogInjectionTest.java:647:64:647:71 | source(...) : Object | LogInjectionTest.java:647:55:647:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:647:64:647:71 | source(...) | user-provided value | +| LogInjectionTest.java:624:161:624:177 | (...)... | LogInjectionTest.java:624:170:624:177 | source(...) : Object | LogInjectionTest.java:624:161:624:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:624:170:624:177 | source(...) | user-provided value | +| LogInjectionTest.java:625:146:625:162 | (...)... | LogInjectionTest.java:625:155:625:162 | source(...) : Object | LogInjectionTest.java:625:146:625:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:625:155:625:162 | source(...) | user-provided value | +| LogInjectionTest.java:626:131:626:147 | (...)... | LogInjectionTest.java:626:140:626:147 | source(...) : Object | LogInjectionTest.java:626:131:626:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:626:140:626:147 | source(...) | user-provided value | +| LogInjectionTest.java:627:116:627:132 | (...)... | LogInjectionTest.java:627:125:627:132 | source(...) : Object | LogInjectionTest.java:627:116:627:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:627:125:627:132 | source(...) | user-provided value | +| LogInjectionTest.java:628:101:628:117 | (...)... | LogInjectionTest.java:628:110:628:117 | source(...) : Object | LogInjectionTest.java:628:101:628:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:628:110:628:117 | source(...) | user-provided value | +| LogInjectionTest.java:629:86:629:102 | (...)... | LogInjectionTest.java:629:95:629:102 | source(...) : Object | LogInjectionTest.java:629:86:629:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:629:95:629:102 | source(...) | user-provided value | +| LogInjectionTest.java:630:71:630:87 | (...)... | LogInjectionTest.java:630:80:630:87 | source(...) : Object | LogInjectionTest.java:630:71:630:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:630:80:630:87 | source(...) | user-provided value | +| LogInjectionTest.java:631:56:631:72 | (...)... | LogInjectionTest.java:631:65:631:72 | source(...) : Object | LogInjectionTest.java:631:56:631:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:631:65:631:72 | source(...) | user-provided value | +| LogInjectionTest.java:632:41:632:57 | (...)... | LogInjectionTest.java:632:50:632:57 | source(...) : Object | LogInjectionTest.java:632:41:632:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:632:50:632:57 | source(...) | user-provided value | +| LogInjectionTest.java:633:26:633:42 | (...)... | LogInjectionTest.java:633:35:633:42 | source(...) : Object | LogInjectionTest.java:633:26:633:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:633:35:633:42 | source(...) | user-provided value | +| LogInjectionTest.java:634:26:634:42 | (...)... | LogInjectionTest.java:634:35:634:42 | source(...) : Object | LogInjectionTest.java:634:26:634:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:634:35:634:42 | source(...) | user-provided value | +| LogInjectionTest.java:635:41:635:62 | (...)... | LogInjectionTest.java:635:55:635:62 | source(...) : Object | LogInjectionTest.java:635:41:635:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:635:55:635:62 | source(...) | user-provided value | +| LogInjectionTest.java:636:26:636:42 | (...)... | LogInjectionTest.java:636:35:636:42 | source(...) : Object | LogInjectionTest.java:636:26:636:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:636:35:636:42 | source(...) | user-provided value | +| LogInjectionTest.java:637:26:637:47 | (...)... | LogInjectionTest.java:637:40:637:47 | source(...) : Object | LogInjectionTest.java:637:26:637:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:637:40:637:47 | source(...) | user-provided value | +| LogInjectionTest.java:638:26:638:47 | (...)... | LogInjectionTest.java:638:40:638:47 | source(...) : Object | LogInjectionTest.java:638:26:638:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:638:40:638:47 | source(...) | user-provided value | +| LogInjectionTest.java:639:25:639:47 | (...)... | LogInjectionTest.java:639:40:639:47 | source(...) : Object | LogInjectionTest.java:639:25:639:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:639:40:639:47 | source(...) | user-provided value | +| LogInjectionTest.java:640:25:640:47 | (...)... | LogInjectionTest.java:640:40:640:47 | source(...) : Object | LogInjectionTest.java:640:25:640:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:640:40:640:47 | source(...) | user-provided value | +| LogInjectionTest.java:641:40:641:62 | (...)... | LogInjectionTest.java:641:55:641:62 | source(...) : Object | LogInjectionTest.java:641:40:641:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:641:55:641:62 | source(...) | user-provided value | +| LogInjectionTest.java:642:40:642:62 | (...)... | LogInjectionTest.java:642:55:642:62 | source(...) : Object | LogInjectionTest.java:642:40:642:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:642:55:642:62 | source(...) | user-provided value | +| LogInjectionTest.java:643:40:643:57 | (...)... | LogInjectionTest.java:643:50:643:57 | source(...) : Object | LogInjectionTest.java:643:40:643:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:643:50:643:57 | source(...) | user-provided value | +| LogInjectionTest.java:644:40:644:65 | (...)... | LogInjectionTest.java:644:58:644:65 | source(...) : Object | LogInjectionTest.java:644:40:644:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:644:58:644:65 | source(...) | user-provided value | +| LogInjectionTest.java:645:40:645:65 | (...)... | LogInjectionTest.java:645:58:645:65 | source(...) : Object | LogInjectionTest.java:645:40:645:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:645:58:645:65 | source(...) | user-provided value | +| LogInjectionTest.java:646:40:646:47 | source(...) | LogInjectionTest.java:646:40:646:47 | source(...) | LogInjectionTest.java:646:40:646:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:646:40:646:47 | source(...) | user-provided value | +| LogInjectionTest.java:647:40:647:56 | (...)... | LogInjectionTest.java:647:49:647:56 | source(...) : Object | LogInjectionTest.java:647:40:647:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:647:49:647:56 | source(...) | user-provided value | | LogInjectionTest.java:648:40:648:56 | (...)... | LogInjectionTest.java:648:49:648:56 | source(...) : Object | LogInjectionTest.java:648:40:648:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:648:49:648:56 | source(...) | user-provided value | -| LogInjectionTest.java:649:100:649:116 | (...)... | LogInjectionTest.java:649:109:649:116 | source(...) : Object | LogInjectionTest.java:649:100:649:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:649:109:649:116 | source(...) | user-provided value | -| LogInjectionTest.java:650:85:650:101 | (...)... | LogInjectionTest.java:650:94:650:101 | source(...) : Object | LogInjectionTest.java:650:85:650:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:650:94:650:101 | source(...) | user-provided value | -| LogInjectionTest.java:651:70:651:86 | (...)... | LogInjectionTest.java:651:79:651:86 | source(...) : Object | LogInjectionTest.java:651:70:651:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:651:79:651:86 | source(...) | user-provided value | -| LogInjectionTest.java:652:55:652:71 | (...)... | LogInjectionTest.java:652:64:652:71 | source(...) : Object | LogInjectionTest.java:652:55:652:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:652:64:652:71 | source(...) | user-provided value | -| LogInjectionTest.java:653:40:653:56 | (...)... | LogInjectionTest.java:653:49:653:56 | source(...) : Object | LogInjectionTest.java:653:40:653:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:653:49:653:56 | source(...) | user-provided value | -| LogInjectionTest.java:654:115:654:131 | (...)... | LogInjectionTest.java:654:124:654:131 | source(...) : Object | LogInjectionTest.java:654:115:654:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:654:124:654:131 | source(...) | user-provided value | -| LogInjectionTest.java:655:100:655:116 | (...)... | LogInjectionTest.java:655:109:655:116 | source(...) : Object | LogInjectionTest.java:655:100:655:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:655:109:655:116 | source(...) | user-provided value | -| LogInjectionTest.java:656:85:656:101 | (...)... | LogInjectionTest.java:656:94:656:101 | source(...) : Object | LogInjectionTest.java:656:85:656:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:656:94:656:101 | source(...) | user-provided value | -| LogInjectionTest.java:657:70:657:86 | (...)... | LogInjectionTest.java:657:79:657:86 | source(...) : Object | LogInjectionTest.java:657:70:657:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:657:79:657:86 | source(...) | user-provided value | -| LogInjectionTest.java:658:55:658:71 | (...)... | LogInjectionTest.java:658:64:658:71 | source(...) : Object | LogInjectionTest.java:658:55:658:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:658:64:658:71 | source(...) | user-provided value | -| LogInjectionTest.java:659:40:659:56 | (...)... | LogInjectionTest.java:659:49:659:56 | source(...) : Object | LogInjectionTest.java:659:40:659:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:659:49:659:56 | source(...) | user-provided value | -| LogInjectionTest.java:660:130:660:146 | (...)... | LogInjectionTest.java:660:139:660:146 | source(...) : Object | LogInjectionTest.java:660:130:660:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:660:139:660:146 | source(...) | user-provided value | -| LogInjectionTest.java:661:115:661:131 | (...)... | LogInjectionTest.java:661:124:661:131 | source(...) : Object | LogInjectionTest.java:661:115:661:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:661:124:661:131 | source(...) | user-provided value | -| LogInjectionTest.java:662:100:662:116 | (...)... | LogInjectionTest.java:662:109:662:116 | source(...) : Object | LogInjectionTest.java:662:100:662:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:662:109:662:116 | source(...) | user-provided value | -| LogInjectionTest.java:663:85:663:101 | (...)... | LogInjectionTest.java:663:94:663:101 | source(...) : Object | LogInjectionTest.java:663:85:663:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:663:94:663:101 | source(...) | user-provided value | -| LogInjectionTest.java:664:70:664:86 | (...)... | LogInjectionTest.java:664:79:664:86 | source(...) : Object | LogInjectionTest.java:664:70:664:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:664:79:664:86 | source(...) | user-provided value | -| LogInjectionTest.java:665:55:665:71 | (...)... | LogInjectionTest.java:665:64:665:71 | source(...) : Object | LogInjectionTest.java:665:55:665:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:665:64:665:71 | source(...) | user-provided value | -| LogInjectionTest.java:666:40:666:56 | (...)... | LogInjectionTest.java:666:49:666:56 | source(...) : Object | LogInjectionTest.java:666:40:666:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:666:49:666:56 | source(...) | user-provided value | -| LogInjectionTest.java:667:145:667:161 | (...)... | LogInjectionTest.java:667:154:667:161 | source(...) : Object | LogInjectionTest.java:667:145:667:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:667:154:667:161 | source(...) | user-provided value | -| LogInjectionTest.java:668:130:668:146 | (...)... | LogInjectionTest.java:668:139:668:146 | source(...) : Object | LogInjectionTest.java:668:130:668:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:668:139:668:146 | source(...) | user-provided value | -| LogInjectionTest.java:669:115:669:131 | (...)... | LogInjectionTest.java:669:124:669:131 | source(...) : Object | LogInjectionTest.java:669:115:669:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:669:124:669:131 | source(...) | user-provided value | -| LogInjectionTest.java:670:100:670:116 | (...)... | LogInjectionTest.java:670:109:670:116 | source(...) : Object | LogInjectionTest.java:670:100:670:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:670:109:670:116 | source(...) | user-provided value | -| LogInjectionTest.java:671:85:671:101 | (...)... | LogInjectionTest.java:671:94:671:101 | source(...) : Object | LogInjectionTest.java:671:85:671:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:671:94:671:101 | source(...) | user-provided value | -| LogInjectionTest.java:672:70:672:86 | (...)... | LogInjectionTest.java:672:79:672:86 | source(...) : Object | LogInjectionTest.java:672:70:672:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:672:79:672:86 | source(...) | user-provided value | -| LogInjectionTest.java:673:55:673:71 | (...)... | LogInjectionTest.java:673:64:673:71 | source(...) : Object | LogInjectionTest.java:673:55:673:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:673:64:673:71 | source(...) | user-provided value | -| LogInjectionTest.java:674:40:674:56 | (...)... | LogInjectionTest.java:674:49:674:56 | source(...) : Object | LogInjectionTest.java:674:40:674:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:674:49:674:56 | source(...) | user-provided value | -| LogInjectionTest.java:675:160:675:176 | (...)... | LogInjectionTest.java:675:169:675:176 | source(...) : Object | LogInjectionTest.java:675:160:675:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:675:169:675:176 | source(...) | user-provided value | -| LogInjectionTest.java:676:145:676:161 | (...)... | LogInjectionTest.java:676:154:676:161 | source(...) : Object | LogInjectionTest.java:676:145:676:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:676:154:676:161 | source(...) | user-provided value | -| LogInjectionTest.java:677:130:677:146 | (...)... | LogInjectionTest.java:677:139:677:146 | source(...) : Object | LogInjectionTest.java:677:130:677:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:677:139:677:146 | source(...) | user-provided value | -| LogInjectionTest.java:678:115:678:131 | (...)... | LogInjectionTest.java:678:124:678:131 | source(...) : Object | LogInjectionTest.java:678:115:678:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:678:124:678:131 | source(...) | user-provided value | -| LogInjectionTest.java:679:100:679:116 | (...)... | LogInjectionTest.java:679:109:679:116 | source(...) : Object | LogInjectionTest.java:679:100:679:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:679:109:679:116 | source(...) | user-provided value | -| LogInjectionTest.java:680:85:680:101 | (...)... | LogInjectionTest.java:680:94:680:101 | source(...) : Object | LogInjectionTest.java:680:85:680:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:680:94:680:101 | source(...) | user-provided value | -| LogInjectionTest.java:681:70:681:86 | (...)... | LogInjectionTest.java:681:79:681:86 | source(...) : Object | LogInjectionTest.java:681:70:681:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:681:79:681:86 | source(...) | user-provided value | -| LogInjectionTest.java:682:55:682:71 | (...)... | LogInjectionTest.java:682:64:682:71 | source(...) : Object | LogInjectionTest.java:682:55:682:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:682:64:682:71 | source(...) | user-provided value | -| LogInjectionTest.java:683:40:683:56 | (...)... | LogInjectionTest.java:683:49:683:56 | source(...) : Object | LogInjectionTest.java:683:40:683:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:683:49:683:56 | source(...) | user-provided value | -| LogInjectionTest.java:684:175:684:191 | (...)... | LogInjectionTest.java:684:184:684:191 | source(...) : Object | LogInjectionTest.java:684:175:684:191 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:684:184:684:191 | source(...) | user-provided value | +| LogInjectionTest.java:649:55:649:77 | new Object[] | LogInjectionTest.java:649:69:649:76 | source(...) : Object | LogInjectionTest.java:649:55:649:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:649:69:649:76 | source(...) | user-provided value | +| LogInjectionTest.java:650:55:650:71 | (...)... | LogInjectionTest.java:650:64:650:71 | source(...) : Object | LogInjectionTest.java:650:55:650:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:650:64:650:71 | source(...) | user-provided value | +| LogInjectionTest.java:651:40:651:56 | (...)... | LogInjectionTest.java:651:49:651:56 | source(...) : Object | LogInjectionTest.java:651:40:651:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:651:49:651:56 | source(...) | user-provided value | +| LogInjectionTest.java:652:70:652:86 | (...)... | LogInjectionTest.java:652:79:652:86 | source(...) : Object | LogInjectionTest.java:652:70:652:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:652:79:652:86 | source(...) | user-provided value | +| LogInjectionTest.java:653:55:653:71 | (...)... | LogInjectionTest.java:653:64:653:71 | source(...) : Object | LogInjectionTest.java:653:55:653:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:653:64:653:71 | source(...) | user-provided value | +| LogInjectionTest.java:654:40:654:56 | (...)... | LogInjectionTest.java:654:49:654:56 | source(...) : Object | LogInjectionTest.java:654:40:654:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:654:49:654:56 | source(...) | user-provided value | +| LogInjectionTest.java:655:85:655:101 | (...)... | LogInjectionTest.java:655:94:655:101 | source(...) : Object | LogInjectionTest.java:655:85:655:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:655:94:655:101 | source(...) | user-provided value | +| LogInjectionTest.java:656:70:656:86 | (...)... | LogInjectionTest.java:656:79:656:86 | source(...) : Object | LogInjectionTest.java:656:70:656:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:656:79:656:86 | source(...) | user-provided value | +| LogInjectionTest.java:657:55:657:71 | (...)... | LogInjectionTest.java:657:64:657:71 | source(...) : Object | LogInjectionTest.java:657:55:657:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:657:64:657:71 | source(...) | user-provided value | +| LogInjectionTest.java:658:40:658:56 | (...)... | LogInjectionTest.java:658:49:658:56 | source(...) : Object | LogInjectionTest.java:658:40:658:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:658:49:658:56 | source(...) | user-provided value | +| LogInjectionTest.java:659:100:659:116 | (...)... | LogInjectionTest.java:659:109:659:116 | source(...) : Object | LogInjectionTest.java:659:100:659:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:659:109:659:116 | source(...) | user-provided value | +| LogInjectionTest.java:660:85:660:101 | (...)... | LogInjectionTest.java:660:94:660:101 | source(...) : Object | LogInjectionTest.java:660:85:660:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:660:94:660:101 | source(...) | user-provided value | +| LogInjectionTest.java:661:70:661:86 | (...)... | LogInjectionTest.java:661:79:661:86 | source(...) : Object | LogInjectionTest.java:661:70:661:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:661:79:661:86 | source(...) | user-provided value | +| LogInjectionTest.java:662:55:662:71 | (...)... | LogInjectionTest.java:662:64:662:71 | source(...) : Object | LogInjectionTest.java:662:55:662:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:662:64:662:71 | source(...) | user-provided value | +| LogInjectionTest.java:663:40:663:56 | (...)... | LogInjectionTest.java:663:49:663:56 | source(...) : Object | LogInjectionTest.java:663:40:663:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:663:49:663:56 | source(...) | user-provided value | +| LogInjectionTest.java:664:115:664:131 | (...)... | LogInjectionTest.java:664:124:664:131 | source(...) : Object | LogInjectionTest.java:664:115:664:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:664:124:664:131 | source(...) | user-provided value | +| LogInjectionTest.java:665:100:665:116 | (...)... | LogInjectionTest.java:665:109:665:116 | source(...) : Object | LogInjectionTest.java:665:100:665:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:665:109:665:116 | source(...) | user-provided value | +| LogInjectionTest.java:666:85:666:101 | (...)... | LogInjectionTest.java:666:94:666:101 | source(...) : Object | LogInjectionTest.java:666:85:666:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:666:94:666:101 | source(...) | user-provided value | +| LogInjectionTest.java:667:70:667:86 | (...)... | LogInjectionTest.java:667:79:667:86 | source(...) : Object | LogInjectionTest.java:667:70:667:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:667:79:667:86 | source(...) | user-provided value | +| LogInjectionTest.java:668:55:668:71 | (...)... | LogInjectionTest.java:668:64:668:71 | source(...) : Object | LogInjectionTest.java:668:55:668:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:668:64:668:71 | source(...) | user-provided value | +| LogInjectionTest.java:669:40:669:56 | (...)... | LogInjectionTest.java:669:49:669:56 | source(...) : Object | LogInjectionTest.java:669:40:669:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:669:49:669:56 | source(...) | user-provided value | +| LogInjectionTest.java:670:130:670:146 | (...)... | LogInjectionTest.java:670:139:670:146 | source(...) : Object | LogInjectionTest.java:670:130:670:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:670:139:670:146 | source(...) | user-provided value | +| LogInjectionTest.java:671:115:671:131 | (...)... | LogInjectionTest.java:671:124:671:131 | source(...) : Object | LogInjectionTest.java:671:115:671:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:671:124:671:131 | source(...) | user-provided value | +| LogInjectionTest.java:672:100:672:116 | (...)... | LogInjectionTest.java:672:109:672:116 | source(...) : Object | LogInjectionTest.java:672:100:672:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:672:109:672:116 | source(...) | user-provided value | +| LogInjectionTest.java:673:85:673:101 | (...)... | LogInjectionTest.java:673:94:673:101 | source(...) : Object | LogInjectionTest.java:673:85:673:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:673:94:673:101 | source(...) | user-provided value | +| LogInjectionTest.java:674:70:674:86 | (...)... | LogInjectionTest.java:674:79:674:86 | source(...) : Object | LogInjectionTest.java:674:70:674:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:674:79:674:86 | source(...) | user-provided value | +| LogInjectionTest.java:675:55:675:71 | (...)... | LogInjectionTest.java:675:64:675:71 | source(...) : Object | LogInjectionTest.java:675:55:675:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:675:64:675:71 | source(...) | user-provided value | +| LogInjectionTest.java:676:40:676:56 | (...)... | LogInjectionTest.java:676:49:676:56 | source(...) : Object | LogInjectionTest.java:676:40:676:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:676:49:676:56 | source(...) | user-provided value | +| LogInjectionTest.java:677:145:677:161 | (...)... | LogInjectionTest.java:677:154:677:161 | source(...) : Object | LogInjectionTest.java:677:145:677:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:677:154:677:161 | source(...) | user-provided value | +| LogInjectionTest.java:678:130:678:146 | (...)... | LogInjectionTest.java:678:139:678:146 | source(...) : Object | LogInjectionTest.java:678:130:678:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:678:139:678:146 | source(...) | user-provided value | +| LogInjectionTest.java:679:115:679:131 | (...)... | LogInjectionTest.java:679:124:679:131 | source(...) : Object | LogInjectionTest.java:679:115:679:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:679:124:679:131 | source(...) | user-provided value | +| LogInjectionTest.java:680:100:680:116 | (...)... | LogInjectionTest.java:680:109:680:116 | source(...) : Object | LogInjectionTest.java:680:100:680:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:680:109:680:116 | source(...) | user-provided value | +| LogInjectionTest.java:681:85:681:101 | (...)... | LogInjectionTest.java:681:94:681:101 | source(...) : Object | LogInjectionTest.java:681:85:681:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:681:94:681:101 | source(...) | user-provided value | +| LogInjectionTest.java:682:70:682:86 | (...)... | LogInjectionTest.java:682:79:682:86 | source(...) : Object | LogInjectionTest.java:682:70:682:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:682:79:682:86 | source(...) | user-provided value | +| LogInjectionTest.java:683:55:683:71 | (...)... | LogInjectionTest.java:683:64:683:71 | source(...) : Object | LogInjectionTest.java:683:55:683:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:683:64:683:71 | source(...) | user-provided value | +| LogInjectionTest.java:684:40:684:56 | (...)... | LogInjectionTest.java:684:49:684:56 | source(...) : Object | LogInjectionTest.java:684:40:684:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:684:49:684:56 | source(...) | user-provided value | | LogInjectionTest.java:685:160:685:176 | (...)... | LogInjectionTest.java:685:169:685:176 | source(...) : Object | LogInjectionTest.java:685:160:685:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:685:169:685:176 | source(...) | user-provided value | | LogInjectionTest.java:686:145:686:161 | (...)... | LogInjectionTest.java:686:154:686:161 | source(...) : Object | LogInjectionTest.java:686:145:686:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:686:154:686:161 | source(...) | user-provided value | | LogInjectionTest.java:687:130:687:146 | (...)... | LogInjectionTest.java:687:139:687:146 | source(...) : Object | LogInjectionTest.java:687:130:687:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:687:139:687:146 | source(...) | user-provided value | @@ -541,65 +531,65 @@ | LogInjectionTest.java:691:70:691:86 | (...)... | LogInjectionTest.java:691:79:691:86 | source(...) : Object | LogInjectionTest.java:691:70:691:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:691:79:691:86 | source(...) | user-provided value | | LogInjectionTest.java:692:55:692:71 | (...)... | LogInjectionTest.java:692:64:692:71 | source(...) : Object | LogInjectionTest.java:692:55:692:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:692:64:692:71 | source(...) | user-provided value | | LogInjectionTest.java:693:40:693:56 | (...)... | LogInjectionTest.java:693:49:693:56 | source(...) : Object | LogInjectionTest.java:693:40:693:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:693:49:693:56 | source(...) | user-provided value | -| LogInjectionTest.java:694:40:694:56 | (...)... | LogInjectionTest.java:694:49:694:56 | source(...) : Object | LogInjectionTest.java:694:40:694:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:694:49:694:56 | source(...) | user-provided value | -| LogInjectionTest.java:695:55:695:76 | (...)... | LogInjectionTest.java:695:69:695:76 | source(...) : Object | LogInjectionTest.java:695:55:695:76 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:695:69:695:76 | source(...) | user-provided value | -| LogInjectionTest.java:696:40:696:56 | (...)... | LogInjectionTest.java:696:49:696:56 | source(...) : Object | LogInjectionTest.java:696:40:696:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:696:49:696:56 | source(...) | user-provided value | -| LogInjectionTest.java:697:40:697:61 | (...)... | LogInjectionTest.java:697:54:697:61 | source(...) : Object | LogInjectionTest.java:697:40:697:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:697:54:697:61 | source(...) | user-provided value | -| LogInjectionTest.java:698:40:698:61 | (...)... | LogInjectionTest.java:698:54:698:61 | source(...) : Object | LogInjectionTest.java:698:40:698:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:698:54:698:61 | source(...) | user-provided value | -| LogInjectionTest.java:699:25:699:50 | (...)... | LogInjectionTest.java:699:43:699:50 | source(...) : Object | LogInjectionTest.java:699:25:699:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:699:43:699:50 | source(...) | user-provided value | -| LogInjectionTest.java:700:25:700:50 | (...)... | LogInjectionTest.java:700:43:700:50 | source(...) : Object | LogInjectionTest.java:700:25:700:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:700:43:700:50 | source(...) | user-provided value | -| LogInjectionTest.java:701:25:701:42 | (...)... | LogInjectionTest.java:701:35:701:42 | source(...) : Object | LogInjectionTest.java:701:25:701:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:701:35:701:42 | source(...) | user-provided value | -| LogInjectionTest.java:702:25:702:42 | (...)... | LogInjectionTest.java:702:35:702:42 | source(...) : Object | LogInjectionTest.java:702:25:702:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:702:35:702:42 | source(...) | user-provided value | -| LogInjectionTest.java:703:25:703:32 | source(...) | LogInjectionTest.java:703:25:703:32 | source(...) | LogInjectionTest.java:703:25:703:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:703:25:703:32 | source(...) | user-provided value | -| LogInjectionTest.java:704:25:704:32 | source(...) | LogInjectionTest.java:704:25:704:32 | source(...) | LogInjectionTest.java:704:25:704:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:704:25:704:32 | source(...) | user-provided value | -| LogInjectionTest.java:705:25:705:41 | (...)... | LogInjectionTest.java:705:34:705:41 | source(...) : Object | LogInjectionTest.java:705:25:705:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:705:34:705:41 | source(...) | user-provided value | -| LogInjectionTest.java:706:25:706:41 | (...)... | LogInjectionTest.java:706:34:706:41 | source(...) : Object | LogInjectionTest.java:706:25:706:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:706:34:706:41 | source(...) | user-provided value | -| LogInjectionTest.java:707:40:707:62 | new Object[] | LogInjectionTest.java:707:54:707:61 | source(...) : Object | LogInjectionTest.java:707:40:707:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:707:54:707:61 | source(...) | user-provided value | -| LogInjectionTest.java:708:40:708:56 | (...)... | LogInjectionTest.java:708:49:708:56 | source(...) : Object | LogInjectionTest.java:708:40:708:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:708:49:708:56 | source(...) | user-provided value | -| LogInjectionTest.java:709:25:709:41 | (...)... | LogInjectionTest.java:709:34:709:41 | source(...) : Object | LogInjectionTest.java:709:25:709:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:709:34:709:41 | source(...) | user-provided value | -| LogInjectionTest.java:710:55:710:71 | (...)... | LogInjectionTest.java:710:64:710:71 | source(...) : Object | LogInjectionTest.java:710:55:710:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:710:64:710:71 | source(...) | user-provided value | -| LogInjectionTest.java:711:40:711:56 | (...)... | LogInjectionTest.java:711:49:711:56 | source(...) : Object | LogInjectionTest.java:711:40:711:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:711:49:711:56 | source(...) | user-provided value | -| LogInjectionTest.java:712:25:712:41 | (...)... | LogInjectionTest.java:712:34:712:41 | source(...) : Object | LogInjectionTest.java:712:25:712:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:712:34:712:41 | source(...) | user-provided value | -| LogInjectionTest.java:713:70:713:86 | (...)... | LogInjectionTest.java:713:79:713:86 | source(...) : Object | LogInjectionTest.java:713:70:713:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:713:79:713:86 | source(...) | user-provided value | -| LogInjectionTest.java:714:55:714:71 | (...)... | LogInjectionTest.java:714:64:714:71 | source(...) : Object | LogInjectionTest.java:714:55:714:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:714:64:714:71 | source(...) | user-provided value | -| LogInjectionTest.java:715:40:715:56 | (...)... | LogInjectionTest.java:715:49:715:56 | source(...) : Object | LogInjectionTest.java:715:40:715:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:715:49:715:56 | source(...) | user-provided value | +| LogInjectionTest.java:694:175:694:191 | (...)... | LogInjectionTest.java:694:184:694:191 | source(...) : Object | LogInjectionTest.java:694:175:694:191 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:694:184:694:191 | source(...) | user-provided value | +| LogInjectionTest.java:695:160:695:176 | (...)... | LogInjectionTest.java:695:169:695:176 | source(...) : Object | LogInjectionTest.java:695:160:695:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:695:169:695:176 | source(...) | user-provided value | +| LogInjectionTest.java:696:145:696:161 | (...)... | LogInjectionTest.java:696:154:696:161 | source(...) : Object | LogInjectionTest.java:696:145:696:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:696:154:696:161 | source(...) | user-provided value | +| LogInjectionTest.java:697:130:697:146 | (...)... | LogInjectionTest.java:697:139:697:146 | source(...) : Object | LogInjectionTest.java:697:130:697:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:697:139:697:146 | source(...) | user-provided value | +| LogInjectionTest.java:698:115:698:131 | (...)... | LogInjectionTest.java:698:124:698:131 | source(...) : Object | LogInjectionTest.java:698:115:698:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:698:124:698:131 | source(...) | user-provided value | +| LogInjectionTest.java:699:100:699:116 | (...)... | LogInjectionTest.java:699:109:699:116 | source(...) : Object | LogInjectionTest.java:699:100:699:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:699:109:699:116 | source(...) | user-provided value | +| LogInjectionTest.java:700:85:700:101 | (...)... | LogInjectionTest.java:700:94:700:101 | source(...) : Object | LogInjectionTest.java:700:85:700:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:700:94:700:101 | source(...) | user-provided value | +| LogInjectionTest.java:701:70:701:86 | (...)... | LogInjectionTest.java:701:79:701:86 | source(...) : Object | LogInjectionTest.java:701:70:701:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:701:79:701:86 | source(...) | user-provided value | +| LogInjectionTest.java:702:55:702:71 | (...)... | LogInjectionTest.java:702:64:702:71 | source(...) : Object | LogInjectionTest.java:702:55:702:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:702:64:702:71 | source(...) | user-provided value | +| LogInjectionTest.java:703:40:703:56 | (...)... | LogInjectionTest.java:703:49:703:56 | source(...) : Object | LogInjectionTest.java:703:40:703:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:703:49:703:56 | source(...) | user-provided value | +| LogInjectionTest.java:704:40:704:56 | (...)... | LogInjectionTest.java:704:49:704:56 | source(...) : Object | LogInjectionTest.java:704:40:704:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:704:49:704:56 | source(...) | user-provided value | +| LogInjectionTest.java:705:55:705:76 | (...)... | LogInjectionTest.java:705:69:705:76 | source(...) : Object | LogInjectionTest.java:705:55:705:76 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:705:69:705:76 | source(...) | user-provided value | +| LogInjectionTest.java:706:40:706:56 | (...)... | LogInjectionTest.java:706:49:706:56 | source(...) : Object | LogInjectionTest.java:706:40:706:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:706:49:706:56 | source(...) | user-provided value | +| LogInjectionTest.java:707:40:707:61 | (...)... | LogInjectionTest.java:707:54:707:61 | source(...) : Object | LogInjectionTest.java:707:40:707:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:707:54:707:61 | source(...) | user-provided value | +| LogInjectionTest.java:708:40:708:61 | (...)... | LogInjectionTest.java:708:54:708:61 | source(...) : Object | LogInjectionTest.java:708:40:708:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:708:54:708:61 | source(...) | user-provided value | +| LogInjectionTest.java:709:25:709:50 | (...)... | LogInjectionTest.java:709:43:709:50 | source(...) : Object | LogInjectionTest.java:709:25:709:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:709:43:709:50 | source(...) | user-provided value | +| LogInjectionTest.java:710:25:710:50 | (...)... | LogInjectionTest.java:710:43:710:50 | source(...) : Object | LogInjectionTest.java:710:25:710:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:710:43:710:50 | source(...) | user-provided value | +| LogInjectionTest.java:711:25:711:42 | (...)... | LogInjectionTest.java:711:35:711:42 | source(...) : Object | LogInjectionTest.java:711:25:711:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:711:35:711:42 | source(...) | user-provided value | +| LogInjectionTest.java:712:25:712:42 | (...)... | LogInjectionTest.java:712:35:712:42 | source(...) : Object | LogInjectionTest.java:712:25:712:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:712:35:712:42 | source(...) | user-provided value | +| LogInjectionTest.java:713:25:713:32 | source(...) | LogInjectionTest.java:713:25:713:32 | source(...) | LogInjectionTest.java:713:25:713:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:713:25:713:32 | source(...) | user-provided value | +| LogInjectionTest.java:714:25:714:32 | source(...) | LogInjectionTest.java:714:25:714:32 | source(...) | LogInjectionTest.java:714:25:714:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:714:25:714:32 | source(...) | user-provided value | +| LogInjectionTest.java:715:25:715:41 | (...)... | LogInjectionTest.java:715:34:715:41 | source(...) : Object | LogInjectionTest.java:715:25:715:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:715:34:715:41 | source(...) | user-provided value | | LogInjectionTest.java:716:25:716:41 | (...)... | LogInjectionTest.java:716:34:716:41 | source(...) : Object | LogInjectionTest.java:716:25:716:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:716:34:716:41 | source(...) | user-provided value | -| LogInjectionTest.java:717:85:717:101 | (...)... | LogInjectionTest.java:717:94:717:101 | source(...) : Object | LogInjectionTest.java:717:85:717:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:717:94:717:101 | source(...) | user-provided value | -| LogInjectionTest.java:718:70:718:86 | (...)... | LogInjectionTest.java:718:79:718:86 | source(...) : Object | LogInjectionTest.java:718:70:718:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:718:79:718:86 | source(...) | user-provided value | -| LogInjectionTest.java:719:55:719:71 | (...)... | LogInjectionTest.java:719:64:719:71 | source(...) : Object | LogInjectionTest.java:719:55:719:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:719:64:719:71 | source(...) | user-provided value | -| LogInjectionTest.java:720:40:720:56 | (...)... | LogInjectionTest.java:720:49:720:56 | source(...) : Object | LogInjectionTest.java:720:40:720:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:720:49:720:56 | source(...) | user-provided value | -| LogInjectionTest.java:721:25:721:41 | (...)... | LogInjectionTest.java:721:34:721:41 | source(...) : Object | LogInjectionTest.java:721:25:721:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:721:34:721:41 | source(...) | user-provided value | -| LogInjectionTest.java:722:100:722:116 | (...)... | LogInjectionTest.java:722:109:722:116 | source(...) : Object | LogInjectionTest.java:722:100:722:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:722:109:722:116 | source(...) | user-provided value | -| LogInjectionTest.java:723:85:723:101 | (...)... | LogInjectionTest.java:723:94:723:101 | source(...) : Object | LogInjectionTest.java:723:85:723:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:723:94:723:101 | source(...) | user-provided value | -| LogInjectionTest.java:724:70:724:86 | (...)... | LogInjectionTest.java:724:79:724:86 | source(...) : Object | LogInjectionTest.java:724:70:724:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:724:79:724:86 | source(...) | user-provided value | -| LogInjectionTest.java:725:55:725:71 | (...)... | LogInjectionTest.java:725:64:725:71 | source(...) : Object | LogInjectionTest.java:725:55:725:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:725:64:725:71 | source(...) | user-provided value | -| LogInjectionTest.java:726:40:726:56 | (...)... | LogInjectionTest.java:726:49:726:56 | source(...) : Object | LogInjectionTest.java:726:40:726:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:726:49:726:56 | source(...) | user-provided value | -| LogInjectionTest.java:727:25:727:41 | (...)... | LogInjectionTest.java:727:34:727:41 | source(...) : Object | LogInjectionTest.java:727:25:727:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:727:34:727:41 | source(...) | user-provided value | -| LogInjectionTest.java:728:115:728:131 | (...)... | LogInjectionTest.java:728:124:728:131 | source(...) : Object | LogInjectionTest.java:728:115:728:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:728:124:728:131 | source(...) | user-provided value | -| LogInjectionTest.java:729:100:729:116 | (...)... | LogInjectionTest.java:729:109:729:116 | source(...) : Object | LogInjectionTest.java:729:100:729:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:729:109:729:116 | source(...) | user-provided value | -| LogInjectionTest.java:730:85:730:101 | (...)... | LogInjectionTest.java:730:94:730:101 | source(...) : Object | LogInjectionTest.java:730:85:730:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:730:94:730:101 | source(...) | user-provided value | -| LogInjectionTest.java:731:70:731:86 | (...)... | LogInjectionTest.java:731:79:731:86 | source(...) : Object | LogInjectionTest.java:731:70:731:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:731:79:731:86 | source(...) | user-provided value | -| LogInjectionTest.java:732:55:732:71 | (...)... | LogInjectionTest.java:732:64:732:71 | source(...) : Object | LogInjectionTest.java:732:55:732:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:732:64:732:71 | source(...) | user-provided value | -| LogInjectionTest.java:733:40:733:56 | (...)... | LogInjectionTest.java:733:49:733:56 | source(...) : Object | LogInjectionTest.java:733:40:733:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:733:49:733:56 | source(...) | user-provided value | -| LogInjectionTest.java:734:25:734:41 | (...)... | LogInjectionTest.java:734:34:734:41 | source(...) : Object | LogInjectionTest.java:734:25:734:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:734:34:734:41 | source(...) | user-provided value | -| LogInjectionTest.java:735:130:735:146 | (...)... | LogInjectionTest.java:735:139:735:146 | source(...) : Object | LogInjectionTest.java:735:130:735:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:735:139:735:146 | source(...) | user-provided value | -| LogInjectionTest.java:736:115:736:131 | (...)... | LogInjectionTest.java:736:124:736:131 | source(...) : Object | LogInjectionTest.java:736:115:736:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:736:124:736:131 | source(...) | user-provided value | -| LogInjectionTest.java:737:100:737:116 | (...)... | LogInjectionTest.java:737:109:737:116 | source(...) : Object | LogInjectionTest.java:737:100:737:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:737:109:737:116 | source(...) | user-provided value | -| LogInjectionTest.java:738:85:738:101 | (...)... | LogInjectionTest.java:738:94:738:101 | source(...) : Object | LogInjectionTest.java:738:85:738:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:738:94:738:101 | source(...) | user-provided value | -| LogInjectionTest.java:739:70:739:86 | (...)... | LogInjectionTest.java:739:79:739:86 | source(...) : Object | LogInjectionTest.java:739:70:739:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:739:79:739:86 | source(...) | user-provided value | -| LogInjectionTest.java:740:55:740:71 | (...)... | LogInjectionTest.java:740:64:740:71 | source(...) : Object | LogInjectionTest.java:740:55:740:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:740:64:740:71 | source(...) | user-provided value | -| LogInjectionTest.java:741:40:741:56 | (...)... | LogInjectionTest.java:741:49:741:56 | source(...) : Object | LogInjectionTest.java:741:40:741:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:741:49:741:56 | source(...) | user-provided value | -| LogInjectionTest.java:742:25:742:41 | (...)... | LogInjectionTest.java:742:34:742:41 | source(...) : Object | LogInjectionTest.java:742:25:742:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:742:34:742:41 | source(...) | user-provided value | -| LogInjectionTest.java:743:145:743:161 | (...)... | LogInjectionTest.java:743:154:743:161 | source(...) : Object | LogInjectionTest.java:743:145:743:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:743:154:743:161 | source(...) | user-provided value | -| LogInjectionTest.java:744:130:744:146 | (...)... | LogInjectionTest.java:744:139:744:146 | source(...) : Object | LogInjectionTest.java:744:130:744:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:744:139:744:146 | source(...) | user-provided value | -| LogInjectionTest.java:745:115:745:131 | (...)... | LogInjectionTest.java:745:124:745:131 | source(...) : Object | LogInjectionTest.java:745:115:745:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:745:124:745:131 | source(...) | user-provided value | -| LogInjectionTest.java:746:100:746:116 | (...)... | LogInjectionTest.java:746:109:746:116 | source(...) : Object | LogInjectionTest.java:746:100:746:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:746:109:746:116 | source(...) | user-provided value | -| LogInjectionTest.java:747:85:747:101 | (...)... | LogInjectionTest.java:747:94:747:101 | source(...) : Object | LogInjectionTest.java:747:85:747:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:747:94:747:101 | source(...) | user-provided value | -| LogInjectionTest.java:748:70:748:86 | (...)... | LogInjectionTest.java:748:79:748:86 | source(...) : Object | LogInjectionTest.java:748:70:748:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:748:79:748:86 | source(...) | user-provided value | -| LogInjectionTest.java:749:55:749:71 | (...)... | LogInjectionTest.java:749:64:749:71 | source(...) : Object | LogInjectionTest.java:749:55:749:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:749:64:749:71 | source(...) | user-provided value | -| LogInjectionTest.java:750:40:750:56 | (...)... | LogInjectionTest.java:750:49:750:56 | source(...) : Object | LogInjectionTest.java:750:40:750:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:750:49:750:56 | source(...) | user-provided value | -| LogInjectionTest.java:751:25:751:41 | (...)... | LogInjectionTest.java:751:34:751:41 | source(...) : Object | LogInjectionTest.java:751:25:751:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:751:34:751:41 | source(...) | user-provided value | -| LogInjectionTest.java:752:160:752:176 | (...)... | LogInjectionTest.java:752:169:752:176 | source(...) : Object | LogInjectionTest.java:752:160:752:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:752:169:752:176 | source(...) | user-provided value | +| LogInjectionTest.java:717:40:717:62 | new Object[] | LogInjectionTest.java:717:54:717:61 | source(...) : Object | LogInjectionTest.java:717:40:717:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:717:54:717:61 | source(...) | user-provided value | +| LogInjectionTest.java:718:40:718:56 | (...)... | LogInjectionTest.java:718:49:718:56 | source(...) : Object | LogInjectionTest.java:718:40:718:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:718:49:718:56 | source(...) | user-provided value | +| LogInjectionTest.java:719:25:719:41 | (...)... | LogInjectionTest.java:719:34:719:41 | source(...) : Object | LogInjectionTest.java:719:25:719:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:719:34:719:41 | source(...) | user-provided value | +| LogInjectionTest.java:720:55:720:71 | (...)... | LogInjectionTest.java:720:64:720:71 | source(...) : Object | LogInjectionTest.java:720:55:720:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:720:64:720:71 | source(...) | user-provided value | +| LogInjectionTest.java:721:40:721:56 | (...)... | LogInjectionTest.java:721:49:721:56 | source(...) : Object | LogInjectionTest.java:721:40:721:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:721:49:721:56 | source(...) | user-provided value | +| LogInjectionTest.java:722:25:722:41 | (...)... | LogInjectionTest.java:722:34:722:41 | source(...) : Object | LogInjectionTest.java:722:25:722:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:722:34:722:41 | source(...) | user-provided value | +| LogInjectionTest.java:723:70:723:86 | (...)... | LogInjectionTest.java:723:79:723:86 | source(...) : Object | LogInjectionTest.java:723:70:723:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:723:79:723:86 | source(...) | user-provided value | +| LogInjectionTest.java:724:55:724:71 | (...)... | LogInjectionTest.java:724:64:724:71 | source(...) : Object | LogInjectionTest.java:724:55:724:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:724:64:724:71 | source(...) | user-provided value | +| LogInjectionTest.java:725:40:725:56 | (...)... | LogInjectionTest.java:725:49:725:56 | source(...) : Object | LogInjectionTest.java:725:40:725:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:725:49:725:56 | source(...) | user-provided value | +| LogInjectionTest.java:726:25:726:41 | (...)... | LogInjectionTest.java:726:34:726:41 | source(...) : Object | LogInjectionTest.java:726:25:726:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:726:34:726:41 | source(...) | user-provided value | +| LogInjectionTest.java:727:85:727:101 | (...)... | LogInjectionTest.java:727:94:727:101 | source(...) : Object | LogInjectionTest.java:727:85:727:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:727:94:727:101 | source(...) | user-provided value | +| LogInjectionTest.java:728:70:728:86 | (...)... | LogInjectionTest.java:728:79:728:86 | source(...) : Object | LogInjectionTest.java:728:70:728:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:728:79:728:86 | source(...) | user-provided value | +| LogInjectionTest.java:729:55:729:71 | (...)... | LogInjectionTest.java:729:64:729:71 | source(...) : Object | LogInjectionTest.java:729:55:729:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:729:64:729:71 | source(...) | user-provided value | +| LogInjectionTest.java:730:40:730:56 | (...)... | LogInjectionTest.java:730:49:730:56 | source(...) : Object | LogInjectionTest.java:730:40:730:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:730:49:730:56 | source(...) | user-provided value | +| LogInjectionTest.java:731:25:731:41 | (...)... | LogInjectionTest.java:731:34:731:41 | source(...) : Object | LogInjectionTest.java:731:25:731:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:731:34:731:41 | source(...) | user-provided value | +| LogInjectionTest.java:732:100:732:116 | (...)... | LogInjectionTest.java:732:109:732:116 | source(...) : Object | LogInjectionTest.java:732:100:732:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:732:109:732:116 | source(...) | user-provided value | +| LogInjectionTest.java:733:85:733:101 | (...)... | LogInjectionTest.java:733:94:733:101 | source(...) : Object | LogInjectionTest.java:733:85:733:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:733:94:733:101 | source(...) | user-provided value | +| LogInjectionTest.java:734:70:734:86 | (...)... | LogInjectionTest.java:734:79:734:86 | source(...) : Object | LogInjectionTest.java:734:70:734:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:734:79:734:86 | source(...) | user-provided value | +| LogInjectionTest.java:735:55:735:71 | (...)... | LogInjectionTest.java:735:64:735:71 | source(...) : Object | LogInjectionTest.java:735:55:735:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:735:64:735:71 | source(...) | user-provided value | +| LogInjectionTest.java:736:40:736:56 | (...)... | LogInjectionTest.java:736:49:736:56 | source(...) : Object | LogInjectionTest.java:736:40:736:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:736:49:736:56 | source(...) | user-provided value | +| LogInjectionTest.java:737:25:737:41 | (...)... | LogInjectionTest.java:737:34:737:41 | source(...) : Object | LogInjectionTest.java:737:25:737:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:737:34:737:41 | source(...) | user-provided value | +| LogInjectionTest.java:738:115:738:131 | (...)... | LogInjectionTest.java:738:124:738:131 | source(...) : Object | LogInjectionTest.java:738:115:738:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:738:124:738:131 | source(...) | user-provided value | +| LogInjectionTest.java:739:100:739:116 | (...)... | LogInjectionTest.java:739:109:739:116 | source(...) : Object | LogInjectionTest.java:739:100:739:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:739:109:739:116 | source(...) | user-provided value | +| LogInjectionTest.java:740:85:740:101 | (...)... | LogInjectionTest.java:740:94:740:101 | source(...) : Object | LogInjectionTest.java:740:85:740:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:740:94:740:101 | source(...) | user-provided value | +| LogInjectionTest.java:741:70:741:86 | (...)... | LogInjectionTest.java:741:79:741:86 | source(...) : Object | LogInjectionTest.java:741:70:741:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:741:79:741:86 | source(...) | user-provided value | +| LogInjectionTest.java:742:55:742:71 | (...)... | LogInjectionTest.java:742:64:742:71 | source(...) : Object | LogInjectionTest.java:742:55:742:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:742:64:742:71 | source(...) | user-provided value | +| LogInjectionTest.java:743:40:743:56 | (...)... | LogInjectionTest.java:743:49:743:56 | source(...) : Object | LogInjectionTest.java:743:40:743:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:743:49:743:56 | source(...) | user-provided value | +| LogInjectionTest.java:744:25:744:41 | (...)... | LogInjectionTest.java:744:34:744:41 | source(...) : Object | LogInjectionTest.java:744:25:744:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:744:34:744:41 | source(...) | user-provided value | +| LogInjectionTest.java:745:130:745:146 | (...)... | LogInjectionTest.java:745:139:745:146 | source(...) : Object | LogInjectionTest.java:745:130:745:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:745:139:745:146 | source(...) | user-provided value | +| LogInjectionTest.java:746:115:746:131 | (...)... | LogInjectionTest.java:746:124:746:131 | source(...) : Object | LogInjectionTest.java:746:115:746:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:746:124:746:131 | source(...) | user-provided value | +| LogInjectionTest.java:747:100:747:116 | (...)... | LogInjectionTest.java:747:109:747:116 | source(...) : Object | LogInjectionTest.java:747:100:747:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:747:109:747:116 | source(...) | user-provided value | +| LogInjectionTest.java:748:85:748:101 | (...)... | LogInjectionTest.java:748:94:748:101 | source(...) : Object | LogInjectionTest.java:748:85:748:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:748:94:748:101 | source(...) | user-provided value | +| LogInjectionTest.java:749:70:749:86 | (...)... | LogInjectionTest.java:749:79:749:86 | source(...) : Object | LogInjectionTest.java:749:70:749:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:749:79:749:86 | source(...) | user-provided value | +| LogInjectionTest.java:750:55:750:71 | (...)... | LogInjectionTest.java:750:64:750:71 | source(...) : Object | LogInjectionTest.java:750:55:750:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:750:64:750:71 | source(...) | user-provided value | +| LogInjectionTest.java:751:40:751:56 | (...)... | LogInjectionTest.java:751:49:751:56 | source(...) : Object | LogInjectionTest.java:751:40:751:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:751:49:751:56 | source(...) | user-provided value | +| LogInjectionTest.java:752:25:752:41 | (...)... | LogInjectionTest.java:752:34:752:41 | source(...) : Object | LogInjectionTest.java:752:25:752:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:752:34:752:41 | source(...) | user-provided value | | LogInjectionTest.java:753:145:753:161 | (...)... | LogInjectionTest.java:753:154:753:161 | source(...) : Object | LogInjectionTest.java:753:145:753:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:753:154:753:161 | source(...) | user-provided value | | LogInjectionTest.java:754:130:754:146 | (...)... | LogInjectionTest.java:754:139:754:146 | source(...) : Object | LogInjectionTest.java:754:130:754:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:754:139:754:146 | source(...) | user-provided value | | LogInjectionTest.java:755:115:755:131 | (...)... | LogInjectionTest.java:755:124:755:131 | source(...) : Object | LogInjectionTest.java:755:115:755:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:755:124:755:131 | source(...) | user-provided value | @@ -609,67 +599,67 @@ | LogInjectionTest.java:759:55:759:71 | (...)... | LogInjectionTest.java:759:64:759:71 | source(...) : Object | LogInjectionTest.java:759:55:759:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:759:64:759:71 | source(...) | user-provided value | | LogInjectionTest.java:760:40:760:56 | (...)... | LogInjectionTest.java:760:49:760:56 | source(...) : Object | LogInjectionTest.java:760:40:760:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:760:49:760:56 | source(...) | user-provided value | | LogInjectionTest.java:761:25:761:41 | (...)... | LogInjectionTest.java:761:34:761:41 | source(...) : Object | LogInjectionTest.java:761:25:761:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:761:34:761:41 | source(...) | user-provided value | -| LogInjectionTest.java:762:25:762:41 | (...)... | LogInjectionTest.java:762:34:762:41 | source(...) : Object | LogInjectionTest.java:762:25:762:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:762:34:762:41 | source(...) | user-provided value | -| LogInjectionTest.java:763:40:763:61 | (...)... | LogInjectionTest.java:763:54:763:61 | source(...) : Object | LogInjectionTest.java:763:40:763:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:763:54:763:61 | source(...) | user-provided value | -| LogInjectionTest.java:764:25:764:41 | (...)... | LogInjectionTest.java:764:34:764:41 | source(...) : Object | LogInjectionTest.java:764:25:764:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:764:34:764:41 | source(...) | user-provided value | -| LogInjectionTest.java:765:25:765:46 | (...)... | LogInjectionTest.java:765:39:765:46 | source(...) : Object | LogInjectionTest.java:765:25:765:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:765:39:765:46 | source(...) | user-provided value | -| LogInjectionTest.java:766:25:766:46 | (...)... | LogInjectionTest.java:766:39:766:46 | source(...) : Object | LogInjectionTest.java:766:25:766:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:766:39:766:46 | source(...) | user-provided value | -| LogInjectionTest.java:767:38:767:60 | (...)... | LogInjectionTest.java:767:53:767:60 | source(...) : Object | LogInjectionTest.java:767:38:767:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:767:53:767:60 | source(...) | user-provided value | -| LogInjectionTest.java:768:38:768:60 | (...)... | LogInjectionTest.java:768:53:768:60 | source(...) : Object | LogInjectionTest.java:768:38:768:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:768:53:768:60 | source(...) | user-provided value | -| LogInjectionTest.java:769:53:769:75 | (...)... | LogInjectionTest.java:769:68:769:75 | source(...) : Object | LogInjectionTest.java:769:53:769:75 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:769:68:769:75 | source(...) | user-provided value | -| LogInjectionTest.java:770:53:770:75 | (...)... | LogInjectionTest.java:770:68:770:75 | source(...) : Object | LogInjectionTest.java:770:53:770:75 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:770:68:770:75 | source(...) | user-provided value | -| LogInjectionTest.java:771:53:771:70 | (...)... | LogInjectionTest.java:771:63:771:70 | source(...) : Object | LogInjectionTest.java:771:53:771:70 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:771:63:771:70 | source(...) | user-provided value | -| LogInjectionTest.java:772:53:772:78 | (...)... | LogInjectionTest.java:772:71:772:78 | source(...) : Object | LogInjectionTest.java:772:53:772:78 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:772:71:772:78 | source(...) | user-provided value | -| LogInjectionTest.java:773:53:773:78 | (...)... | LogInjectionTest.java:773:71:773:78 | source(...) : Object | LogInjectionTest.java:773:53:773:78 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:773:71:773:78 | source(...) | user-provided value | -| LogInjectionTest.java:774:53:774:60 | source(...) | LogInjectionTest.java:774:53:774:60 | source(...) | LogInjectionTest.java:774:53:774:60 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:774:53:774:60 | source(...) | user-provided value | -| LogInjectionTest.java:775:53:775:69 | (...)... | LogInjectionTest.java:775:62:775:69 | source(...) : Object | LogInjectionTest.java:775:53:775:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:775:62:775:69 | source(...) | user-provided value | -| LogInjectionTest.java:776:53:776:69 | (...)... | LogInjectionTest.java:776:62:776:69 | source(...) : Object | LogInjectionTest.java:776:53:776:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:776:62:776:69 | source(...) | user-provided value | -| LogInjectionTest.java:777:68:777:90 | new Object[] | LogInjectionTest.java:777:82:777:89 | source(...) : Object | LogInjectionTest.java:777:68:777:90 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:777:82:777:89 | source(...) | user-provided value | -| LogInjectionTest.java:778:68:778:84 | (...)... | LogInjectionTest.java:778:77:778:84 | source(...) : Object | LogInjectionTest.java:778:68:778:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:778:77:778:84 | source(...) | user-provided value | -| LogInjectionTest.java:779:53:779:69 | (...)... | LogInjectionTest.java:779:62:779:69 | source(...) : Object | LogInjectionTest.java:779:53:779:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:779:62:779:69 | source(...) | user-provided value | -| LogInjectionTest.java:780:83:780:99 | (...)... | LogInjectionTest.java:780:92:780:99 | source(...) : Object | LogInjectionTest.java:780:83:780:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:780:92:780:99 | source(...) | user-provided value | -| LogInjectionTest.java:781:68:781:84 | (...)... | LogInjectionTest.java:781:77:781:84 | source(...) : Object | LogInjectionTest.java:781:68:781:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:781:77:781:84 | source(...) | user-provided value | -| LogInjectionTest.java:782:53:782:69 | (...)... | LogInjectionTest.java:782:62:782:69 | source(...) : Object | LogInjectionTest.java:782:53:782:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:782:62:782:69 | source(...) | user-provided value | -| LogInjectionTest.java:783:98:783:114 | (...)... | LogInjectionTest.java:783:107:783:114 | source(...) : Object | LogInjectionTest.java:783:98:783:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:783:107:783:114 | source(...) | user-provided value | -| LogInjectionTest.java:784:83:784:99 | (...)... | LogInjectionTest.java:784:92:784:99 | source(...) : Object | LogInjectionTest.java:784:83:784:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:784:92:784:99 | source(...) | user-provided value | -| LogInjectionTest.java:785:68:785:84 | (...)... | LogInjectionTest.java:785:77:785:84 | source(...) : Object | LogInjectionTest.java:785:68:785:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:785:77:785:84 | source(...) | user-provided value | +| LogInjectionTest.java:762:160:762:176 | (...)... | LogInjectionTest.java:762:169:762:176 | source(...) : Object | LogInjectionTest.java:762:160:762:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:762:169:762:176 | source(...) | user-provided value | +| LogInjectionTest.java:763:145:763:161 | (...)... | LogInjectionTest.java:763:154:763:161 | source(...) : Object | LogInjectionTest.java:763:145:763:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:763:154:763:161 | source(...) | user-provided value | +| LogInjectionTest.java:764:130:764:146 | (...)... | LogInjectionTest.java:764:139:764:146 | source(...) : Object | LogInjectionTest.java:764:130:764:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:764:139:764:146 | source(...) | user-provided value | +| LogInjectionTest.java:765:115:765:131 | (...)... | LogInjectionTest.java:765:124:765:131 | source(...) : Object | LogInjectionTest.java:765:115:765:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:765:124:765:131 | source(...) | user-provided value | +| LogInjectionTest.java:766:100:766:116 | (...)... | LogInjectionTest.java:766:109:766:116 | source(...) : Object | LogInjectionTest.java:766:100:766:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:766:109:766:116 | source(...) | user-provided value | +| LogInjectionTest.java:767:85:767:101 | (...)... | LogInjectionTest.java:767:94:767:101 | source(...) : Object | LogInjectionTest.java:767:85:767:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:767:94:767:101 | source(...) | user-provided value | +| LogInjectionTest.java:768:70:768:86 | (...)... | LogInjectionTest.java:768:79:768:86 | source(...) : Object | LogInjectionTest.java:768:70:768:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:768:79:768:86 | source(...) | user-provided value | +| LogInjectionTest.java:769:55:769:71 | (...)... | LogInjectionTest.java:769:64:769:71 | source(...) : Object | LogInjectionTest.java:769:55:769:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:769:64:769:71 | source(...) | user-provided value | +| LogInjectionTest.java:770:40:770:56 | (...)... | LogInjectionTest.java:770:49:770:56 | source(...) : Object | LogInjectionTest.java:770:40:770:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:770:49:770:56 | source(...) | user-provided value | +| LogInjectionTest.java:771:25:771:41 | (...)... | LogInjectionTest.java:771:34:771:41 | source(...) : Object | LogInjectionTest.java:771:25:771:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:771:34:771:41 | source(...) | user-provided value | +| LogInjectionTest.java:772:25:772:41 | (...)... | LogInjectionTest.java:772:34:772:41 | source(...) : Object | LogInjectionTest.java:772:25:772:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:772:34:772:41 | source(...) | user-provided value | +| LogInjectionTest.java:773:40:773:61 | (...)... | LogInjectionTest.java:773:54:773:61 | source(...) : Object | LogInjectionTest.java:773:40:773:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:773:54:773:61 | source(...) | user-provided value | +| LogInjectionTest.java:774:25:774:41 | (...)... | LogInjectionTest.java:774:34:774:41 | source(...) : Object | LogInjectionTest.java:774:25:774:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:774:34:774:41 | source(...) | user-provided value | +| LogInjectionTest.java:775:25:775:46 | (...)... | LogInjectionTest.java:775:39:775:46 | source(...) : Object | LogInjectionTest.java:775:25:775:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:775:39:775:46 | source(...) | user-provided value | +| LogInjectionTest.java:776:25:776:46 | (...)... | LogInjectionTest.java:776:39:776:46 | source(...) : Object | LogInjectionTest.java:776:25:776:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:776:39:776:46 | source(...) | user-provided value | +| LogInjectionTest.java:777:38:777:60 | (...)... | LogInjectionTest.java:777:53:777:60 | source(...) : Object | LogInjectionTest.java:777:38:777:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:777:53:777:60 | source(...) | user-provided value | +| LogInjectionTest.java:778:38:778:60 | (...)... | LogInjectionTest.java:778:53:778:60 | source(...) : Object | LogInjectionTest.java:778:38:778:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:778:53:778:60 | source(...) | user-provided value | +| LogInjectionTest.java:779:53:779:75 | (...)... | LogInjectionTest.java:779:68:779:75 | source(...) : Object | LogInjectionTest.java:779:53:779:75 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:779:68:779:75 | source(...) | user-provided value | +| LogInjectionTest.java:780:53:780:75 | (...)... | LogInjectionTest.java:780:68:780:75 | source(...) : Object | LogInjectionTest.java:780:53:780:75 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:780:68:780:75 | source(...) | user-provided value | +| LogInjectionTest.java:781:53:781:70 | (...)... | LogInjectionTest.java:781:63:781:70 | source(...) : Object | LogInjectionTest.java:781:53:781:70 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:781:63:781:70 | source(...) | user-provided value | +| LogInjectionTest.java:782:53:782:78 | (...)... | LogInjectionTest.java:782:71:782:78 | source(...) : Object | LogInjectionTest.java:782:53:782:78 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:782:71:782:78 | source(...) | user-provided value | +| LogInjectionTest.java:783:53:783:78 | (...)... | LogInjectionTest.java:783:71:783:78 | source(...) : Object | LogInjectionTest.java:783:53:783:78 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:783:71:783:78 | source(...) | user-provided value | +| LogInjectionTest.java:784:53:784:60 | source(...) | LogInjectionTest.java:784:53:784:60 | source(...) | LogInjectionTest.java:784:53:784:60 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:784:53:784:60 | source(...) | user-provided value | +| LogInjectionTest.java:785:53:785:69 | (...)... | LogInjectionTest.java:785:62:785:69 | source(...) : Object | LogInjectionTest.java:785:53:785:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:785:62:785:69 | source(...) | user-provided value | | LogInjectionTest.java:786:53:786:69 | (...)... | LogInjectionTest.java:786:62:786:69 | source(...) : Object | LogInjectionTest.java:786:53:786:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:786:62:786:69 | source(...) | user-provided value | -| LogInjectionTest.java:787:113:787:129 | (...)... | LogInjectionTest.java:787:122:787:129 | source(...) : Object | LogInjectionTest.java:787:113:787:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:787:122:787:129 | source(...) | user-provided value | -| LogInjectionTest.java:788:98:788:114 | (...)... | LogInjectionTest.java:788:107:788:114 | source(...) : Object | LogInjectionTest.java:788:98:788:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:788:107:788:114 | source(...) | user-provided value | -| LogInjectionTest.java:789:83:789:99 | (...)... | LogInjectionTest.java:789:92:789:99 | source(...) : Object | LogInjectionTest.java:789:83:789:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:789:92:789:99 | source(...) | user-provided value | -| LogInjectionTest.java:790:68:790:84 | (...)... | LogInjectionTest.java:790:77:790:84 | source(...) : Object | LogInjectionTest.java:790:68:790:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:790:77:790:84 | source(...) | user-provided value | -| LogInjectionTest.java:791:53:791:69 | (...)... | LogInjectionTest.java:791:62:791:69 | source(...) : Object | LogInjectionTest.java:791:53:791:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:791:62:791:69 | source(...) | user-provided value | -| LogInjectionTest.java:792:128:792:144 | (...)... | LogInjectionTest.java:792:137:792:144 | source(...) : Object | LogInjectionTest.java:792:128:792:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:792:137:792:144 | source(...) | user-provided value | -| LogInjectionTest.java:793:113:793:129 | (...)... | LogInjectionTest.java:793:122:793:129 | source(...) : Object | LogInjectionTest.java:793:113:793:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:793:122:793:129 | source(...) | user-provided value | -| LogInjectionTest.java:794:98:794:114 | (...)... | LogInjectionTest.java:794:107:794:114 | source(...) : Object | LogInjectionTest.java:794:98:794:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:794:107:794:114 | source(...) | user-provided value | -| LogInjectionTest.java:795:83:795:99 | (...)... | LogInjectionTest.java:795:92:795:99 | source(...) : Object | LogInjectionTest.java:795:83:795:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:795:92:795:99 | source(...) | user-provided value | -| LogInjectionTest.java:796:68:796:84 | (...)... | LogInjectionTest.java:796:77:796:84 | source(...) : Object | LogInjectionTest.java:796:68:796:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:796:77:796:84 | source(...) | user-provided value | -| LogInjectionTest.java:797:53:797:69 | (...)... | LogInjectionTest.java:797:62:797:69 | source(...) : Object | LogInjectionTest.java:797:53:797:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:797:62:797:69 | source(...) | user-provided value | -| LogInjectionTest.java:798:143:798:159 | (...)... | LogInjectionTest.java:798:152:798:159 | source(...) : Object | LogInjectionTest.java:798:143:798:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:798:152:798:159 | source(...) | user-provided value | -| LogInjectionTest.java:799:128:799:144 | (...)... | LogInjectionTest.java:799:137:799:144 | source(...) : Object | LogInjectionTest.java:799:128:799:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:799:137:799:144 | source(...) | user-provided value | -| LogInjectionTest.java:800:113:800:129 | (...)... | LogInjectionTest.java:800:122:800:129 | source(...) : Object | LogInjectionTest.java:800:113:800:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:800:122:800:129 | source(...) | user-provided value | -| LogInjectionTest.java:801:98:801:114 | (...)... | LogInjectionTest.java:801:107:801:114 | source(...) : Object | LogInjectionTest.java:801:98:801:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:801:107:801:114 | source(...) | user-provided value | -| LogInjectionTest.java:802:83:802:99 | (...)... | LogInjectionTest.java:802:92:802:99 | source(...) : Object | LogInjectionTest.java:802:83:802:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:802:92:802:99 | source(...) | user-provided value | -| LogInjectionTest.java:803:68:803:84 | (...)... | LogInjectionTest.java:803:77:803:84 | source(...) : Object | LogInjectionTest.java:803:68:803:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:803:77:803:84 | source(...) | user-provided value | -| LogInjectionTest.java:804:53:804:69 | (...)... | LogInjectionTest.java:804:62:804:69 | source(...) : Object | LogInjectionTest.java:804:53:804:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:804:62:804:69 | source(...) | user-provided value | -| LogInjectionTest.java:805:158:805:174 | (...)... | LogInjectionTest.java:805:167:805:174 | source(...) : Object | LogInjectionTest.java:805:158:805:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:805:167:805:174 | source(...) | user-provided value | -| LogInjectionTest.java:806:143:806:159 | (...)... | LogInjectionTest.java:806:152:806:159 | source(...) : Object | LogInjectionTest.java:806:143:806:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:806:152:806:159 | source(...) | user-provided value | -| LogInjectionTest.java:807:128:807:144 | (...)... | LogInjectionTest.java:807:137:807:144 | source(...) : Object | LogInjectionTest.java:807:128:807:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:807:137:807:144 | source(...) | user-provided value | -| LogInjectionTest.java:808:113:808:129 | (...)... | LogInjectionTest.java:808:122:808:129 | source(...) : Object | LogInjectionTest.java:808:113:808:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:808:122:808:129 | source(...) | user-provided value | -| LogInjectionTest.java:809:98:809:114 | (...)... | LogInjectionTest.java:809:107:809:114 | source(...) : Object | LogInjectionTest.java:809:98:809:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:809:107:809:114 | source(...) | user-provided value | -| LogInjectionTest.java:810:83:810:99 | (...)... | LogInjectionTest.java:810:92:810:99 | source(...) : Object | LogInjectionTest.java:810:83:810:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:810:92:810:99 | source(...) | user-provided value | -| LogInjectionTest.java:811:68:811:84 | (...)... | LogInjectionTest.java:811:77:811:84 | source(...) : Object | LogInjectionTest.java:811:68:811:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:811:77:811:84 | source(...) | user-provided value | -| LogInjectionTest.java:812:53:812:69 | (...)... | LogInjectionTest.java:812:62:812:69 | source(...) : Object | LogInjectionTest.java:812:53:812:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:812:62:812:69 | source(...) | user-provided value | -| LogInjectionTest.java:813:173:813:189 | (...)... | LogInjectionTest.java:813:182:813:189 | source(...) : Object | LogInjectionTest.java:813:173:813:189 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:813:182:813:189 | source(...) | user-provided value | -| LogInjectionTest.java:814:158:814:174 | (...)... | LogInjectionTest.java:814:167:814:174 | source(...) : Object | LogInjectionTest.java:814:158:814:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:814:167:814:174 | source(...) | user-provided value | -| LogInjectionTest.java:815:143:815:159 | (...)... | LogInjectionTest.java:815:152:815:159 | source(...) : Object | LogInjectionTest.java:815:143:815:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:815:152:815:159 | source(...) | user-provided value | -| LogInjectionTest.java:816:128:816:144 | (...)... | LogInjectionTest.java:816:137:816:144 | source(...) : Object | LogInjectionTest.java:816:128:816:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:816:137:816:144 | source(...) | user-provided value | -| LogInjectionTest.java:817:113:817:129 | (...)... | LogInjectionTest.java:817:122:817:129 | source(...) : Object | LogInjectionTest.java:817:113:817:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:817:122:817:129 | source(...) | user-provided value | -| LogInjectionTest.java:818:98:818:114 | (...)... | LogInjectionTest.java:818:107:818:114 | source(...) : Object | LogInjectionTest.java:818:98:818:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:818:107:818:114 | source(...) | user-provided value | -| LogInjectionTest.java:819:83:819:99 | (...)... | LogInjectionTest.java:819:92:819:99 | source(...) : Object | LogInjectionTest.java:819:83:819:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:819:92:819:99 | source(...) | user-provided value | -| LogInjectionTest.java:820:68:820:84 | (...)... | LogInjectionTest.java:820:77:820:84 | source(...) : Object | LogInjectionTest.java:820:68:820:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:820:77:820:84 | source(...) | user-provided value | -| LogInjectionTest.java:821:53:821:69 | (...)... | LogInjectionTest.java:821:62:821:69 | source(...) : Object | LogInjectionTest.java:821:53:821:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:821:62:821:69 | source(...) | user-provided value | -| LogInjectionTest.java:822:188:822:204 | (...)... | LogInjectionTest.java:822:197:822:204 | source(...) : Object | LogInjectionTest.java:822:188:822:204 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:822:197:822:204 | source(...) | user-provided value | +| LogInjectionTest.java:787:68:787:90 | new Object[] | LogInjectionTest.java:787:82:787:89 | source(...) : Object | LogInjectionTest.java:787:68:787:90 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:787:82:787:89 | source(...) | user-provided value | +| LogInjectionTest.java:788:68:788:84 | (...)... | LogInjectionTest.java:788:77:788:84 | source(...) : Object | LogInjectionTest.java:788:68:788:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:788:77:788:84 | source(...) | user-provided value | +| LogInjectionTest.java:789:53:789:69 | (...)... | LogInjectionTest.java:789:62:789:69 | source(...) : Object | LogInjectionTest.java:789:53:789:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:789:62:789:69 | source(...) | user-provided value | +| LogInjectionTest.java:790:83:790:99 | (...)... | LogInjectionTest.java:790:92:790:99 | source(...) : Object | LogInjectionTest.java:790:83:790:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:790:92:790:99 | source(...) | user-provided value | +| LogInjectionTest.java:791:68:791:84 | (...)... | LogInjectionTest.java:791:77:791:84 | source(...) : Object | LogInjectionTest.java:791:68:791:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:791:77:791:84 | source(...) | user-provided value | +| LogInjectionTest.java:792:53:792:69 | (...)... | LogInjectionTest.java:792:62:792:69 | source(...) : Object | LogInjectionTest.java:792:53:792:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:792:62:792:69 | source(...) | user-provided value | +| LogInjectionTest.java:793:98:793:114 | (...)... | LogInjectionTest.java:793:107:793:114 | source(...) : Object | LogInjectionTest.java:793:98:793:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:793:107:793:114 | source(...) | user-provided value | +| LogInjectionTest.java:794:83:794:99 | (...)... | LogInjectionTest.java:794:92:794:99 | source(...) : Object | LogInjectionTest.java:794:83:794:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:794:92:794:99 | source(...) | user-provided value | +| LogInjectionTest.java:795:68:795:84 | (...)... | LogInjectionTest.java:795:77:795:84 | source(...) : Object | LogInjectionTest.java:795:68:795:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:795:77:795:84 | source(...) | user-provided value | +| LogInjectionTest.java:796:53:796:69 | (...)... | LogInjectionTest.java:796:62:796:69 | source(...) : Object | LogInjectionTest.java:796:53:796:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:796:62:796:69 | source(...) | user-provided value | +| LogInjectionTest.java:797:113:797:129 | (...)... | LogInjectionTest.java:797:122:797:129 | source(...) : Object | LogInjectionTest.java:797:113:797:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:797:122:797:129 | source(...) | user-provided value | +| LogInjectionTest.java:798:98:798:114 | (...)... | LogInjectionTest.java:798:107:798:114 | source(...) : Object | LogInjectionTest.java:798:98:798:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:798:107:798:114 | source(...) | user-provided value | +| LogInjectionTest.java:799:83:799:99 | (...)... | LogInjectionTest.java:799:92:799:99 | source(...) : Object | LogInjectionTest.java:799:83:799:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:799:92:799:99 | source(...) | user-provided value | +| LogInjectionTest.java:800:68:800:84 | (...)... | LogInjectionTest.java:800:77:800:84 | source(...) : Object | LogInjectionTest.java:800:68:800:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:800:77:800:84 | source(...) | user-provided value | +| LogInjectionTest.java:801:53:801:69 | (...)... | LogInjectionTest.java:801:62:801:69 | source(...) : Object | LogInjectionTest.java:801:53:801:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:801:62:801:69 | source(...) | user-provided value | +| LogInjectionTest.java:802:128:802:144 | (...)... | LogInjectionTest.java:802:137:802:144 | source(...) : Object | LogInjectionTest.java:802:128:802:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:802:137:802:144 | source(...) | user-provided value | +| LogInjectionTest.java:803:113:803:129 | (...)... | LogInjectionTest.java:803:122:803:129 | source(...) : Object | LogInjectionTest.java:803:113:803:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:803:122:803:129 | source(...) | user-provided value | +| LogInjectionTest.java:804:98:804:114 | (...)... | LogInjectionTest.java:804:107:804:114 | source(...) : Object | LogInjectionTest.java:804:98:804:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:804:107:804:114 | source(...) | user-provided value | +| LogInjectionTest.java:805:83:805:99 | (...)... | LogInjectionTest.java:805:92:805:99 | source(...) : Object | LogInjectionTest.java:805:83:805:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:805:92:805:99 | source(...) | user-provided value | +| LogInjectionTest.java:806:68:806:84 | (...)... | LogInjectionTest.java:806:77:806:84 | source(...) : Object | LogInjectionTest.java:806:68:806:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:806:77:806:84 | source(...) | user-provided value | +| LogInjectionTest.java:807:53:807:69 | (...)... | LogInjectionTest.java:807:62:807:69 | source(...) : Object | LogInjectionTest.java:807:53:807:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:807:62:807:69 | source(...) | user-provided value | +| LogInjectionTest.java:808:143:808:159 | (...)... | LogInjectionTest.java:808:152:808:159 | source(...) : Object | LogInjectionTest.java:808:143:808:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:808:152:808:159 | source(...) | user-provided value | +| LogInjectionTest.java:809:128:809:144 | (...)... | LogInjectionTest.java:809:137:809:144 | source(...) : Object | LogInjectionTest.java:809:128:809:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:809:137:809:144 | source(...) | user-provided value | +| LogInjectionTest.java:810:113:810:129 | (...)... | LogInjectionTest.java:810:122:810:129 | source(...) : Object | LogInjectionTest.java:810:113:810:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:810:122:810:129 | source(...) | user-provided value | +| LogInjectionTest.java:811:98:811:114 | (...)... | LogInjectionTest.java:811:107:811:114 | source(...) : Object | LogInjectionTest.java:811:98:811:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:811:107:811:114 | source(...) | user-provided value | +| LogInjectionTest.java:812:83:812:99 | (...)... | LogInjectionTest.java:812:92:812:99 | source(...) : Object | LogInjectionTest.java:812:83:812:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:812:92:812:99 | source(...) | user-provided value | +| LogInjectionTest.java:813:68:813:84 | (...)... | LogInjectionTest.java:813:77:813:84 | source(...) : Object | LogInjectionTest.java:813:68:813:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:813:77:813:84 | source(...) | user-provided value | +| LogInjectionTest.java:814:53:814:69 | (...)... | LogInjectionTest.java:814:62:814:69 | source(...) : Object | LogInjectionTest.java:814:53:814:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:814:62:814:69 | source(...) | user-provided value | +| LogInjectionTest.java:815:158:815:174 | (...)... | LogInjectionTest.java:815:167:815:174 | source(...) : Object | LogInjectionTest.java:815:158:815:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:815:167:815:174 | source(...) | user-provided value | +| LogInjectionTest.java:816:143:816:159 | (...)... | LogInjectionTest.java:816:152:816:159 | source(...) : Object | LogInjectionTest.java:816:143:816:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:816:152:816:159 | source(...) | user-provided value | +| LogInjectionTest.java:817:128:817:144 | (...)... | LogInjectionTest.java:817:137:817:144 | source(...) : Object | LogInjectionTest.java:817:128:817:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:817:137:817:144 | source(...) | user-provided value | +| LogInjectionTest.java:818:113:818:129 | (...)... | LogInjectionTest.java:818:122:818:129 | source(...) : Object | LogInjectionTest.java:818:113:818:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:818:122:818:129 | source(...) | user-provided value | +| LogInjectionTest.java:819:98:819:114 | (...)... | LogInjectionTest.java:819:107:819:114 | source(...) : Object | LogInjectionTest.java:819:98:819:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:819:107:819:114 | source(...) | user-provided value | +| LogInjectionTest.java:820:83:820:99 | (...)... | LogInjectionTest.java:820:92:820:99 | source(...) : Object | LogInjectionTest.java:820:83:820:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:820:92:820:99 | source(...) | user-provided value | +| LogInjectionTest.java:821:68:821:84 | (...)... | LogInjectionTest.java:821:77:821:84 | source(...) : Object | LogInjectionTest.java:821:68:821:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:821:77:821:84 | source(...) | user-provided value | +| LogInjectionTest.java:822:53:822:69 | (...)... | LogInjectionTest.java:822:62:822:69 | source(...) : Object | LogInjectionTest.java:822:53:822:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:822:62:822:69 | source(...) | user-provided value | | LogInjectionTest.java:823:173:823:189 | (...)... | LogInjectionTest.java:823:182:823:189 | source(...) : Object | LogInjectionTest.java:823:173:823:189 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:823:182:823:189 | source(...) | user-provided value | | LogInjectionTest.java:824:158:824:174 | (...)... | LogInjectionTest.java:824:167:824:174 | source(...) : Object | LogInjectionTest.java:824:158:824:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:824:167:824:174 | source(...) | user-provided value | | LogInjectionTest.java:825:143:825:159 | (...)... | LogInjectionTest.java:825:152:825:159 | source(...) : Object | LogInjectionTest.java:825:143:825:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:825:152:825:159 | source(...) | user-provided value | @@ -679,65 +669,65 @@ | LogInjectionTest.java:829:83:829:99 | (...)... | LogInjectionTest.java:829:92:829:99 | source(...) : Object | LogInjectionTest.java:829:83:829:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:829:92:829:99 | source(...) | user-provided value | | LogInjectionTest.java:830:68:830:84 | (...)... | LogInjectionTest.java:830:77:830:84 | source(...) : Object | LogInjectionTest.java:830:68:830:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:830:77:830:84 | source(...) | user-provided value | | LogInjectionTest.java:831:53:831:69 | (...)... | LogInjectionTest.java:831:62:831:69 | source(...) : Object | LogInjectionTest.java:831:53:831:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:831:62:831:69 | source(...) | user-provided value | -| LogInjectionTest.java:832:53:832:69 | (...)... | LogInjectionTest.java:832:62:832:69 | source(...) : Object | LogInjectionTest.java:832:53:832:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:832:62:832:69 | source(...) | user-provided value | -| LogInjectionTest.java:833:68:833:89 | (...)... | LogInjectionTest.java:833:82:833:89 | source(...) : Object | LogInjectionTest.java:833:68:833:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:833:82:833:89 | source(...) | user-provided value | -| LogInjectionTest.java:834:53:834:69 | (...)... | LogInjectionTest.java:834:62:834:69 | source(...) : Object | LogInjectionTest.java:834:53:834:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:834:62:834:69 | source(...) | user-provided value | -| LogInjectionTest.java:835:53:835:74 | (...)... | LogInjectionTest.java:835:67:835:74 | source(...) : Object | LogInjectionTest.java:835:53:835:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:835:67:835:74 | source(...) | user-provided value | -| LogInjectionTest.java:836:53:836:74 | (...)... | LogInjectionTest.java:836:67:836:74 | source(...) : Object | LogInjectionTest.java:836:53:836:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:836:67:836:74 | source(...) | user-provided value | -| LogInjectionTest.java:837:38:837:63 | (...)... | LogInjectionTest.java:837:56:837:63 | source(...) : Object | LogInjectionTest.java:837:38:837:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:837:56:837:63 | source(...) | user-provided value | -| LogInjectionTest.java:838:38:838:63 | (...)... | LogInjectionTest.java:838:56:838:63 | source(...) : Object | LogInjectionTest.java:838:38:838:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:838:56:838:63 | source(...) | user-provided value | -| LogInjectionTest.java:839:38:839:55 | (...)... | LogInjectionTest.java:839:48:839:55 | source(...) : Object | LogInjectionTest.java:839:38:839:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:839:48:839:55 | source(...) | user-provided value | -| LogInjectionTest.java:840:38:840:55 | (...)... | LogInjectionTest.java:840:48:840:55 | source(...) : Object | LogInjectionTest.java:840:38:840:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:840:48:840:55 | source(...) | user-provided value | -| LogInjectionTest.java:841:38:841:45 | source(...) | LogInjectionTest.java:841:38:841:45 | source(...) | LogInjectionTest.java:841:38:841:45 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:841:38:841:45 | source(...) | user-provided value | -| LogInjectionTest.java:842:38:842:45 | source(...) | LogInjectionTest.java:842:38:842:45 | source(...) | LogInjectionTest.java:842:38:842:45 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:842:38:842:45 | source(...) | user-provided value | -| LogInjectionTest.java:843:38:843:54 | (...)... | LogInjectionTest.java:843:47:843:54 | source(...) : Object | LogInjectionTest.java:843:38:843:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:843:47:843:54 | source(...) | user-provided value | -| LogInjectionTest.java:844:38:844:54 | (...)... | LogInjectionTest.java:844:47:844:54 | source(...) : Object | LogInjectionTest.java:844:38:844:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:844:47:844:54 | source(...) | user-provided value | -| LogInjectionTest.java:845:53:845:75 | new Object[] | LogInjectionTest.java:845:67:845:74 | source(...) : Object | LogInjectionTest.java:845:53:845:75 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:845:67:845:74 | source(...) | user-provided value | -| LogInjectionTest.java:846:53:846:69 | (...)... | LogInjectionTest.java:846:62:846:69 | source(...) : Object | LogInjectionTest.java:846:53:846:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:846:62:846:69 | source(...) | user-provided value | -| LogInjectionTest.java:847:38:847:54 | (...)... | LogInjectionTest.java:847:47:847:54 | source(...) : Object | LogInjectionTest.java:847:38:847:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:847:47:847:54 | source(...) | user-provided value | -| LogInjectionTest.java:848:68:848:84 | (...)... | LogInjectionTest.java:848:77:848:84 | source(...) : Object | LogInjectionTest.java:848:68:848:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:848:77:848:84 | source(...) | user-provided value | -| LogInjectionTest.java:849:53:849:69 | (...)... | LogInjectionTest.java:849:62:849:69 | source(...) : Object | LogInjectionTest.java:849:53:849:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:849:62:849:69 | source(...) | user-provided value | -| LogInjectionTest.java:850:38:850:54 | (...)... | LogInjectionTest.java:850:47:850:54 | source(...) : Object | LogInjectionTest.java:850:38:850:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:850:47:850:54 | source(...) | user-provided value | -| LogInjectionTest.java:851:83:851:99 | (...)... | LogInjectionTest.java:851:92:851:99 | source(...) : Object | LogInjectionTest.java:851:83:851:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:851:92:851:99 | source(...) | user-provided value | -| LogInjectionTest.java:852:68:852:84 | (...)... | LogInjectionTest.java:852:77:852:84 | source(...) : Object | LogInjectionTest.java:852:68:852:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:852:77:852:84 | source(...) | user-provided value | -| LogInjectionTest.java:853:53:853:69 | (...)... | LogInjectionTest.java:853:62:853:69 | source(...) : Object | LogInjectionTest.java:853:53:853:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:853:62:853:69 | source(...) | user-provided value | +| LogInjectionTest.java:832:188:832:204 | (...)... | LogInjectionTest.java:832:197:832:204 | source(...) : Object | LogInjectionTest.java:832:188:832:204 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:832:197:832:204 | source(...) | user-provided value | +| LogInjectionTest.java:833:173:833:189 | (...)... | LogInjectionTest.java:833:182:833:189 | source(...) : Object | LogInjectionTest.java:833:173:833:189 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:833:182:833:189 | source(...) | user-provided value | +| LogInjectionTest.java:834:158:834:174 | (...)... | LogInjectionTest.java:834:167:834:174 | source(...) : Object | LogInjectionTest.java:834:158:834:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:834:167:834:174 | source(...) | user-provided value | +| LogInjectionTest.java:835:143:835:159 | (...)... | LogInjectionTest.java:835:152:835:159 | source(...) : Object | LogInjectionTest.java:835:143:835:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:835:152:835:159 | source(...) | user-provided value | +| LogInjectionTest.java:836:128:836:144 | (...)... | LogInjectionTest.java:836:137:836:144 | source(...) : Object | LogInjectionTest.java:836:128:836:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:836:137:836:144 | source(...) | user-provided value | +| LogInjectionTest.java:837:113:837:129 | (...)... | LogInjectionTest.java:837:122:837:129 | source(...) : Object | LogInjectionTest.java:837:113:837:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:837:122:837:129 | source(...) | user-provided value | +| LogInjectionTest.java:838:98:838:114 | (...)... | LogInjectionTest.java:838:107:838:114 | source(...) : Object | LogInjectionTest.java:838:98:838:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:838:107:838:114 | source(...) | user-provided value | +| LogInjectionTest.java:839:83:839:99 | (...)... | LogInjectionTest.java:839:92:839:99 | source(...) : Object | LogInjectionTest.java:839:83:839:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:839:92:839:99 | source(...) | user-provided value | +| LogInjectionTest.java:840:68:840:84 | (...)... | LogInjectionTest.java:840:77:840:84 | source(...) : Object | LogInjectionTest.java:840:68:840:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:840:77:840:84 | source(...) | user-provided value | +| LogInjectionTest.java:841:53:841:69 | (...)... | LogInjectionTest.java:841:62:841:69 | source(...) : Object | LogInjectionTest.java:841:53:841:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:841:62:841:69 | source(...) | user-provided value | +| LogInjectionTest.java:842:53:842:69 | (...)... | LogInjectionTest.java:842:62:842:69 | source(...) : Object | LogInjectionTest.java:842:53:842:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:842:62:842:69 | source(...) | user-provided value | +| LogInjectionTest.java:843:68:843:89 | (...)... | LogInjectionTest.java:843:82:843:89 | source(...) : Object | LogInjectionTest.java:843:68:843:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:843:82:843:89 | source(...) | user-provided value | +| LogInjectionTest.java:844:53:844:69 | (...)... | LogInjectionTest.java:844:62:844:69 | source(...) : Object | LogInjectionTest.java:844:53:844:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:844:62:844:69 | source(...) | user-provided value | +| LogInjectionTest.java:845:53:845:74 | (...)... | LogInjectionTest.java:845:67:845:74 | source(...) : Object | LogInjectionTest.java:845:53:845:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:845:67:845:74 | source(...) | user-provided value | +| LogInjectionTest.java:846:53:846:74 | (...)... | LogInjectionTest.java:846:67:846:74 | source(...) : Object | LogInjectionTest.java:846:53:846:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:846:67:846:74 | source(...) | user-provided value | +| LogInjectionTest.java:847:38:847:63 | (...)... | LogInjectionTest.java:847:56:847:63 | source(...) : Object | LogInjectionTest.java:847:38:847:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:847:56:847:63 | source(...) | user-provided value | +| LogInjectionTest.java:848:38:848:63 | (...)... | LogInjectionTest.java:848:56:848:63 | source(...) : Object | LogInjectionTest.java:848:38:848:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:848:56:848:63 | source(...) | user-provided value | +| LogInjectionTest.java:849:38:849:55 | (...)... | LogInjectionTest.java:849:48:849:55 | source(...) : Object | LogInjectionTest.java:849:38:849:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:849:48:849:55 | source(...) | user-provided value | +| LogInjectionTest.java:850:38:850:55 | (...)... | LogInjectionTest.java:850:48:850:55 | source(...) : Object | LogInjectionTest.java:850:38:850:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:850:48:850:55 | source(...) | user-provided value | +| LogInjectionTest.java:851:38:851:45 | source(...) | LogInjectionTest.java:851:38:851:45 | source(...) | LogInjectionTest.java:851:38:851:45 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:851:38:851:45 | source(...) | user-provided value | +| LogInjectionTest.java:852:38:852:45 | source(...) | LogInjectionTest.java:852:38:852:45 | source(...) | LogInjectionTest.java:852:38:852:45 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:852:38:852:45 | source(...) | user-provided value | +| LogInjectionTest.java:853:38:853:54 | (...)... | LogInjectionTest.java:853:47:853:54 | source(...) : Object | LogInjectionTest.java:853:38:853:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:853:47:853:54 | source(...) | user-provided value | | LogInjectionTest.java:854:38:854:54 | (...)... | LogInjectionTest.java:854:47:854:54 | source(...) : Object | LogInjectionTest.java:854:38:854:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:854:47:854:54 | source(...) | user-provided value | -| LogInjectionTest.java:855:98:855:114 | (...)... | LogInjectionTest.java:855:107:855:114 | source(...) : Object | LogInjectionTest.java:855:98:855:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:855:107:855:114 | source(...) | user-provided value | -| LogInjectionTest.java:856:83:856:99 | (...)... | LogInjectionTest.java:856:92:856:99 | source(...) : Object | LogInjectionTest.java:856:83:856:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:856:92:856:99 | source(...) | user-provided value | -| LogInjectionTest.java:857:68:857:84 | (...)... | LogInjectionTest.java:857:77:857:84 | source(...) : Object | LogInjectionTest.java:857:68:857:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:857:77:857:84 | source(...) | user-provided value | -| LogInjectionTest.java:858:53:858:69 | (...)... | LogInjectionTest.java:858:62:858:69 | source(...) : Object | LogInjectionTest.java:858:53:858:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:858:62:858:69 | source(...) | user-provided value | -| LogInjectionTest.java:859:38:859:54 | (...)... | LogInjectionTest.java:859:47:859:54 | source(...) : Object | LogInjectionTest.java:859:38:859:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:859:47:859:54 | source(...) | user-provided value | -| LogInjectionTest.java:860:113:860:129 | (...)... | LogInjectionTest.java:860:122:860:129 | source(...) : Object | LogInjectionTest.java:860:113:860:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:860:122:860:129 | source(...) | user-provided value | -| LogInjectionTest.java:861:98:861:114 | (...)... | LogInjectionTest.java:861:107:861:114 | source(...) : Object | LogInjectionTest.java:861:98:861:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:861:107:861:114 | source(...) | user-provided value | -| LogInjectionTest.java:862:83:862:99 | (...)... | LogInjectionTest.java:862:92:862:99 | source(...) : Object | LogInjectionTest.java:862:83:862:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:862:92:862:99 | source(...) | user-provided value | -| LogInjectionTest.java:863:68:863:84 | (...)... | LogInjectionTest.java:863:77:863:84 | source(...) : Object | LogInjectionTest.java:863:68:863:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:863:77:863:84 | source(...) | user-provided value | -| LogInjectionTest.java:864:53:864:69 | (...)... | LogInjectionTest.java:864:62:864:69 | source(...) : Object | LogInjectionTest.java:864:53:864:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:864:62:864:69 | source(...) | user-provided value | -| LogInjectionTest.java:865:38:865:54 | (...)... | LogInjectionTest.java:865:47:865:54 | source(...) : Object | LogInjectionTest.java:865:38:865:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:865:47:865:54 | source(...) | user-provided value | -| LogInjectionTest.java:866:128:866:144 | (...)... | LogInjectionTest.java:866:137:866:144 | source(...) : Object | LogInjectionTest.java:866:128:866:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:866:137:866:144 | source(...) | user-provided value | -| LogInjectionTest.java:867:113:867:129 | (...)... | LogInjectionTest.java:867:122:867:129 | source(...) : Object | LogInjectionTest.java:867:113:867:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:867:122:867:129 | source(...) | user-provided value | -| LogInjectionTest.java:868:98:868:114 | (...)... | LogInjectionTest.java:868:107:868:114 | source(...) : Object | LogInjectionTest.java:868:98:868:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:868:107:868:114 | source(...) | user-provided value | -| LogInjectionTest.java:869:83:869:99 | (...)... | LogInjectionTest.java:869:92:869:99 | source(...) : Object | LogInjectionTest.java:869:83:869:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:869:92:869:99 | source(...) | user-provided value | -| LogInjectionTest.java:870:68:870:84 | (...)... | LogInjectionTest.java:870:77:870:84 | source(...) : Object | LogInjectionTest.java:870:68:870:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:870:77:870:84 | source(...) | user-provided value | -| LogInjectionTest.java:871:53:871:69 | (...)... | LogInjectionTest.java:871:62:871:69 | source(...) : Object | LogInjectionTest.java:871:53:871:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:871:62:871:69 | source(...) | user-provided value | -| LogInjectionTest.java:872:38:872:54 | (...)... | LogInjectionTest.java:872:47:872:54 | source(...) : Object | LogInjectionTest.java:872:38:872:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:872:47:872:54 | source(...) | user-provided value | -| LogInjectionTest.java:873:143:873:159 | (...)... | LogInjectionTest.java:873:152:873:159 | source(...) : Object | LogInjectionTest.java:873:143:873:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:873:152:873:159 | source(...) | user-provided value | -| LogInjectionTest.java:874:128:874:144 | (...)... | LogInjectionTest.java:874:137:874:144 | source(...) : Object | LogInjectionTest.java:874:128:874:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:874:137:874:144 | source(...) | user-provided value | -| LogInjectionTest.java:875:113:875:129 | (...)... | LogInjectionTest.java:875:122:875:129 | source(...) : Object | LogInjectionTest.java:875:113:875:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:875:122:875:129 | source(...) | user-provided value | -| LogInjectionTest.java:876:98:876:114 | (...)... | LogInjectionTest.java:876:107:876:114 | source(...) : Object | LogInjectionTest.java:876:98:876:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:876:107:876:114 | source(...) | user-provided value | -| LogInjectionTest.java:877:83:877:99 | (...)... | LogInjectionTest.java:877:92:877:99 | source(...) : Object | LogInjectionTest.java:877:83:877:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:877:92:877:99 | source(...) | user-provided value | -| LogInjectionTest.java:878:68:878:84 | (...)... | LogInjectionTest.java:878:77:878:84 | source(...) : Object | LogInjectionTest.java:878:68:878:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:878:77:878:84 | source(...) | user-provided value | -| LogInjectionTest.java:879:53:879:69 | (...)... | LogInjectionTest.java:879:62:879:69 | source(...) : Object | LogInjectionTest.java:879:53:879:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:879:62:879:69 | source(...) | user-provided value | -| LogInjectionTest.java:880:38:880:54 | (...)... | LogInjectionTest.java:880:47:880:54 | source(...) : Object | LogInjectionTest.java:880:38:880:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:880:47:880:54 | source(...) | user-provided value | -| LogInjectionTest.java:881:158:881:174 | (...)... | LogInjectionTest.java:881:167:881:174 | source(...) : Object | LogInjectionTest.java:881:158:881:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:881:167:881:174 | source(...) | user-provided value | -| LogInjectionTest.java:882:143:882:159 | (...)... | LogInjectionTest.java:882:152:882:159 | source(...) : Object | LogInjectionTest.java:882:143:882:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:882:152:882:159 | source(...) | user-provided value | -| LogInjectionTest.java:883:128:883:144 | (...)... | LogInjectionTest.java:883:137:883:144 | source(...) : Object | LogInjectionTest.java:883:128:883:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:883:137:883:144 | source(...) | user-provided value | -| LogInjectionTest.java:884:113:884:129 | (...)... | LogInjectionTest.java:884:122:884:129 | source(...) : Object | LogInjectionTest.java:884:113:884:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:884:122:884:129 | source(...) | user-provided value | -| LogInjectionTest.java:885:98:885:114 | (...)... | LogInjectionTest.java:885:107:885:114 | source(...) : Object | LogInjectionTest.java:885:98:885:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:885:107:885:114 | source(...) | user-provided value | -| LogInjectionTest.java:886:83:886:99 | (...)... | LogInjectionTest.java:886:92:886:99 | source(...) : Object | LogInjectionTest.java:886:83:886:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:886:92:886:99 | source(...) | user-provided value | -| LogInjectionTest.java:887:68:887:84 | (...)... | LogInjectionTest.java:887:77:887:84 | source(...) : Object | LogInjectionTest.java:887:68:887:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:887:77:887:84 | source(...) | user-provided value | -| LogInjectionTest.java:888:53:888:69 | (...)... | LogInjectionTest.java:888:62:888:69 | source(...) : Object | LogInjectionTest.java:888:53:888:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:888:62:888:69 | source(...) | user-provided value | -| LogInjectionTest.java:889:38:889:54 | (...)... | LogInjectionTest.java:889:47:889:54 | source(...) : Object | LogInjectionTest.java:889:38:889:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:889:47:889:54 | source(...) | user-provided value | -| LogInjectionTest.java:890:173:890:189 | (...)... | LogInjectionTest.java:890:182:890:189 | source(...) : Object | LogInjectionTest.java:890:173:890:189 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:890:182:890:189 | source(...) | user-provided value | +| LogInjectionTest.java:855:53:855:75 | new Object[] | LogInjectionTest.java:855:67:855:74 | source(...) : Object | LogInjectionTest.java:855:53:855:75 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:855:67:855:74 | source(...) | user-provided value | +| LogInjectionTest.java:856:53:856:69 | (...)... | LogInjectionTest.java:856:62:856:69 | source(...) : Object | LogInjectionTest.java:856:53:856:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:856:62:856:69 | source(...) | user-provided value | +| LogInjectionTest.java:857:38:857:54 | (...)... | LogInjectionTest.java:857:47:857:54 | source(...) : Object | LogInjectionTest.java:857:38:857:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:857:47:857:54 | source(...) | user-provided value | +| LogInjectionTest.java:858:68:858:84 | (...)... | LogInjectionTest.java:858:77:858:84 | source(...) : Object | LogInjectionTest.java:858:68:858:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:858:77:858:84 | source(...) | user-provided value | +| LogInjectionTest.java:859:53:859:69 | (...)... | LogInjectionTest.java:859:62:859:69 | source(...) : Object | LogInjectionTest.java:859:53:859:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:859:62:859:69 | source(...) | user-provided value | +| LogInjectionTest.java:860:38:860:54 | (...)... | LogInjectionTest.java:860:47:860:54 | source(...) : Object | LogInjectionTest.java:860:38:860:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:860:47:860:54 | source(...) | user-provided value | +| LogInjectionTest.java:861:83:861:99 | (...)... | LogInjectionTest.java:861:92:861:99 | source(...) : Object | LogInjectionTest.java:861:83:861:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:861:92:861:99 | source(...) | user-provided value | +| LogInjectionTest.java:862:68:862:84 | (...)... | LogInjectionTest.java:862:77:862:84 | source(...) : Object | LogInjectionTest.java:862:68:862:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:862:77:862:84 | source(...) | user-provided value | +| LogInjectionTest.java:863:53:863:69 | (...)... | LogInjectionTest.java:863:62:863:69 | source(...) : Object | LogInjectionTest.java:863:53:863:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:863:62:863:69 | source(...) | user-provided value | +| LogInjectionTest.java:864:38:864:54 | (...)... | LogInjectionTest.java:864:47:864:54 | source(...) : Object | LogInjectionTest.java:864:38:864:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:864:47:864:54 | source(...) | user-provided value | +| LogInjectionTest.java:865:98:865:114 | (...)... | LogInjectionTest.java:865:107:865:114 | source(...) : Object | LogInjectionTest.java:865:98:865:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:865:107:865:114 | source(...) | user-provided value | +| LogInjectionTest.java:866:83:866:99 | (...)... | LogInjectionTest.java:866:92:866:99 | source(...) : Object | LogInjectionTest.java:866:83:866:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:866:92:866:99 | source(...) | user-provided value | +| LogInjectionTest.java:867:68:867:84 | (...)... | LogInjectionTest.java:867:77:867:84 | source(...) : Object | LogInjectionTest.java:867:68:867:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:867:77:867:84 | source(...) | user-provided value | +| LogInjectionTest.java:868:53:868:69 | (...)... | LogInjectionTest.java:868:62:868:69 | source(...) : Object | LogInjectionTest.java:868:53:868:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:868:62:868:69 | source(...) | user-provided value | +| LogInjectionTest.java:869:38:869:54 | (...)... | LogInjectionTest.java:869:47:869:54 | source(...) : Object | LogInjectionTest.java:869:38:869:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:869:47:869:54 | source(...) | user-provided value | +| LogInjectionTest.java:870:113:870:129 | (...)... | LogInjectionTest.java:870:122:870:129 | source(...) : Object | LogInjectionTest.java:870:113:870:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:870:122:870:129 | source(...) | user-provided value | +| LogInjectionTest.java:871:98:871:114 | (...)... | LogInjectionTest.java:871:107:871:114 | source(...) : Object | LogInjectionTest.java:871:98:871:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:871:107:871:114 | source(...) | user-provided value | +| LogInjectionTest.java:872:83:872:99 | (...)... | LogInjectionTest.java:872:92:872:99 | source(...) : Object | LogInjectionTest.java:872:83:872:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:872:92:872:99 | source(...) | user-provided value | +| LogInjectionTest.java:873:68:873:84 | (...)... | LogInjectionTest.java:873:77:873:84 | source(...) : Object | LogInjectionTest.java:873:68:873:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:873:77:873:84 | source(...) | user-provided value | +| LogInjectionTest.java:874:53:874:69 | (...)... | LogInjectionTest.java:874:62:874:69 | source(...) : Object | LogInjectionTest.java:874:53:874:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:874:62:874:69 | source(...) | user-provided value | +| LogInjectionTest.java:875:38:875:54 | (...)... | LogInjectionTest.java:875:47:875:54 | source(...) : Object | LogInjectionTest.java:875:38:875:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:875:47:875:54 | source(...) | user-provided value | +| LogInjectionTest.java:876:128:876:144 | (...)... | LogInjectionTest.java:876:137:876:144 | source(...) : Object | LogInjectionTest.java:876:128:876:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:876:137:876:144 | source(...) | user-provided value | +| LogInjectionTest.java:877:113:877:129 | (...)... | LogInjectionTest.java:877:122:877:129 | source(...) : Object | LogInjectionTest.java:877:113:877:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:877:122:877:129 | source(...) | user-provided value | +| LogInjectionTest.java:878:98:878:114 | (...)... | LogInjectionTest.java:878:107:878:114 | source(...) : Object | LogInjectionTest.java:878:98:878:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:878:107:878:114 | source(...) | user-provided value | +| LogInjectionTest.java:879:83:879:99 | (...)... | LogInjectionTest.java:879:92:879:99 | source(...) : Object | LogInjectionTest.java:879:83:879:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:879:92:879:99 | source(...) | user-provided value | +| LogInjectionTest.java:880:68:880:84 | (...)... | LogInjectionTest.java:880:77:880:84 | source(...) : Object | LogInjectionTest.java:880:68:880:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:880:77:880:84 | source(...) | user-provided value | +| LogInjectionTest.java:881:53:881:69 | (...)... | LogInjectionTest.java:881:62:881:69 | source(...) : Object | LogInjectionTest.java:881:53:881:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:881:62:881:69 | source(...) | user-provided value | +| LogInjectionTest.java:882:38:882:54 | (...)... | LogInjectionTest.java:882:47:882:54 | source(...) : Object | LogInjectionTest.java:882:38:882:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:882:47:882:54 | source(...) | user-provided value | +| LogInjectionTest.java:883:143:883:159 | (...)... | LogInjectionTest.java:883:152:883:159 | source(...) : Object | LogInjectionTest.java:883:143:883:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:883:152:883:159 | source(...) | user-provided value | +| LogInjectionTest.java:884:128:884:144 | (...)... | LogInjectionTest.java:884:137:884:144 | source(...) : Object | LogInjectionTest.java:884:128:884:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:884:137:884:144 | source(...) | user-provided value | +| LogInjectionTest.java:885:113:885:129 | (...)... | LogInjectionTest.java:885:122:885:129 | source(...) : Object | LogInjectionTest.java:885:113:885:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:885:122:885:129 | source(...) | user-provided value | +| LogInjectionTest.java:886:98:886:114 | (...)... | LogInjectionTest.java:886:107:886:114 | source(...) : Object | LogInjectionTest.java:886:98:886:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:886:107:886:114 | source(...) | user-provided value | +| LogInjectionTest.java:887:83:887:99 | (...)... | LogInjectionTest.java:887:92:887:99 | source(...) : Object | LogInjectionTest.java:887:83:887:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:887:92:887:99 | source(...) | user-provided value | +| LogInjectionTest.java:888:68:888:84 | (...)... | LogInjectionTest.java:888:77:888:84 | source(...) : Object | LogInjectionTest.java:888:68:888:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:888:77:888:84 | source(...) | user-provided value | +| LogInjectionTest.java:889:53:889:69 | (...)... | LogInjectionTest.java:889:62:889:69 | source(...) : Object | LogInjectionTest.java:889:53:889:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:889:62:889:69 | source(...) | user-provided value | +| LogInjectionTest.java:890:38:890:54 | (...)... | LogInjectionTest.java:890:47:890:54 | source(...) : Object | LogInjectionTest.java:890:38:890:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:890:47:890:54 | source(...) | user-provided value | | LogInjectionTest.java:891:158:891:174 | (...)... | LogInjectionTest.java:891:167:891:174 | source(...) : Object | LogInjectionTest.java:891:158:891:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:891:167:891:174 | source(...) | user-provided value | | LogInjectionTest.java:892:143:892:159 | (...)... | LogInjectionTest.java:892:152:892:159 | source(...) : Object | LogInjectionTest.java:892:143:892:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:892:152:892:159 | source(...) | user-provided value | | LogInjectionTest.java:893:128:893:144 | (...)... | LogInjectionTest.java:893:137:893:144 | source(...) : Object | LogInjectionTest.java:893:128:893:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:893:137:893:144 | source(...) | user-provided value | @@ -747,67 +737,67 @@ | LogInjectionTest.java:897:68:897:84 | (...)... | LogInjectionTest.java:897:77:897:84 | source(...) : Object | LogInjectionTest.java:897:68:897:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:897:77:897:84 | source(...) | user-provided value | | LogInjectionTest.java:898:53:898:69 | (...)... | LogInjectionTest.java:898:62:898:69 | source(...) : Object | LogInjectionTest.java:898:53:898:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:898:62:898:69 | source(...) | user-provided value | | LogInjectionTest.java:899:38:899:54 | (...)... | LogInjectionTest.java:899:47:899:54 | source(...) : Object | LogInjectionTest.java:899:38:899:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:899:47:899:54 | source(...) | user-provided value | -| LogInjectionTest.java:900:38:900:54 | (...)... | LogInjectionTest.java:900:47:900:54 | source(...) : Object | LogInjectionTest.java:900:38:900:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:900:47:900:54 | source(...) | user-provided value | -| LogInjectionTest.java:901:53:901:74 | (...)... | LogInjectionTest.java:901:67:901:74 | source(...) : Object | LogInjectionTest.java:901:53:901:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:901:67:901:74 | source(...) | user-provided value | -| LogInjectionTest.java:902:38:902:54 | (...)... | LogInjectionTest.java:902:47:902:54 | source(...) : Object | LogInjectionTest.java:902:38:902:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:902:47:902:54 | source(...) | user-provided value | -| LogInjectionTest.java:903:38:903:59 | (...)... | LogInjectionTest.java:903:52:903:59 | source(...) : Object | LogInjectionTest.java:903:38:903:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:903:52:903:59 | source(...) | user-provided value | -| LogInjectionTest.java:904:38:904:59 | (...)... | LogInjectionTest.java:904:52:904:59 | source(...) : Object | LogInjectionTest.java:904:38:904:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:904:52:904:59 | source(...) | user-provided value | -| LogInjectionTest.java:905:26:905:48 | (...)... | LogInjectionTest.java:905:41:905:48 | source(...) : Object | LogInjectionTest.java:905:26:905:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:905:41:905:48 | source(...) | user-provided value | -| LogInjectionTest.java:906:26:906:48 | (...)... | LogInjectionTest.java:906:41:906:48 | source(...) : Object | LogInjectionTest.java:906:26:906:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:906:41:906:48 | source(...) | user-provided value | -| LogInjectionTest.java:907:41:907:63 | (...)... | LogInjectionTest.java:907:56:907:63 | source(...) : Object | LogInjectionTest.java:907:41:907:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:907:56:907:63 | source(...) | user-provided value | -| LogInjectionTest.java:908:41:908:63 | (...)... | LogInjectionTest.java:908:56:908:63 | source(...) : Object | LogInjectionTest.java:908:41:908:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:908:56:908:63 | source(...) | user-provided value | -| LogInjectionTest.java:909:41:909:58 | (...)... | LogInjectionTest.java:909:51:909:58 | source(...) : Object | LogInjectionTest.java:909:41:909:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:909:51:909:58 | source(...) | user-provided value | -| LogInjectionTest.java:910:41:910:66 | (...)... | LogInjectionTest.java:910:59:910:66 | source(...) : Object | LogInjectionTest.java:910:41:910:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:910:59:910:66 | source(...) | user-provided value | -| LogInjectionTest.java:911:41:911:66 | (...)... | LogInjectionTest.java:911:59:911:66 | source(...) : Object | LogInjectionTest.java:911:41:911:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:911:59:911:66 | source(...) | user-provided value | -| LogInjectionTest.java:912:41:912:48 | source(...) | LogInjectionTest.java:912:41:912:48 | source(...) | LogInjectionTest.java:912:41:912:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:912:41:912:48 | source(...) | user-provided value | -| LogInjectionTest.java:913:41:913:57 | (...)... | LogInjectionTest.java:913:50:913:57 | source(...) : Object | LogInjectionTest.java:913:41:913:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:913:50:913:57 | source(...) | user-provided value | -| LogInjectionTest.java:914:41:914:57 | (...)... | LogInjectionTest.java:914:50:914:57 | source(...) : Object | LogInjectionTest.java:914:41:914:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:914:50:914:57 | source(...) | user-provided value | -| LogInjectionTest.java:915:56:915:78 | new Object[] | LogInjectionTest.java:915:70:915:77 | source(...) : Object | LogInjectionTest.java:915:56:915:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:915:70:915:77 | source(...) | user-provided value | -| LogInjectionTest.java:916:56:916:72 | (...)... | LogInjectionTest.java:916:65:916:72 | source(...) : Object | LogInjectionTest.java:916:56:916:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:916:65:916:72 | source(...) | user-provided value | -| LogInjectionTest.java:917:41:917:57 | (...)... | LogInjectionTest.java:917:50:917:57 | source(...) : Object | LogInjectionTest.java:917:41:917:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:917:50:917:57 | source(...) | user-provided value | -| LogInjectionTest.java:918:71:918:87 | (...)... | LogInjectionTest.java:918:80:918:87 | source(...) : Object | LogInjectionTest.java:918:71:918:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:918:80:918:87 | source(...) | user-provided value | -| LogInjectionTest.java:919:56:919:72 | (...)... | LogInjectionTest.java:919:65:919:72 | source(...) : Object | LogInjectionTest.java:919:56:919:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:919:65:919:72 | source(...) | user-provided value | -| LogInjectionTest.java:920:41:920:57 | (...)... | LogInjectionTest.java:920:50:920:57 | source(...) : Object | LogInjectionTest.java:920:41:920:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:920:50:920:57 | source(...) | user-provided value | -| LogInjectionTest.java:921:86:921:102 | (...)... | LogInjectionTest.java:921:95:921:102 | source(...) : Object | LogInjectionTest.java:921:86:921:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:921:95:921:102 | source(...) | user-provided value | -| LogInjectionTest.java:922:71:922:87 | (...)... | LogInjectionTest.java:922:80:922:87 | source(...) : Object | LogInjectionTest.java:922:71:922:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:922:80:922:87 | source(...) | user-provided value | -| LogInjectionTest.java:923:56:923:72 | (...)... | LogInjectionTest.java:923:65:923:72 | source(...) : Object | LogInjectionTest.java:923:56:923:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:923:65:923:72 | source(...) | user-provided value | +| LogInjectionTest.java:900:173:900:189 | (...)... | LogInjectionTest.java:900:182:900:189 | source(...) : Object | LogInjectionTest.java:900:173:900:189 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:900:182:900:189 | source(...) | user-provided value | +| LogInjectionTest.java:901:158:901:174 | (...)... | LogInjectionTest.java:901:167:901:174 | source(...) : Object | LogInjectionTest.java:901:158:901:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:901:167:901:174 | source(...) | user-provided value | +| LogInjectionTest.java:902:143:902:159 | (...)... | LogInjectionTest.java:902:152:902:159 | source(...) : Object | LogInjectionTest.java:902:143:902:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:902:152:902:159 | source(...) | user-provided value | +| LogInjectionTest.java:903:128:903:144 | (...)... | LogInjectionTest.java:903:137:903:144 | source(...) : Object | LogInjectionTest.java:903:128:903:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:903:137:903:144 | source(...) | user-provided value | +| LogInjectionTest.java:904:113:904:129 | (...)... | LogInjectionTest.java:904:122:904:129 | source(...) : Object | LogInjectionTest.java:904:113:904:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:904:122:904:129 | source(...) | user-provided value | +| LogInjectionTest.java:905:98:905:114 | (...)... | LogInjectionTest.java:905:107:905:114 | source(...) : Object | LogInjectionTest.java:905:98:905:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:905:107:905:114 | source(...) | user-provided value | +| LogInjectionTest.java:906:83:906:99 | (...)... | LogInjectionTest.java:906:92:906:99 | source(...) : Object | LogInjectionTest.java:906:83:906:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:906:92:906:99 | source(...) | user-provided value | +| LogInjectionTest.java:907:68:907:84 | (...)... | LogInjectionTest.java:907:77:907:84 | source(...) : Object | LogInjectionTest.java:907:68:907:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:907:77:907:84 | source(...) | user-provided value | +| LogInjectionTest.java:908:53:908:69 | (...)... | LogInjectionTest.java:908:62:908:69 | source(...) : Object | LogInjectionTest.java:908:53:908:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:908:62:908:69 | source(...) | user-provided value | +| LogInjectionTest.java:909:38:909:54 | (...)... | LogInjectionTest.java:909:47:909:54 | source(...) : Object | LogInjectionTest.java:909:38:909:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:909:47:909:54 | source(...) | user-provided value | +| LogInjectionTest.java:910:38:910:54 | (...)... | LogInjectionTest.java:910:47:910:54 | source(...) : Object | LogInjectionTest.java:910:38:910:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:910:47:910:54 | source(...) | user-provided value | +| LogInjectionTest.java:911:53:911:74 | (...)... | LogInjectionTest.java:911:67:911:74 | source(...) : Object | LogInjectionTest.java:911:53:911:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:911:67:911:74 | source(...) | user-provided value | +| LogInjectionTest.java:912:38:912:54 | (...)... | LogInjectionTest.java:912:47:912:54 | source(...) : Object | LogInjectionTest.java:912:38:912:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:912:47:912:54 | source(...) | user-provided value | +| LogInjectionTest.java:913:38:913:59 | (...)... | LogInjectionTest.java:913:52:913:59 | source(...) : Object | LogInjectionTest.java:913:38:913:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:913:52:913:59 | source(...) | user-provided value | +| LogInjectionTest.java:914:38:914:59 | (...)... | LogInjectionTest.java:914:52:914:59 | source(...) : Object | LogInjectionTest.java:914:38:914:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:914:52:914:59 | source(...) | user-provided value | +| LogInjectionTest.java:915:26:915:48 | (...)... | LogInjectionTest.java:915:41:915:48 | source(...) : Object | LogInjectionTest.java:915:26:915:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:915:41:915:48 | source(...) | user-provided value | +| LogInjectionTest.java:916:26:916:48 | (...)... | LogInjectionTest.java:916:41:916:48 | source(...) : Object | LogInjectionTest.java:916:26:916:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:916:41:916:48 | source(...) | user-provided value | +| LogInjectionTest.java:917:41:917:63 | (...)... | LogInjectionTest.java:917:56:917:63 | source(...) : Object | LogInjectionTest.java:917:41:917:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:917:56:917:63 | source(...) | user-provided value | +| LogInjectionTest.java:918:41:918:63 | (...)... | LogInjectionTest.java:918:56:918:63 | source(...) : Object | LogInjectionTest.java:918:41:918:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:918:56:918:63 | source(...) | user-provided value | +| LogInjectionTest.java:919:41:919:58 | (...)... | LogInjectionTest.java:919:51:919:58 | source(...) : Object | LogInjectionTest.java:919:41:919:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:919:51:919:58 | source(...) | user-provided value | +| LogInjectionTest.java:920:41:920:66 | (...)... | LogInjectionTest.java:920:59:920:66 | source(...) : Object | LogInjectionTest.java:920:41:920:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:920:59:920:66 | source(...) | user-provided value | +| LogInjectionTest.java:921:41:921:66 | (...)... | LogInjectionTest.java:921:59:921:66 | source(...) : Object | LogInjectionTest.java:921:41:921:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:921:59:921:66 | source(...) | user-provided value | +| LogInjectionTest.java:922:41:922:48 | source(...) | LogInjectionTest.java:922:41:922:48 | source(...) | LogInjectionTest.java:922:41:922:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:922:41:922:48 | source(...) | user-provided value | +| LogInjectionTest.java:923:41:923:57 | (...)... | LogInjectionTest.java:923:50:923:57 | source(...) : Object | LogInjectionTest.java:923:41:923:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:923:50:923:57 | source(...) | user-provided value | | LogInjectionTest.java:924:41:924:57 | (...)... | LogInjectionTest.java:924:50:924:57 | source(...) : Object | LogInjectionTest.java:924:41:924:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:924:50:924:57 | source(...) | user-provided value | -| LogInjectionTest.java:925:101:925:117 | (...)... | LogInjectionTest.java:925:110:925:117 | source(...) : Object | LogInjectionTest.java:925:101:925:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:925:110:925:117 | source(...) | user-provided value | -| LogInjectionTest.java:926:86:926:102 | (...)... | LogInjectionTest.java:926:95:926:102 | source(...) : Object | LogInjectionTest.java:926:86:926:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:926:95:926:102 | source(...) | user-provided value | -| LogInjectionTest.java:927:71:927:87 | (...)... | LogInjectionTest.java:927:80:927:87 | source(...) : Object | LogInjectionTest.java:927:71:927:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:927:80:927:87 | source(...) | user-provided value | -| LogInjectionTest.java:928:56:928:72 | (...)... | LogInjectionTest.java:928:65:928:72 | source(...) : Object | LogInjectionTest.java:928:56:928:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:928:65:928:72 | source(...) | user-provided value | -| LogInjectionTest.java:929:41:929:57 | (...)... | LogInjectionTest.java:929:50:929:57 | source(...) : Object | LogInjectionTest.java:929:41:929:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:929:50:929:57 | source(...) | user-provided value | -| LogInjectionTest.java:930:116:930:132 | (...)... | LogInjectionTest.java:930:125:930:132 | source(...) : Object | LogInjectionTest.java:930:116:930:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:930:125:930:132 | source(...) | user-provided value | -| LogInjectionTest.java:931:101:931:117 | (...)... | LogInjectionTest.java:931:110:931:117 | source(...) : Object | LogInjectionTest.java:931:101:931:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:931:110:931:117 | source(...) | user-provided value | -| LogInjectionTest.java:932:86:932:102 | (...)... | LogInjectionTest.java:932:95:932:102 | source(...) : Object | LogInjectionTest.java:932:86:932:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:932:95:932:102 | source(...) | user-provided value | -| LogInjectionTest.java:933:71:933:87 | (...)... | LogInjectionTest.java:933:80:933:87 | source(...) : Object | LogInjectionTest.java:933:71:933:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:933:80:933:87 | source(...) | user-provided value | -| LogInjectionTest.java:934:56:934:72 | (...)... | LogInjectionTest.java:934:65:934:72 | source(...) : Object | LogInjectionTest.java:934:56:934:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:934:65:934:72 | source(...) | user-provided value | -| LogInjectionTest.java:935:41:935:57 | (...)... | LogInjectionTest.java:935:50:935:57 | source(...) : Object | LogInjectionTest.java:935:41:935:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:935:50:935:57 | source(...) | user-provided value | -| LogInjectionTest.java:936:131:936:147 | (...)... | LogInjectionTest.java:936:140:936:147 | source(...) : Object | LogInjectionTest.java:936:131:936:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:936:140:936:147 | source(...) | user-provided value | -| LogInjectionTest.java:937:116:937:132 | (...)... | LogInjectionTest.java:937:125:937:132 | source(...) : Object | LogInjectionTest.java:937:116:937:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:937:125:937:132 | source(...) | user-provided value | -| LogInjectionTest.java:938:101:938:117 | (...)... | LogInjectionTest.java:938:110:938:117 | source(...) : Object | LogInjectionTest.java:938:101:938:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:938:110:938:117 | source(...) | user-provided value | -| LogInjectionTest.java:939:86:939:102 | (...)... | LogInjectionTest.java:939:95:939:102 | source(...) : Object | LogInjectionTest.java:939:86:939:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:939:95:939:102 | source(...) | user-provided value | -| LogInjectionTest.java:940:71:940:87 | (...)... | LogInjectionTest.java:940:80:940:87 | source(...) : Object | LogInjectionTest.java:940:71:940:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:940:80:940:87 | source(...) | user-provided value | -| LogInjectionTest.java:941:56:941:72 | (...)... | LogInjectionTest.java:941:65:941:72 | source(...) : Object | LogInjectionTest.java:941:56:941:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:941:65:941:72 | source(...) | user-provided value | -| LogInjectionTest.java:942:41:942:57 | (...)... | LogInjectionTest.java:942:50:942:57 | source(...) : Object | LogInjectionTest.java:942:41:942:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:942:50:942:57 | source(...) | user-provided value | -| LogInjectionTest.java:943:146:943:162 | (...)... | LogInjectionTest.java:943:155:943:162 | source(...) : Object | LogInjectionTest.java:943:146:943:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:943:155:943:162 | source(...) | user-provided value | -| LogInjectionTest.java:944:131:944:147 | (...)... | LogInjectionTest.java:944:140:944:147 | source(...) : Object | LogInjectionTest.java:944:131:944:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:944:140:944:147 | source(...) | user-provided value | -| LogInjectionTest.java:945:116:945:132 | (...)... | LogInjectionTest.java:945:125:945:132 | source(...) : Object | LogInjectionTest.java:945:116:945:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:945:125:945:132 | source(...) | user-provided value | -| LogInjectionTest.java:946:101:946:117 | (...)... | LogInjectionTest.java:946:110:946:117 | source(...) : Object | LogInjectionTest.java:946:101:946:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:946:110:946:117 | source(...) | user-provided value | -| LogInjectionTest.java:947:86:947:102 | (...)... | LogInjectionTest.java:947:95:947:102 | source(...) : Object | LogInjectionTest.java:947:86:947:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:947:95:947:102 | source(...) | user-provided value | -| LogInjectionTest.java:948:71:948:87 | (...)... | LogInjectionTest.java:948:80:948:87 | source(...) : Object | LogInjectionTest.java:948:71:948:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:948:80:948:87 | source(...) | user-provided value | -| LogInjectionTest.java:949:56:949:72 | (...)... | LogInjectionTest.java:949:65:949:72 | source(...) : Object | LogInjectionTest.java:949:56:949:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:949:65:949:72 | source(...) | user-provided value | -| LogInjectionTest.java:950:41:950:57 | (...)... | LogInjectionTest.java:950:50:950:57 | source(...) : Object | LogInjectionTest.java:950:41:950:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:950:50:950:57 | source(...) | user-provided value | -| LogInjectionTest.java:951:161:951:177 | (...)... | LogInjectionTest.java:951:170:951:177 | source(...) : Object | LogInjectionTest.java:951:161:951:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:951:170:951:177 | source(...) | user-provided value | -| LogInjectionTest.java:952:146:952:162 | (...)... | LogInjectionTest.java:952:155:952:162 | source(...) : Object | LogInjectionTest.java:952:146:952:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:952:155:952:162 | source(...) | user-provided value | -| LogInjectionTest.java:953:131:953:147 | (...)... | LogInjectionTest.java:953:140:953:147 | source(...) : Object | LogInjectionTest.java:953:131:953:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:953:140:953:147 | source(...) | user-provided value | -| LogInjectionTest.java:954:116:954:132 | (...)... | LogInjectionTest.java:954:125:954:132 | source(...) : Object | LogInjectionTest.java:954:116:954:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:954:125:954:132 | source(...) | user-provided value | -| LogInjectionTest.java:955:101:955:117 | (...)... | LogInjectionTest.java:955:110:955:117 | source(...) : Object | LogInjectionTest.java:955:101:955:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:955:110:955:117 | source(...) | user-provided value | -| LogInjectionTest.java:956:86:956:102 | (...)... | LogInjectionTest.java:956:95:956:102 | source(...) : Object | LogInjectionTest.java:956:86:956:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:956:95:956:102 | source(...) | user-provided value | -| LogInjectionTest.java:957:71:957:87 | (...)... | LogInjectionTest.java:957:80:957:87 | source(...) : Object | LogInjectionTest.java:957:71:957:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:957:80:957:87 | source(...) | user-provided value | -| LogInjectionTest.java:958:56:958:72 | (...)... | LogInjectionTest.java:958:65:958:72 | source(...) : Object | LogInjectionTest.java:958:56:958:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:958:65:958:72 | source(...) | user-provided value | -| LogInjectionTest.java:959:41:959:57 | (...)... | LogInjectionTest.java:959:50:959:57 | source(...) : Object | LogInjectionTest.java:959:41:959:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:959:50:959:57 | source(...) | user-provided value | -| LogInjectionTest.java:960:176:960:192 | (...)... | LogInjectionTest.java:960:185:960:192 | source(...) : Object | LogInjectionTest.java:960:176:960:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:960:185:960:192 | source(...) | user-provided value | +| LogInjectionTest.java:925:56:925:78 | new Object[] | LogInjectionTest.java:925:70:925:77 | source(...) : Object | LogInjectionTest.java:925:56:925:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:925:70:925:77 | source(...) | user-provided value | +| LogInjectionTest.java:926:56:926:72 | (...)... | LogInjectionTest.java:926:65:926:72 | source(...) : Object | LogInjectionTest.java:926:56:926:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:926:65:926:72 | source(...) | user-provided value | +| LogInjectionTest.java:927:41:927:57 | (...)... | LogInjectionTest.java:927:50:927:57 | source(...) : Object | LogInjectionTest.java:927:41:927:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:927:50:927:57 | source(...) | user-provided value | +| LogInjectionTest.java:928:71:928:87 | (...)... | LogInjectionTest.java:928:80:928:87 | source(...) : Object | LogInjectionTest.java:928:71:928:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:928:80:928:87 | source(...) | user-provided value | +| LogInjectionTest.java:929:56:929:72 | (...)... | LogInjectionTest.java:929:65:929:72 | source(...) : Object | LogInjectionTest.java:929:56:929:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:929:65:929:72 | source(...) | user-provided value | +| LogInjectionTest.java:930:41:930:57 | (...)... | LogInjectionTest.java:930:50:930:57 | source(...) : Object | LogInjectionTest.java:930:41:930:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:930:50:930:57 | source(...) | user-provided value | +| LogInjectionTest.java:931:86:931:102 | (...)... | LogInjectionTest.java:931:95:931:102 | source(...) : Object | LogInjectionTest.java:931:86:931:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:931:95:931:102 | source(...) | user-provided value | +| LogInjectionTest.java:932:71:932:87 | (...)... | LogInjectionTest.java:932:80:932:87 | source(...) : Object | LogInjectionTest.java:932:71:932:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:932:80:932:87 | source(...) | user-provided value | +| LogInjectionTest.java:933:56:933:72 | (...)... | LogInjectionTest.java:933:65:933:72 | source(...) : Object | LogInjectionTest.java:933:56:933:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:933:65:933:72 | source(...) | user-provided value | +| LogInjectionTest.java:934:41:934:57 | (...)... | LogInjectionTest.java:934:50:934:57 | source(...) : Object | LogInjectionTest.java:934:41:934:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:934:50:934:57 | source(...) | user-provided value | +| LogInjectionTest.java:935:101:935:117 | (...)... | LogInjectionTest.java:935:110:935:117 | source(...) : Object | LogInjectionTest.java:935:101:935:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:935:110:935:117 | source(...) | user-provided value | +| LogInjectionTest.java:936:86:936:102 | (...)... | LogInjectionTest.java:936:95:936:102 | source(...) : Object | LogInjectionTest.java:936:86:936:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:936:95:936:102 | source(...) | user-provided value | +| LogInjectionTest.java:937:71:937:87 | (...)... | LogInjectionTest.java:937:80:937:87 | source(...) : Object | LogInjectionTest.java:937:71:937:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:937:80:937:87 | source(...) | user-provided value | +| LogInjectionTest.java:938:56:938:72 | (...)... | LogInjectionTest.java:938:65:938:72 | source(...) : Object | LogInjectionTest.java:938:56:938:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:938:65:938:72 | source(...) | user-provided value | +| LogInjectionTest.java:939:41:939:57 | (...)... | LogInjectionTest.java:939:50:939:57 | source(...) : Object | LogInjectionTest.java:939:41:939:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:939:50:939:57 | source(...) | user-provided value | +| LogInjectionTest.java:940:116:940:132 | (...)... | LogInjectionTest.java:940:125:940:132 | source(...) : Object | LogInjectionTest.java:940:116:940:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:940:125:940:132 | source(...) | user-provided value | +| LogInjectionTest.java:941:101:941:117 | (...)... | LogInjectionTest.java:941:110:941:117 | source(...) : Object | LogInjectionTest.java:941:101:941:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:941:110:941:117 | source(...) | user-provided value | +| LogInjectionTest.java:942:86:942:102 | (...)... | LogInjectionTest.java:942:95:942:102 | source(...) : Object | LogInjectionTest.java:942:86:942:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:942:95:942:102 | source(...) | user-provided value | +| LogInjectionTest.java:943:71:943:87 | (...)... | LogInjectionTest.java:943:80:943:87 | source(...) : Object | LogInjectionTest.java:943:71:943:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:943:80:943:87 | source(...) | user-provided value | +| LogInjectionTest.java:944:56:944:72 | (...)... | LogInjectionTest.java:944:65:944:72 | source(...) : Object | LogInjectionTest.java:944:56:944:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:944:65:944:72 | source(...) | user-provided value | +| LogInjectionTest.java:945:41:945:57 | (...)... | LogInjectionTest.java:945:50:945:57 | source(...) : Object | LogInjectionTest.java:945:41:945:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:945:50:945:57 | source(...) | user-provided value | +| LogInjectionTest.java:946:131:946:147 | (...)... | LogInjectionTest.java:946:140:946:147 | source(...) : Object | LogInjectionTest.java:946:131:946:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:946:140:946:147 | source(...) | user-provided value | +| LogInjectionTest.java:947:116:947:132 | (...)... | LogInjectionTest.java:947:125:947:132 | source(...) : Object | LogInjectionTest.java:947:116:947:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:947:125:947:132 | source(...) | user-provided value | +| LogInjectionTest.java:948:101:948:117 | (...)... | LogInjectionTest.java:948:110:948:117 | source(...) : Object | LogInjectionTest.java:948:101:948:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:948:110:948:117 | source(...) | user-provided value | +| LogInjectionTest.java:949:86:949:102 | (...)... | LogInjectionTest.java:949:95:949:102 | source(...) : Object | LogInjectionTest.java:949:86:949:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:949:95:949:102 | source(...) | user-provided value | +| LogInjectionTest.java:950:71:950:87 | (...)... | LogInjectionTest.java:950:80:950:87 | source(...) : Object | LogInjectionTest.java:950:71:950:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:950:80:950:87 | source(...) | user-provided value | +| LogInjectionTest.java:951:56:951:72 | (...)... | LogInjectionTest.java:951:65:951:72 | source(...) : Object | LogInjectionTest.java:951:56:951:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:951:65:951:72 | source(...) | user-provided value | +| LogInjectionTest.java:952:41:952:57 | (...)... | LogInjectionTest.java:952:50:952:57 | source(...) : Object | LogInjectionTest.java:952:41:952:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:952:50:952:57 | source(...) | user-provided value | +| LogInjectionTest.java:953:146:953:162 | (...)... | LogInjectionTest.java:953:155:953:162 | source(...) : Object | LogInjectionTest.java:953:146:953:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:953:155:953:162 | source(...) | user-provided value | +| LogInjectionTest.java:954:131:954:147 | (...)... | LogInjectionTest.java:954:140:954:147 | source(...) : Object | LogInjectionTest.java:954:131:954:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:954:140:954:147 | source(...) | user-provided value | +| LogInjectionTest.java:955:116:955:132 | (...)... | LogInjectionTest.java:955:125:955:132 | source(...) : Object | LogInjectionTest.java:955:116:955:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:955:125:955:132 | source(...) | user-provided value | +| LogInjectionTest.java:956:101:956:117 | (...)... | LogInjectionTest.java:956:110:956:117 | source(...) : Object | LogInjectionTest.java:956:101:956:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:956:110:956:117 | source(...) | user-provided value | +| LogInjectionTest.java:957:86:957:102 | (...)... | LogInjectionTest.java:957:95:957:102 | source(...) : Object | LogInjectionTest.java:957:86:957:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:957:95:957:102 | source(...) | user-provided value | +| LogInjectionTest.java:958:71:958:87 | (...)... | LogInjectionTest.java:958:80:958:87 | source(...) : Object | LogInjectionTest.java:958:71:958:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:958:80:958:87 | source(...) | user-provided value | +| LogInjectionTest.java:959:56:959:72 | (...)... | LogInjectionTest.java:959:65:959:72 | source(...) : Object | LogInjectionTest.java:959:56:959:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:959:65:959:72 | source(...) | user-provided value | +| LogInjectionTest.java:960:41:960:57 | (...)... | LogInjectionTest.java:960:50:960:57 | source(...) : Object | LogInjectionTest.java:960:41:960:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:960:50:960:57 | source(...) | user-provided value | | LogInjectionTest.java:961:161:961:177 | (...)... | LogInjectionTest.java:961:170:961:177 | source(...) : Object | LogInjectionTest.java:961:161:961:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:961:170:961:177 | source(...) | user-provided value | | LogInjectionTest.java:962:146:962:162 | (...)... | LogInjectionTest.java:962:155:962:162 | source(...) : Object | LogInjectionTest.java:962:146:962:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:962:155:962:162 | source(...) | user-provided value | | LogInjectionTest.java:963:131:963:147 | (...)... | LogInjectionTest.java:963:140:963:147 | source(...) : Object | LogInjectionTest.java:963:131:963:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:963:140:963:147 | source(...) | user-provided value | @@ -817,65 +807,65 @@ | LogInjectionTest.java:967:71:967:87 | (...)... | LogInjectionTest.java:967:80:967:87 | source(...) : Object | LogInjectionTest.java:967:71:967:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:967:80:967:87 | source(...) | user-provided value | | LogInjectionTest.java:968:56:968:72 | (...)... | LogInjectionTest.java:968:65:968:72 | source(...) : Object | LogInjectionTest.java:968:56:968:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:968:65:968:72 | source(...) | user-provided value | | LogInjectionTest.java:969:41:969:57 | (...)... | LogInjectionTest.java:969:50:969:57 | source(...) : Object | LogInjectionTest.java:969:41:969:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:969:50:969:57 | source(...) | user-provided value | -| LogInjectionTest.java:970:41:970:57 | (...)... | LogInjectionTest.java:970:50:970:57 | source(...) : Object | LogInjectionTest.java:970:41:970:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:970:50:970:57 | source(...) | user-provided value | -| LogInjectionTest.java:971:56:971:77 | (...)... | LogInjectionTest.java:971:70:971:77 | source(...) : Object | LogInjectionTest.java:971:56:971:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:971:70:971:77 | source(...) | user-provided value | -| LogInjectionTest.java:972:41:972:57 | (...)... | LogInjectionTest.java:972:50:972:57 | source(...) : Object | LogInjectionTest.java:972:41:972:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:972:50:972:57 | source(...) | user-provided value | -| LogInjectionTest.java:973:41:973:62 | (...)... | LogInjectionTest.java:973:55:973:62 | source(...) : Object | LogInjectionTest.java:973:41:973:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:973:55:973:62 | source(...) | user-provided value | -| LogInjectionTest.java:974:41:974:62 | (...)... | LogInjectionTest.java:974:55:974:62 | source(...) : Object | LogInjectionTest.java:974:41:974:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:974:55:974:62 | source(...) | user-provided value | -| LogInjectionTest.java:975:26:975:51 | (...)... | LogInjectionTest.java:975:44:975:51 | source(...) : Object | LogInjectionTest.java:975:26:975:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:975:44:975:51 | source(...) | user-provided value | -| LogInjectionTest.java:976:26:976:51 | (...)... | LogInjectionTest.java:976:44:976:51 | source(...) : Object | LogInjectionTest.java:976:26:976:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:976:44:976:51 | source(...) | user-provided value | -| LogInjectionTest.java:977:26:977:43 | (...)... | LogInjectionTest.java:977:36:977:43 | source(...) : Object | LogInjectionTest.java:977:26:977:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:977:36:977:43 | source(...) | user-provided value | -| LogInjectionTest.java:978:26:978:43 | (...)... | LogInjectionTest.java:978:36:978:43 | source(...) : Object | LogInjectionTest.java:978:26:978:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:978:36:978:43 | source(...) | user-provided value | -| LogInjectionTest.java:979:26:979:33 | source(...) | LogInjectionTest.java:979:26:979:33 | source(...) | LogInjectionTest.java:979:26:979:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:979:26:979:33 | source(...) | user-provided value | -| LogInjectionTest.java:980:26:980:33 | source(...) | LogInjectionTest.java:980:26:980:33 | source(...) | LogInjectionTest.java:980:26:980:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:980:26:980:33 | source(...) | user-provided value | -| LogInjectionTest.java:981:26:981:42 | (...)... | LogInjectionTest.java:981:35:981:42 | source(...) : Object | LogInjectionTest.java:981:26:981:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:981:35:981:42 | source(...) | user-provided value | -| LogInjectionTest.java:982:26:982:42 | (...)... | LogInjectionTest.java:982:35:982:42 | source(...) : Object | LogInjectionTest.java:982:26:982:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:982:35:982:42 | source(...) | user-provided value | -| LogInjectionTest.java:983:41:983:63 | new Object[] | LogInjectionTest.java:983:55:983:62 | source(...) : Object | LogInjectionTest.java:983:41:983:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:983:55:983:62 | source(...) | user-provided value | -| LogInjectionTest.java:984:41:984:57 | (...)... | LogInjectionTest.java:984:50:984:57 | source(...) : Object | LogInjectionTest.java:984:41:984:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:984:50:984:57 | source(...) | user-provided value | -| LogInjectionTest.java:985:26:985:42 | (...)... | LogInjectionTest.java:985:35:985:42 | source(...) : Object | LogInjectionTest.java:985:26:985:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:985:35:985:42 | source(...) | user-provided value | -| LogInjectionTest.java:986:56:986:72 | (...)... | LogInjectionTest.java:986:65:986:72 | source(...) : Object | LogInjectionTest.java:986:56:986:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:986:65:986:72 | source(...) | user-provided value | -| LogInjectionTest.java:987:41:987:57 | (...)... | LogInjectionTest.java:987:50:987:57 | source(...) : Object | LogInjectionTest.java:987:41:987:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:987:50:987:57 | source(...) | user-provided value | -| LogInjectionTest.java:988:26:988:42 | (...)... | LogInjectionTest.java:988:35:988:42 | source(...) : Object | LogInjectionTest.java:988:26:988:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:988:35:988:42 | source(...) | user-provided value | -| LogInjectionTest.java:989:71:989:87 | (...)... | LogInjectionTest.java:989:80:989:87 | source(...) : Object | LogInjectionTest.java:989:71:989:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:989:80:989:87 | source(...) | user-provided value | -| LogInjectionTest.java:990:56:990:72 | (...)... | LogInjectionTest.java:990:65:990:72 | source(...) : Object | LogInjectionTest.java:990:56:990:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:990:65:990:72 | source(...) | user-provided value | -| LogInjectionTest.java:991:41:991:57 | (...)... | LogInjectionTest.java:991:50:991:57 | source(...) : Object | LogInjectionTest.java:991:41:991:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:991:50:991:57 | source(...) | user-provided value | +| LogInjectionTest.java:970:176:970:192 | (...)... | LogInjectionTest.java:970:185:970:192 | source(...) : Object | LogInjectionTest.java:970:176:970:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:970:185:970:192 | source(...) | user-provided value | +| LogInjectionTest.java:971:161:971:177 | (...)... | LogInjectionTest.java:971:170:971:177 | source(...) : Object | LogInjectionTest.java:971:161:971:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:971:170:971:177 | source(...) | user-provided value | +| LogInjectionTest.java:972:146:972:162 | (...)... | LogInjectionTest.java:972:155:972:162 | source(...) : Object | LogInjectionTest.java:972:146:972:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:972:155:972:162 | source(...) | user-provided value | +| LogInjectionTest.java:973:131:973:147 | (...)... | LogInjectionTest.java:973:140:973:147 | source(...) : Object | LogInjectionTest.java:973:131:973:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:973:140:973:147 | source(...) | user-provided value | +| LogInjectionTest.java:974:116:974:132 | (...)... | LogInjectionTest.java:974:125:974:132 | source(...) : Object | LogInjectionTest.java:974:116:974:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:974:125:974:132 | source(...) | user-provided value | +| LogInjectionTest.java:975:101:975:117 | (...)... | LogInjectionTest.java:975:110:975:117 | source(...) : Object | LogInjectionTest.java:975:101:975:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:975:110:975:117 | source(...) | user-provided value | +| LogInjectionTest.java:976:86:976:102 | (...)... | LogInjectionTest.java:976:95:976:102 | source(...) : Object | LogInjectionTest.java:976:86:976:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:976:95:976:102 | source(...) | user-provided value | +| LogInjectionTest.java:977:71:977:87 | (...)... | LogInjectionTest.java:977:80:977:87 | source(...) : Object | LogInjectionTest.java:977:71:977:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:977:80:977:87 | source(...) | user-provided value | +| LogInjectionTest.java:978:56:978:72 | (...)... | LogInjectionTest.java:978:65:978:72 | source(...) : Object | LogInjectionTest.java:978:56:978:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:978:65:978:72 | source(...) | user-provided value | +| LogInjectionTest.java:979:41:979:57 | (...)... | LogInjectionTest.java:979:50:979:57 | source(...) : Object | LogInjectionTest.java:979:41:979:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:979:50:979:57 | source(...) | user-provided value | +| LogInjectionTest.java:980:41:980:57 | (...)... | LogInjectionTest.java:980:50:980:57 | source(...) : Object | LogInjectionTest.java:980:41:980:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:980:50:980:57 | source(...) | user-provided value | +| LogInjectionTest.java:981:56:981:77 | (...)... | LogInjectionTest.java:981:70:981:77 | source(...) : Object | LogInjectionTest.java:981:56:981:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:981:70:981:77 | source(...) | user-provided value | +| LogInjectionTest.java:982:41:982:57 | (...)... | LogInjectionTest.java:982:50:982:57 | source(...) : Object | LogInjectionTest.java:982:41:982:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:982:50:982:57 | source(...) | user-provided value | +| LogInjectionTest.java:983:41:983:62 | (...)... | LogInjectionTest.java:983:55:983:62 | source(...) : Object | LogInjectionTest.java:983:41:983:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:983:55:983:62 | source(...) | user-provided value | +| LogInjectionTest.java:984:41:984:62 | (...)... | LogInjectionTest.java:984:55:984:62 | source(...) : Object | LogInjectionTest.java:984:41:984:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:984:55:984:62 | source(...) | user-provided value | +| LogInjectionTest.java:985:26:985:51 | (...)... | LogInjectionTest.java:985:44:985:51 | source(...) : Object | LogInjectionTest.java:985:26:985:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:985:44:985:51 | source(...) | user-provided value | +| LogInjectionTest.java:986:26:986:51 | (...)... | LogInjectionTest.java:986:44:986:51 | source(...) : Object | LogInjectionTest.java:986:26:986:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:986:44:986:51 | source(...) | user-provided value | +| LogInjectionTest.java:987:26:987:43 | (...)... | LogInjectionTest.java:987:36:987:43 | source(...) : Object | LogInjectionTest.java:987:26:987:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:987:36:987:43 | source(...) | user-provided value | +| LogInjectionTest.java:988:26:988:43 | (...)... | LogInjectionTest.java:988:36:988:43 | source(...) : Object | LogInjectionTest.java:988:26:988:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:988:36:988:43 | source(...) | user-provided value | +| LogInjectionTest.java:989:26:989:33 | source(...) | LogInjectionTest.java:989:26:989:33 | source(...) | LogInjectionTest.java:989:26:989:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:989:26:989:33 | source(...) | user-provided value | +| LogInjectionTest.java:990:26:990:33 | source(...) | LogInjectionTest.java:990:26:990:33 | source(...) | LogInjectionTest.java:990:26:990:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:990:26:990:33 | source(...) | user-provided value | +| LogInjectionTest.java:991:26:991:42 | (...)... | LogInjectionTest.java:991:35:991:42 | source(...) : Object | LogInjectionTest.java:991:26:991:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:991:35:991:42 | source(...) | user-provided value | | LogInjectionTest.java:992:26:992:42 | (...)... | LogInjectionTest.java:992:35:992:42 | source(...) : Object | LogInjectionTest.java:992:26:992:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:992:35:992:42 | source(...) | user-provided value | -| LogInjectionTest.java:993:86:993:102 | (...)... | LogInjectionTest.java:993:95:993:102 | source(...) : Object | LogInjectionTest.java:993:86:993:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:993:95:993:102 | source(...) | user-provided value | -| LogInjectionTest.java:994:71:994:87 | (...)... | LogInjectionTest.java:994:80:994:87 | source(...) : Object | LogInjectionTest.java:994:71:994:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:994:80:994:87 | source(...) | user-provided value | -| LogInjectionTest.java:995:56:995:72 | (...)... | LogInjectionTest.java:995:65:995:72 | source(...) : Object | LogInjectionTest.java:995:56:995:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:995:65:995:72 | source(...) | user-provided value | -| LogInjectionTest.java:996:41:996:57 | (...)... | LogInjectionTest.java:996:50:996:57 | source(...) : Object | LogInjectionTest.java:996:41:996:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:996:50:996:57 | source(...) | user-provided value | -| LogInjectionTest.java:997:26:997:42 | (...)... | LogInjectionTest.java:997:35:997:42 | source(...) : Object | LogInjectionTest.java:997:26:997:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:997:35:997:42 | source(...) | user-provided value | -| LogInjectionTest.java:998:101:998:117 | (...)... | LogInjectionTest.java:998:110:998:117 | source(...) : Object | LogInjectionTest.java:998:101:998:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:998:110:998:117 | source(...) | user-provided value | -| LogInjectionTest.java:999:86:999:102 | (...)... | LogInjectionTest.java:999:95:999:102 | source(...) : Object | LogInjectionTest.java:999:86:999:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:999:95:999:102 | source(...) | user-provided value | -| LogInjectionTest.java:1000:71:1000:87 | (...)... | LogInjectionTest.java:1000:80:1000:87 | source(...) : Object | LogInjectionTest.java:1000:71:1000:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1000:80:1000:87 | source(...) | user-provided value | -| LogInjectionTest.java:1001:56:1001:72 | (...)... | LogInjectionTest.java:1001:65:1001:72 | source(...) : Object | LogInjectionTest.java:1001:56:1001:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1001:65:1001:72 | source(...) | user-provided value | -| LogInjectionTest.java:1002:41:1002:57 | (...)... | LogInjectionTest.java:1002:50:1002:57 | source(...) : Object | LogInjectionTest.java:1002:41:1002:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1002:50:1002:57 | source(...) | user-provided value | -| LogInjectionTest.java:1003:26:1003:42 | (...)... | LogInjectionTest.java:1003:35:1003:42 | source(...) : Object | LogInjectionTest.java:1003:26:1003:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1003:35:1003:42 | source(...) | user-provided value | -| LogInjectionTest.java:1004:116:1004:132 | (...)... | LogInjectionTest.java:1004:125:1004:132 | source(...) : Object | LogInjectionTest.java:1004:116:1004:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1004:125:1004:132 | source(...) | user-provided value | -| LogInjectionTest.java:1005:101:1005:117 | (...)... | LogInjectionTest.java:1005:110:1005:117 | source(...) : Object | LogInjectionTest.java:1005:101:1005:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1005:110:1005:117 | source(...) | user-provided value | -| LogInjectionTest.java:1006:86:1006:102 | (...)... | LogInjectionTest.java:1006:95:1006:102 | source(...) : Object | LogInjectionTest.java:1006:86:1006:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1006:95:1006:102 | source(...) | user-provided value | -| LogInjectionTest.java:1007:71:1007:87 | (...)... | LogInjectionTest.java:1007:80:1007:87 | source(...) : Object | LogInjectionTest.java:1007:71:1007:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1007:80:1007:87 | source(...) | user-provided value | -| LogInjectionTest.java:1008:56:1008:72 | (...)... | LogInjectionTest.java:1008:65:1008:72 | source(...) : Object | LogInjectionTest.java:1008:56:1008:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1008:65:1008:72 | source(...) | user-provided value | -| LogInjectionTest.java:1009:41:1009:57 | (...)... | LogInjectionTest.java:1009:50:1009:57 | source(...) : Object | LogInjectionTest.java:1009:41:1009:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1009:50:1009:57 | source(...) | user-provided value | -| LogInjectionTest.java:1010:26:1010:42 | (...)... | LogInjectionTest.java:1010:35:1010:42 | source(...) : Object | LogInjectionTest.java:1010:26:1010:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1010:35:1010:42 | source(...) | user-provided value | -| LogInjectionTest.java:1011:131:1011:147 | (...)... | LogInjectionTest.java:1011:140:1011:147 | source(...) : Object | LogInjectionTest.java:1011:131:1011:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1011:140:1011:147 | source(...) | user-provided value | -| LogInjectionTest.java:1012:116:1012:132 | (...)... | LogInjectionTest.java:1012:125:1012:132 | source(...) : Object | LogInjectionTest.java:1012:116:1012:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1012:125:1012:132 | source(...) | user-provided value | -| LogInjectionTest.java:1013:101:1013:117 | (...)... | LogInjectionTest.java:1013:110:1013:117 | source(...) : Object | LogInjectionTest.java:1013:101:1013:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1013:110:1013:117 | source(...) | user-provided value | -| LogInjectionTest.java:1014:86:1014:102 | (...)... | LogInjectionTest.java:1014:95:1014:102 | source(...) : Object | LogInjectionTest.java:1014:86:1014:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1014:95:1014:102 | source(...) | user-provided value | -| LogInjectionTest.java:1015:71:1015:87 | (...)... | LogInjectionTest.java:1015:80:1015:87 | source(...) : Object | LogInjectionTest.java:1015:71:1015:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1015:80:1015:87 | source(...) | user-provided value | -| LogInjectionTest.java:1016:56:1016:72 | (...)... | LogInjectionTest.java:1016:65:1016:72 | source(...) : Object | LogInjectionTest.java:1016:56:1016:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1016:65:1016:72 | source(...) | user-provided value | -| LogInjectionTest.java:1017:41:1017:57 | (...)... | LogInjectionTest.java:1017:50:1017:57 | source(...) : Object | LogInjectionTest.java:1017:41:1017:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1017:50:1017:57 | source(...) | user-provided value | -| LogInjectionTest.java:1018:26:1018:42 | (...)... | LogInjectionTest.java:1018:35:1018:42 | source(...) : Object | LogInjectionTest.java:1018:26:1018:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1018:35:1018:42 | source(...) | user-provided value | -| LogInjectionTest.java:1019:146:1019:162 | (...)... | LogInjectionTest.java:1019:155:1019:162 | source(...) : Object | LogInjectionTest.java:1019:146:1019:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1019:155:1019:162 | source(...) | user-provided value | -| LogInjectionTest.java:1020:131:1020:147 | (...)... | LogInjectionTest.java:1020:140:1020:147 | source(...) : Object | LogInjectionTest.java:1020:131:1020:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1020:140:1020:147 | source(...) | user-provided value | -| LogInjectionTest.java:1021:116:1021:132 | (...)... | LogInjectionTest.java:1021:125:1021:132 | source(...) : Object | LogInjectionTest.java:1021:116:1021:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1021:125:1021:132 | source(...) | user-provided value | -| LogInjectionTest.java:1022:101:1022:117 | (...)... | LogInjectionTest.java:1022:110:1022:117 | source(...) : Object | LogInjectionTest.java:1022:101:1022:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1022:110:1022:117 | source(...) | user-provided value | -| LogInjectionTest.java:1023:86:1023:102 | (...)... | LogInjectionTest.java:1023:95:1023:102 | source(...) : Object | LogInjectionTest.java:1023:86:1023:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1023:95:1023:102 | source(...) | user-provided value | -| LogInjectionTest.java:1024:71:1024:87 | (...)... | LogInjectionTest.java:1024:80:1024:87 | source(...) : Object | LogInjectionTest.java:1024:71:1024:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1024:80:1024:87 | source(...) | user-provided value | -| LogInjectionTest.java:1025:56:1025:72 | (...)... | LogInjectionTest.java:1025:65:1025:72 | source(...) : Object | LogInjectionTest.java:1025:56:1025:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1025:65:1025:72 | source(...) | user-provided value | -| LogInjectionTest.java:1026:41:1026:57 | (...)... | LogInjectionTest.java:1026:50:1026:57 | source(...) : Object | LogInjectionTest.java:1026:41:1026:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1026:50:1026:57 | source(...) | user-provided value | -| LogInjectionTest.java:1027:26:1027:42 | (...)... | LogInjectionTest.java:1027:35:1027:42 | source(...) : Object | LogInjectionTest.java:1027:26:1027:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1027:35:1027:42 | source(...) | user-provided value | -| LogInjectionTest.java:1028:161:1028:177 | (...)... | LogInjectionTest.java:1028:170:1028:177 | source(...) : Object | LogInjectionTest.java:1028:161:1028:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1028:170:1028:177 | source(...) | user-provided value | +| LogInjectionTest.java:993:41:993:63 | new Object[] | LogInjectionTest.java:993:55:993:62 | source(...) : Object | LogInjectionTest.java:993:41:993:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:993:55:993:62 | source(...) | user-provided value | +| LogInjectionTest.java:994:41:994:57 | (...)... | LogInjectionTest.java:994:50:994:57 | source(...) : Object | LogInjectionTest.java:994:41:994:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:994:50:994:57 | source(...) | user-provided value | +| LogInjectionTest.java:995:26:995:42 | (...)... | LogInjectionTest.java:995:35:995:42 | source(...) : Object | LogInjectionTest.java:995:26:995:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:995:35:995:42 | source(...) | user-provided value | +| LogInjectionTest.java:996:56:996:72 | (...)... | LogInjectionTest.java:996:65:996:72 | source(...) : Object | LogInjectionTest.java:996:56:996:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:996:65:996:72 | source(...) | user-provided value | +| LogInjectionTest.java:997:41:997:57 | (...)... | LogInjectionTest.java:997:50:997:57 | source(...) : Object | LogInjectionTest.java:997:41:997:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:997:50:997:57 | source(...) | user-provided value | +| LogInjectionTest.java:998:26:998:42 | (...)... | LogInjectionTest.java:998:35:998:42 | source(...) : Object | LogInjectionTest.java:998:26:998:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:998:35:998:42 | source(...) | user-provided value | +| LogInjectionTest.java:999:71:999:87 | (...)... | LogInjectionTest.java:999:80:999:87 | source(...) : Object | LogInjectionTest.java:999:71:999:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:999:80:999:87 | source(...) | user-provided value | +| LogInjectionTest.java:1000:56:1000:72 | (...)... | LogInjectionTest.java:1000:65:1000:72 | source(...) : Object | LogInjectionTest.java:1000:56:1000:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1000:65:1000:72 | source(...) | user-provided value | +| LogInjectionTest.java:1001:41:1001:57 | (...)... | LogInjectionTest.java:1001:50:1001:57 | source(...) : Object | LogInjectionTest.java:1001:41:1001:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1001:50:1001:57 | source(...) | user-provided value | +| LogInjectionTest.java:1002:26:1002:42 | (...)... | LogInjectionTest.java:1002:35:1002:42 | source(...) : Object | LogInjectionTest.java:1002:26:1002:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1002:35:1002:42 | source(...) | user-provided value | +| LogInjectionTest.java:1003:86:1003:102 | (...)... | LogInjectionTest.java:1003:95:1003:102 | source(...) : Object | LogInjectionTest.java:1003:86:1003:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1003:95:1003:102 | source(...) | user-provided value | +| LogInjectionTest.java:1004:71:1004:87 | (...)... | LogInjectionTest.java:1004:80:1004:87 | source(...) : Object | LogInjectionTest.java:1004:71:1004:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1004:80:1004:87 | source(...) | user-provided value | +| LogInjectionTest.java:1005:56:1005:72 | (...)... | LogInjectionTest.java:1005:65:1005:72 | source(...) : Object | LogInjectionTest.java:1005:56:1005:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1005:65:1005:72 | source(...) | user-provided value | +| LogInjectionTest.java:1006:41:1006:57 | (...)... | LogInjectionTest.java:1006:50:1006:57 | source(...) : Object | LogInjectionTest.java:1006:41:1006:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1006:50:1006:57 | source(...) | user-provided value | +| LogInjectionTest.java:1007:26:1007:42 | (...)... | LogInjectionTest.java:1007:35:1007:42 | source(...) : Object | LogInjectionTest.java:1007:26:1007:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1007:35:1007:42 | source(...) | user-provided value | +| LogInjectionTest.java:1008:101:1008:117 | (...)... | LogInjectionTest.java:1008:110:1008:117 | source(...) : Object | LogInjectionTest.java:1008:101:1008:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1008:110:1008:117 | source(...) | user-provided value | +| LogInjectionTest.java:1009:86:1009:102 | (...)... | LogInjectionTest.java:1009:95:1009:102 | source(...) : Object | LogInjectionTest.java:1009:86:1009:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1009:95:1009:102 | source(...) | user-provided value | +| LogInjectionTest.java:1010:71:1010:87 | (...)... | LogInjectionTest.java:1010:80:1010:87 | source(...) : Object | LogInjectionTest.java:1010:71:1010:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1010:80:1010:87 | source(...) | user-provided value | +| LogInjectionTest.java:1011:56:1011:72 | (...)... | LogInjectionTest.java:1011:65:1011:72 | source(...) : Object | LogInjectionTest.java:1011:56:1011:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1011:65:1011:72 | source(...) | user-provided value | +| LogInjectionTest.java:1012:41:1012:57 | (...)... | LogInjectionTest.java:1012:50:1012:57 | source(...) : Object | LogInjectionTest.java:1012:41:1012:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1012:50:1012:57 | source(...) | user-provided value | +| LogInjectionTest.java:1013:26:1013:42 | (...)... | LogInjectionTest.java:1013:35:1013:42 | source(...) : Object | LogInjectionTest.java:1013:26:1013:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1013:35:1013:42 | source(...) | user-provided value | +| LogInjectionTest.java:1014:116:1014:132 | (...)... | LogInjectionTest.java:1014:125:1014:132 | source(...) : Object | LogInjectionTest.java:1014:116:1014:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1014:125:1014:132 | source(...) | user-provided value | +| LogInjectionTest.java:1015:101:1015:117 | (...)... | LogInjectionTest.java:1015:110:1015:117 | source(...) : Object | LogInjectionTest.java:1015:101:1015:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1015:110:1015:117 | source(...) | user-provided value | +| LogInjectionTest.java:1016:86:1016:102 | (...)... | LogInjectionTest.java:1016:95:1016:102 | source(...) : Object | LogInjectionTest.java:1016:86:1016:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1016:95:1016:102 | source(...) | user-provided value | +| LogInjectionTest.java:1017:71:1017:87 | (...)... | LogInjectionTest.java:1017:80:1017:87 | source(...) : Object | LogInjectionTest.java:1017:71:1017:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1017:80:1017:87 | source(...) | user-provided value | +| LogInjectionTest.java:1018:56:1018:72 | (...)... | LogInjectionTest.java:1018:65:1018:72 | source(...) : Object | LogInjectionTest.java:1018:56:1018:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1018:65:1018:72 | source(...) | user-provided value | +| LogInjectionTest.java:1019:41:1019:57 | (...)... | LogInjectionTest.java:1019:50:1019:57 | source(...) : Object | LogInjectionTest.java:1019:41:1019:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1019:50:1019:57 | source(...) | user-provided value | +| LogInjectionTest.java:1020:26:1020:42 | (...)... | LogInjectionTest.java:1020:35:1020:42 | source(...) : Object | LogInjectionTest.java:1020:26:1020:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1020:35:1020:42 | source(...) | user-provided value | +| LogInjectionTest.java:1021:131:1021:147 | (...)... | LogInjectionTest.java:1021:140:1021:147 | source(...) : Object | LogInjectionTest.java:1021:131:1021:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1021:140:1021:147 | source(...) | user-provided value | +| LogInjectionTest.java:1022:116:1022:132 | (...)... | LogInjectionTest.java:1022:125:1022:132 | source(...) : Object | LogInjectionTest.java:1022:116:1022:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1022:125:1022:132 | source(...) | user-provided value | +| LogInjectionTest.java:1023:101:1023:117 | (...)... | LogInjectionTest.java:1023:110:1023:117 | source(...) : Object | LogInjectionTest.java:1023:101:1023:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1023:110:1023:117 | source(...) | user-provided value | +| LogInjectionTest.java:1024:86:1024:102 | (...)... | LogInjectionTest.java:1024:95:1024:102 | source(...) : Object | LogInjectionTest.java:1024:86:1024:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1024:95:1024:102 | source(...) | user-provided value | +| LogInjectionTest.java:1025:71:1025:87 | (...)... | LogInjectionTest.java:1025:80:1025:87 | source(...) : Object | LogInjectionTest.java:1025:71:1025:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1025:80:1025:87 | source(...) | user-provided value | +| LogInjectionTest.java:1026:56:1026:72 | (...)... | LogInjectionTest.java:1026:65:1026:72 | source(...) : Object | LogInjectionTest.java:1026:56:1026:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1026:65:1026:72 | source(...) | user-provided value | +| LogInjectionTest.java:1027:41:1027:57 | (...)... | LogInjectionTest.java:1027:50:1027:57 | source(...) : Object | LogInjectionTest.java:1027:41:1027:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1027:50:1027:57 | source(...) | user-provided value | +| LogInjectionTest.java:1028:26:1028:42 | (...)... | LogInjectionTest.java:1028:35:1028:42 | source(...) : Object | LogInjectionTest.java:1028:26:1028:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1028:35:1028:42 | source(...) | user-provided value | | LogInjectionTest.java:1029:146:1029:162 | (...)... | LogInjectionTest.java:1029:155:1029:162 | source(...) : Object | LogInjectionTest.java:1029:146:1029:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1029:155:1029:162 | source(...) | user-provided value | | LogInjectionTest.java:1030:131:1030:147 | (...)... | LogInjectionTest.java:1030:140:1030:147 | source(...) : Object | LogInjectionTest.java:1030:131:1030:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1030:140:1030:147 | source(...) | user-provided value | | LogInjectionTest.java:1031:116:1031:132 | (...)... | LogInjectionTest.java:1031:125:1031:132 | source(...) : Object | LogInjectionTest.java:1031:116:1031:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1031:125:1031:132 | source(...) | user-provided value | @@ -885,67 +875,67 @@ | LogInjectionTest.java:1035:56:1035:72 | (...)... | LogInjectionTest.java:1035:65:1035:72 | source(...) : Object | LogInjectionTest.java:1035:56:1035:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1035:65:1035:72 | source(...) | user-provided value | | LogInjectionTest.java:1036:41:1036:57 | (...)... | LogInjectionTest.java:1036:50:1036:57 | source(...) : Object | LogInjectionTest.java:1036:41:1036:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1036:50:1036:57 | source(...) | user-provided value | | LogInjectionTest.java:1037:26:1037:42 | (...)... | LogInjectionTest.java:1037:35:1037:42 | source(...) : Object | LogInjectionTest.java:1037:26:1037:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1037:35:1037:42 | source(...) | user-provided value | -| LogInjectionTest.java:1038:26:1038:42 | (...)... | LogInjectionTest.java:1038:35:1038:42 | source(...) : Object | LogInjectionTest.java:1038:26:1038:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1038:35:1038:42 | source(...) | user-provided value | -| LogInjectionTest.java:1039:41:1039:62 | (...)... | LogInjectionTest.java:1039:55:1039:62 | source(...) : Object | LogInjectionTest.java:1039:41:1039:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1039:55:1039:62 | source(...) | user-provided value | -| LogInjectionTest.java:1040:26:1040:42 | (...)... | LogInjectionTest.java:1040:35:1040:42 | source(...) : Object | LogInjectionTest.java:1040:26:1040:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1040:35:1040:42 | source(...) | user-provided value | -| LogInjectionTest.java:1041:26:1041:47 | (...)... | LogInjectionTest.java:1041:40:1041:47 | source(...) : Object | LogInjectionTest.java:1041:26:1041:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1041:40:1041:47 | source(...) | user-provided value | -| LogInjectionTest.java:1042:26:1042:47 | (...)... | LogInjectionTest.java:1042:40:1042:47 | source(...) : Object | LogInjectionTest.java:1042:26:1042:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1042:40:1042:47 | source(...) | user-provided value | -| LogInjectionTest.java:1043:25:1043:47 | (...)... | LogInjectionTest.java:1043:40:1043:47 | source(...) : Object | LogInjectionTest.java:1043:25:1043:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1043:40:1043:47 | source(...) | user-provided value | -| LogInjectionTest.java:1044:25:1044:47 | (...)... | LogInjectionTest.java:1044:40:1044:47 | source(...) : Object | LogInjectionTest.java:1044:25:1044:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1044:40:1044:47 | source(...) | user-provided value | -| LogInjectionTest.java:1045:40:1045:62 | (...)... | LogInjectionTest.java:1045:55:1045:62 | source(...) : Object | LogInjectionTest.java:1045:40:1045:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1045:55:1045:62 | source(...) | user-provided value | -| LogInjectionTest.java:1046:40:1046:62 | (...)... | LogInjectionTest.java:1046:55:1046:62 | source(...) : Object | LogInjectionTest.java:1046:40:1046:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1046:55:1046:62 | source(...) | user-provided value | -| LogInjectionTest.java:1047:40:1047:57 | (...)... | LogInjectionTest.java:1047:50:1047:57 | source(...) : Object | LogInjectionTest.java:1047:40:1047:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1047:50:1047:57 | source(...) | user-provided value | -| LogInjectionTest.java:1048:40:1048:65 | (...)... | LogInjectionTest.java:1048:58:1048:65 | source(...) : Object | LogInjectionTest.java:1048:40:1048:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1048:58:1048:65 | source(...) | user-provided value | -| LogInjectionTest.java:1049:40:1049:65 | (...)... | LogInjectionTest.java:1049:58:1049:65 | source(...) : Object | LogInjectionTest.java:1049:40:1049:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1049:58:1049:65 | source(...) | user-provided value | -| LogInjectionTest.java:1050:40:1050:47 | source(...) | LogInjectionTest.java:1050:40:1050:47 | source(...) | LogInjectionTest.java:1050:40:1050:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1050:40:1050:47 | source(...) | user-provided value | -| LogInjectionTest.java:1051:40:1051:56 | (...)... | LogInjectionTest.java:1051:49:1051:56 | source(...) : Object | LogInjectionTest.java:1051:40:1051:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1051:49:1051:56 | source(...) | user-provided value | -| LogInjectionTest.java:1052:40:1052:56 | (...)... | LogInjectionTest.java:1052:49:1052:56 | source(...) : Object | LogInjectionTest.java:1052:40:1052:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1052:49:1052:56 | source(...) | user-provided value | -| LogInjectionTest.java:1053:55:1053:77 | new Object[] | LogInjectionTest.java:1053:69:1053:76 | source(...) : Object | LogInjectionTest.java:1053:55:1053:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1053:69:1053:76 | source(...) | user-provided value | -| LogInjectionTest.java:1054:55:1054:71 | (...)... | LogInjectionTest.java:1054:64:1054:71 | source(...) : Object | LogInjectionTest.java:1054:55:1054:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1054:64:1054:71 | source(...) | user-provided value | -| LogInjectionTest.java:1055:40:1055:56 | (...)... | LogInjectionTest.java:1055:49:1055:56 | source(...) : Object | LogInjectionTest.java:1055:40:1055:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1055:49:1055:56 | source(...) | user-provided value | -| LogInjectionTest.java:1056:70:1056:86 | (...)... | LogInjectionTest.java:1056:79:1056:86 | source(...) : Object | LogInjectionTest.java:1056:70:1056:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1056:79:1056:86 | source(...) | user-provided value | -| LogInjectionTest.java:1057:55:1057:71 | (...)... | LogInjectionTest.java:1057:64:1057:71 | source(...) : Object | LogInjectionTest.java:1057:55:1057:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1057:64:1057:71 | source(...) | user-provided value | -| LogInjectionTest.java:1058:40:1058:56 | (...)... | LogInjectionTest.java:1058:49:1058:56 | source(...) : Object | LogInjectionTest.java:1058:40:1058:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1058:49:1058:56 | source(...) | user-provided value | -| LogInjectionTest.java:1059:85:1059:101 | (...)... | LogInjectionTest.java:1059:94:1059:101 | source(...) : Object | LogInjectionTest.java:1059:85:1059:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1059:94:1059:101 | source(...) | user-provided value | -| LogInjectionTest.java:1060:70:1060:86 | (...)... | LogInjectionTest.java:1060:79:1060:86 | source(...) : Object | LogInjectionTest.java:1060:70:1060:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1060:79:1060:86 | source(...) | user-provided value | -| LogInjectionTest.java:1061:55:1061:71 | (...)... | LogInjectionTest.java:1061:64:1061:71 | source(...) : Object | LogInjectionTest.java:1061:55:1061:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1061:64:1061:71 | source(...) | user-provided value | +| LogInjectionTest.java:1038:161:1038:177 | (...)... | LogInjectionTest.java:1038:170:1038:177 | source(...) : Object | LogInjectionTest.java:1038:161:1038:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1038:170:1038:177 | source(...) | user-provided value | +| LogInjectionTest.java:1039:146:1039:162 | (...)... | LogInjectionTest.java:1039:155:1039:162 | source(...) : Object | LogInjectionTest.java:1039:146:1039:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1039:155:1039:162 | source(...) | user-provided value | +| LogInjectionTest.java:1040:131:1040:147 | (...)... | LogInjectionTest.java:1040:140:1040:147 | source(...) : Object | LogInjectionTest.java:1040:131:1040:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1040:140:1040:147 | source(...) | user-provided value | +| LogInjectionTest.java:1041:116:1041:132 | (...)... | LogInjectionTest.java:1041:125:1041:132 | source(...) : Object | LogInjectionTest.java:1041:116:1041:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1041:125:1041:132 | source(...) | user-provided value | +| LogInjectionTest.java:1042:101:1042:117 | (...)... | LogInjectionTest.java:1042:110:1042:117 | source(...) : Object | LogInjectionTest.java:1042:101:1042:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1042:110:1042:117 | source(...) | user-provided value | +| LogInjectionTest.java:1043:86:1043:102 | (...)... | LogInjectionTest.java:1043:95:1043:102 | source(...) : Object | LogInjectionTest.java:1043:86:1043:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1043:95:1043:102 | source(...) | user-provided value | +| LogInjectionTest.java:1044:71:1044:87 | (...)... | LogInjectionTest.java:1044:80:1044:87 | source(...) : Object | LogInjectionTest.java:1044:71:1044:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1044:80:1044:87 | source(...) | user-provided value | +| LogInjectionTest.java:1045:56:1045:72 | (...)... | LogInjectionTest.java:1045:65:1045:72 | source(...) : Object | LogInjectionTest.java:1045:56:1045:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1045:65:1045:72 | source(...) | user-provided value | +| LogInjectionTest.java:1046:41:1046:57 | (...)... | LogInjectionTest.java:1046:50:1046:57 | source(...) : Object | LogInjectionTest.java:1046:41:1046:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1046:50:1046:57 | source(...) | user-provided value | +| LogInjectionTest.java:1047:26:1047:42 | (...)... | LogInjectionTest.java:1047:35:1047:42 | source(...) : Object | LogInjectionTest.java:1047:26:1047:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1047:35:1047:42 | source(...) | user-provided value | +| LogInjectionTest.java:1048:26:1048:42 | (...)... | LogInjectionTest.java:1048:35:1048:42 | source(...) : Object | LogInjectionTest.java:1048:26:1048:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1048:35:1048:42 | source(...) | user-provided value | +| LogInjectionTest.java:1049:41:1049:62 | (...)... | LogInjectionTest.java:1049:55:1049:62 | source(...) : Object | LogInjectionTest.java:1049:41:1049:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1049:55:1049:62 | source(...) | user-provided value | +| LogInjectionTest.java:1050:26:1050:42 | (...)... | LogInjectionTest.java:1050:35:1050:42 | source(...) : Object | LogInjectionTest.java:1050:26:1050:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1050:35:1050:42 | source(...) | user-provided value | +| LogInjectionTest.java:1051:26:1051:47 | (...)... | LogInjectionTest.java:1051:40:1051:47 | source(...) : Object | LogInjectionTest.java:1051:26:1051:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1051:40:1051:47 | source(...) | user-provided value | +| LogInjectionTest.java:1052:26:1052:47 | (...)... | LogInjectionTest.java:1052:40:1052:47 | source(...) : Object | LogInjectionTest.java:1052:26:1052:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1052:40:1052:47 | source(...) | user-provided value | +| LogInjectionTest.java:1053:25:1053:47 | (...)... | LogInjectionTest.java:1053:40:1053:47 | source(...) : Object | LogInjectionTest.java:1053:25:1053:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1053:40:1053:47 | source(...) | user-provided value | +| LogInjectionTest.java:1054:25:1054:47 | (...)... | LogInjectionTest.java:1054:40:1054:47 | source(...) : Object | LogInjectionTest.java:1054:25:1054:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1054:40:1054:47 | source(...) | user-provided value | +| LogInjectionTest.java:1055:40:1055:62 | (...)... | LogInjectionTest.java:1055:55:1055:62 | source(...) : Object | LogInjectionTest.java:1055:40:1055:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1055:55:1055:62 | source(...) | user-provided value | +| LogInjectionTest.java:1056:40:1056:62 | (...)... | LogInjectionTest.java:1056:55:1056:62 | source(...) : Object | LogInjectionTest.java:1056:40:1056:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1056:55:1056:62 | source(...) | user-provided value | +| LogInjectionTest.java:1057:40:1057:57 | (...)... | LogInjectionTest.java:1057:50:1057:57 | source(...) : Object | LogInjectionTest.java:1057:40:1057:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1057:50:1057:57 | source(...) | user-provided value | +| LogInjectionTest.java:1058:40:1058:65 | (...)... | LogInjectionTest.java:1058:58:1058:65 | source(...) : Object | LogInjectionTest.java:1058:40:1058:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1058:58:1058:65 | source(...) | user-provided value | +| LogInjectionTest.java:1059:40:1059:65 | (...)... | LogInjectionTest.java:1059:58:1059:65 | source(...) : Object | LogInjectionTest.java:1059:40:1059:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1059:58:1059:65 | source(...) | user-provided value | +| LogInjectionTest.java:1060:40:1060:47 | source(...) | LogInjectionTest.java:1060:40:1060:47 | source(...) | LogInjectionTest.java:1060:40:1060:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1060:40:1060:47 | source(...) | user-provided value | +| LogInjectionTest.java:1061:40:1061:56 | (...)... | LogInjectionTest.java:1061:49:1061:56 | source(...) : Object | LogInjectionTest.java:1061:40:1061:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1061:49:1061:56 | source(...) | user-provided value | | LogInjectionTest.java:1062:40:1062:56 | (...)... | LogInjectionTest.java:1062:49:1062:56 | source(...) : Object | LogInjectionTest.java:1062:40:1062:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1062:49:1062:56 | source(...) | user-provided value | -| LogInjectionTest.java:1063:100:1063:116 | (...)... | LogInjectionTest.java:1063:109:1063:116 | source(...) : Object | LogInjectionTest.java:1063:100:1063:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1063:109:1063:116 | source(...) | user-provided value | -| LogInjectionTest.java:1064:85:1064:101 | (...)... | LogInjectionTest.java:1064:94:1064:101 | source(...) : Object | LogInjectionTest.java:1064:85:1064:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1064:94:1064:101 | source(...) | user-provided value | -| LogInjectionTest.java:1065:70:1065:86 | (...)... | LogInjectionTest.java:1065:79:1065:86 | source(...) : Object | LogInjectionTest.java:1065:70:1065:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1065:79:1065:86 | source(...) | user-provided value | -| LogInjectionTest.java:1066:55:1066:71 | (...)... | LogInjectionTest.java:1066:64:1066:71 | source(...) : Object | LogInjectionTest.java:1066:55:1066:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1066:64:1066:71 | source(...) | user-provided value | -| LogInjectionTest.java:1067:40:1067:56 | (...)... | LogInjectionTest.java:1067:49:1067:56 | source(...) : Object | LogInjectionTest.java:1067:40:1067:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1067:49:1067:56 | source(...) | user-provided value | -| LogInjectionTest.java:1068:115:1068:131 | (...)... | LogInjectionTest.java:1068:124:1068:131 | source(...) : Object | LogInjectionTest.java:1068:115:1068:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1068:124:1068:131 | source(...) | user-provided value | -| LogInjectionTest.java:1069:100:1069:116 | (...)... | LogInjectionTest.java:1069:109:1069:116 | source(...) : Object | LogInjectionTest.java:1069:100:1069:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1069:109:1069:116 | source(...) | user-provided value | -| LogInjectionTest.java:1070:85:1070:101 | (...)... | LogInjectionTest.java:1070:94:1070:101 | source(...) : Object | LogInjectionTest.java:1070:85:1070:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1070:94:1070:101 | source(...) | user-provided value | -| LogInjectionTest.java:1071:70:1071:86 | (...)... | LogInjectionTest.java:1071:79:1071:86 | source(...) : Object | LogInjectionTest.java:1071:70:1071:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1071:79:1071:86 | source(...) | user-provided value | -| LogInjectionTest.java:1072:55:1072:71 | (...)... | LogInjectionTest.java:1072:64:1072:71 | source(...) : Object | LogInjectionTest.java:1072:55:1072:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1072:64:1072:71 | source(...) | user-provided value | -| LogInjectionTest.java:1073:40:1073:56 | (...)... | LogInjectionTest.java:1073:49:1073:56 | source(...) : Object | LogInjectionTest.java:1073:40:1073:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1073:49:1073:56 | source(...) | user-provided value | -| LogInjectionTest.java:1074:130:1074:146 | (...)... | LogInjectionTest.java:1074:139:1074:146 | source(...) : Object | LogInjectionTest.java:1074:130:1074:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1074:139:1074:146 | source(...) | user-provided value | -| LogInjectionTest.java:1075:115:1075:131 | (...)... | LogInjectionTest.java:1075:124:1075:131 | source(...) : Object | LogInjectionTest.java:1075:115:1075:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1075:124:1075:131 | source(...) | user-provided value | -| LogInjectionTest.java:1076:100:1076:116 | (...)... | LogInjectionTest.java:1076:109:1076:116 | source(...) : Object | LogInjectionTest.java:1076:100:1076:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1076:109:1076:116 | source(...) | user-provided value | -| LogInjectionTest.java:1077:85:1077:101 | (...)... | LogInjectionTest.java:1077:94:1077:101 | source(...) : Object | LogInjectionTest.java:1077:85:1077:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1077:94:1077:101 | source(...) | user-provided value | -| LogInjectionTest.java:1078:70:1078:86 | (...)... | LogInjectionTest.java:1078:79:1078:86 | source(...) : Object | LogInjectionTest.java:1078:70:1078:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1078:79:1078:86 | source(...) | user-provided value | -| LogInjectionTest.java:1079:55:1079:71 | (...)... | LogInjectionTest.java:1079:64:1079:71 | source(...) : Object | LogInjectionTest.java:1079:55:1079:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1079:64:1079:71 | source(...) | user-provided value | -| LogInjectionTest.java:1080:40:1080:56 | (...)... | LogInjectionTest.java:1080:49:1080:56 | source(...) : Object | LogInjectionTest.java:1080:40:1080:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1080:49:1080:56 | source(...) | user-provided value | -| LogInjectionTest.java:1081:145:1081:161 | (...)... | LogInjectionTest.java:1081:154:1081:161 | source(...) : Object | LogInjectionTest.java:1081:145:1081:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1081:154:1081:161 | source(...) | user-provided value | -| LogInjectionTest.java:1082:130:1082:146 | (...)... | LogInjectionTest.java:1082:139:1082:146 | source(...) : Object | LogInjectionTest.java:1082:130:1082:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1082:139:1082:146 | source(...) | user-provided value | -| LogInjectionTest.java:1083:115:1083:131 | (...)... | LogInjectionTest.java:1083:124:1083:131 | source(...) : Object | LogInjectionTest.java:1083:115:1083:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1083:124:1083:131 | source(...) | user-provided value | -| LogInjectionTest.java:1084:100:1084:116 | (...)... | LogInjectionTest.java:1084:109:1084:116 | source(...) : Object | LogInjectionTest.java:1084:100:1084:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1084:109:1084:116 | source(...) | user-provided value | -| LogInjectionTest.java:1085:85:1085:101 | (...)... | LogInjectionTest.java:1085:94:1085:101 | source(...) : Object | LogInjectionTest.java:1085:85:1085:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1085:94:1085:101 | source(...) | user-provided value | -| LogInjectionTest.java:1086:70:1086:86 | (...)... | LogInjectionTest.java:1086:79:1086:86 | source(...) : Object | LogInjectionTest.java:1086:70:1086:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1086:79:1086:86 | source(...) | user-provided value | -| LogInjectionTest.java:1087:55:1087:71 | (...)... | LogInjectionTest.java:1087:64:1087:71 | source(...) : Object | LogInjectionTest.java:1087:55:1087:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1087:64:1087:71 | source(...) | user-provided value | -| LogInjectionTest.java:1088:40:1088:56 | (...)... | LogInjectionTest.java:1088:49:1088:56 | source(...) : Object | LogInjectionTest.java:1088:40:1088:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1088:49:1088:56 | source(...) | user-provided value | -| LogInjectionTest.java:1089:160:1089:176 | (...)... | LogInjectionTest.java:1089:169:1089:176 | source(...) : Object | LogInjectionTest.java:1089:160:1089:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1089:169:1089:176 | source(...) | user-provided value | -| LogInjectionTest.java:1090:145:1090:161 | (...)... | LogInjectionTest.java:1090:154:1090:161 | source(...) : Object | LogInjectionTest.java:1090:145:1090:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1090:154:1090:161 | source(...) | user-provided value | -| LogInjectionTest.java:1091:130:1091:146 | (...)... | LogInjectionTest.java:1091:139:1091:146 | source(...) : Object | LogInjectionTest.java:1091:130:1091:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1091:139:1091:146 | source(...) | user-provided value | -| LogInjectionTest.java:1092:115:1092:131 | (...)... | LogInjectionTest.java:1092:124:1092:131 | source(...) : Object | LogInjectionTest.java:1092:115:1092:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1092:124:1092:131 | source(...) | user-provided value | -| LogInjectionTest.java:1093:100:1093:116 | (...)... | LogInjectionTest.java:1093:109:1093:116 | source(...) : Object | LogInjectionTest.java:1093:100:1093:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1093:109:1093:116 | source(...) | user-provided value | -| LogInjectionTest.java:1094:85:1094:101 | (...)... | LogInjectionTest.java:1094:94:1094:101 | source(...) : Object | LogInjectionTest.java:1094:85:1094:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1094:94:1094:101 | source(...) | user-provided value | -| LogInjectionTest.java:1095:70:1095:86 | (...)... | LogInjectionTest.java:1095:79:1095:86 | source(...) : Object | LogInjectionTest.java:1095:70:1095:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1095:79:1095:86 | source(...) | user-provided value | -| LogInjectionTest.java:1096:55:1096:71 | (...)... | LogInjectionTest.java:1096:64:1096:71 | source(...) : Object | LogInjectionTest.java:1096:55:1096:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1096:64:1096:71 | source(...) | user-provided value | -| LogInjectionTest.java:1097:40:1097:56 | (...)... | LogInjectionTest.java:1097:49:1097:56 | source(...) : Object | LogInjectionTest.java:1097:40:1097:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1097:49:1097:56 | source(...) | user-provided value | -| LogInjectionTest.java:1098:175:1098:191 | (...)... | LogInjectionTest.java:1098:184:1098:191 | source(...) : Object | LogInjectionTest.java:1098:175:1098:191 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1098:184:1098:191 | source(...) | user-provided value | +| LogInjectionTest.java:1063:55:1063:77 | new Object[] | LogInjectionTest.java:1063:69:1063:76 | source(...) : Object | LogInjectionTest.java:1063:55:1063:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1063:69:1063:76 | source(...) | user-provided value | +| LogInjectionTest.java:1064:55:1064:71 | (...)... | LogInjectionTest.java:1064:64:1064:71 | source(...) : Object | LogInjectionTest.java:1064:55:1064:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1064:64:1064:71 | source(...) | user-provided value | +| LogInjectionTest.java:1065:40:1065:56 | (...)... | LogInjectionTest.java:1065:49:1065:56 | source(...) : Object | LogInjectionTest.java:1065:40:1065:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1065:49:1065:56 | source(...) | user-provided value | +| LogInjectionTest.java:1066:70:1066:86 | (...)... | LogInjectionTest.java:1066:79:1066:86 | source(...) : Object | LogInjectionTest.java:1066:70:1066:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1066:79:1066:86 | source(...) | user-provided value | +| LogInjectionTest.java:1067:55:1067:71 | (...)... | LogInjectionTest.java:1067:64:1067:71 | source(...) : Object | LogInjectionTest.java:1067:55:1067:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1067:64:1067:71 | source(...) | user-provided value | +| LogInjectionTest.java:1068:40:1068:56 | (...)... | LogInjectionTest.java:1068:49:1068:56 | source(...) : Object | LogInjectionTest.java:1068:40:1068:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1068:49:1068:56 | source(...) | user-provided value | +| LogInjectionTest.java:1069:85:1069:101 | (...)... | LogInjectionTest.java:1069:94:1069:101 | source(...) : Object | LogInjectionTest.java:1069:85:1069:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1069:94:1069:101 | source(...) | user-provided value | +| LogInjectionTest.java:1070:70:1070:86 | (...)... | LogInjectionTest.java:1070:79:1070:86 | source(...) : Object | LogInjectionTest.java:1070:70:1070:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1070:79:1070:86 | source(...) | user-provided value | +| LogInjectionTest.java:1071:55:1071:71 | (...)... | LogInjectionTest.java:1071:64:1071:71 | source(...) : Object | LogInjectionTest.java:1071:55:1071:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1071:64:1071:71 | source(...) | user-provided value | +| LogInjectionTest.java:1072:40:1072:56 | (...)... | LogInjectionTest.java:1072:49:1072:56 | source(...) : Object | LogInjectionTest.java:1072:40:1072:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1072:49:1072:56 | source(...) | user-provided value | +| LogInjectionTest.java:1073:100:1073:116 | (...)... | LogInjectionTest.java:1073:109:1073:116 | source(...) : Object | LogInjectionTest.java:1073:100:1073:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1073:109:1073:116 | source(...) | user-provided value | +| LogInjectionTest.java:1074:85:1074:101 | (...)... | LogInjectionTest.java:1074:94:1074:101 | source(...) : Object | LogInjectionTest.java:1074:85:1074:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1074:94:1074:101 | source(...) | user-provided value | +| LogInjectionTest.java:1075:70:1075:86 | (...)... | LogInjectionTest.java:1075:79:1075:86 | source(...) : Object | LogInjectionTest.java:1075:70:1075:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1075:79:1075:86 | source(...) | user-provided value | +| LogInjectionTest.java:1076:55:1076:71 | (...)... | LogInjectionTest.java:1076:64:1076:71 | source(...) : Object | LogInjectionTest.java:1076:55:1076:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1076:64:1076:71 | source(...) | user-provided value | +| LogInjectionTest.java:1077:40:1077:56 | (...)... | LogInjectionTest.java:1077:49:1077:56 | source(...) : Object | LogInjectionTest.java:1077:40:1077:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1077:49:1077:56 | source(...) | user-provided value | +| LogInjectionTest.java:1078:115:1078:131 | (...)... | LogInjectionTest.java:1078:124:1078:131 | source(...) : Object | LogInjectionTest.java:1078:115:1078:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1078:124:1078:131 | source(...) | user-provided value | +| LogInjectionTest.java:1079:100:1079:116 | (...)... | LogInjectionTest.java:1079:109:1079:116 | source(...) : Object | LogInjectionTest.java:1079:100:1079:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1079:109:1079:116 | source(...) | user-provided value | +| LogInjectionTest.java:1080:85:1080:101 | (...)... | LogInjectionTest.java:1080:94:1080:101 | source(...) : Object | LogInjectionTest.java:1080:85:1080:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1080:94:1080:101 | source(...) | user-provided value | +| LogInjectionTest.java:1081:70:1081:86 | (...)... | LogInjectionTest.java:1081:79:1081:86 | source(...) : Object | LogInjectionTest.java:1081:70:1081:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1081:79:1081:86 | source(...) | user-provided value | +| LogInjectionTest.java:1082:55:1082:71 | (...)... | LogInjectionTest.java:1082:64:1082:71 | source(...) : Object | LogInjectionTest.java:1082:55:1082:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1082:64:1082:71 | source(...) | user-provided value | +| LogInjectionTest.java:1083:40:1083:56 | (...)... | LogInjectionTest.java:1083:49:1083:56 | source(...) : Object | LogInjectionTest.java:1083:40:1083:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1083:49:1083:56 | source(...) | user-provided value | +| LogInjectionTest.java:1084:130:1084:146 | (...)... | LogInjectionTest.java:1084:139:1084:146 | source(...) : Object | LogInjectionTest.java:1084:130:1084:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1084:139:1084:146 | source(...) | user-provided value | +| LogInjectionTest.java:1085:115:1085:131 | (...)... | LogInjectionTest.java:1085:124:1085:131 | source(...) : Object | LogInjectionTest.java:1085:115:1085:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1085:124:1085:131 | source(...) | user-provided value | +| LogInjectionTest.java:1086:100:1086:116 | (...)... | LogInjectionTest.java:1086:109:1086:116 | source(...) : Object | LogInjectionTest.java:1086:100:1086:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1086:109:1086:116 | source(...) | user-provided value | +| LogInjectionTest.java:1087:85:1087:101 | (...)... | LogInjectionTest.java:1087:94:1087:101 | source(...) : Object | LogInjectionTest.java:1087:85:1087:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1087:94:1087:101 | source(...) | user-provided value | +| LogInjectionTest.java:1088:70:1088:86 | (...)... | LogInjectionTest.java:1088:79:1088:86 | source(...) : Object | LogInjectionTest.java:1088:70:1088:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1088:79:1088:86 | source(...) | user-provided value | +| LogInjectionTest.java:1089:55:1089:71 | (...)... | LogInjectionTest.java:1089:64:1089:71 | source(...) : Object | LogInjectionTest.java:1089:55:1089:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1089:64:1089:71 | source(...) | user-provided value | +| LogInjectionTest.java:1090:40:1090:56 | (...)... | LogInjectionTest.java:1090:49:1090:56 | source(...) : Object | LogInjectionTest.java:1090:40:1090:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1090:49:1090:56 | source(...) | user-provided value | +| LogInjectionTest.java:1091:145:1091:161 | (...)... | LogInjectionTest.java:1091:154:1091:161 | source(...) : Object | LogInjectionTest.java:1091:145:1091:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1091:154:1091:161 | source(...) | user-provided value | +| LogInjectionTest.java:1092:130:1092:146 | (...)... | LogInjectionTest.java:1092:139:1092:146 | source(...) : Object | LogInjectionTest.java:1092:130:1092:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1092:139:1092:146 | source(...) | user-provided value | +| LogInjectionTest.java:1093:115:1093:131 | (...)... | LogInjectionTest.java:1093:124:1093:131 | source(...) : Object | LogInjectionTest.java:1093:115:1093:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1093:124:1093:131 | source(...) | user-provided value | +| LogInjectionTest.java:1094:100:1094:116 | (...)... | LogInjectionTest.java:1094:109:1094:116 | source(...) : Object | LogInjectionTest.java:1094:100:1094:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1094:109:1094:116 | source(...) | user-provided value | +| LogInjectionTest.java:1095:85:1095:101 | (...)... | LogInjectionTest.java:1095:94:1095:101 | source(...) : Object | LogInjectionTest.java:1095:85:1095:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1095:94:1095:101 | source(...) | user-provided value | +| LogInjectionTest.java:1096:70:1096:86 | (...)... | LogInjectionTest.java:1096:79:1096:86 | source(...) : Object | LogInjectionTest.java:1096:70:1096:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1096:79:1096:86 | source(...) | user-provided value | +| LogInjectionTest.java:1097:55:1097:71 | (...)... | LogInjectionTest.java:1097:64:1097:71 | source(...) : Object | LogInjectionTest.java:1097:55:1097:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1097:64:1097:71 | source(...) | user-provided value | +| LogInjectionTest.java:1098:40:1098:56 | (...)... | LogInjectionTest.java:1098:49:1098:56 | source(...) : Object | LogInjectionTest.java:1098:40:1098:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1098:49:1098:56 | source(...) | user-provided value | | LogInjectionTest.java:1099:160:1099:176 | (...)... | LogInjectionTest.java:1099:169:1099:176 | source(...) : Object | LogInjectionTest.java:1099:160:1099:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1099:169:1099:176 | source(...) | user-provided value | | LogInjectionTest.java:1100:145:1100:161 | (...)... | LogInjectionTest.java:1100:154:1100:161 | source(...) : Object | LogInjectionTest.java:1100:145:1100:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1100:154:1100:161 | source(...) | user-provided value | | LogInjectionTest.java:1101:130:1101:146 | (...)... | LogInjectionTest.java:1101:139:1101:146 | source(...) : Object | LogInjectionTest.java:1101:130:1101:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1101:139:1101:146 | source(...) | user-provided value | @@ -955,65 +945,65 @@ | LogInjectionTest.java:1105:70:1105:86 | (...)... | LogInjectionTest.java:1105:79:1105:86 | source(...) : Object | LogInjectionTest.java:1105:70:1105:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1105:79:1105:86 | source(...) | user-provided value | | LogInjectionTest.java:1106:55:1106:71 | (...)... | LogInjectionTest.java:1106:64:1106:71 | source(...) : Object | LogInjectionTest.java:1106:55:1106:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1106:64:1106:71 | source(...) | user-provided value | | LogInjectionTest.java:1107:40:1107:56 | (...)... | LogInjectionTest.java:1107:49:1107:56 | source(...) : Object | LogInjectionTest.java:1107:40:1107:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1107:49:1107:56 | source(...) | user-provided value | -| LogInjectionTest.java:1108:40:1108:56 | (...)... | LogInjectionTest.java:1108:49:1108:56 | source(...) : Object | LogInjectionTest.java:1108:40:1108:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1108:49:1108:56 | source(...) | user-provided value | -| LogInjectionTest.java:1109:55:1109:76 | (...)... | LogInjectionTest.java:1109:69:1109:76 | source(...) : Object | LogInjectionTest.java:1109:55:1109:76 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1109:69:1109:76 | source(...) | user-provided value | -| LogInjectionTest.java:1110:40:1110:56 | (...)... | LogInjectionTest.java:1110:49:1110:56 | source(...) : Object | LogInjectionTest.java:1110:40:1110:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1110:49:1110:56 | source(...) | user-provided value | -| LogInjectionTest.java:1111:40:1111:61 | (...)... | LogInjectionTest.java:1111:54:1111:61 | source(...) : Object | LogInjectionTest.java:1111:40:1111:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1111:54:1111:61 | source(...) | user-provided value | -| LogInjectionTest.java:1112:40:1112:61 | (...)... | LogInjectionTest.java:1112:54:1112:61 | source(...) : Object | LogInjectionTest.java:1112:40:1112:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1112:54:1112:61 | source(...) | user-provided value | -| LogInjectionTest.java:1113:25:1113:50 | (...)... | LogInjectionTest.java:1113:43:1113:50 | source(...) : Object | LogInjectionTest.java:1113:25:1113:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1113:43:1113:50 | source(...) | user-provided value | -| LogInjectionTest.java:1114:25:1114:50 | (...)... | LogInjectionTest.java:1114:43:1114:50 | source(...) : Object | LogInjectionTest.java:1114:25:1114:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1114:43:1114:50 | source(...) | user-provided value | -| LogInjectionTest.java:1115:25:1115:42 | (...)... | LogInjectionTest.java:1115:35:1115:42 | source(...) : Object | LogInjectionTest.java:1115:25:1115:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1115:35:1115:42 | source(...) | user-provided value | -| LogInjectionTest.java:1116:25:1116:42 | (...)... | LogInjectionTest.java:1116:35:1116:42 | source(...) : Object | LogInjectionTest.java:1116:25:1116:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1116:35:1116:42 | source(...) | user-provided value | -| LogInjectionTest.java:1117:25:1117:32 | source(...) | LogInjectionTest.java:1117:25:1117:32 | source(...) | LogInjectionTest.java:1117:25:1117:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1117:25:1117:32 | source(...) | user-provided value | -| LogInjectionTest.java:1118:25:1118:32 | source(...) | LogInjectionTest.java:1118:25:1118:32 | source(...) | LogInjectionTest.java:1118:25:1118:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1118:25:1118:32 | source(...) | user-provided value | -| LogInjectionTest.java:1119:25:1119:41 | (...)... | LogInjectionTest.java:1119:34:1119:41 | source(...) : Object | LogInjectionTest.java:1119:25:1119:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1119:34:1119:41 | source(...) | user-provided value | -| LogInjectionTest.java:1120:25:1120:41 | (...)... | LogInjectionTest.java:1120:34:1120:41 | source(...) : Object | LogInjectionTest.java:1120:25:1120:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1120:34:1120:41 | source(...) | user-provided value | -| LogInjectionTest.java:1121:40:1121:62 | new Object[] | LogInjectionTest.java:1121:54:1121:61 | source(...) : Object | LogInjectionTest.java:1121:40:1121:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1121:54:1121:61 | source(...) | user-provided value | -| LogInjectionTest.java:1122:40:1122:56 | (...)... | LogInjectionTest.java:1122:49:1122:56 | source(...) : Object | LogInjectionTest.java:1122:40:1122:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1122:49:1122:56 | source(...) | user-provided value | -| LogInjectionTest.java:1123:25:1123:41 | (...)... | LogInjectionTest.java:1123:34:1123:41 | source(...) : Object | LogInjectionTest.java:1123:25:1123:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1123:34:1123:41 | source(...) | user-provided value | -| LogInjectionTest.java:1124:55:1124:71 | (...)... | LogInjectionTest.java:1124:64:1124:71 | source(...) : Object | LogInjectionTest.java:1124:55:1124:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1124:64:1124:71 | source(...) | user-provided value | -| LogInjectionTest.java:1125:40:1125:56 | (...)... | LogInjectionTest.java:1125:49:1125:56 | source(...) : Object | LogInjectionTest.java:1125:40:1125:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1125:49:1125:56 | source(...) | user-provided value | -| LogInjectionTest.java:1126:25:1126:41 | (...)... | LogInjectionTest.java:1126:34:1126:41 | source(...) : Object | LogInjectionTest.java:1126:25:1126:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1126:34:1126:41 | source(...) | user-provided value | -| LogInjectionTest.java:1127:70:1127:86 | (...)... | LogInjectionTest.java:1127:79:1127:86 | source(...) : Object | LogInjectionTest.java:1127:70:1127:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1127:79:1127:86 | source(...) | user-provided value | -| LogInjectionTest.java:1128:55:1128:71 | (...)... | LogInjectionTest.java:1128:64:1128:71 | source(...) : Object | LogInjectionTest.java:1128:55:1128:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1128:64:1128:71 | source(...) | user-provided value | -| LogInjectionTest.java:1129:40:1129:56 | (...)... | LogInjectionTest.java:1129:49:1129:56 | source(...) : Object | LogInjectionTest.java:1129:40:1129:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1129:49:1129:56 | source(...) | user-provided value | +| LogInjectionTest.java:1108:175:1108:191 | (...)... | LogInjectionTest.java:1108:184:1108:191 | source(...) : Object | LogInjectionTest.java:1108:175:1108:191 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1108:184:1108:191 | source(...) | user-provided value | +| LogInjectionTest.java:1109:160:1109:176 | (...)... | LogInjectionTest.java:1109:169:1109:176 | source(...) : Object | LogInjectionTest.java:1109:160:1109:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1109:169:1109:176 | source(...) | user-provided value | +| LogInjectionTest.java:1110:145:1110:161 | (...)... | LogInjectionTest.java:1110:154:1110:161 | source(...) : Object | LogInjectionTest.java:1110:145:1110:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1110:154:1110:161 | source(...) | user-provided value | +| LogInjectionTest.java:1111:130:1111:146 | (...)... | LogInjectionTest.java:1111:139:1111:146 | source(...) : Object | LogInjectionTest.java:1111:130:1111:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1111:139:1111:146 | source(...) | user-provided value | +| LogInjectionTest.java:1112:115:1112:131 | (...)... | LogInjectionTest.java:1112:124:1112:131 | source(...) : Object | LogInjectionTest.java:1112:115:1112:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1112:124:1112:131 | source(...) | user-provided value | +| LogInjectionTest.java:1113:100:1113:116 | (...)... | LogInjectionTest.java:1113:109:1113:116 | source(...) : Object | LogInjectionTest.java:1113:100:1113:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1113:109:1113:116 | source(...) | user-provided value | +| LogInjectionTest.java:1114:85:1114:101 | (...)... | LogInjectionTest.java:1114:94:1114:101 | source(...) : Object | LogInjectionTest.java:1114:85:1114:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1114:94:1114:101 | source(...) | user-provided value | +| LogInjectionTest.java:1115:70:1115:86 | (...)... | LogInjectionTest.java:1115:79:1115:86 | source(...) : Object | LogInjectionTest.java:1115:70:1115:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1115:79:1115:86 | source(...) | user-provided value | +| LogInjectionTest.java:1116:55:1116:71 | (...)... | LogInjectionTest.java:1116:64:1116:71 | source(...) : Object | LogInjectionTest.java:1116:55:1116:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1116:64:1116:71 | source(...) | user-provided value | +| LogInjectionTest.java:1117:40:1117:56 | (...)... | LogInjectionTest.java:1117:49:1117:56 | source(...) : Object | LogInjectionTest.java:1117:40:1117:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1117:49:1117:56 | source(...) | user-provided value | +| LogInjectionTest.java:1118:40:1118:56 | (...)... | LogInjectionTest.java:1118:49:1118:56 | source(...) : Object | LogInjectionTest.java:1118:40:1118:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1118:49:1118:56 | source(...) | user-provided value | +| LogInjectionTest.java:1119:55:1119:76 | (...)... | LogInjectionTest.java:1119:69:1119:76 | source(...) : Object | LogInjectionTest.java:1119:55:1119:76 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1119:69:1119:76 | source(...) | user-provided value | +| LogInjectionTest.java:1120:40:1120:56 | (...)... | LogInjectionTest.java:1120:49:1120:56 | source(...) : Object | LogInjectionTest.java:1120:40:1120:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1120:49:1120:56 | source(...) | user-provided value | +| LogInjectionTest.java:1121:40:1121:61 | (...)... | LogInjectionTest.java:1121:54:1121:61 | source(...) : Object | LogInjectionTest.java:1121:40:1121:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1121:54:1121:61 | source(...) | user-provided value | +| LogInjectionTest.java:1122:40:1122:61 | (...)... | LogInjectionTest.java:1122:54:1122:61 | source(...) : Object | LogInjectionTest.java:1122:40:1122:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1122:54:1122:61 | source(...) | user-provided value | +| LogInjectionTest.java:1123:25:1123:50 | (...)... | LogInjectionTest.java:1123:43:1123:50 | source(...) : Object | LogInjectionTest.java:1123:25:1123:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1123:43:1123:50 | source(...) | user-provided value | +| LogInjectionTest.java:1124:25:1124:50 | (...)... | LogInjectionTest.java:1124:43:1124:50 | source(...) : Object | LogInjectionTest.java:1124:25:1124:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1124:43:1124:50 | source(...) | user-provided value | +| LogInjectionTest.java:1125:25:1125:42 | (...)... | LogInjectionTest.java:1125:35:1125:42 | source(...) : Object | LogInjectionTest.java:1125:25:1125:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1125:35:1125:42 | source(...) | user-provided value | +| LogInjectionTest.java:1126:25:1126:42 | (...)... | LogInjectionTest.java:1126:35:1126:42 | source(...) : Object | LogInjectionTest.java:1126:25:1126:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1126:35:1126:42 | source(...) | user-provided value | +| LogInjectionTest.java:1127:25:1127:32 | source(...) | LogInjectionTest.java:1127:25:1127:32 | source(...) | LogInjectionTest.java:1127:25:1127:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1127:25:1127:32 | source(...) | user-provided value | +| LogInjectionTest.java:1128:25:1128:32 | source(...) | LogInjectionTest.java:1128:25:1128:32 | source(...) | LogInjectionTest.java:1128:25:1128:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1128:25:1128:32 | source(...) | user-provided value | +| LogInjectionTest.java:1129:25:1129:41 | (...)... | LogInjectionTest.java:1129:34:1129:41 | source(...) : Object | LogInjectionTest.java:1129:25:1129:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1129:34:1129:41 | source(...) | user-provided value | | LogInjectionTest.java:1130:25:1130:41 | (...)... | LogInjectionTest.java:1130:34:1130:41 | source(...) : Object | LogInjectionTest.java:1130:25:1130:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1130:34:1130:41 | source(...) | user-provided value | -| LogInjectionTest.java:1131:85:1131:101 | (...)... | LogInjectionTest.java:1131:94:1131:101 | source(...) : Object | LogInjectionTest.java:1131:85:1131:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1131:94:1131:101 | source(...) | user-provided value | -| LogInjectionTest.java:1132:70:1132:86 | (...)... | LogInjectionTest.java:1132:79:1132:86 | source(...) : Object | LogInjectionTest.java:1132:70:1132:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1132:79:1132:86 | source(...) | user-provided value | -| LogInjectionTest.java:1133:55:1133:71 | (...)... | LogInjectionTest.java:1133:64:1133:71 | source(...) : Object | LogInjectionTest.java:1133:55:1133:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1133:64:1133:71 | source(...) | user-provided value | -| LogInjectionTest.java:1134:40:1134:56 | (...)... | LogInjectionTest.java:1134:49:1134:56 | source(...) : Object | LogInjectionTest.java:1134:40:1134:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1134:49:1134:56 | source(...) | user-provided value | -| LogInjectionTest.java:1135:25:1135:41 | (...)... | LogInjectionTest.java:1135:34:1135:41 | source(...) : Object | LogInjectionTest.java:1135:25:1135:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1135:34:1135:41 | source(...) | user-provided value | -| LogInjectionTest.java:1136:100:1136:116 | (...)... | LogInjectionTest.java:1136:109:1136:116 | source(...) : Object | LogInjectionTest.java:1136:100:1136:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1136:109:1136:116 | source(...) | user-provided value | -| LogInjectionTest.java:1137:85:1137:101 | (...)... | LogInjectionTest.java:1137:94:1137:101 | source(...) : Object | LogInjectionTest.java:1137:85:1137:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1137:94:1137:101 | source(...) | user-provided value | -| LogInjectionTest.java:1138:70:1138:86 | (...)... | LogInjectionTest.java:1138:79:1138:86 | source(...) : Object | LogInjectionTest.java:1138:70:1138:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1138:79:1138:86 | source(...) | user-provided value | -| LogInjectionTest.java:1139:55:1139:71 | (...)... | LogInjectionTest.java:1139:64:1139:71 | source(...) : Object | LogInjectionTest.java:1139:55:1139:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1139:64:1139:71 | source(...) | user-provided value | -| LogInjectionTest.java:1140:40:1140:56 | (...)... | LogInjectionTest.java:1140:49:1140:56 | source(...) : Object | LogInjectionTest.java:1140:40:1140:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1140:49:1140:56 | source(...) | user-provided value | -| LogInjectionTest.java:1141:25:1141:41 | (...)... | LogInjectionTest.java:1141:34:1141:41 | source(...) : Object | LogInjectionTest.java:1141:25:1141:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1141:34:1141:41 | source(...) | user-provided value | -| LogInjectionTest.java:1142:115:1142:131 | (...)... | LogInjectionTest.java:1142:124:1142:131 | source(...) : Object | LogInjectionTest.java:1142:115:1142:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1142:124:1142:131 | source(...) | user-provided value | -| LogInjectionTest.java:1143:100:1143:116 | (...)... | LogInjectionTest.java:1143:109:1143:116 | source(...) : Object | LogInjectionTest.java:1143:100:1143:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1143:109:1143:116 | source(...) | user-provided value | -| LogInjectionTest.java:1144:85:1144:101 | (...)... | LogInjectionTest.java:1144:94:1144:101 | source(...) : Object | LogInjectionTest.java:1144:85:1144:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1144:94:1144:101 | source(...) | user-provided value | -| LogInjectionTest.java:1145:70:1145:86 | (...)... | LogInjectionTest.java:1145:79:1145:86 | source(...) : Object | LogInjectionTest.java:1145:70:1145:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1145:79:1145:86 | source(...) | user-provided value | -| LogInjectionTest.java:1146:55:1146:71 | (...)... | LogInjectionTest.java:1146:64:1146:71 | source(...) : Object | LogInjectionTest.java:1146:55:1146:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1146:64:1146:71 | source(...) | user-provided value | -| LogInjectionTest.java:1147:40:1147:56 | (...)... | LogInjectionTest.java:1147:49:1147:56 | source(...) : Object | LogInjectionTest.java:1147:40:1147:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1147:49:1147:56 | source(...) | user-provided value | -| LogInjectionTest.java:1148:25:1148:41 | (...)... | LogInjectionTest.java:1148:34:1148:41 | source(...) : Object | LogInjectionTest.java:1148:25:1148:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1148:34:1148:41 | source(...) | user-provided value | -| LogInjectionTest.java:1149:130:1149:146 | (...)... | LogInjectionTest.java:1149:139:1149:146 | source(...) : Object | LogInjectionTest.java:1149:130:1149:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1149:139:1149:146 | source(...) | user-provided value | -| LogInjectionTest.java:1150:115:1150:131 | (...)... | LogInjectionTest.java:1150:124:1150:131 | source(...) : Object | LogInjectionTest.java:1150:115:1150:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1150:124:1150:131 | source(...) | user-provided value | -| LogInjectionTest.java:1151:100:1151:116 | (...)... | LogInjectionTest.java:1151:109:1151:116 | source(...) : Object | LogInjectionTest.java:1151:100:1151:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1151:109:1151:116 | source(...) | user-provided value | -| LogInjectionTest.java:1152:85:1152:101 | (...)... | LogInjectionTest.java:1152:94:1152:101 | source(...) : Object | LogInjectionTest.java:1152:85:1152:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1152:94:1152:101 | source(...) | user-provided value | -| LogInjectionTest.java:1153:70:1153:86 | (...)... | LogInjectionTest.java:1153:79:1153:86 | source(...) : Object | LogInjectionTest.java:1153:70:1153:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1153:79:1153:86 | source(...) | user-provided value | -| LogInjectionTest.java:1154:55:1154:71 | (...)... | LogInjectionTest.java:1154:64:1154:71 | source(...) : Object | LogInjectionTest.java:1154:55:1154:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1154:64:1154:71 | source(...) | user-provided value | -| LogInjectionTest.java:1155:40:1155:56 | (...)... | LogInjectionTest.java:1155:49:1155:56 | source(...) : Object | LogInjectionTest.java:1155:40:1155:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1155:49:1155:56 | source(...) | user-provided value | -| LogInjectionTest.java:1156:25:1156:41 | (...)... | LogInjectionTest.java:1156:34:1156:41 | source(...) : Object | LogInjectionTest.java:1156:25:1156:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1156:34:1156:41 | source(...) | user-provided value | -| LogInjectionTest.java:1157:145:1157:161 | (...)... | LogInjectionTest.java:1157:154:1157:161 | source(...) : Object | LogInjectionTest.java:1157:145:1157:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1157:154:1157:161 | source(...) | user-provided value | -| LogInjectionTest.java:1158:130:1158:146 | (...)... | LogInjectionTest.java:1158:139:1158:146 | source(...) : Object | LogInjectionTest.java:1158:130:1158:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1158:139:1158:146 | source(...) | user-provided value | -| LogInjectionTest.java:1159:115:1159:131 | (...)... | LogInjectionTest.java:1159:124:1159:131 | source(...) : Object | LogInjectionTest.java:1159:115:1159:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1159:124:1159:131 | source(...) | user-provided value | -| LogInjectionTest.java:1160:100:1160:116 | (...)... | LogInjectionTest.java:1160:109:1160:116 | source(...) : Object | LogInjectionTest.java:1160:100:1160:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1160:109:1160:116 | source(...) | user-provided value | -| LogInjectionTest.java:1161:85:1161:101 | (...)... | LogInjectionTest.java:1161:94:1161:101 | source(...) : Object | LogInjectionTest.java:1161:85:1161:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1161:94:1161:101 | source(...) | user-provided value | -| LogInjectionTest.java:1162:70:1162:86 | (...)... | LogInjectionTest.java:1162:79:1162:86 | source(...) : Object | LogInjectionTest.java:1162:70:1162:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1162:79:1162:86 | source(...) | user-provided value | -| LogInjectionTest.java:1163:55:1163:71 | (...)... | LogInjectionTest.java:1163:64:1163:71 | source(...) : Object | LogInjectionTest.java:1163:55:1163:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1163:64:1163:71 | source(...) | user-provided value | -| LogInjectionTest.java:1164:40:1164:56 | (...)... | LogInjectionTest.java:1164:49:1164:56 | source(...) : Object | LogInjectionTest.java:1164:40:1164:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1164:49:1164:56 | source(...) | user-provided value | -| LogInjectionTest.java:1165:25:1165:41 | (...)... | LogInjectionTest.java:1165:34:1165:41 | source(...) : Object | LogInjectionTest.java:1165:25:1165:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1165:34:1165:41 | source(...) | user-provided value | -| LogInjectionTest.java:1166:160:1166:176 | (...)... | LogInjectionTest.java:1166:169:1166:176 | source(...) : Object | LogInjectionTest.java:1166:160:1166:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1166:169:1166:176 | source(...) | user-provided value | +| LogInjectionTest.java:1131:40:1131:62 | new Object[] | LogInjectionTest.java:1131:54:1131:61 | source(...) : Object | LogInjectionTest.java:1131:40:1131:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1131:54:1131:61 | source(...) | user-provided value | +| LogInjectionTest.java:1132:40:1132:56 | (...)... | LogInjectionTest.java:1132:49:1132:56 | source(...) : Object | LogInjectionTest.java:1132:40:1132:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1132:49:1132:56 | source(...) | user-provided value | +| LogInjectionTest.java:1133:25:1133:41 | (...)... | LogInjectionTest.java:1133:34:1133:41 | source(...) : Object | LogInjectionTest.java:1133:25:1133:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1133:34:1133:41 | source(...) | user-provided value | +| LogInjectionTest.java:1134:55:1134:71 | (...)... | LogInjectionTest.java:1134:64:1134:71 | source(...) : Object | LogInjectionTest.java:1134:55:1134:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1134:64:1134:71 | source(...) | user-provided value | +| LogInjectionTest.java:1135:40:1135:56 | (...)... | LogInjectionTest.java:1135:49:1135:56 | source(...) : Object | LogInjectionTest.java:1135:40:1135:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1135:49:1135:56 | source(...) | user-provided value | +| LogInjectionTest.java:1136:25:1136:41 | (...)... | LogInjectionTest.java:1136:34:1136:41 | source(...) : Object | LogInjectionTest.java:1136:25:1136:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1136:34:1136:41 | source(...) | user-provided value | +| LogInjectionTest.java:1137:70:1137:86 | (...)... | LogInjectionTest.java:1137:79:1137:86 | source(...) : Object | LogInjectionTest.java:1137:70:1137:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1137:79:1137:86 | source(...) | user-provided value | +| LogInjectionTest.java:1138:55:1138:71 | (...)... | LogInjectionTest.java:1138:64:1138:71 | source(...) : Object | LogInjectionTest.java:1138:55:1138:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1138:64:1138:71 | source(...) | user-provided value | +| LogInjectionTest.java:1139:40:1139:56 | (...)... | LogInjectionTest.java:1139:49:1139:56 | source(...) : Object | LogInjectionTest.java:1139:40:1139:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1139:49:1139:56 | source(...) | user-provided value | +| LogInjectionTest.java:1140:25:1140:41 | (...)... | LogInjectionTest.java:1140:34:1140:41 | source(...) : Object | LogInjectionTest.java:1140:25:1140:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1140:34:1140:41 | source(...) | user-provided value | +| LogInjectionTest.java:1141:85:1141:101 | (...)... | LogInjectionTest.java:1141:94:1141:101 | source(...) : Object | LogInjectionTest.java:1141:85:1141:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1141:94:1141:101 | source(...) | user-provided value | +| LogInjectionTest.java:1142:70:1142:86 | (...)... | LogInjectionTest.java:1142:79:1142:86 | source(...) : Object | LogInjectionTest.java:1142:70:1142:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1142:79:1142:86 | source(...) | user-provided value | +| LogInjectionTest.java:1143:55:1143:71 | (...)... | LogInjectionTest.java:1143:64:1143:71 | source(...) : Object | LogInjectionTest.java:1143:55:1143:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1143:64:1143:71 | source(...) | user-provided value | +| LogInjectionTest.java:1144:40:1144:56 | (...)... | LogInjectionTest.java:1144:49:1144:56 | source(...) : Object | LogInjectionTest.java:1144:40:1144:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1144:49:1144:56 | source(...) | user-provided value | +| LogInjectionTest.java:1145:25:1145:41 | (...)... | LogInjectionTest.java:1145:34:1145:41 | source(...) : Object | LogInjectionTest.java:1145:25:1145:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1145:34:1145:41 | source(...) | user-provided value | +| LogInjectionTest.java:1146:100:1146:116 | (...)... | LogInjectionTest.java:1146:109:1146:116 | source(...) : Object | LogInjectionTest.java:1146:100:1146:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1146:109:1146:116 | source(...) | user-provided value | +| LogInjectionTest.java:1147:85:1147:101 | (...)... | LogInjectionTest.java:1147:94:1147:101 | source(...) : Object | LogInjectionTest.java:1147:85:1147:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1147:94:1147:101 | source(...) | user-provided value | +| LogInjectionTest.java:1148:70:1148:86 | (...)... | LogInjectionTest.java:1148:79:1148:86 | source(...) : Object | LogInjectionTest.java:1148:70:1148:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1148:79:1148:86 | source(...) | user-provided value | +| LogInjectionTest.java:1149:55:1149:71 | (...)... | LogInjectionTest.java:1149:64:1149:71 | source(...) : Object | LogInjectionTest.java:1149:55:1149:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1149:64:1149:71 | source(...) | user-provided value | +| LogInjectionTest.java:1150:40:1150:56 | (...)... | LogInjectionTest.java:1150:49:1150:56 | source(...) : Object | LogInjectionTest.java:1150:40:1150:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1150:49:1150:56 | source(...) | user-provided value | +| LogInjectionTest.java:1151:25:1151:41 | (...)... | LogInjectionTest.java:1151:34:1151:41 | source(...) : Object | LogInjectionTest.java:1151:25:1151:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1151:34:1151:41 | source(...) | user-provided value | +| LogInjectionTest.java:1152:115:1152:131 | (...)... | LogInjectionTest.java:1152:124:1152:131 | source(...) : Object | LogInjectionTest.java:1152:115:1152:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1152:124:1152:131 | source(...) | user-provided value | +| LogInjectionTest.java:1153:100:1153:116 | (...)... | LogInjectionTest.java:1153:109:1153:116 | source(...) : Object | LogInjectionTest.java:1153:100:1153:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1153:109:1153:116 | source(...) | user-provided value | +| LogInjectionTest.java:1154:85:1154:101 | (...)... | LogInjectionTest.java:1154:94:1154:101 | source(...) : Object | LogInjectionTest.java:1154:85:1154:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1154:94:1154:101 | source(...) | user-provided value | +| LogInjectionTest.java:1155:70:1155:86 | (...)... | LogInjectionTest.java:1155:79:1155:86 | source(...) : Object | LogInjectionTest.java:1155:70:1155:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1155:79:1155:86 | source(...) | user-provided value | +| LogInjectionTest.java:1156:55:1156:71 | (...)... | LogInjectionTest.java:1156:64:1156:71 | source(...) : Object | LogInjectionTest.java:1156:55:1156:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1156:64:1156:71 | source(...) | user-provided value | +| LogInjectionTest.java:1157:40:1157:56 | (...)... | LogInjectionTest.java:1157:49:1157:56 | source(...) : Object | LogInjectionTest.java:1157:40:1157:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1157:49:1157:56 | source(...) | user-provided value | +| LogInjectionTest.java:1158:25:1158:41 | (...)... | LogInjectionTest.java:1158:34:1158:41 | source(...) : Object | LogInjectionTest.java:1158:25:1158:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1158:34:1158:41 | source(...) | user-provided value | +| LogInjectionTest.java:1159:130:1159:146 | (...)... | LogInjectionTest.java:1159:139:1159:146 | source(...) : Object | LogInjectionTest.java:1159:130:1159:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1159:139:1159:146 | source(...) | user-provided value | +| LogInjectionTest.java:1160:115:1160:131 | (...)... | LogInjectionTest.java:1160:124:1160:131 | source(...) : Object | LogInjectionTest.java:1160:115:1160:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1160:124:1160:131 | source(...) | user-provided value | +| LogInjectionTest.java:1161:100:1161:116 | (...)... | LogInjectionTest.java:1161:109:1161:116 | source(...) : Object | LogInjectionTest.java:1161:100:1161:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1161:109:1161:116 | source(...) | user-provided value | +| LogInjectionTest.java:1162:85:1162:101 | (...)... | LogInjectionTest.java:1162:94:1162:101 | source(...) : Object | LogInjectionTest.java:1162:85:1162:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1162:94:1162:101 | source(...) | user-provided value | +| LogInjectionTest.java:1163:70:1163:86 | (...)... | LogInjectionTest.java:1163:79:1163:86 | source(...) : Object | LogInjectionTest.java:1163:70:1163:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1163:79:1163:86 | source(...) | user-provided value | +| LogInjectionTest.java:1164:55:1164:71 | (...)... | LogInjectionTest.java:1164:64:1164:71 | source(...) : Object | LogInjectionTest.java:1164:55:1164:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1164:64:1164:71 | source(...) | user-provided value | +| LogInjectionTest.java:1165:40:1165:56 | (...)... | LogInjectionTest.java:1165:49:1165:56 | source(...) : Object | LogInjectionTest.java:1165:40:1165:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1165:49:1165:56 | source(...) | user-provided value | +| LogInjectionTest.java:1166:25:1166:41 | (...)... | LogInjectionTest.java:1166:34:1166:41 | source(...) : Object | LogInjectionTest.java:1166:25:1166:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1166:34:1166:41 | source(...) | user-provided value | | LogInjectionTest.java:1167:145:1167:161 | (...)... | LogInjectionTest.java:1167:154:1167:161 | source(...) : Object | LogInjectionTest.java:1167:145:1167:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1167:154:1167:161 | source(...) | user-provided value | | LogInjectionTest.java:1168:130:1168:146 | (...)... | LogInjectionTest.java:1168:139:1168:146 | source(...) : Object | LogInjectionTest.java:1168:130:1168:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1168:139:1168:146 | source(...) | user-provided value | | LogInjectionTest.java:1169:115:1169:131 | (...)... | LogInjectionTest.java:1169:124:1169:131 | source(...) : Object | LogInjectionTest.java:1169:115:1169:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1169:124:1169:131 | source(...) | user-provided value | @@ -1023,82 +1013,82 @@ | LogInjectionTest.java:1173:55:1173:71 | (...)... | LogInjectionTest.java:1173:64:1173:71 | source(...) : Object | LogInjectionTest.java:1173:55:1173:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1173:64:1173:71 | source(...) | user-provided value | | LogInjectionTest.java:1174:40:1174:56 | (...)... | LogInjectionTest.java:1174:49:1174:56 | source(...) : Object | LogInjectionTest.java:1174:40:1174:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1174:49:1174:56 | source(...) | user-provided value | | LogInjectionTest.java:1175:25:1175:41 | (...)... | LogInjectionTest.java:1175:34:1175:41 | source(...) : Object | LogInjectionTest.java:1175:25:1175:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1175:34:1175:41 | source(...) | user-provided value | -| LogInjectionTest.java:1176:25:1176:41 | (...)... | LogInjectionTest.java:1176:34:1176:41 | source(...) : Object | LogInjectionTest.java:1176:25:1176:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1176:34:1176:41 | source(...) | user-provided value | -| LogInjectionTest.java:1177:40:1177:61 | (...)... | LogInjectionTest.java:1177:54:1177:61 | source(...) : Object | LogInjectionTest.java:1177:40:1177:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1177:54:1177:61 | source(...) | user-provided value | -| LogInjectionTest.java:1178:25:1178:41 | (...)... | LogInjectionTest.java:1178:34:1178:41 | source(...) : Object | LogInjectionTest.java:1178:25:1178:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1178:34:1178:41 | source(...) | user-provided value | -| LogInjectionTest.java:1179:25:1179:46 | (...)... | LogInjectionTest.java:1179:39:1179:46 | source(...) : Object | LogInjectionTest.java:1179:25:1179:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1179:39:1179:46 | source(...) | user-provided value | -| LogInjectionTest.java:1180:25:1180:46 | (...)... | LogInjectionTest.java:1180:39:1180:46 | source(...) : Object | LogInjectionTest.java:1180:25:1180:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1180:39:1180:46 | source(...) | user-provided value | -| LogInjectionTest.java:1182:55:1182:72 | (...)... | LogInjectionTest.java:1182:65:1182:72 | source(...) : Object | LogInjectionTest.java:1182:55:1182:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1182:65:1182:72 | source(...) | user-provided value | -| LogInjectionTest.java:1183:39:1183:55 | (...)... | LogInjectionTest.java:1183:48:1183:55 | source(...) : Object | LogInjectionTest.java:1183:39:1183:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1183:48:1183:55 | source(...) | user-provided value | -| LogInjectionTest.java:1184:45:1184:67 | new Object[] | LogInjectionTest.java:1184:59:1184:66 | source(...) : Object | LogInjectionTest.java:1184:45:1184:67 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1184:59:1184:66 | source(...) | user-provided value | -| LogInjectionTest.java:1185:33:1185:49 | (...)... | LogInjectionTest.java:1185:42:1185:49 | source(...) : Object | LogInjectionTest.java:1185:33:1185:49 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1185:42:1185:49 | source(...) | user-provided value | -| LogInjectionTest.java:1186:39:1186:61 | new Object[] | LogInjectionTest.java:1186:53:1186:60 | source(...) : Object | LogInjectionTest.java:1186:39:1186:61 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1186:53:1186:60 | source(...) | user-provided value | -| LogInjectionTest.java:1187:31:1187:48 | (...)... | LogInjectionTest.java:1187:41:1187:48 | source(...) : Object | LogInjectionTest.java:1187:31:1187:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1187:41:1187:48 | source(...) | user-provided value | -| LogInjectionTest.java:1188:31:1188:47 | (...)... | LogInjectionTest.java:1188:40:1188:47 | source(...) : Object | LogInjectionTest.java:1188:31:1188:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1188:40:1188:47 | source(...) | user-provided value | -| LogInjectionTest.java:1189:46:1189:68 | new Object[] | LogInjectionTest.java:1189:60:1189:67 | source(...) : Object | LogInjectionTest.java:1189:46:1189:68 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1189:60:1189:67 | source(...) | user-provided value | -| LogInjectionTest.java:1190:31:1190:47 | (...)... | LogInjectionTest.java:1190:40:1190:47 | source(...) : Object | LogInjectionTest.java:1190:31:1190:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1190:40:1190:47 | source(...) | user-provided value | -| LogInjectionTest.java:1191:13:1191:68 | new ..[] { .. } | LogInjectionTest.java:1191:60:1191:67 | source(...) : Object | LogInjectionTest.java:1191:13:1191:68 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1191:60:1191:67 | source(...) | user-provided value | -| LogInjectionTest.java:1192:13:1192:53 | new ..[] { .. } | LogInjectionTest.java:1192:45:1192:52 | source(...) : Object | LogInjectionTest.java:1192:13:1192:53 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1192:45:1192:52 | source(...) | user-provided value | -| LogInjectionTest.java:1193:30:1193:52 | (...)... | LogInjectionTest.java:1193:45:1193:52 | source(...) : Object | LogInjectionTest.java:1193:30:1193:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1193:45:1193:52 | source(...) | user-provided value | -| LogInjectionTest.java:1194:30:1194:52 | (...)... | LogInjectionTest.java:1194:45:1194:52 | source(...) : Object | LogInjectionTest.java:1194:30:1194:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1194:45:1194:52 | source(...) | user-provided value | -| LogInjectionTest.java:1195:51:1195:58 | source(...) | LogInjectionTest.java:1195:51:1195:58 | source(...) | LogInjectionTest.java:1195:51:1195:58 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1195:51:1195:58 | source(...) | user-provided value | -| LogInjectionTest.java:1196:30:1196:47 | (...)... | LogInjectionTest.java:1196:40:1196:47 | source(...) : Object | LogInjectionTest.java:1196:30:1196:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1196:40:1196:47 | source(...) | user-provided value | -| LogInjectionTest.java:1197:46:1197:53 | source(...) | LogInjectionTest.java:1197:46:1197:53 | source(...) | LogInjectionTest.java:1197:46:1197:53 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1197:46:1197:53 | source(...) | user-provided value | -| LogInjectionTest.java:1198:30:1198:37 | source(...) | LogInjectionTest.java:1198:30:1198:37 | source(...) | LogInjectionTest.java:1198:30:1198:37 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1198:30:1198:37 | source(...) | user-provided value | -| LogInjectionTest.java:1199:30:1199:46 | (...)... | LogInjectionTest.java:1199:39:1199:46 | source(...) : Object | LogInjectionTest.java:1199:30:1199:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1199:39:1199:46 | source(...) | user-provided value | -| LogInjectionTest.java:1200:45:1200:52 | source(...) | LogInjectionTest.java:1200:45:1200:52 | source(...) | LogInjectionTest.java:1200:45:1200:52 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1200:45:1200:52 | source(...) | user-provided value | -| LogInjectionTest.java:1204:25:1204:47 | (...)... | LogInjectionTest.java:1204:40:1204:47 | source(...) : Object | LogInjectionTest.java:1204:25:1204:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1204:40:1204:47 | source(...) | user-provided value | -| LogInjectionTest.java:1205:25:1205:42 | (...)... | LogInjectionTest.java:1205:35:1205:42 | source(...) : Object | LogInjectionTest.java:1205:25:1205:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1205:35:1205:42 | source(...) | user-provided value | -| LogInjectionTest.java:1206:25:1206:32 | source(...) | LogInjectionTest.java:1206:25:1206:32 | source(...) | LogInjectionTest.java:1206:25:1206:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1206:25:1206:32 | source(...) | user-provided value | -| LogInjectionTest.java:1207:25:1207:41 | (...)... | LogInjectionTest.java:1207:34:1207:41 | source(...) : Object | LogInjectionTest.java:1207:25:1207:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1207:34:1207:41 | source(...) | user-provided value | -| LogInjectionTest.java:1208:25:1208:41 | (...)... | LogInjectionTest.java:1208:34:1208:41 | source(...) : Object | LogInjectionTest.java:1208:25:1208:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1208:34:1208:41 | source(...) | user-provided value | -| LogInjectionTest.java:1209:40:1209:62 | new Object[] | LogInjectionTest.java:1209:54:1209:61 | source(...) : Object | LogInjectionTest.java:1209:40:1209:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1209:54:1209:61 | source(...) | user-provided value | -| LogInjectionTest.java:1210:40:1210:47 | source(...) | LogInjectionTest.java:1210:40:1210:47 | source(...) | LogInjectionTest.java:1210:40:1210:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1210:40:1210:47 | source(...) | user-provided value | -| LogInjectionTest.java:1212:40:1212:56 | (...)... | LogInjectionTest.java:1212:49:1212:56 | source(...) : Object | LogInjectionTest.java:1212:40:1212:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1212:49:1212:56 | source(...) | user-provided value | -| LogInjectionTest.java:1213:25:1213:41 | (...)... | LogInjectionTest.java:1213:34:1213:41 | source(...) : Object | LogInjectionTest.java:1213:25:1213:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1213:34:1213:41 | source(...) | user-provided value | -| LogInjectionTest.java:1214:55:1214:71 | (...)... | LogInjectionTest.java:1214:64:1214:71 | source(...) : Object | LogInjectionTest.java:1214:55:1214:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1214:64:1214:71 | source(...) | user-provided value | -| LogInjectionTest.java:1215:40:1215:56 | (...)... | LogInjectionTest.java:1215:49:1215:56 | source(...) : Object | LogInjectionTest.java:1215:40:1215:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1215:49:1215:56 | source(...) | user-provided value | -| LogInjectionTest.java:1216:25:1216:41 | (...)... | LogInjectionTest.java:1216:34:1216:41 | source(...) : Object | LogInjectionTest.java:1216:25:1216:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1216:34:1216:41 | source(...) | user-provided value | -| LogInjectionTest.java:1217:70:1217:86 | (...)... | LogInjectionTest.java:1217:79:1217:86 | source(...) : Object | LogInjectionTest.java:1217:70:1217:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1217:79:1217:86 | source(...) | user-provided value | -| LogInjectionTest.java:1218:55:1218:71 | (...)... | LogInjectionTest.java:1218:64:1218:71 | source(...) : Object | LogInjectionTest.java:1218:55:1218:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1218:64:1218:71 | source(...) | user-provided value | -| LogInjectionTest.java:1219:40:1219:56 | (...)... | LogInjectionTest.java:1219:49:1219:56 | source(...) : Object | LogInjectionTest.java:1219:40:1219:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1219:49:1219:56 | source(...) | user-provided value | -| LogInjectionTest.java:1220:25:1220:41 | (...)... | LogInjectionTest.java:1220:34:1220:41 | source(...) : Object | LogInjectionTest.java:1220:25:1220:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1220:34:1220:41 | source(...) | user-provided value | -| LogInjectionTest.java:1221:85:1221:101 | (...)... | LogInjectionTest.java:1221:94:1221:101 | source(...) : Object | LogInjectionTest.java:1221:85:1221:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1221:94:1221:101 | source(...) | user-provided value | -| LogInjectionTest.java:1222:70:1222:86 | (...)... | LogInjectionTest.java:1222:79:1222:86 | source(...) : Object | LogInjectionTest.java:1222:70:1222:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1222:79:1222:86 | source(...) | user-provided value | -| LogInjectionTest.java:1223:55:1223:71 | (...)... | LogInjectionTest.java:1223:64:1223:71 | source(...) : Object | LogInjectionTest.java:1223:55:1223:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1223:64:1223:71 | source(...) | user-provided value | -| LogInjectionTest.java:1224:40:1224:56 | (...)... | LogInjectionTest.java:1224:49:1224:56 | source(...) : Object | LogInjectionTest.java:1224:40:1224:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1224:49:1224:56 | source(...) | user-provided value | -| LogInjectionTest.java:1225:25:1225:41 | (...)... | LogInjectionTest.java:1225:34:1225:41 | source(...) : Object | LogInjectionTest.java:1225:25:1225:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1225:34:1225:41 | source(...) | user-provided value | -| LogInjectionTest.java:1226:100:1226:116 | (...)... | LogInjectionTest.java:1226:109:1226:116 | source(...) : Object | LogInjectionTest.java:1226:100:1226:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1226:109:1226:116 | source(...) | user-provided value | -| LogInjectionTest.java:1227:85:1227:101 | (...)... | LogInjectionTest.java:1227:94:1227:101 | source(...) : Object | LogInjectionTest.java:1227:85:1227:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1227:94:1227:101 | source(...) | user-provided value | -| LogInjectionTest.java:1228:70:1228:86 | (...)... | LogInjectionTest.java:1228:79:1228:86 | source(...) : Object | LogInjectionTest.java:1228:70:1228:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1228:79:1228:86 | source(...) | user-provided value | -| LogInjectionTest.java:1229:55:1229:71 | (...)... | LogInjectionTest.java:1229:64:1229:71 | source(...) : Object | LogInjectionTest.java:1229:55:1229:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1229:64:1229:71 | source(...) | user-provided value | -| LogInjectionTest.java:1230:40:1230:56 | (...)... | LogInjectionTest.java:1230:49:1230:56 | source(...) : Object | LogInjectionTest.java:1230:40:1230:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1230:49:1230:56 | source(...) | user-provided value | -| LogInjectionTest.java:1231:25:1231:41 | (...)... | LogInjectionTest.java:1231:34:1231:41 | source(...) : Object | LogInjectionTest.java:1231:25:1231:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1231:34:1231:41 | source(...) | user-provided value | -| LogInjectionTest.java:1232:115:1232:131 | (...)... | LogInjectionTest.java:1232:124:1232:131 | source(...) : Object | LogInjectionTest.java:1232:115:1232:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1232:124:1232:131 | source(...) | user-provided value | -| LogInjectionTest.java:1233:100:1233:116 | (...)... | LogInjectionTest.java:1233:109:1233:116 | source(...) : Object | LogInjectionTest.java:1233:100:1233:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1233:109:1233:116 | source(...) | user-provided value | -| LogInjectionTest.java:1234:85:1234:101 | (...)... | LogInjectionTest.java:1234:94:1234:101 | source(...) : Object | LogInjectionTest.java:1234:85:1234:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1234:94:1234:101 | source(...) | user-provided value | -| LogInjectionTest.java:1235:70:1235:86 | (...)... | LogInjectionTest.java:1235:79:1235:86 | source(...) : Object | LogInjectionTest.java:1235:70:1235:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1235:79:1235:86 | source(...) | user-provided value | -| LogInjectionTest.java:1236:55:1236:71 | (...)... | LogInjectionTest.java:1236:64:1236:71 | source(...) : Object | LogInjectionTest.java:1236:55:1236:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1236:64:1236:71 | source(...) | user-provided value | -| LogInjectionTest.java:1237:40:1237:56 | (...)... | LogInjectionTest.java:1237:49:1237:56 | source(...) : Object | LogInjectionTest.java:1237:40:1237:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1237:49:1237:56 | source(...) | user-provided value | -| LogInjectionTest.java:1238:25:1238:41 | (...)... | LogInjectionTest.java:1238:34:1238:41 | source(...) : Object | LogInjectionTest.java:1238:25:1238:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1238:34:1238:41 | source(...) | user-provided value | -| LogInjectionTest.java:1239:130:1239:146 | (...)... | LogInjectionTest.java:1239:139:1239:146 | source(...) : Object | LogInjectionTest.java:1239:130:1239:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1239:139:1239:146 | source(...) | user-provided value | -| LogInjectionTest.java:1240:115:1240:131 | (...)... | LogInjectionTest.java:1240:124:1240:131 | source(...) : Object | LogInjectionTest.java:1240:115:1240:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1240:124:1240:131 | source(...) | user-provided value | -| LogInjectionTest.java:1241:100:1241:116 | (...)... | LogInjectionTest.java:1241:109:1241:116 | source(...) : Object | LogInjectionTest.java:1241:100:1241:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1241:109:1241:116 | source(...) | user-provided value | -| LogInjectionTest.java:1242:85:1242:101 | (...)... | LogInjectionTest.java:1242:94:1242:101 | source(...) : Object | LogInjectionTest.java:1242:85:1242:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1242:94:1242:101 | source(...) | user-provided value | -| LogInjectionTest.java:1243:70:1243:86 | (...)... | LogInjectionTest.java:1243:79:1243:86 | source(...) : Object | LogInjectionTest.java:1243:70:1243:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1243:79:1243:86 | source(...) | user-provided value | -| LogInjectionTest.java:1244:55:1244:71 | (...)... | LogInjectionTest.java:1244:64:1244:71 | source(...) : Object | LogInjectionTest.java:1244:55:1244:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1244:64:1244:71 | source(...) | user-provided value | -| LogInjectionTest.java:1245:40:1245:56 | (...)... | LogInjectionTest.java:1245:49:1245:56 | source(...) : Object | LogInjectionTest.java:1245:40:1245:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1245:49:1245:56 | source(...) | user-provided value | -| LogInjectionTest.java:1246:25:1246:41 | (...)... | LogInjectionTest.java:1246:34:1246:41 | source(...) : Object | LogInjectionTest.java:1246:25:1246:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1246:34:1246:41 | source(...) | user-provided value | -| LogInjectionTest.java:1247:145:1247:161 | (...)... | LogInjectionTest.java:1247:154:1247:161 | source(...) : Object | LogInjectionTest.java:1247:145:1247:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1247:154:1247:161 | source(...) | user-provided value | -| LogInjectionTest.java:1248:130:1248:146 | (...)... | LogInjectionTest.java:1248:139:1248:146 | source(...) : Object | LogInjectionTest.java:1248:130:1248:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1248:139:1248:146 | source(...) | user-provided value | -| LogInjectionTest.java:1249:115:1249:131 | (...)... | LogInjectionTest.java:1249:124:1249:131 | source(...) : Object | LogInjectionTest.java:1249:115:1249:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1249:124:1249:131 | source(...) | user-provided value | -| LogInjectionTest.java:1250:100:1250:116 | (...)... | LogInjectionTest.java:1250:109:1250:116 | source(...) : Object | LogInjectionTest.java:1250:100:1250:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1250:109:1250:116 | source(...) | user-provided value | -| LogInjectionTest.java:1251:85:1251:101 | (...)... | LogInjectionTest.java:1251:94:1251:101 | source(...) : Object | LogInjectionTest.java:1251:85:1251:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1251:94:1251:101 | source(...) | user-provided value | -| LogInjectionTest.java:1252:70:1252:86 | (...)... | LogInjectionTest.java:1252:79:1252:86 | source(...) : Object | LogInjectionTest.java:1252:70:1252:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1252:79:1252:86 | source(...) | user-provided value | -| LogInjectionTest.java:1253:55:1253:71 | (...)... | LogInjectionTest.java:1253:64:1253:71 | source(...) : Object | LogInjectionTest.java:1253:55:1253:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1253:64:1253:71 | source(...) | user-provided value | -| LogInjectionTest.java:1254:40:1254:56 | (...)... | LogInjectionTest.java:1254:49:1254:56 | source(...) : Object | LogInjectionTest.java:1254:40:1254:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1254:49:1254:56 | source(...) | user-provided value | -| LogInjectionTest.java:1255:25:1255:41 | (...)... | LogInjectionTest.java:1255:34:1255:41 | source(...) : Object | LogInjectionTest.java:1255:25:1255:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1255:34:1255:41 | source(...) | user-provided value | -| LogInjectionTest.java:1256:160:1256:176 | (...)... | LogInjectionTest.java:1256:169:1256:176 | source(...) : Object | LogInjectionTest.java:1256:160:1256:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1256:169:1256:176 | source(...) | user-provided value | +| LogInjectionTest.java:1176:160:1176:176 | (...)... | LogInjectionTest.java:1176:169:1176:176 | source(...) : Object | LogInjectionTest.java:1176:160:1176:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1176:169:1176:176 | source(...) | user-provided value | +| LogInjectionTest.java:1177:145:1177:161 | (...)... | LogInjectionTest.java:1177:154:1177:161 | source(...) : Object | LogInjectionTest.java:1177:145:1177:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1177:154:1177:161 | source(...) | user-provided value | +| LogInjectionTest.java:1178:130:1178:146 | (...)... | LogInjectionTest.java:1178:139:1178:146 | source(...) : Object | LogInjectionTest.java:1178:130:1178:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1178:139:1178:146 | source(...) | user-provided value | +| LogInjectionTest.java:1179:115:1179:131 | (...)... | LogInjectionTest.java:1179:124:1179:131 | source(...) : Object | LogInjectionTest.java:1179:115:1179:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1179:124:1179:131 | source(...) | user-provided value | +| LogInjectionTest.java:1180:100:1180:116 | (...)... | LogInjectionTest.java:1180:109:1180:116 | source(...) : Object | LogInjectionTest.java:1180:100:1180:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1180:109:1180:116 | source(...) | user-provided value | +| LogInjectionTest.java:1181:85:1181:101 | (...)... | LogInjectionTest.java:1181:94:1181:101 | source(...) : Object | LogInjectionTest.java:1181:85:1181:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1181:94:1181:101 | source(...) | user-provided value | +| LogInjectionTest.java:1182:70:1182:86 | (...)... | LogInjectionTest.java:1182:79:1182:86 | source(...) : Object | LogInjectionTest.java:1182:70:1182:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1182:79:1182:86 | source(...) | user-provided value | +| LogInjectionTest.java:1183:55:1183:71 | (...)... | LogInjectionTest.java:1183:64:1183:71 | source(...) : Object | LogInjectionTest.java:1183:55:1183:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1183:64:1183:71 | source(...) | user-provided value | +| LogInjectionTest.java:1184:40:1184:56 | (...)... | LogInjectionTest.java:1184:49:1184:56 | source(...) : Object | LogInjectionTest.java:1184:40:1184:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1184:49:1184:56 | source(...) | user-provided value | +| LogInjectionTest.java:1185:25:1185:41 | (...)... | LogInjectionTest.java:1185:34:1185:41 | source(...) : Object | LogInjectionTest.java:1185:25:1185:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1185:34:1185:41 | source(...) | user-provided value | +| LogInjectionTest.java:1186:25:1186:41 | (...)... | LogInjectionTest.java:1186:34:1186:41 | source(...) : Object | LogInjectionTest.java:1186:25:1186:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1186:34:1186:41 | source(...) | user-provided value | +| LogInjectionTest.java:1187:40:1187:61 | (...)... | LogInjectionTest.java:1187:54:1187:61 | source(...) : Object | LogInjectionTest.java:1187:40:1187:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1187:54:1187:61 | source(...) | user-provided value | +| LogInjectionTest.java:1188:25:1188:41 | (...)... | LogInjectionTest.java:1188:34:1188:41 | source(...) : Object | LogInjectionTest.java:1188:25:1188:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1188:34:1188:41 | source(...) | user-provided value | +| LogInjectionTest.java:1189:25:1189:46 | (...)... | LogInjectionTest.java:1189:39:1189:46 | source(...) : Object | LogInjectionTest.java:1189:25:1189:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1189:39:1189:46 | source(...) | user-provided value | +| LogInjectionTest.java:1190:25:1190:46 | (...)... | LogInjectionTest.java:1190:39:1190:46 | source(...) : Object | LogInjectionTest.java:1190:25:1190:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1190:39:1190:46 | source(...) | user-provided value | +| LogInjectionTest.java:1192:55:1192:72 | (...)... | LogInjectionTest.java:1192:65:1192:72 | source(...) : Object | LogInjectionTest.java:1192:55:1192:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1192:65:1192:72 | source(...) | user-provided value | +| LogInjectionTest.java:1193:39:1193:55 | (...)... | LogInjectionTest.java:1193:48:1193:55 | source(...) : Object | LogInjectionTest.java:1193:39:1193:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1193:48:1193:55 | source(...) | user-provided value | +| LogInjectionTest.java:1194:45:1194:67 | new Object[] | LogInjectionTest.java:1194:59:1194:66 | source(...) : Object | LogInjectionTest.java:1194:45:1194:67 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1194:59:1194:66 | source(...) | user-provided value | +| LogInjectionTest.java:1195:33:1195:49 | (...)... | LogInjectionTest.java:1195:42:1195:49 | source(...) : Object | LogInjectionTest.java:1195:33:1195:49 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1195:42:1195:49 | source(...) | user-provided value | +| LogInjectionTest.java:1196:39:1196:61 | new Object[] | LogInjectionTest.java:1196:53:1196:60 | source(...) : Object | LogInjectionTest.java:1196:39:1196:61 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1196:53:1196:60 | source(...) | user-provided value | +| LogInjectionTest.java:1197:31:1197:48 | (...)... | LogInjectionTest.java:1197:41:1197:48 | source(...) : Object | LogInjectionTest.java:1197:31:1197:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1197:41:1197:48 | source(...) | user-provided value | +| LogInjectionTest.java:1198:31:1198:47 | (...)... | LogInjectionTest.java:1198:40:1198:47 | source(...) : Object | LogInjectionTest.java:1198:31:1198:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1198:40:1198:47 | source(...) | user-provided value | +| LogInjectionTest.java:1199:46:1199:68 | new Object[] | LogInjectionTest.java:1199:60:1199:67 | source(...) : Object | LogInjectionTest.java:1199:46:1199:68 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1199:60:1199:67 | source(...) | user-provided value | +| LogInjectionTest.java:1200:31:1200:47 | (...)... | LogInjectionTest.java:1200:40:1200:47 | source(...) : Object | LogInjectionTest.java:1200:31:1200:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1200:40:1200:47 | source(...) | user-provided value | +| LogInjectionTest.java:1201:13:1201:68 | new ..[] { .. } | LogInjectionTest.java:1201:60:1201:67 | source(...) : Object | LogInjectionTest.java:1201:13:1201:68 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1201:60:1201:67 | source(...) | user-provided value | +| LogInjectionTest.java:1202:13:1202:53 | new ..[] { .. } | LogInjectionTest.java:1202:45:1202:52 | source(...) : Object | LogInjectionTest.java:1202:13:1202:53 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1202:45:1202:52 | source(...) | user-provided value | +| LogInjectionTest.java:1203:30:1203:52 | (...)... | LogInjectionTest.java:1203:45:1203:52 | source(...) : Object | LogInjectionTest.java:1203:30:1203:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1203:45:1203:52 | source(...) | user-provided value | +| LogInjectionTest.java:1204:30:1204:52 | (...)... | LogInjectionTest.java:1204:45:1204:52 | source(...) : Object | LogInjectionTest.java:1204:30:1204:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1204:45:1204:52 | source(...) | user-provided value | +| LogInjectionTest.java:1205:51:1205:58 | source(...) | LogInjectionTest.java:1205:51:1205:58 | source(...) | LogInjectionTest.java:1205:51:1205:58 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1205:51:1205:58 | source(...) | user-provided value | +| LogInjectionTest.java:1206:30:1206:47 | (...)... | LogInjectionTest.java:1206:40:1206:47 | source(...) : Object | LogInjectionTest.java:1206:30:1206:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1206:40:1206:47 | source(...) | user-provided value | +| LogInjectionTest.java:1207:46:1207:53 | source(...) | LogInjectionTest.java:1207:46:1207:53 | source(...) | LogInjectionTest.java:1207:46:1207:53 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1207:46:1207:53 | source(...) | user-provided value | +| LogInjectionTest.java:1208:30:1208:37 | source(...) | LogInjectionTest.java:1208:30:1208:37 | source(...) | LogInjectionTest.java:1208:30:1208:37 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1208:30:1208:37 | source(...) | user-provided value | +| LogInjectionTest.java:1209:30:1209:46 | (...)... | LogInjectionTest.java:1209:39:1209:46 | source(...) : Object | LogInjectionTest.java:1209:30:1209:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1209:39:1209:46 | source(...) | user-provided value | +| LogInjectionTest.java:1210:45:1210:52 | source(...) | LogInjectionTest.java:1210:45:1210:52 | source(...) | LogInjectionTest.java:1210:45:1210:52 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1210:45:1210:52 | source(...) | user-provided value | +| LogInjectionTest.java:1214:25:1214:47 | (...)... | LogInjectionTest.java:1214:40:1214:47 | source(...) : Object | LogInjectionTest.java:1214:25:1214:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1214:40:1214:47 | source(...) | user-provided value | +| LogInjectionTest.java:1215:25:1215:42 | (...)... | LogInjectionTest.java:1215:35:1215:42 | source(...) : Object | LogInjectionTest.java:1215:25:1215:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1215:35:1215:42 | source(...) | user-provided value | +| LogInjectionTest.java:1216:25:1216:32 | source(...) | LogInjectionTest.java:1216:25:1216:32 | source(...) | LogInjectionTest.java:1216:25:1216:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1216:25:1216:32 | source(...) | user-provided value | +| LogInjectionTest.java:1217:25:1217:41 | (...)... | LogInjectionTest.java:1217:34:1217:41 | source(...) : Object | LogInjectionTest.java:1217:25:1217:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1217:34:1217:41 | source(...) | user-provided value | +| LogInjectionTest.java:1218:25:1218:41 | (...)... | LogInjectionTest.java:1218:34:1218:41 | source(...) : Object | LogInjectionTest.java:1218:25:1218:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1218:34:1218:41 | source(...) | user-provided value | +| LogInjectionTest.java:1219:40:1219:62 | new Object[] | LogInjectionTest.java:1219:54:1219:61 | source(...) : Object | LogInjectionTest.java:1219:40:1219:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1219:54:1219:61 | source(...) | user-provided value | +| LogInjectionTest.java:1220:40:1220:47 | source(...) | LogInjectionTest.java:1220:40:1220:47 | source(...) | LogInjectionTest.java:1220:40:1220:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1220:40:1220:47 | source(...) | user-provided value | +| LogInjectionTest.java:1222:40:1222:56 | (...)... | LogInjectionTest.java:1222:49:1222:56 | source(...) : Object | LogInjectionTest.java:1222:40:1222:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1222:49:1222:56 | source(...) | user-provided value | +| LogInjectionTest.java:1223:25:1223:41 | (...)... | LogInjectionTest.java:1223:34:1223:41 | source(...) : Object | LogInjectionTest.java:1223:25:1223:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1223:34:1223:41 | source(...) | user-provided value | +| LogInjectionTest.java:1224:55:1224:71 | (...)... | LogInjectionTest.java:1224:64:1224:71 | source(...) : Object | LogInjectionTest.java:1224:55:1224:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1224:64:1224:71 | source(...) | user-provided value | +| LogInjectionTest.java:1225:40:1225:56 | (...)... | LogInjectionTest.java:1225:49:1225:56 | source(...) : Object | LogInjectionTest.java:1225:40:1225:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1225:49:1225:56 | source(...) | user-provided value | +| LogInjectionTest.java:1226:25:1226:41 | (...)... | LogInjectionTest.java:1226:34:1226:41 | source(...) : Object | LogInjectionTest.java:1226:25:1226:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1226:34:1226:41 | source(...) | user-provided value | +| LogInjectionTest.java:1227:70:1227:86 | (...)... | LogInjectionTest.java:1227:79:1227:86 | source(...) : Object | LogInjectionTest.java:1227:70:1227:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1227:79:1227:86 | source(...) | user-provided value | +| LogInjectionTest.java:1228:55:1228:71 | (...)... | LogInjectionTest.java:1228:64:1228:71 | source(...) : Object | LogInjectionTest.java:1228:55:1228:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1228:64:1228:71 | source(...) | user-provided value | +| LogInjectionTest.java:1229:40:1229:56 | (...)... | LogInjectionTest.java:1229:49:1229:56 | source(...) : Object | LogInjectionTest.java:1229:40:1229:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1229:49:1229:56 | source(...) | user-provided value | +| LogInjectionTest.java:1230:25:1230:41 | (...)... | LogInjectionTest.java:1230:34:1230:41 | source(...) : Object | LogInjectionTest.java:1230:25:1230:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1230:34:1230:41 | source(...) | user-provided value | +| LogInjectionTest.java:1231:85:1231:101 | (...)... | LogInjectionTest.java:1231:94:1231:101 | source(...) : Object | LogInjectionTest.java:1231:85:1231:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1231:94:1231:101 | source(...) | user-provided value | +| LogInjectionTest.java:1232:70:1232:86 | (...)... | LogInjectionTest.java:1232:79:1232:86 | source(...) : Object | LogInjectionTest.java:1232:70:1232:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1232:79:1232:86 | source(...) | user-provided value | +| LogInjectionTest.java:1233:55:1233:71 | (...)... | LogInjectionTest.java:1233:64:1233:71 | source(...) : Object | LogInjectionTest.java:1233:55:1233:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1233:64:1233:71 | source(...) | user-provided value | +| LogInjectionTest.java:1234:40:1234:56 | (...)... | LogInjectionTest.java:1234:49:1234:56 | source(...) : Object | LogInjectionTest.java:1234:40:1234:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1234:49:1234:56 | source(...) | user-provided value | +| LogInjectionTest.java:1235:25:1235:41 | (...)... | LogInjectionTest.java:1235:34:1235:41 | source(...) : Object | LogInjectionTest.java:1235:25:1235:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1235:34:1235:41 | source(...) | user-provided value | +| LogInjectionTest.java:1236:100:1236:116 | (...)... | LogInjectionTest.java:1236:109:1236:116 | source(...) : Object | LogInjectionTest.java:1236:100:1236:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1236:109:1236:116 | source(...) | user-provided value | +| LogInjectionTest.java:1237:85:1237:101 | (...)... | LogInjectionTest.java:1237:94:1237:101 | source(...) : Object | LogInjectionTest.java:1237:85:1237:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1237:94:1237:101 | source(...) | user-provided value | +| LogInjectionTest.java:1238:70:1238:86 | (...)... | LogInjectionTest.java:1238:79:1238:86 | source(...) : Object | LogInjectionTest.java:1238:70:1238:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1238:79:1238:86 | source(...) | user-provided value | +| LogInjectionTest.java:1239:55:1239:71 | (...)... | LogInjectionTest.java:1239:64:1239:71 | source(...) : Object | LogInjectionTest.java:1239:55:1239:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1239:64:1239:71 | source(...) | user-provided value | +| LogInjectionTest.java:1240:40:1240:56 | (...)... | LogInjectionTest.java:1240:49:1240:56 | source(...) : Object | LogInjectionTest.java:1240:40:1240:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1240:49:1240:56 | source(...) | user-provided value | +| LogInjectionTest.java:1241:25:1241:41 | (...)... | LogInjectionTest.java:1241:34:1241:41 | source(...) : Object | LogInjectionTest.java:1241:25:1241:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1241:34:1241:41 | source(...) | user-provided value | +| LogInjectionTest.java:1242:115:1242:131 | (...)... | LogInjectionTest.java:1242:124:1242:131 | source(...) : Object | LogInjectionTest.java:1242:115:1242:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1242:124:1242:131 | source(...) | user-provided value | +| LogInjectionTest.java:1243:100:1243:116 | (...)... | LogInjectionTest.java:1243:109:1243:116 | source(...) : Object | LogInjectionTest.java:1243:100:1243:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1243:109:1243:116 | source(...) | user-provided value | +| LogInjectionTest.java:1244:85:1244:101 | (...)... | LogInjectionTest.java:1244:94:1244:101 | source(...) : Object | LogInjectionTest.java:1244:85:1244:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1244:94:1244:101 | source(...) | user-provided value | +| LogInjectionTest.java:1245:70:1245:86 | (...)... | LogInjectionTest.java:1245:79:1245:86 | source(...) : Object | LogInjectionTest.java:1245:70:1245:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1245:79:1245:86 | source(...) | user-provided value | +| LogInjectionTest.java:1246:55:1246:71 | (...)... | LogInjectionTest.java:1246:64:1246:71 | source(...) : Object | LogInjectionTest.java:1246:55:1246:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1246:64:1246:71 | source(...) | user-provided value | +| LogInjectionTest.java:1247:40:1247:56 | (...)... | LogInjectionTest.java:1247:49:1247:56 | source(...) : Object | LogInjectionTest.java:1247:40:1247:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1247:49:1247:56 | source(...) | user-provided value | +| LogInjectionTest.java:1248:25:1248:41 | (...)... | LogInjectionTest.java:1248:34:1248:41 | source(...) : Object | LogInjectionTest.java:1248:25:1248:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1248:34:1248:41 | source(...) | user-provided value | +| LogInjectionTest.java:1249:130:1249:146 | (...)... | LogInjectionTest.java:1249:139:1249:146 | source(...) : Object | LogInjectionTest.java:1249:130:1249:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1249:139:1249:146 | source(...) | user-provided value | +| LogInjectionTest.java:1250:115:1250:131 | (...)... | LogInjectionTest.java:1250:124:1250:131 | source(...) : Object | LogInjectionTest.java:1250:115:1250:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1250:124:1250:131 | source(...) | user-provided value | +| LogInjectionTest.java:1251:100:1251:116 | (...)... | LogInjectionTest.java:1251:109:1251:116 | source(...) : Object | LogInjectionTest.java:1251:100:1251:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1251:109:1251:116 | source(...) | user-provided value | +| LogInjectionTest.java:1252:85:1252:101 | (...)... | LogInjectionTest.java:1252:94:1252:101 | source(...) : Object | LogInjectionTest.java:1252:85:1252:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1252:94:1252:101 | source(...) | user-provided value | +| LogInjectionTest.java:1253:70:1253:86 | (...)... | LogInjectionTest.java:1253:79:1253:86 | source(...) : Object | LogInjectionTest.java:1253:70:1253:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1253:79:1253:86 | source(...) | user-provided value | +| LogInjectionTest.java:1254:55:1254:71 | (...)... | LogInjectionTest.java:1254:64:1254:71 | source(...) : Object | LogInjectionTest.java:1254:55:1254:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1254:64:1254:71 | source(...) | user-provided value | +| LogInjectionTest.java:1255:40:1255:56 | (...)... | LogInjectionTest.java:1255:49:1255:56 | source(...) : Object | LogInjectionTest.java:1255:40:1255:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1255:49:1255:56 | source(...) | user-provided value | +| LogInjectionTest.java:1256:25:1256:41 | (...)... | LogInjectionTest.java:1256:34:1256:41 | source(...) : Object | LogInjectionTest.java:1256:25:1256:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1256:34:1256:41 | source(...) | user-provided value | | LogInjectionTest.java:1257:145:1257:161 | (...)... | LogInjectionTest.java:1257:154:1257:161 | source(...) : Object | LogInjectionTest.java:1257:145:1257:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1257:154:1257:161 | source(...) | user-provided value | | LogInjectionTest.java:1258:130:1258:146 | (...)... | LogInjectionTest.java:1258:139:1258:146 | source(...) : Object | LogInjectionTest.java:1258:130:1258:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1258:139:1258:146 | source(...) | user-provided value | | LogInjectionTest.java:1259:115:1259:131 | (...)... | LogInjectionTest.java:1259:124:1259:131 | source(...) : Object | LogInjectionTest.java:1259:115:1259:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1259:124:1259:131 | source(...) | user-provided value | @@ -1108,568 +1098,568 @@ | LogInjectionTest.java:1263:55:1263:71 | (...)... | LogInjectionTest.java:1263:64:1263:71 | source(...) : Object | LogInjectionTest.java:1263:55:1263:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1263:64:1263:71 | source(...) | user-provided value | | LogInjectionTest.java:1264:40:1264:56 | (...)... | LogInjectionTest.java:1264:49:1264:56 | source(...) : Object | LogInjectionTest.java:1264:40:1264:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1264:49:1264:56 | source(...) | user-provided value | | LogInjectionTest.java:1265:25:1265:41 | (...)... | LogInjectionTest.java:1265:34:1265:41 | source(...) : Object | LogInjectionTest.java:1265:25:1265:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1265:34:1265:41 | source(...) | user-provided value | -| LogInjectionTest.java:1267:25:1267:41 | (...)... | LogInjectionTest.java:1267:34:1267:41 | source(...) : Object | LogInjectionTest.java:1267:25:1267:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1267:34:1267:41 | source(...) | user-provided value | -| LogInjectionTest.java:1268:40:1268:61 | (...)... | LogInjectionTest.java:1268:54:1268:61 | source(...) : Object | LogInjectionTest.java:1268:40:1268:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1268:54:1268:61 | source(...) | user-provided value | -| LogInjectionTest.java:1269:25:1269:46 | (...)... | LogInjectionTest.java:1269:39:1269:46 | source(...) : Object | LogInjectionTest.java:1269:25:1269:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1269:39:1269:46 | source(...) | user-provided value | -| LogInjectionTest.java:1273:23:1273:30 | source(...) | LogInjectionTest.java:1273:23:1273:30 | source(...) | LogInjectionTest.java:1273:23:1273:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1273:23:1273:30 | source(...) | user-provided value | -| LogInjectionTest.java:1274:23:1274:30 | source(...) | LogInjectionTest.java:1274:23:1274:30 | source(...) | LogInjectionTest.java:1274:23:1274:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1274:23:1274:30 | source(...) | user-provided value | -| LogInjectionTest.java:1275:23:1275:30 | source(...) | LogInjectionTest.java:1275:23:1275:30 | source(...) | LogInjectionTest.java:1275:23:1275:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1275:23:1275:30 | source(...) | user-provided value | -| LogInjectionTest.java:1276:22:1276:29 | source(...) | LogInjectionTest.java:1276:22:1276:29 | source(...) | LogInjectionTest.java:1276:22:1276:29 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1276:22:1276:29 | source(...) | user-provided value | -| LogInjectionTest.java:1277:23:1277:30 | source(...) | LogInjectionTest.java:1277:23:1277:30 | source(...) | LogInjectionTest.java:1277:23:1277:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1277:23:1277:30 | source(...) | user-provided value | -| LogInjectionTest.java:1278:22:1278:29 | source(...) | LogInjectionTest.java:1278:22:1278:29 | source(...) | LogInjectionTest.java:1278:22:1278:29 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1278:22:1278:29 | source(...) | user-provided value | -| LogInjectionTest.java:1283:27:1283:34 | source(...) | LogInjectionTest.java:1283:27:1283:34 | source(...) | LogInjectionTest.java:1283:27:1283:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1283:27:1283:34 | source(...) | user-provided value | -| LogInjectionTest.java:1284:27:1284:34 | source(...) | LogInjectionTest.java:1284:27:1284:34 | source(...) | LogInjectionTest.java:1284:27:1284:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1284:27:1284:34 | source(...) | user-provided value | -| LogInjectionTest.java:1288:42:1288:49 | source(...) | LogInjectionTest.java:1288:42:1288:49 | source(...) | LogInjectionTest.java:1288:42:1288:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1288:42:1288:49 | source(...) | user-provided value | -| LogInjectionTest.java:1289:57:1289:79 | new Object[] | LogInjectionTest.java:1289:71:1289:78 | source(...) : Object | LogInjectionTest.java:1289:57:1289:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1289:71:1289:78 | source(...) | user-provided value | -| LogInjectionTest.java:1290:42:1290:49 | source(...) | LogInjectionTest.java:1290:42:1290:49 | source(...) | LogInjectionTest.java:1290:42:1290:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1290:42:1290:49 | source(...) | user-provided value | -| LogInjectionTest.java:1291:27:1291:34 | source(...) | LogInjectionTest.java:1291:27:1291:34 | source(...) | LogInjectionTest.java:1291:27:1291:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1291:27:1291:34 | source(...) | user-provided value | -| LogInjectionTest.java:1292:27:1292:34 | source(...) | LogInjectionTest.java:1292:27:1292:34 | source(...) | LogInjectionTest.java:1292:27:1292:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1292:27:1292:34 | source(...) | user-provided value | -| LogInjectionTest.java:1296:42:1296:49 | source(...) | LogInjectionTest.java:1296:42:1296:49 | source(...) | LogInjectionTest.java:1296:42:1296:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1296:42:1296:49 | source(...) | user-provided value | -| LogInjectionTest.java:1297:57:1297:79 | new Object[] | LogInjectionTest.java:1297:71:1297:78 | source(...) : Object | LogInjectionTest.java:1297:57:1297:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1297:71:1297:78 | source(...) | user-provided value | +| LogInjectionTest.java:1266:160:1266:176 | (...)... | LogInjectionTest.java:1266:169:1266:176 | source(...) : Object | LogInjectionTest.java:1266:160:1266:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1266:169:1266:176 | source(...) | user-provided value | +| LogInjectionTest.java:1267:145:1267:161 | (...)... | LogInjectionTest.java:1267:154:1267:161 | source(...) : Object | LogInjectionTest.java:1267:145:1267:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1267:154:1267:161 | source(...) | user-provided value | +| LogInjectionTest.java:1268:130:1268:146 | (...)... | LogInjectionTest.java:1268:139:1268:146 | source(...) : Object | LogInjectionTest.java:1268:130:1268:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1268:139:1268:146 | source(...) | user-provided value | +| LogInjectionTest.java:1269:115:1269:131 | (...)... | LogInjectionTest.java:1269:124:1269:131 | source(...) : Object | LogInjectionTest.java:1269:115:1269:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1269:124:1269:131 | source(...) | user-provided value | +| LogInjectionTest.java:1270:100:1270:116 | (...)... | LogInjectionTest.java:1270:109:1270:116 | source(...) : Object | LogInjectionTest.java:1270:100:1270:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1270:109:1270:116 | source(...) | user-provided value | +| LogInjectionTest.java:1271:85:1271:101 | (...)... | LogInjectionTest.java:1271:94:1271:101 | source(...) : Object | LogInjectionTest.java:1271:85:1271:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1271:94:1271:101 | source(...) | user-provided value | +| LogInjectionTest.java:1272:70:1272:86 | (...)... | LogInjectionTest.java:1272:79:1272:86 | source(...) : Object | LogInjectionTest.java:1272:70:1272:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1272:79:1272:86 | source(...) | user-provided value | +| LogInjectionTest.java:1273:55:1273:71 | (...)... | LogInjectionTest.java:1273:64:1273:71 | source(...) : Object | LogInjectionTest.java:1273:55:1273:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1273:64:1273:71 | source(...) | user-provided value | +| LogInjectionTest.java:1274:40:1274:56 | (...)... | LogInjectionTest.java:1274:49:1274:56 | source(...) : Object | LogInjectionTest.java:1274:40:1274:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1274:49:1274:56 | source(...) | user-provided value | +| LogInjectionTest.java:1275:25:1275:41 | (...)... | LogInjectionTest.java:1275:34:1275:41 | source(...) : Object | LogInjectionTest.java:1275:25:1275:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1275:34:1275:41 | source(...) | user-provided value | +| LogInjectionTest.java:1277:25:1277:41 | (...)... | LogInjectionTest.java:1277:34:1277:41 | source(...) : Object | LogInjectionTest.java:1277:25:1277:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1277:34:1277:41 | source(...) | user-provided value | +| LogInjectionTest.java:1278:40:1278:61 | (...)... | LogInjectionTest.java:1278:54:1278:61 | source(...) : Object | LogInjectionTest.java:1278:40:1278:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1278:54:1278:61 | source(...) | user-provided value | +| LogInjectionTest.java:1279:25:1279:46 | (...)... | LogInjectionTest.java:1279:39:1279:46 | source(...) : Object | LogInjectionTest.java:1279:25:1279:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1279:39:1279:46 | source(...) | user-provided value | +| LogInjectionTest.java:1283:23:1283:30 | source(...) | LogInjectionTest.java:1283:23:1283:30 | source(...) | LogInjectionTest.java:1283:23:1283:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1283:23:1283:30 | source(...) | user-provided value | +| LogInjectionTest.java:1284:23:1284:30 | source(...) | LogInjectionTest.java:1284:23:1284:30 | source(...) | LogInjectionTest.java:1284:23:1284:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1284:23:1284:30 | source(...) | user-provided value | +| LogInjectionTest.java:1285:23:1285:30 | source(...) | LogInjectionTest.java:1285:23:1285:30 | source(...) | LogInjectionTest.java:1285:23:1285:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1285:23:1285:30 | source(...) | user-provided value | +| LogInjectionTest.java:1286:22:1286:29 | source(...) | LogInjectionTest.java:1286:22:1286:29 | source(...) | LogInjectionTest.java:1286:22:1286:29 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1286:22:1286:29 | source(...) | user-provided value | +| LogInjectionTest.java:1287:23:1287:30 | source(...) | LogInjectionTest.java:1287:23:1287:30 | source(...) | LogInjectionTest.java:1287:23:1287:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1287:23:1287:30 | source(...) | user-provided value | +| LogInjectionTest.java:1288:22:1288:29 | source(...) | LogInjectionTest.java:1288:22:1288:29 | source(...) | LogInjectionTest.java:1288:22:1288:29 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1288:22:1288:29 | source(...) | user-provided value | +| LogInjectionTest.java:1293:27:1293:34 | source(...) | LogInjectionTest.java:1293:27:1293:34 | source(...) | LogInjectionTest.java:1293:27:1293:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1293:27:1293:34 | source(...) | user-provided value | +| LogInjectionTest.java:1294:27:1294:34 | source(...) | LogInjectionTest.java:1294:27:1294:34 | source(...) | LogInjectionTest.java:1294:27:1294:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1294:27:1294:34 | source(...) | user-provided value | | LogInjectionTest.java:1298:42:1298:49 | source(...) | LogInjectionTest.java:1298:42:1298:49 | source(...) | LogInjectionTest.java:1298:42:1298:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1298:42:1298:49 | source(...) | user-provided value | -| LogInjectionTest.java:1299:27:1299:34 | source(...) | LogInjectionTest.java:1299:27:1299:34 | source(...) | LogInjectionTest.java:1299:27:1299:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1299:27:1299:34 | source(...) | user-provided value | -| LogInjectionTest.java:1300:27:1300:34 | source(...) | LogInjectionTest.java:1300:27:1300:34 | source(...) | LogInjectionTest.java:1300:27:1300:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1300:27:1300:34 | source(...) | user-provided value | -| LogInjectionTest.java:1304:42:1304:49 | source(...) | LogInjectionTest.java:1304:42:1304:49 | source(...) | LogInjectionTest.java:1304:42:1304:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1304:42:1304:49 | source(...) | user-provided value | -| LogInjectionTest.java:1305:57:1305:79 | new Object[] | LogInjectionTest.java:1305:71:1305:78 | source(...) : Object | LogInjectionTest.java:1305:57:1305:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1305:71:1305:78 | source(...) | user-provided value | +| LogInjectionTest.java:1299:57:1299:79 | new Object[] | LogInjectionTest.java:1299:71:1299:78 | source(...) : Object | LogInjectionTest.java:1299:57:1299:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1299:71:1299:78 | source(...) | user-provided value | +| LogInjectionTest.java:1300:42:1300:49 | source(...) | LogInjectionTest.java:1300:42:1300:49 | source(...) | LogInjectionTest.java:1300:42:1300:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1300:42:1300:49 | source(...) | user-provided value | +| LogInjectionTest.java:1301:27:1301:34 | source(...) | LogInjectionTest.java:1301:27:1301:34 | source(...) | LogInjectionTest.java:1301:27:1301:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1301:27:1301:34 | source(...) | user-provided value | +| LogInjectionTest.java:1302:27:1302:34 | source(...) | LogInjectionTest.java:1302:27:1302:34 | source(...) | LogInjectionTest.java:1302:27:1302:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1302:27:1302:34 | source(...) | user-provided value | | LogInjectionTest.java:1306:42:1306:49 | source(...) | LogInjectionTest.java:1306:42:1306:49 | source(...) | LogInjectionTest.java:1306:42:1306:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1306:42:1306:49 | source(...) | user-provided value | -| LogInjectionTest.java:1307:26:1307:33 | source(...) | LogInjectionTest.java:1307:26:1307:33 | source(...) | LogInjectionTest.java:1307:26:1307:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1307:26:1307:33 | source(...) | user-provided value | -| LogInjectionTest.java:1308:26:1308:33 | source(...) | LogInjectionTest.java:1308:26:1308:33 | source(...) | LogInjectionTest.java:1308:26:1308:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1308:26:1308:33 | source(...) | user-provided value | -| LogInjectionTest.java:1312:41:1312:48 | source(...) | LogInjectionTest.java:1312:41:1312:48 | source(...) | LogInjectionTest.java:1312:41:1312:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1312:41:1312:48 | source(...) | user-provided value | -| LogInjectionTest.java:1313:56:1313:78 | new Object[] | LogInjectionTest.java:1313:70:1313:77 | source(...) : Object | LogInjectionTest.java:1313:56:1313:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1313:70:1313:77 | source(...) | user-provided value | -| LogInjectionTest.java:1314:41:1314:48 | source(...) | LogInjectionTest.java:1314:41:1314:48 | source(...) | LogInjectionTest.java:1314:41:1314:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1314:41:1314:48 | source(...) | user-provided value | -| LogInjectionTest.java:1315:27:1315:34 | source(...) | LogInjectionTest.java:1315:27:1315:34 | source(...) | LogInjectionTest.java:1315:27:1315:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1315:27:1315:34 | source(...) | user-provided value | -| LogInjectionTest.java:1316:27:1316:34 | source(...) | LogInjectionTest.java:1316:27:1316:34 | source(...) | LogInjectionTest.java:1316:27:1316:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1316:27:1316:34 | source(...) | user-provided value | -| LogInjectionTest.java:1320:42:1320:49 | source(...) | LogInjectionTest.java:1320:42:1320:49 | source(...) | LogInjectionTest.java:1320:42:1320:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1320:42:1320:49 | source(...) | user-provided value | -| LogInjectionTest.java:1321:57:1321:79 | new Object[] | LogInjectionTest.java:1321:71:1321:78 | source(...) : Object | LogInjectionTest.java:1321:57:1321:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1321:71:1321:78 | source(...) | user-provided value | -| LogInjectionTest.java:1322:42:1322:49 | source(...) | LogInjectionTest.java:1322:42:1322:49 | source(...) | LogInjectionTest.java:1322:42:1322:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1322:42:1322:49 | source(...) | user-provided value | -| LogInjectionTest.java:1323:26:1323:33 | source(...) | LogInjectionTest.java:1323:26:1323:33 | source(...) | LogInjectionTest.java:1323:26:1323:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1323:26:1323:33 | source(...) | user-provided value | -| LogInjectionTest.java:1324:26:1324:33 | source(...) | LogInjectionTest.java:1324:26:1324:33 | source(...) | LogInjectionTest.java:1324:26:1324:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1324:26:1324:33 | source(...) | user-provided value | -| LogInjectionTest.java:1328:41:1328:48 | source(...) | LogInjectionTest.java:1328:41:1328:48 | source(...) | LogInjectionTest.java:1328:41:1328:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1328:41:1328:48 | source(...) | user-provided value | -| LogInjectionTest.java:1329:56:1329:78 | new Object[] | LogInjectionTest.java:1329:70:1329:77 | source(...) : Object | LogInjectionTest.java:1329:56:1329:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1329:70:1329:77 | source(...) | user-provided value | -| LogInjectionTest.java:1330:41:1330:48 | source(...) | LogInjectionTest.java:1330:41:1330:48 | source(...) | LogInjectionTest.java:1330:41:1330:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1330:41:1330:48 | source(...) | user-provided value | -| LogInjectionTest.java:1331:64:1331:71 | source(...) | LogInjectionTest.java:1331:64:1331:71 | source(...) | LogInjectionTest.java:1331:64:1331:71 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1331:64:1331:71 | source(...) | user-provided value | -| LogInjectionTest.java:1332:64:1332:71 | source(...) | LogInjectionTest.java:1332:64:1332:71 | source(...) | LogInjectionTest.java:1332:64:1332:71 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1332:64:1332:71 | source(...) | user-provided value | -| LogInjectionTest.java:1336:79:1336:86 | source(...) | LogInjectionTest.java:1336:79:1336:86 | source(...) | LogInjectionTest.java:1336:79:1336:86 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1336:79:1336:86 | source(...) | user-provided value | -| LogInjectionTest.java:1337:79:1337:86 | source(...) | LogInjectionTest.java:1337:79:1337:86 | source(...) | LogInjectionTest.java:1337:79:1337:86 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1337:79:1337:86 | source(...) | user-provided value | -| LogInjectionTest.java:1338:94:1338:116 | new Object[] | LogInjectionTest.java:1338:108:1338:115 | source(...) : Object | LogInjectionTest.java:1338:94:1338:116 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1338:108:1338:115 | source(...) | user-provided value | -| LogInjectionTest.java:1339:43:1339:59 | (...)... | LogInjectionTest.java:1339:52:1339:59 | source(...) : Object | LogInjectionTest.java:1339:43:1339:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1339:52:1339:59 | source(...) | user-provided value | -| LogInjectionTest.java:1340:28:1340:44 | (...)... | LogInjectionTest.java:1340:37:1340:44 | source(...) : Object | LogInjectionTest.java:1340:28:1340:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1340:37:1340:44 | source(...) | user-provided value | -| LogInjectionTest.java:1341:43:1341:59 | (...)... | LogInjectionTest.java:1341:52:1341:59 | source(...) : Object | LogInjectionTest.java:1341:43:1341:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1341:52:1341:59 | source(...) | user-provided value | -| LogInjectionTest.java:1342:28:1342:44 | (...)... | LogInjectionTest.java:1342:37:1342:44 | source(...) : Object | LogInjectionTest.java:1342:28:1342:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1342:37:1342:44 | source(...) | user-provided value | -| LogInjectionTest.java:1343:28:1343:44 | (...)... | LogInjectionTest.java:1343:37:1343:44 | source(...) : Object | LogInjectionTest.java:1343:28:1343:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1343:37:1343:44 | source(...) | user-provided value | -| LogInjectionTest.java:1344:28:1344:44 | (...)... | LogInjectionTest.java:1344:37:1344:44 | source(...) : Object | LogInjectionTest.java:1344:28:1344:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1344:37:1344:44 | source(...) | user-provided value | -| LogInjectionTest.java:1345:43:1345:65 | new Object[] | LogInjectionTest.java:1345:57:1345:64 | source(...) : Object | LogInjectionTest.java:1345:43:1345:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1345:57:1345:64 | source(...) | user-provided value | -| LogInjectionTest.java:1346:43:1346:65 | new Object[] | LogInjectionTest.java:1346:57:1346:64 | source(...) : Object | LogInjectionTest.java:1346:43:1346:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1346:57:1346:64 | source(...) | user-provided value | -| LogInjectionTest.java:1347:58:1347:74 | (...)... | LogInjectionTest.java:1347:67:1347:74 | source(...) : Object | LogInjectionTest.java:1347:58:1347:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1347:67:1347:74 | source(...) | user-provided value | -| LogInjectionTest.java:1348:43:1348:59 | (...)... | LogInjectionTest.java:1348:52:1348:59 | source(...) : Object | LogInjectionTest.java:1348:43:1348:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1348:52:1348:59 | source(...) | user-provided value | -| LogInjectionTest.java:1349:28:1349:44 | (...)... | LogInjectionTest.java:1349:37:1349:44 | source(...) : Object | LogInjectionTest.java:1349:28:1349:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1349:37:1349:44 | source(...) | user-provided value | -| LogInjectionTest.java:1350:58:1350:74 | (...)... | LogInjectionTest.java:1350:67:1350:74 | source(...) : Object | LogInjectionTest.java:1350:58:1350:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1350:67:1350:74 | source(...) | user-provided value | +| LogInjectionTest.java:1307:57:1307:79 | new Object[] | LogInjectionTest.java:1307:71:1307:78 | source(...) : Object | LogInjectionTest.java:1307:57:1307:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1307:71:1307:78 | source(...) | user-provided value | +| LogInjectionTest.java:1308:42:1308:49 | source(...) | LogInjectionTest.java:1308:42:1308:49 | source(...) | LogInjectionTest.java:1308:42:1308:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1308:42:1308:49 | source(...) | user-provided value | +| LogInjectionTest.java:1309:27:1309:34 | source(...) | LogInjectionTest.java:1309:27:1309:34 | source(...) | LogInjectionTest.java:1309:27:1309:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1309:27:1309:34 | source(...) | user-provided value | +| LogInjectionTest.java:1310:27:1310:34 | source(...) | LogInjectionTest.java:1310:27:1310:34 | source(...) | LogInjectionTest.java:1310:27:1310:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1310:27:1310:34 | source(...) | user-provided value | +| LogInjectionTest.java:1314:42:1314:49 | source(...) | LogInjectionTest.java:1314:42:1314:49 | source(...) | LogInjectionTest.java:1314:42:1314:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1314:42:1314:49 | source(...) | user-provided value | +| LogInjectionTest.java:1315:57:1315:79 | new Object[] | LogInjectionTest.java:1315:71:1315:78 | source(...) : Object | LogInjectionTest.java:1315:57:1315:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1315:71:1315:78 | source(...) | user-provided value | +| LogInjectionTest.java:1316:42:1316:49 | source(...) | LogInjectionTest.java:1316:42:1316:49 | source(...) | LogInjectionTest.java:1316:42:1316:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1316:42:1316:49 | source(...) | user-provided value | +| LogInjectionTest.java:1317:26:1317:33 | source(...) | LogInjectionTest.java:1317:26:1317:33 | source(...) | LogInjectionTest.java:1317:26:1317:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1317:26:1317:33 | source(...) | user-provided value | +| LogInjectionTest.java:1318:26:1318:33 | source(...) | LogInjectionTest.java:1318:26:1318:33 | source(...) | LogInjectionTest.java:1318:26:1318:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1318:26:1318:33 | source(...) | user-provided value | +| LogInjectionTest.java:1322:41:1322:48 | source(...) | LogInjectionTest.java:1322:41:1322:48 | source(...) | LogInjectionTest.java:1322:41:1322:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1322:41:1322:48 | source(...) | user-provided value | +| LogInjectionTest.java:1323:56:1323:78 | new Object[] | LogInjectionTest.java:1323:70:1323:77 | source(...) : Object | LogInjectionTest.java:1323:56:1323:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1323:70:1323:77 | source(...) | user-provided value | +| LogInjectionTest.java:1324:41:1324:48 | source(...) | LogInjectionTest.java:1324:41:1324:48 | source(...) | LogInjectionTest.java:1324:41:1324:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1324:41:1324:48 | source(...) | user-provided value | +| LogInjectionTest.java:1325:27:1325:34 | source(...) | LogInjectionTest.java:1325:27:1325:34 | source(...) | LogInjectionTest.java:1325:27:1325:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1325:27:1325:34 | source(...) | user-provided value | +| LogInjectionTest.java:1326:27:1326:34 | source(...) | LogInjectionTest.java:1326:27:1326:34 | source(...) | LogInjectionTest.java:1326:27:1326:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1326:27:1326:34 | source(...) | user-provided value | +| LogInjectionTest.java:1330:42:1330:49 | source(...) | LogInjectionTest.java:1330:42:1330:49 | source(...) | LogInjectionTest.java:1330:42:1330:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1330:42:1330:49 | source(...) | user-provided value | +| LogInjectionTest.java:1331:57:1331:79 | new Object[] | LogInjectionTest.java:1331:71:1331:78 | source(...) : Object | LogInjectionTest.java:1331:57:1331:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1331:71:1331:78 | source(...) | user-provided value | +| LogInjectionTest.java:1332:42:1332:49 | source(...) | LogInjectionTest.java:1332:42:1332:49 | source(...) | LogInjectionTest.java:1332:42:1332:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1332:42:1332:49 | source(...) | user-provided value | +| LogInjectionTest.java:1333:26:1333:33 | source(...) | LogInjectionTest.java:1333:26:1333:33 | source(...) | LogInjectionTest.java:1333:26:1333:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1333:26:1333:33 | source(...) | user-provided value | +| LogInjectionTest.java:1334:26:1334:33 | source(...) | LogInjectionTest.java:1334:26:1334:33 | source(...) | LogInjectionTest.java:1334:26:1334:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1334:26:1334:33 | source(...) | user-provided value | +| LogInjectionTest.java:1338:41:1338:48 | source(...) | LogInjectionTest.java:1338:41:1338:48 | source(...) | LogInjectionTest.java:1338:41:1338:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1338:41:1338:48 | source(...) | user-provided value | +| LogInjectionTest.java:1339:56:1339:78 | new Object[] | LogInjectionTest.java:1339:70:1339:77 | source(...) : Object | LogInjectionTest.java:1339:56:1339:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1339:70:1339:77 | source(...) | user-provided value | +| LogInjectionTest.java:1340:41:1340:48 | source(...) | LogInjectionTest.java:1340:41:1340:48 | source(...) | LogInjectionTest.java:1340:41:1340:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1340:41:1340:48 | source(...) | user-provided value | +| LogInjectionTest.java:1341:64:1341:71 | source(...) | LogInjectionTest.java:1341:64:1341:71 | source(...) | LogInjectionTest.java:1341:64:1341:71 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1341:64:1341:71 | source(...) | user-provided value | +| LogInjectionTest.java:1342:64:1342:71 | source(...) | LogInjectionTest.java:1342:64:1342:71 | source(...) | LogInjectionTest.java:1342:64:1342:71 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1342:64:1342:71 | source(...) | user-provided value | +| LogInjectionTest.java:1346:79:1346:86 | source(...) | LogInjectionTest.java:1346:79:1346:86 | source(...) | LogInjectionTest.java:1346:79:1346:86 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1346:79:1346:86 | source(...) | user-provided value | +| LogInjectionTest.java:1347:79:1347:86 | source(...) | LogInjectionTest.java:1347:79:1347:86 | source(...) | LogInjectionTest.java:1347:79:1347:86 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1347:79:1347:86 | source(...) | user-provided value | +| LogInjectionTest.java:1348:94:1348:116 | new Object[] | LogInjectionTest.java:1348:108:1348:115 | source(...) : Object | LogInjectionTest.java:1348:94:1348:116 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1348:108:1348:115 | source(...) | user-provided value | +| LogInjectionTest.java:1349:43:1349:59 | (...)... | LogInjectionTest.java:1349:52:1349:59 | source(...) : Object | LogInjectionTest.java:1349:43:1349:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1349:52:1349:59 | source(...) | user-provided value | +| LogInjectionTest.java:1350:28:1350:44 | (...)... | LogInjectionTest.java:1350:37:1350:44 | source(...) : Object | LogInjectionTest.java:1350:28:1350:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1350:37:1350:44 | source(...) | user-provided value | | LogInjectionTest.java:1351:43:1351:59 | (...)... | LogInjectionTest.java:1351:52:1351:59 | source(...) : Object | LogInjectionTest.java:1351:43:1351:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1351:52:1351:59 | source(...) | user-provided value | | LogInjectionTest.java:1352:28:1352:44 | (...)... | LogInjectionTest.java:1352:37:1352:44 | source(...) : Object | LogInjectionTest.java:1352:28:1352:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1352:37:1352:44 | source(...) | user-provided value | -| LogInjectionTest.java:1353:73:1353:89 | (...)... | LogInjectionTest.java:1353:82:1353:89 | source(...) : Object | LogInjectionTest.java:1353:73:1353:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1353:82:1353:89 | source(...) | user-provided value | -| LogInjectionTest.java:1354:58:1354:74 | (...)... | LogInjectionTest.java:1354:67:1354:74 | source(...) : Object | LogInjectionTest.java:1354:58:1354:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1354:67:1354:74 | source(...) | user-provided value | -| LogInjectionTest.java:1355:43:1355:59 | (...)... | LogInjectionTest.java:1355:52:1355:59 | source(...) : Object | LogInjectionTest.java:1355:43:1355:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1355:52:1355:59 | source(...) | user-provided value | -| LogInjectionTest.java:1356:28:1356:44 | (...)... | LogInjectionTest.java:1356:37:1356:44 | source(...) : Object | LogInjectionTest.java:1356:28:1356:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1356:37:1356:44 | source(...) | user-provided value | -| LogInjectionTest.java:1357:73:1357:89 | (...)... | LogInjectionTest.java:1357:82:1357:89 | source(...) : Object | LogInjectionTest.java:1357:73:1357:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1357:82:1357:89 | source(...) | user-provided value | -| LogInjectionTest.java:1358:58:1358:74 | (...)... | LogInjectionTest.java:1358:67:1358:74 | source(...) : Object | LogInjectionTest.java:1358:58:1358:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1358:67:1358:74 | source(...) | user-provided value | -| LogInjectionTest.java:1359:43:1359:59 | (...)... | LogInjectionTest.java:1359:52:1359:59 | source(...) : Object | LogInjectionTest.java:1359:43:1359:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1359:52:1359:59 | source(...) | user-provided value | -| LogInjectionTest.java:1360:28:1360:44 | (...)... | LogInjectionTest.java:1360:37:1360:44 | source(...) : Object | LogInjectionTest.java:1360:28:1360:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1360:37:1360:44 | source(...) | user-provided value | +| LogInjectionTest.java:1353:28:1353:44 | (...)... | LogInjectionTest.java:1353:37:1353:44 | source(...) : Object | LogInjectionTest.java:1353:28:1353:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1353:37:1353:44 | source(...) | user-provided value | +| LogInjectionTest.java:1354:28:1354:44 | (...)... | LogInjectionTest.java:1354:37:1354:44 | source(...) : Object | LogInjectionTest.java:1354:28:1354:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1354:37:1354:44 | source(...) | user-provided value | +| LogInjectionTest.java:1355:43:1355:65 | new Object[] | LogInjectionTest.java:1355:57:1355:64 | source(...) : Object | LogInjectionTest.java:1355:43:1355:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1355:57:1355:64 | source(...) | user-provided value | +| LogInjectionTest.java:1356:43:1356:65 | new Object[] | LogInjectionTest.java:1356:57:1356:64 | source(...) : Object | LogInjectionTest.java:1356:43:1356:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1356:57:1356:64 | source(...) | user-provided value | +| LogInjectionTest.java:1357:58:1357:74 | (...)... | LogInjectionTest.java:1357:67:1357:74 | source(...) : Object | LogInjectionTest.java:1357:58:1357:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1357:67:1357:74 | source(...) | user-provided value | +| LogInjectionTest.java:1358:43:1358:59 | (...)... | LogInjectionTest.java:1358:52:1358:59 | source(...) : Object | LogInjectionTest.java:1358:43:1358:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1358:52:1358:59 | source(...) | user-provided value | +| LogInjectionTest.java:1359:28:1359:44 | (...)... | LogInjectionTest.java:1359:37:1359:44 | source(...) : Object | LogInjectionTest.java:1359:28:1359:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1359:37:1359:44 | source(...) | user-provided value | +| LogInjectionTest.java:1360:58:1360:74 | (...)... | LogInjectionTest.java:1360:67:1360:74 | source(...) : Object | LogInjectionTest.java:1360:58:1360:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1360:67:1360:74 | source(...) | user-provided value | | LogInjectionTest.java:1361:43:1361:59 | (...)... | LogInjectionTest.java:1361:52:1361:59 | source(...) : Object | LogInjectionTest.java:1361:43:1361:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1361:52:1361:59 | source(...) | user-provided value | | LogInjectionTest.java:1362:28:1362:44 | (...)... | LogInjectionTest.java:1362:37:1362:44 | source(...) : Object | LogInjectionTest.java:1362:28:1362:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1362:37:1362:44 | source(...) | user-provided value | -| LogInjectionTest.java:1363:43:1363:59 | (...)... | LogInjectionTest.java:1363:52:1363:59 | source(...) : Object | LogInjectionTest.java:1363:43:1363:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1363:52:1363:59 | source(...) | user-provided value | -| LogInjectionTest.java:1364:28:1364:44 | (...)... | LogInjectionTest.java:1364:37:1364:44 | source(...) : Object | LogInjectionTest.java:1364:28:1364:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1364:37:1364:44 | source(...) | user-provided value | -| LogInjectionTest.java:1365:28:1365:44 | (...)... | LogInjectionTest.java:1365:37:1365:44 | source(...) : Object | LogInjectionTest.java:1365:28:1365:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1365:37:1365:44 | source(...) | user-provided value | +| LogInjectionTest.java:1363:73:1363:89 | (...)... | LogInjectionTest.java:1363:82:1363:89 | source(...) : Object | LogInjectionTest.java:1363:73:1363:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1363:82:1363:89 | source(...) | user-provided value | +| LogInjectionTest.java:1364:58:1364:74 | (...)... | LogInjectionTest.java:1364:67:1364:74 | source(...) : Object | LogInjectionTest.java:1364:58:1364:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1364:67:1364:74 | source(...) | user-provided value | +| LogInjectionTest.java:1365:43:1365:59 | (...)... | LogInjectionTest.java:1365:52:1365:59 | source(...) : Object | LogInjectionTest.java:1365:43:1365:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1365:52:1365:59 | source(...) | user-provided value | | LogInjectionTest.java:1366:28:1366:44 | (...)... | LogInjectionTest.java:1366:37:1366:44 | source(...) : Object | LogInjectionTest.java:1366:28:1366:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1366:37:1366:44 | source(...) | user-provided value | -| LogInjectionTest.java:1367:43:1367:65 | new Object[] | LogInjectionTest.java:1367:57:1367:64 | source(...) : Object | LogInjectionTest.java:1367:43:1367:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1367:57:1367:64 | source(...) | user-provided value | -| LogInjectionTest.java:1368:43:1368:65 | new Object[] | LogInjectionTest.java:1368:57:1368:64 | source(...) : Object | LogInjectionTest.java:1368:43:1368:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1368:57:1368:64 | source(...) | user-provided value | -| LogInjectionTest.java:1369:58:1369:74 | (...)... | LogInjectionTest.java:1369:67:1369:74 | source(...) : Object | LogInjectionTest.java:1369:58:1369:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1369:67:1369:74 | source(...) | user-provided value | -| LogInjectionTest.java:1370:43:1370:59 | (...)... | LogInjectionTest.java:1370:52:1370:59 | source(...) : Object | LogInjectionTest.java:1370:43:1370:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1370:52:1370:59 | source(...) | user-provided value | -| LogInjectionTest.java:1371:28:1371:44 | (...)... | LogInjectionTest.java:1371:37:1371:44 | source(...) : Object | LogInjectionTest.java:1371:28:1371:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1371:37:1371:44 | source(...) | user-provided value | -| LogInjectionTest.java:1372:58:1372:74 | (...)... | LogInjectionTest.java:1372:67:1372:74 | source(...) : Object | LogInjectionTest.java:1372:58:1372:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1372:67:1372:74 | source(...) | user-provided value | +| LogInjectionTest.java:1367:73:1367:89 | (...)... | LogInjectionTest.java:1367:82:1367:89 | source(...) : Object | LogInjectionTest.java:1367:73:1367:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1367:82:1367:89 | source(...) | user-provided value | +| LogInjectionTest.java:1368:58:1368:74 | (...)... | LogInjectionTest.java:1368:67:1368:74 | source(...) : Object | LogInjectionTest.java:1368:58:1368:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1368:67:1368:74 | source(...) | user-provided value | +| LogInjectionTest.java:1369:43:1369:59 | (...)... | LogInjectionTest.java:1369:52:1369:59 | source(...) : Object | LogInjectionTest.java:1369:43:1369:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1369:52:1369:59 | source(...) | user-provided value | +| LogInjectionTest.java:1370:28:1370:44 | (...)... | LogInjectionTest.java:1370:37:1370:44 | source(...) : Object | LogInjectionTest.java:1370:28:1370:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1370:37:1370:44 | source(...) | user-provided value | +| LogInjectionTest.java:1371:43:1371:59 | (...)... | LogInjectionTest.java:1371:52:1371:59 | source(...) : Object | LogInjectionTest.java:1371:43:1371:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1371:52:1371:59 | source(...) | user-provided value | +| LogInjectionTest.java:1372:28:1372:44 | (...)... | LogInjectionTest.java:1372:37:1372:44 | source(...) : Object | LogInjectionTest.java:1372:28:1372:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1372:37:1372:44 | source(...) | user-provided value | | LogInjectionTest.java:1373:43:1373:59 | (...)... | LogInjectionTest.java:1373:52:1373:59 | source(...) : Object | LogInjectionTest.java:1373:43:1373:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1373:52:1373:59 | source(...) | user-provided value | | LogInjectionTest.java:1374:28:1374:44 | (...)... | LogInjectionTest.java:1374:37:1374:44 | source(...) : Object | LogInjectionTest.java:1374:28:1374:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1374:37:1374:44 | source(...) | user-provided value | -| LogInjectionTest.java:1375:73:1375:89 | (...)... | LogInjectionTest.java:1375:82:1375:89 | source(...) : Object | LogInjectionTest.java:1375:73:1375:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1375:82:1375:89 | source(...) | user-provided value | -| LogInjectionTest.java:1376:58:1376:74 | (...)... | LogInjectionTest.java:1376:67:1376:74 | source(...) : Object | LogInjectionTest.java:1376:58:1376:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1376:67:1376:74 | source(...) | user-provided value | -| LogInjectionTest.java:1377:43:1377:59 | (...)... | LogInjectionTest.java:1377:52:1377:59 | source(...) : Object | LogInjectionTest.java:1377:43:1377:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1377:52:1377:59 | source(...) | user-provided value | -| LogInjectionTest.java:1378:28:1378:44 | (...)... | LogInjectionTest.java:1378:37:1378:44 | source(...) : Object | LogInjectionTest.java:1378:28:1378:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1378:37:1378:44 | source(...) | user-provided value | -| LogInjectionTest.java:1379:73:1379:89 | (...)... | LogInjectionTest.java:1379:82:1379:89 | source(...) : Object | LogInjectionTest.java:1379:73:1379:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1379:82:1379:89 | source(...) | user-provided value | -| LogInjectionTest.java:1380:58:1380:74 | (...)... | LogInjectionTest.java:1380:67:1380:74 | source(...) : Object | LogInjectionTest.java:1380:58:1380:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1380:67:1380:74 | source(...) | user-provided value | -| LogInjectionTest.java:1381:43:1381:59 | (...)... | LogInjectionTest.java:1381:52:1381:59 | source(...) : Object | LogInjectionTest.java:1381:43:1381:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1381:52:1381:59 | source(...) | user-provided value | -| LogInjectionTest.java:1382:28:1382:44 | (...)... | LogInjectionTest.java:1382:37:1382:44 | source(...) : Object | LogInjectionTest.java:1382:28:1382:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1382:37:1382:44 | source(...) | user-provided value | +| LogInjectionTest.java:1375:28:1375:44 | (...)... | LogInjectionTest.java:1375:37:1375:44 | source(...) : Object | LogInjectionTest.java:1375:28:1375:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1375:37:1375:44 | source(...) | user-provided value | +| LogInjectionTest.java:1376:28:1376:44 | (...)... | LogInjectionTest.java:1376:37:1376:44 | source(...) : Object | LogInjectionTest.java:1376:28:1376:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1376:37:1376:44 | source(...) | user-provided value | +| LogInjectionTest.java:1377:43:1377:65 | new Object[] | LogInjectionTest.java:1377:57:1377:64 | source(...) : Object | LogInjectionTest.java:1377:43:1377:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1377:57:1377:64 | source(...) | user-provided value | +| LogInjectionTest.java:1378:43:1378:65 | new Object[] | LogInjectionTest.java:1378:57:1378:64 | source(...) : Object | LogInjectionTest.java:1378:43:1378:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1378:57:1378:64 | source(...) | user-provided value | +| LogInjectionTest.java:1379:58:1379:74 | (...)... | LogInjectionTest.java:1379:67:1379:74 | source(...) : Object | LogInjectionTest.java:1379:58:1379:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1379:67:1379:74 | source(...) | user-provided value | +| LogInjectionTest.java:1380:43:1380:59 | (...)... | LogInjectionTest.java:1380:52:1380:59 | source(...) : Object | LogInjectionTest.java:1380:43:1380:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1380:52:1380:59 | source(...) | user-provided value | +| LogInjectionTest.java:1381:28:1381:44 | (...)... | LogInjectionTest.java:1381:37:1381:44 | source(...) : Object | LogInjectionTest.java:1381:28:1381:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1381:37:1381:44 | source(...) | user-provided value | +| LogInjectionTest.java:1382:58:1382:74 | (...)... | LogInjectionTest.java:1382:67:1382:74 | source(...) : Object | LogInjectionTest.java:1382:58:1382:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1382:67:1382:74 | source(...) | user-provided value | | LogInjectionTest.java:1383:43:1383:59 | (...)... | LogInjectionTest.java:1383:52:1383:59 | source(...) : Object | LogInjectionTest.java:1383:43:1383:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1383:52:1383:59 | source(...) | user-provided value | | LogInjectionTest.java:1384:28:1384:44 | (...)... | LogInjectionTest.java:1384:37:1384:44 | source(...) : Object | LogInjectionTest.java:1384:28:1384:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1384:37:1384:44 | source(...) | user-provided value | -| LogInjectionTest.java:1385:43:1385:59 | (...)... | LogInjectionTest.java:1385:52:1385:59 | source(...) : Object | LogInjectionTest.java:1385:43:1385:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1385:52:1385:59 | source(...) | user-provided value | -| LogInjectionTest.java:1386:28:1386:44 | (...)... | LogInjectionTest.java:1386:37:1386:44 | source(...) : Object | LogInjectionTest.java:1386:28:1386:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1386:37:1386:44 | source(...) | user-provided value | -| LogInjectionTest.java:1387:28:1387:44 | (...)... | LogInjectionTest.java:1387:37:1387:44 | source(...) : Object | LogInjectionTest.java:1387:28:1387:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1387:37:1387:44 | source(...) | user-provided value | +| LogInjectionTest.java:1385:73:1385:89 | (...)... | LogInjectionTest.java:1385:82:1385:89 | source(...) : Object | LogInjectionTest.java:1385:73:1385:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1385:82:1385:89 | source(...) | user-provided value | +| LogInjectionTest.java:1386:58:1386:74 | (...)... | LogInjectionTest.java:1386:67:1386:74 | source(...) : Object | LogInjectionTest.java:1386:58:1386:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1386:67:1386:74 | source(...) | user-provided value | +| LogInjectionTest.java:1387:43:1387:59 | (...)... | LogInjectionTest.java:1387:52:1387:59 | source(...) : Object | LogInjectionTest.java:1387:43:1387:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1387:52:1387:59 | source(...) | user-provided value | | LogInjectionTest.java:1388:28:1388:44 | (...)... | LogInjectionTest.java:1388:37:1388:44 | source(...) : Object | LogInjectionTest.java:1388:28:1388:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1388:37:1388:44 | source(...) | user-provided value | -| LogInjectionTest.java:1389:43:1389:65 | new Object[] | LogInjectionTest.java:1389:57:1389:64 | source(...) : Object | LogInjectionTest.java:1389:43:1389:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1389:57:1389:64 | source(...) | user-provided value | -| LogInjectionTest.java:1390:43:1390:65 | new Object[] | LogInjectionTest.java:1390:57:1390:64 | source(...) : Object | LogInjectionTest.java:1390:43:1390:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1390:57:1390:64 | source(...) | user-provided value | -| LogInjectionTest.java:1391:58:1391:74 | (...)... | LogInjectionTest.java:1391:67:1391:74 | source(...) : Object | LogInjectionTest.java:1391:58:1391:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1391:67:1391:74 | source(...) | user-provided value | -| LogInjectionTest.java:1392:43:1392:59 | (...)... | LogInjectionTest.java:1392:52:1392:59 | source(...) : Object | LogInjectionTest.java:1392:43:1392:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1392:52:1392:59 | source(...) | user-provided value | -| LogInjectionTest.java:1393:28:1393:44 | (...)... | LogInjectionTest.java:1393:37:1393:44 | source(...) : Object | LogInjectionTest.java:1393:28:1393:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1393:37:1393:44 | source(...) | user-provided value | -| LogInjectionTest.java:1394:58:1394:74 | (...)... | LogInjectionTest.java:1394:67:1394:74 | source(...) : Object | LogInjectionTest.java:1394:58:1394:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1394:67:1394:74 | source(...) | user-provided value | +| LogInjectionTest.java:1389:73:1389:89 | (...)... | LogInjectionTest.java:1389:82:1389:89 | source(...) : Object | LogInjectionTest.java:1389:73:1389:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1389:82:1389:89 | source(...) | user-provided value | +| LogInjectionTest.java:1390:58:1390:74 | (...)... | LogInjectionTest.java:1390:67:1390:74 | source(...) : Object | LogInjectionTest.java:1390:58:1390:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1390:67:1390:74 | source(...) | user-provided value | +| LogInjectionTest.java:1391:43:1391:59 | (...)... | LogInjectionTest.java:1391:52:1391:59 | source(...) : Object | LogInjectionTest.java:1391:43:1391:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1391:52:1391:59 | source(...) | user-provided value | +| LogInjectionTest.java:1392:28:1392:44 | (...)... | LogInjectionTest.java:1392:37:1392:44 | source(...) : Object | LogInjectionTest.java:1392:28:1392:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1392:37:1392:44 | source(...) | user-provided value | +| LogInjectionTest.java:1393:43:1393:59 | (...)... | LogInjectionTest.java:1393:52:1393:59 | source(...) : Object | LogInjectionTest.java:1393:43:1393:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1393:52:1393:59 | source(...) | user-provided value | +| LogInjectionTest.java:1394:28:1394:44 | (...)... | LogInjectionTest.java:1394:37:1394:44 | source(...) : Object | LogInjectionTest.java:1394:28:1394:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1394:37:1394:44 | source(...) | user-provided value | | LogInjectionTest.java:1395:43:1395:59 | (...)... | LogInjectionTest.java:1395:52:1395:59 | source(...) : Object | LogInjectionTest.java:1395:43:1395:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1395:52:1395:59 | source(...) | user-provided value | | LogInjectionTest.java:1396:28:1396:44 | (...)... | LogInjectionTest.java:1396:37:1396:44 | source(...) : Object | LogInjectionTest.java:1396:28:1396:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1396:37:1396:44 | source(...) | user-provided value | -| LogInjectionTest.java:1397:73:1397:89 | (...)... | LogInjectionTest.java:1397:82:1397:89 | source(...) : Object | LogInjectionTest.java:1397:73:1397:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1397:82:1397:89 | source(...) | user-provided value | -| LogInjectionTest.java:1398:58:1398:74 | (...)... | LogInjectionTest.java:1398:67:1398:74 | source(...) : Object | LogInjectionTest.java:1398:58:1398:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1398:67:1398:74 | source(...) | user-provided value | -| LogInjectionTest.java:1399:43:1399:59 | (...)... | LogInjectionTest.java:1399:52:1399:59 | source(...) : Object | LogInjectionTest.java:1399:43:1399:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1399:52:1399:59 | source(...) | user-provided value | -| LogInjectionTest.java:1400:28:1400:44 | (...)... | LogInjectionTest.java:1400:37:1400:44 | source(...) : Object | LogInjectionTest.java:1400:28:1400:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1400:37:1400:44 | source(...) | user-provided value | -| LogInjectionTest.java:1401:73:1401:89 | (...)... | LogInjectionTest.java:1401:82:1401:89 | source(...) : Object | LogInjectionTest.java:1401:73:1401:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1401:82:1401:89 | source(...) | user-provided value | -| LogInjectionTest.java:1402:58:1402:74 | (...)... | LogInjectionTest.java:1402:67:1402:74 | source(...) : Object | LogInjectionTest.java:1402:58:1402:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1402:67:1402:74 | source(...) | user-provided value | -| LogInjectionTest.java:1403:43:1403:59 | (...)... | LogInjectionTest.java:1403:52:1403:59 | source(...) : Object | LogInjectionTest.java:1403:43:1403:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1403:52:1403:59 | source(...) | user-provided value | -| LogInjectionTest.java:1404:28:1404:44 | (...)... | LogInjectionTest.java:1404:37:1404:44 | source(...) : Object | LogInjectionTest.java:1404:28:1404:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1404:37:1404:44 | source(...) | user-provided value | -| LogInjectionTest.java:1405:42:1405:58 | (...)... | LogInjectionTest.java:1405:51:1405:58 | source(...) : Object | LogInjectionTest.java:1405:42:1405:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1405:51:1405:58 | source(...) | user-provided value | -| LogInjectionTest.java:1406:27:1406:43 | (...)... | LogInjectionTest.java:1406:36:1406:43 | source(...) : Object | LogInjectionTest.java:1406:27:1406:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1406:36:1406:43 | source(...) | user-provided value | -| LogInjectionTest.java:1407:42:1407:58 | (...)... | LogInjectionTest.java:1407:51:1407:58 | source(...) : Object | LogInjectionTest.java:1407:42:1407:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1407:51:1407:58 | source(...) | user-provided value | -| LogInjectionTest.java:1408:27:1408:43 | (...)... | LogInjectionTest.java:1408:36:1408:43 | source(...) : Object | LogInjectionTest.java:1408:27:1408:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1408:36:1408:43 | source(...) | user-provided value | -| LogInjectionTest.java:1409:27:1409:43 | (...)... | LogInjectionTest.java:1409:36:1409:43 | source(...) : Object | LogInjectionTest.java:1409:27:1409:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1409:36:1409:43 | source(...) | user-provided value | -| LogInjectionTest.java:1410:27:1410:43 | (...)... | LogInjectionTest.java:1410:36:1410:43 | source(...) : Object | LogInjectionTest.java:1410:27:1410:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1410:36:1410:43 | source(...) | user-provided value | -| LogInjectionTest.java:1411:42:1411:64 | new Object[] | LogInjectionTest.java:1411:56:1411:63 | source(...) : Object | LogInjectionTest.java:1411:42:1411:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1411:56:1411:63 | source(...) | user-provided value | -| LogInjectionTest.java:1412:42:1412:64 | new Object[] | LogInjectionTest.java:1412:56:1412:63 | source(...) : Object | LogInjectionTest.java:1412:42:1412:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1412:56:1412:63 | source(...) | user-provided value | -| LogInjectionTest.java:1413:57:1413:73 | (...)... | LogInjectionTest.java:1413:66:1413:73 | source(...) : Object | LogInjectionTest.java:1413:57:1413:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1413:66:1413:73 | source(...) | user-provided value | -| LogInjectionTest.java:1414:42:1414:58 | (...)... | LogInjectionTest.java:1414:51:1414:58 | source(...) : Object | LogInjectionTest.java:1414:42:1414:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1414:51:1414:58 | source(...) | user-provided value | -| LogInjectionTest.java:1415:27:1415:43 | (...)... | LogInjectionTest.java:1415:36:1415:43 | source(...) : Object | LogInjectionTest.java:1415:27:1415:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1415:36:1415:43 | source(...) | user-provided value | -| LogInjectionTest.java:1416:57:1416:73 | (...)... | LogInjectionTest.java:1416:66:1416:73 | source(...) : Object | LogInjectionTest.java:1416:57:1416:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1416:66:1416:73 | source(...) | user-provided value | +| LogInjectionTest.java:1397:28:1397:44 | (...)... | LogInjectionTest.java:1397:37:1397:44 | source(...) : Object | LogInjectionTest.java:1397:28:1397:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1397:37:1397:44 | source(...) | user-provided value | +| LogInjectionTest.java:1398:28:1398:44 | (...)... | LogInjectionTest.java:1398:37:1398:44 | source(...) : Object | LogInjectionTest.java:1398:28:1398:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1398:37:1398:44 | source(...) | user-provided value | +| LogInjectionTest.java:1399:43:1399:65 | new Object[] | LogInjectionTest.java:1399:57:1399:64 | source(...) : Object | LogInjectionTest.java:1399:43:1399:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1399:57:1399:64 | source(...) | user-provided value | +| LogInjectionTest.java:1400:43:1400:65 | new Object[] | LogInjectionTest.java:1400:57:1400:64 | source(...) : Object | LogInjectionTest.java:1400:43:1400:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1400:57:1400:64 | source(...) | user-provided value | +| LogInjectionTest.java:1401:58:1401:74 | (...)... | LogInjectionTest.java:1401:67:1401:74 | source(...) : Object | LogInjectionTest.java:1401:58:1401:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1401:67:1401:74 | source(...) | user-provided value | +| LogInjectionTest.java:1402:43:1402:59 | (...)... | LogInjectionTest.java:1402:52:1402:59 | source(...) : Object | LogInjectionTest.java:1402:43:1402:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1402:52:1402:59 | source(...) | user-provided value | +| LogInjectionTest.java:1403:28:1403:44 | (...)... | LogInjectionTest.java:1403:37:1403:44 | source(...) : Object | LogInjectionTest.java:1403:28:1403:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1403:37:1403:44 | source(...) | user-provided value | +| LogInjectionTest.java:1404:58:1404:74 | (...)... | LogInjectionTest.java:1404:67:1404:74 | source(...) : Object | LogInjectionTest.java:1404:58:1404:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1404:67:1404:74 | source(...) | user-provided value | +| LogInjectionTest.java:1405:43:1405:59 | (...)... | LogInjectionTest.java:1405:52:1405:59 | source(...) : Object | LogInjectionTest.java:1405:43:1405:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1405:52:1405:59 | source(...) | user-provided value | +| LogInjectionTest.java:1406:28:1406:44 | (...)... | LogInjectionTest.java:1406:37:1406:44 | source(...) : Object | LogInjectionTest.java:1406:28:1406:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1406:37:1406:44 | source(...) | user-provided value | +| LogInjectionTest.java:1407:73:1407:89 | (...)... | LogInjectionTest.java:1407:82:1407:89 | source(...) : Object | LogInjectionTest.java:1407:73:1407:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1407:82:1407:89 | source(...) | user-provided value | +| LogInjectionTest.java:1408:58:1408:74 | (...)... | LogInjectionTest.java:1408:67:1408:74 | source(...) : Object | LogInjectionTest.java:1408:58:1408:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1408:67:1408:74 | source(...) | user-provided value | +| LogInjectionTest.java:1409:43:1409:59 | (...)... | LogInjectionTest.java:1409:52:1409:59 | source(...) : Object | LogInjectionTest.java:1409:43:1409:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1409:52:1409:59 | source(...) | user-provided value | +| LogInjectionTest.java:1410:28:1410:44 | (...)... | LogInjectionTest.java:1410:37:1410:44 | source(...) : Object | LogInjectionTest.java:1410:28:1410:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1410:37:1410:44 | source(...) | user-provided value | +| LogInjectionTest.java:1411:73:1411:89 | (...)... | LogInjectionTest.java:1411:82:1411:89 | source(...) : Object | LogInjectionTest.java:1411:73:1411:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1411:82:1411:89 | source(...) | user-provided value | +| LogInjectionTest.java:1412:58:1412:74 | (...)... | LogInjectionTest.java:1412:67:1412:74 | source(...) : Object | LogInjectionTest.java:1412:58:1412:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1412:67:1412:74 | source(...) | user-provided value | +| LogInjectionTest.java:1413:43:1413:59 | (...)... | LogInjectionTest.java:1413:52:1413:59 | source(...) : Object | LogInjectionTest.java:1413:43:1413:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1413:52:1413:59 | source(...) | user-provided value | +| LogInjectionTest.java:1414:28:1414:44 | (...)... | LogInjectionTest.java:1414:37:1414:44 | source(...) : Object | LogInjectionTest.java:1414:28:1414:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1414:37:1414:44 | source(...) | user-provided value | +| LogInjectionTest.java:1415:42:1415:58 | (...)... | LogInjectionTest.java:1415:51:1415:58 | source(...) : Object | LogInjectionTest.java:1415:42:1415:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1415:51:1415:58 | source(...) | user-provided value | +| LogInjectionTest.java:1416:27:1416:43 | (...)... | LogInjectionTest.java:1416:36:1416:43 | source(...) : Object | LogInjectionTest.java:1416:27:1416:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1416:36:1416:43 | source(...) | user-provided value | | LogInjectionTest.java:1417:42:1417:58 | (...)... | LogInjectionTest.java:1417:51:1417:58 | source(...) : Object | LogInjectionTest.java:1417:42:1417:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1417:51:1417:58 | source(...) | user-provided value | | LogInjectionTest.java:1418:27:1418:43 | (...)... | LogInjectionTest.java:1418:36:1418:43 | source(...) : Object | LogInjectionTest.java:1418:27:1418:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1418:36:1418:43 | source(...) | user-provided value | -| LogInjectionTest.java:1419:72:1419:88 | (...)... | LogInjectionTest.java:1419:81:1419:88 | source(...) : Object | LogInjectionTest.java:1419:72:1419:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1419:81:1419:88 | source(...) | user-provided value | -| LogInjectionTest.java:1420:57:1420:73 | (...)... | LogInjectionTest.java:1420:66:1420:73 | source(...) : Object | LogInjectionTest.java:1420:57:1420:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1420:66:1420:73 | source(...) | user-provided value | -| LogInjectionTest.java:1421:42:1421:58 | (...)... | LogInjectionTest.java:1421:51:1421:58 | source(...) : Object | LogInjectionTest.java:1421:42:1421:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1421:51:1421:58 | source(...) | user-provided value | -| LogInjectionTest.java:1422:27:1422:43 | (...)... | LogInjectionTest.java:1422:36:1422:43 | source(...) : Object | LogInjectionTest.java:1422:27:1422:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1422:36:1422:43 | source(...) | user-provided value | -| LogInjectionTest.java:1423:72:1423:88 | (...)... | LogInjectionTest.java:1423:81:1423:88 | source(...) : Object | LogInjectionTest.java:1423:72:1423:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1423:81:1423:88 | source(...) | user-provided value | -| LogInjectionTest.java:1424:57:1424:73 | (...)... | LogInjectionTest.java:1424:66:1424:73 | source(...) : Object | LogInjectionTest.java:1424:57:1424:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1424:66:1424:73 | source(...) | user-provided value | -| LogInjectionTest.java:1425:42:1425:58 | (...)... | LogInjectionTest.java:1425:51:1425:58 | source(...) : Object | LogInjectionTest.java:1425:42:1425:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1425:51:1425:58 | source(...) | user-provided value | -| LogInjectionTest.java:1426:27:1426:43 | (...)... | LogInjectionTest.java:1426:36:1426:43 | source(...) : Object | LogInjectionTest.java:1426:27:1426:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1426:36:1426:43 | source(...) | user-provided value | -| LogInjectionTest.java:1427:80:1427:96 | (...)... | LogInjectionTest.java:1427:89:1427:96 | source(...) : Object | LogInjectionTest.java:1427:80:1427:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1427:89:1427:96 | source(...) | user-provided value | -| LogInjectionTest.java:1428:65:1428:81 | (...)... | LogInjectionTest.java:1428:74:1428:81 | source(...) : Object | LogInjectionTest.java:1428:65:1428:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1428:74:1428:81 | source(...) | user-provided value | -| LogInjectionTest.java:1429:80:1429:96 | (...)... | LogInjectionTest.java:1429:89:1429:96 | source(...) : Object | LogInjectionTest.java:1429:80:1429:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1429:89:1429:96 | source(...) | user-provided value | -| LogInjectionTest.java:1430:65:1430:81 | (...)... | LogInjectionTest.java:1430:74:1430:81 | source(...) : Object | LogInjectionTest.java:1430:65:1430:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1430:74:1430:81 | source(...) | user-provided value | -| LogInjectionTest.java:1431:65:1431:81 | (...)... | LogInjectionTest.java:1431:74:1431:81 | source(...) : Object | LogInjectionTest.java:1431:65:1431:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1431:74:1431:81 | source(...) | user-provided value | -| LogInjectionTest.java:1432:65:1432:81 | (...)... | LogInjectionTest.java:1432:74:1432:81 | source(...) : Object | LogInjectionTest.java:1432:65:1432:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1432:74:1432:81 | source(...) | user-provided value | -| LogInjectionTest.java:1433:80:1433:102 | new Object[] | LogInjectionTest.java:1433:94:1433:101 | source(...) : Object | LogInjectionTest.java:1433:80:1433:102 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1433:94:1433:101 | source(...) | user-provided value | -| LogInjectionTest.java:1434:80:1434:102 | new Object[] | LogInjectionTest.java:1434:94:1434:101 | source(...) : Object | LogInjectionTest.java:1434:80:1434:102 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1434:94:1434:101 | source(...) | user-provided value | -| LogInjectionTest.java:1435:95:1435:111 | (...)... | LogInjectionTest.java:1435:104:1435:111 | source(...) : Object | LogInjectionTest.java:1435:95:1435:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1435:104:1435:111 | source(...) | user-provided value | -| LogInjectionTest.java:1436:80:1436:96 | (...)... | LogInjectionTest.java:1436:89:1436:96 | source(...) : Object | LogInjectionTest.java:1436:80:1436:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1436:89:1436:96 | source(...) | user-provided value | -| LogInjectionTest.java:1437:65:1437:81 | (...)... | LogInjectionTest.java:1437:74:1437:81 | source(...) : Object | LogInjectionTest.java:1437:65:1437:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1437:74:1437:81 | source(...) | user-provided value | -| LogInjectionTest.java:1438:95:1438:111 | (...)... | LogInjectionTest.java:1438:104:1438:111 | source(...) : Object | LogInjectionTest.java:1438:95:1438:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1438:104:1438:111 | source(...) | user-provided value | +| LogInjectionTest.java:1419:27:1419:43 | (...)... | LogInjectionTest.java:1419:36:1419:43 | source(...) : Object | LogInjectionTest.java:1419:27:1419:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1419:36:1419:43 | source(...) | user-provided value | +| LogInjectionTest.java:1420:27:1420:43 | (...)... | LogInjectionTest.java:1420:36:1420:43 | source(...) : Object | LogInjectionTest.java:1420:27:1420:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1420:36:1420:43 | source(...) | user-provided value | +| LogInjectionTest.java:1421:42:1421:64 | new Object[] | LogInjectionTest.java:1421:56:1421:63 | source(...) : Object | LogInjectionTest.java:1421:42:1421:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1421:56:1421:63 | source(...) | user-provided value | +| LogInjectionTest.java:1422:42:1422:64 | new Object[] | LogInjectionTest.java:1422:56:1422:63 | source(...) : Object | LogInjectionTest.java:1422:42:1422:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1422:56:1422:63 | source(...) | user-provided value | +| LogInjectionTest.java:1423:57:1423:73 | (...)... | LogInjectionTest.java:1423:66:1423:73 | source(...) : Object | LogInjectionTest.java:1423:57:1423:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1423:66:1423:73 | source(...) | user-provided value | +| LogInjectionTest.java:1424:42:1424:58 | (...)... | LogInjectionTest.java:1424:51:1424:58 | source(...) : Object | LogInjectionTest.java:1424:42:1424:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1424:51:1424:58 | source(...) | user-provided value | +| LogInjectionTest.java:1425:27:1425:43 | (...)... | LogInjectionTest.java:1425:36:1425:43 | source(...) : Object | LogInjectionTest.java:1425:27:1425:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1425:36:1425:43 | source(...) | user-provided value | +| LogInjectionTest.java:1426:57:1426:73 | (...)... | LogInjectionTest.java:1426:66:1426:73 | source(...) : Object | LogInjectionTest.java:1426:57:1426:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1426:66:1426:73 | source(...) | user-provided value | +| LogInjectionTest.java:1427:42:1427:58 | (...)... | LogInjectionTest.java:1427:51:1427:58 | source(...) : Object | LogInjectionTest.java:1427:42:1427:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1427:51:1427:58 | source(...) | user-provided value | +| LogInjectionTest.java:1428:27:1428:43 | (...)... | LogInjectionTest.java:1428:36:1428:43 | source(...) : Object | LogInjectionTest.java:1428:27:1428:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1428:36:1428:43 | source(...) | user-provided value | +| LogInjectionTest.java:1429:72:1429:88 | (...)... | LogInjectionTest.java:1429:81:1429:88 | source(...) : Object | LogInjectionTest.java:1429:72:1429:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1429:81:1429:88 | source(...) | user-provided value | +| LogInjectionTest.java:1430:57:1430:73 | (...)... | LogInjectionTest.java:1430:66:1430:73 | source(...) : Object | LogInjectionTest.java:1430:57:1430:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1430:66:1430:73 | source(...) | user-provided value | +| LogInjectionTest.java:1431:42:1431:58 | (...)... | LogInjectionTest.java:1431:51:1431:58 | source(...) : Object | LogInjectionTest.java:1431:42:1431:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1431:51:1431:58 | source(...) | user-provided value | +| LogInjectionTest.java:1432:27:1432:43 | (...)... | LogInjectionTest.java:1432:36:1432:43 | source(...) : Object | LogInjectionTest.java:1432:27:1432:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1432:36:1432:43 | source(...) | user-provided value | +| LogInjectionTest.java:1433:72:1433:88 | (...)... | LogInjectionTest.java:1433:81:1433:88 | source(...) : Object | LogInjectionTest.java:1433:72:1433:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1433:81:1433:88 | source(...) | user-provided value | +| LogInjectionTest.java:1434:57:1434:73 | (...)... | LogInjectionTest.java:1434:66:1434:73 | source(...) : Object | LogInjectionTest.java:1434:57:1434:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1434:66:1434:73 | source(...) | user-provided value | +| LogInjectionTest.java:1435:42:1435:58 | (...)... | LogInjectionTest.java:1435:51:1435:58 | source(...) : Object | LogInjectionTest.java:1435:42:1435:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1435:51:1435:58 | source(...) | user-provided value | +| LogInjectionTest.java:1436:27:1436:43 | (...)... | LogInjectionTest.java:1436:36:1436:43 | source(...) : Object | LogInjectionTest.java:1436:27:1436:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1436:36:1436:43 | source(...) | user-provided value | +| LogInjectionTest.java:1437:80:1437:96 | (...)... | LogInjectionTest.java:1437:89:1437:96 | source(...) : Object | LogInjectionTest.java:1437:80:1437:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1437:89:1437:96 | source(...) | user-provided value | +| LogInjectionTest.java:1438:65:1438:81 | (...)... | LogInjectionTest.java:1438:74:1438:81 | source(...) : Object | LogInjectionTest.java:1438:65:1438:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1438:74:1438:81 | source(...) | user-provided value | | LogInjectionTest.java:1439:80:1439:96 | (...)... | LogInjectionTest.java:1439:89:1439:96 | source(...) : Object | LogInjectionTest.java:1439:80:1439:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1439:89:1439:96 | source(...) | user-provided value | | LogInjectionTest.java:1440:65:1440:81 | (...)... | LogInjectionTest.java:1440:74:1440:81 | source(...) : Object | LogInjectionTest.java:1440:65:1440:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1440:74:1440:81 | source(...) | user-provided value | -| LogInjectionTest.java:1441:110:1441:126 | (...)... | LogInjectionTest.java:1441:119:1441:126 | source(...) : Object | LogInjectionTest.java:1441:110:1441:126 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1441:119:1441:126 | source(...) | user-provided value | -| LogInjectionTest.java:1442:95:1442:111 | (...)... | LogInjectionTest.java:1442:104:1442:111 | source(...) : Object | LogInjectionTest.java:1442:95:1442:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1442:104:1442:111 | source(...) | user-provided value | -| LogInjectionTest.java:1443:80:1443:96 | (...)... | LogInjectionTest.java:1443:89:1443:96 | source(...) : Object | LogInjectionTest.java:1443:80:1443:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1443:89:1443:96 | source(...) | user-provided value | -| LogInjectionTest.java:1444:65:1444:81 | (...)... | LogInjectionTest.java:1444:74:1444:81 | source(...) : Object | LogInjectionTest.java:1444:65:1444:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1444:74:1444:81 | source(...) | user-provided value | -| LogInjectionTest.java:1445:110:1445:126 | (...)... | LogInjectionTest.java:1445:119:1445:126 | source(...) : Object | LogInjectionTest.java:1445:110:1445:126 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1445:119:1445:126 | source(...) | user-provided value | -| LogInjectionTest.java:1446:95:1446:111 | (...)... | LogInjectionTest.java:1446:104:1446:111 | source(...) : Object | LogInjectionTest.java:1446:95:1446:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1446:104:1446:111 | source(...) | user-provided value | -| LogInjectionTest.java:1447:80:1447:96 | (...)... | LogInjectionTest.java:1447:89:1447:96 | source(...) : Object | LogInjectionTest.java:1447:80:1447:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1447:89:1447:96 | source(...) | user-provided value | -| LogInjectionTest.java:1448:65:1448:81 | (...)... | LogInjectionTest.java:1448:74:1448:81 | source(...) : Object | LogInjectionTest.java:1448:65:1448:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1448:74:1448:81 | source(...) | user-provided value | -| LogInjectionTest.java:1449:43:1449:59 | (...)... | LogInjectionTest.java:1449:52:1449:59 | source(...) : Object | LogInjectionTest.java:1449:43:1449:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1449:52:1449:59 | source(...) | user-provided value | -| LogInjectionTest.java:1450:28:1450:44 | (...)... | LogInjectionTest.java:1450:37:1450:44 | source(...) : Object | LogInjectionTest.java:1450:28:1450:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1450:37:1450:44 | source(...) | user-provided value | -| LogInjectionTest.java:1451:43:1451:59 | (...)... | LogInjectionTest.java:1451:52:1451:59 | source(...) : Object | LogInjectionTest.java:1451:43:1451:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1451:52:1451:59 | source(...) | user-provided value | -| LogInjectionTest.java:1452:28:1452:44 | (...)... | LogInjectionTest.java:1452:37:1452:44 | source(...) : Object | LogInjectionTest.java:1452:28:1452:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1452:37:1452:44 | source(...) | user-provided value | -| LogInjectionTest.java:1453:28:1453:44 | (...)... | LogInjectionTest.java:1453:37:1453:44 | source(...) : Object | LogInjectionTest.java:1453:28:1453:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1453:37:1453:44 | source(...) | user-provided value | -| LogInjectionTest.java:1454:28:1454:44 | (...)... | LogInjectionTest.java:1454:37:1454:44 | source(...) : Object | LogInjectionTest.java:1454:28:1454:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1454:37:1454:44 | source(...) | user-provided value | -| LogInjectionTest.java:1455:43:1455:65 | new Object[] | LogInjectionTest.java:1455:57:1455:64 | source(...) : Object | LogInjectionTest.java:1455:43:1455:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1455:57:1455:64 | source(...) | user-provided value | -| LogInjectionTest.java:1456:43:1456:65 | new Object[] | LogInjectionTest.java:1456:57:1456:64 | source(...) : Object | LogInjectionTest.java:1456:43:1456:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1456:57:1456:64 | source(...) | user-provided value | -| LogInjectionTest.java:1457:58:1457:74 | (...)... | LogInjectionTest.java:1457:67:1457:74 | source(...) : Object | LogInjectionTest.java:1457:58:1457:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1457:67:1457:74 | source(...) | user-provided value | -| LogInjectionTest.java:1458:43:1458:59 | (...)... | LogInjectionTest.java:1458:52:1458:59 | source(...) : Object | LogInjectionTest.java:1458:43:1458:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1458:52:1458:59 | source(...) | user-provided value | -| LogInjectionTest.java:1459:28:1459:44 | (...)... | LogInjectionTest.java:1459:37:1459:44 | source(...) : Object | LogInjectionTest.java:1459:28:1459:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1459:37:1459:44 | source(...) | user-provided value | -| LogInjectionTest.java:1460:58:1460:74 | (...)... | LogInjectionTest.java:1460:67:1460:74 | source(...) : Object | LogInjectionTest.java:1460:58:1460:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1460:67:1460:74 | source(...) | user-provided value | +| LogInjectionTest.java:1441:65:1441:81 | (...)... | LogInjectionTest.java:1441:74:1441:81 | source(...) : Object | LogInjectionTest.java:1441:65:1441:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1441:74:1441:81 | source(...) | user-provided value | +| LogInjectionTest.java:1442:65:1442:81 | (...)... | LogInjectionTest.java:1442:74:1442:81 | source(...) : Object | LogInjectionTest.java:1442:65:1442:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1442:74:1442:81 | source(...) | user-provided value | +| LogInjectionTest.java:1443:80:1443:102 | new Object[] | LogInjectionTest.java:1443:94:1443:101 | source(...) : Object | LogInjectionTest.java:1443:80:1443:102 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1443:94:1443:101 | source(...) | user-provided value | +| LogInjectionTest.java:1444:80:1444:102 | new Object[] | LogInjectionTest.java:1444:94:1444:101 | source(...) : Object | LogInjectionTest.java:1444:80:1444:102 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1444:94:1444:101 | source(...) | user-provided value | +| LogInjectionTest.java:1445:95:1445:111 | (...)... | LogInjectionTest.java:1445:104:1445:111 | source(...) : Object | LogInjectionTest.java:1445:95:1445:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1445:104:1445:111 | source(...) | user-provided value | +| LogInjectionTest.java:1446:80:1446:96 | (...)... | LogInjectionTest.java:1446:89:1446:96 | source(...) : Object | LogInjectionTest.java:1446:80:1446:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1446:89:1446:96 | source(...) | user-provided value | +| LogInjectionTest.java:1447:65:1447:81 | (...)... | LogInjectionTest.java:1447:74:1447:81 | source(...) : Object | LogInjectionTest.java:1447:65:1447:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1447:74:1447:81 | source(...) | user-provided value | +| LogInjectionTest.java:1448:95:1448:111 | (...)... | LogInjectionTest.java:1448:104:1448:111 | source(...) : Object | LogInjectionTest.java:1448:95:1448:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1448:104:1448:111 | source(...) | user-provided value | +| LogInjectionTest.java:1449:80:1449:96 | (...)... | LogInjectionTest.java:1449:89:1449:96 | source(...) : Object | LogInjectionTest.java:1449:80:1449:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1449:89:1449:96 | source(...) | user-provided value | +| LogInjectionTest.java:1450:65:1450:81 | (...)... | LogInjectionTest.java:1450:74:1450:81 | source(...) : Object | LogInjectionTest.java:1450:65:1450:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1450:74:1450:81 | source(...) | user-provided value | +| LogInjectionTest.java:1451:110:1451:126 | (...)... | LogInjectionTest.java:1451:119:1451:126 | source(...) : Object | LogInjectionTest.java:1451:110:1451:126 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1451:119:1451:126 | source(...) | user-provided value | +| LogInjectionTest.java:1452:95:1452:111 | (...)... | LogInjectionTest.java:1452:104:1452:111 | source(...) : Object | LogInjectionTest.java:1452:95:1452:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1452:104:1452:111 | source(...) | user-provided value | +| LogInjectionTest.java:1453:80:1453:96 | (...)... | LogInjectionTest.java:1453:89:1453:96 | source(...) : Object | LogInjectionTest.java:1453:80:1453:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1453:89:1453:96 | source(...) | user-provided value | +| LogInjectionTest.java:1454:65:1454:81 | (...)... | LogInjectionTest.java:1454:74:1454:81 | source(...) : Object | LogInjectionTest.java:1454:65:1454:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1454:74:1454:81 | source(...) | user-provided value | +| LogInjectionTest.java:1455:110:1455:126 | (...)... | LogInjectionTest.java:1455:119:1455:126 | source(...) : Object | LogInjectionTest.java:1455:110:1455:126 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1455:119:1455:126 | source(...) | user-provided value | +| LogInjectionTest.java:1456:95:1456:111 | (...)... | LogInjectionTest.java:1456:104:1456:111 | source(...) : Object | LogInjectionTest.java:1456:95:1456:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1456:104:1456:111 | source(...) | user-provided value | +| LogInjectionTest.java:1457:80:1457:96 | (...)... | LogInjectionTest.java:1457:89:1457:96 | source(...) : Object | LogInjectionTest.java:1457:80:1457:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1457:89:1457:96 | source(...) | user-provided value | +| LogInjectionTest.java:1458:65:1458:81 | (...)... | LogInjectionTest.java:1458:74:1458:81 | source(...) : Object | LogInjectionTest.java:1458:65:1458:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1458:74:1458:81 | source(...) | user-provided value | +| LogInjectionTest.java:1459:43:1459:59 | (...)... | LogInjectionTest.java:1459:52:1459:59 | source(...) : Object | LogInjectionTest.java:1459:43:1459:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1459:52:1459:59 | source(...) | user-provided value | +| LogInjectionTest.java:1460:28:1460:44 | (...)... | LogInjectionTest.java:1460:37:1460:44 | source(...) : Object | LogInjectionTest.java:1460:28:1460:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1460:37:1460:44 | source(...) | user-provided value | | LogInjectionTest.java:1461:43:1461:59 | (...)... | LogInjectionTest.java:1461:52:1461:59 | source(...) : Object | LogInjectionTest.java:1461:43:1461:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1461:52:1461:59 | source(...) | user-provided value | | LogInjectionTest.java:1462:28:1462:44 | (...)... | LogInjectionTest.java:1462:37:1462:44 | source(...) : Object | LogInjectionTest.java:1462:28:1462:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1462:37:1462:44 | source(...) | user-provided value | -| LogInjectionTest.java:1463:73:1463:89 | (...)... | LogInjectionTest.java:1463:82:1463:89 | source(...) : Object | LogInjectionTest.java:1463:73:1463:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1463:82:1463:89 | source(...) | user-provided value | -| LogInjectionTest.java:1464:58:1464:74 | (...)... | LogInjectionTest.java:1464:67:1464:74 | source(...) : Object | LogInjectionTest.java:1464:58:1464:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1464:67:1464:74 | source(...) | user-provided value | -| LogInjectionTest.java:1465:43:1465:59 | (...)... | LogInjectionTest.java:1465:52:1465:59 | source(...) : Object | LogInjectionTest.java:1465:43:1465:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1465:52:1465:59 | source(...) | user-provided value | -| LogInjectionTest.java:1466:28:1466:44 | (...)... | LogInjectionTest.java:1466:37:1466:44 | source(...) : Object | LogInjectionTest.java:1466:28:1466:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1466:37:1466:44 | source(...) | user-provided value | -| LogInjectionTest.java:1467:73:1467:89 | (...)... | LogInjectionTest.java:1467:82:1467:89 | source(...) : Object | LogInjectionTest.java:1467:73:1467:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1467:82:1467:89 | source(...) | user-provided value | -| LogInjectionTest.java:1468:58:1468:74 | (...)... | LogInjectionTest.java:1468:67:1468:74 | source(...) : Object | LogInjectionTest.java:1468:58:1468:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1468:67:1468:74 | source(...) | user-provided value | -| LogInjectionTest.java:1469:43:1469:59 | (...)... | LogInjectionTest.java:1469:52:1469:59 | source(...) : Object | LogInjectionTest.java:1469:43:1469:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1469:52:1469:59 | source(...) | user-provided value | -| LogInjectionTest.java:1470:28:1470:44 | (...)... | LogInjectionTest.java:1470:37:1470:44 | source(...) : Object | LogInjectionTest.java:1470:28:1470:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1470:37:1470:44 | source(...) | user-provided value | -| LogInjectionTest.java:1471:42:1471:58 | (...)... | LogInjectionTest.java:1471:51:1471:58 | source(...) : Object | LogInjectionTest.java:1471:42:1471:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1471:51:1471:58 | source(...) | user-provided value | -| LogInjectionTest.java:1472:27:1472:43 | (...)... | LogInjectionTest.java:1472:36:1472:43 | source(...) : Object | LogInjectionTest.java:1472:27:1472:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1472:36:1472:43 | source(...) | user-provided value | -| LogInjectionTest.java:1473:42:1473:58 | (...)... | LogInjectionTest.java:1473:51:1473:58 | source(...) : Object | LogInjectionTest.java:1473:42:1473:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1473:51:1473:58 | source(...) | user-provided value | -| LogInjectionTest.java:1474:27:1474:43 | (...)... | LogInjectionTest.java:1474:36:1474:43 | source(...) : Object | LogInjectionTest.java:1474:27:1474:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1474:36:1474:43 | source(...) | user-provided value | -| LogInjectionTest.java:1475:27:1475:43 | (...)... | LogInjectionTest.java:1475:36:1475:43 | source(...) : Object | LogInjectionTest.java:1475:27:1475:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1475:36:1475:43 | source(...) | user-provided value | -| LogInjectionTest.java:1476:27:1476:43 | (...)... | LogInjectionTest.java:1476:36:1476:43 | source(...) : Object | LogInjectionTest.java:1476:27:1476:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1476:36:1476:43 | source(...) | user-provided value | -| LogInjectionTest.java:1477:42:1477:64 | new Object[] | LogInjectionTest.java:1477:56:1477:63 | source(...) : Object | LogInjectionTest.java:1477:42:1477:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1477:56:1477:63 | source(...) | user-provided value | -| LogInjectionTest.java:1478:42:1478:64 | new Object[] | LogInjectionTest.java:1478:56:1478:63 | source(...) : Object | LogInjectionTest.java:1478:42:1478:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1478:56:1478:63 | source(...) | user-provided value | -| LogInjectionTest.java:1479:57:1479:73 | (...)... | LogInjectionTest.java:1479:66:1479:73 | source(...) : Object | LogInjectionTest.java:1479:57:1479:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1479:66:1479:73 | source(...) | user-provided value | -| LogInjectionTest.java:1480:42:1480:58 | (...)... | LogInjectionTest.java:1480:51:1480:58 | source(...) : Object | LogInjectionTest.java:1480:42:1480:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1480:51:1480:58 | source(...) | user-provided value | -| LogInjectionTest.java:1481:27:1481:43 | (...)... | LogInjectionTest.java:1481:36:1481:43 | source(...) : Object | LogInjectionTest.java:1481:27:1481:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1481:36:1481:43 | source(...) | user-provided value | -| LogInjectionTest.java:1482:57:1482:73 | (...)... | LogInjectionTest.java:1482:66:1482:73 | source(...) : Object | LogInjectionTest.java:1482:57:1482:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1482:66:1482:73 | source(...) | user-provided value | +| LogInjectionTest.java:1463:28:1463:44 | (...)... | LogInjectionTest.java:1463:37:1463:44 | source(...) : Object | LogInjectionTest.java:1463:28:1463:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1463:37:1463:44 | source(...) | user-provided value | +| LogInjectionTest.java:1464:28:1464:44 | (...)... | LogInjectionTest.java:1464:37:1464:44 | source(...) : Object | LogInjectionTest.java:1464:28:1464:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1464:37:1464:44 | source(...) | user-provided value | +| LogInjectionTest.java:1465:43:1465:65 | new Object[] | LogInjectionTest.java:1465:57:1465:64 | source(...) : Object | LogInjectionTest.java:1465:43:1465:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1465:57:1465:64 | source(...) | user-provided value | +| LogInjectionTest.java:1466:43:1466:65 | new Object[] | LogInjectionTest.java:1466:57:1466:64 | source(...) : Object | LogInjectionTest.java:1466:43:1466:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1466:57:1466:64 | source(...) | user-provided value | +| LogInjectionTest.java:1467:58:1467:74 | (...)... | LogInjectionTest.java:1467:67:1467:74 | source(...) : Object | LogInjectionTest.java:1467:58:1467:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1467:67:1467:74 | source(...) | user-provided value | +| LogInjectionTest.java:1468:43:1468:59 | (...)... | LogInjectionTest.java:1468:52:1468:59 | source(...) : Object | LogInjectionTest.java:1468:43:1468:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1468:52:1468:59 | source(...) | user-provided value | +| LogInjectionTest.java:1469:28:1469:44 | (...)... | LogInjectionTest.java:1469:37:1469:44 | source(...) : Object | LogInjectionTest.java:1469:28:1469:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1469:37:1469:44 | source(...) | user-provided value | +| LogInjectionTest.java:1470:58:1470:74 | (...)... | LogInjectionTest.java:1470:67:1470:74 | source(...) : Object | LogInjectionTest.java:1470:58:1470:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1470:67:1470:74 | source(...) | user-provided value | +| LogInjectionTest.java:1471:43:1471:59 | (...)... | LogInjectionTest.java:1471:52:1471:59 | source(...) : Object | LogInjectionTest.java:1471:43:1471:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1471:52:1471:59 | source(...) | user-provided value | +| LogInjectionTest.java:1472:28:1472:44 | (...)... | LogInjectionTest.java:1472:37:1472:44 | source(...) : Object | LogInjectionTest.java:1472:28:1472:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1472:37:1472:44 | source(...) | user-provided value | +| LogInjectionTest.java:1473:73:1473:89 | (...)... | LogInjectionTest.java:1473:82:1473:89 | source(...) : Object | LogInjectionTest.java:1473:73:1473:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1473:82:1473:89 | source(...) | user-provided value | +| LogInjectionTest.java:1474:58:1474:74 | (...)... | LogInjectionTest.java:1474:67:1474:74 | source(...) : Object | LogInjectionTest.java:1474:58:1474:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1474:67:1474:74 | source(...) | user-provided value | +| LogInjectionTest.java:1475:43:1475:59 | (...)... | LogInjectionTest.java:1475:52:1475:59 | source(...) : Object | LogInjectionTest.java:1475:43:1475:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1475:52:1475:59 | source(...) | user-provided value | +| LogInjectionTest.java:1476:28:1476:44 | (...)... | LogInjectionTest.java:1476:37:1476:44 | source(...) : Object | LogInjectionTest.java:1476:28:1476:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1476:37:1476:44 | source(...) | user-provided value | +| LogInjectionTest.java:1477:73:1477:89 | (...)... | LogInjectionTest.java:1477:82:1477:89 | source(...) : Object | LogInjectionTest.java:1477:73:1477:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1477:82:1477:89 | source(...) | user-provided value | +| LogInjectionTest.java:1478:58:1478:74 | (...)... | LogInjectionTest.java:1478:67:1478:74 | source(...) : Object | LogInjectionTest.java:1478:58:1478:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1478:67:1478:74 | source(...) | user-provided value | +| LogInjectionTest.java:1479:43:1479:59 | (...)... | LogInjectionTest.java:1479:52:1479:59 | source(...) : Object | LogInjectionTest.java:1479:43:1479:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1479:52:1479:59 | source(...) | user-provided value | +| LogInjectionTest.java:1480:28:1480:44 | (...)... | LogInjectionTest.java:1480:37:1480:44 | source(...) : Object | LogInjectionTest.java:1480:28:1480:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1480:37:1480:44 | source(...) | user-provided value | +| LogInjectionTest.java:1481:42:1481:58 | (...)... | LogInjectionTest.java:1481:51:1481:58 | source(...) : Object | LogInjectionTest.java:1481:42:1481:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1481:51:1481:58 | source(...) | user-provided value | +| LogInjectionTest.java:1482:27:1482:43 | (...)... | LogInjectionTest.java:1482:36:1482:43 | source(...) : Object | LogInjectionTest.java:1482:27:1482:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1482:36:1482:43 | source(...) | user-provided value | | LogInjectionTest.java:1483:42:1483:58 | (...)... | LogInjectionTest.java:1483:51:1483:58 | source(...) : Object | LogInjectionTest.java:1483:42:1483:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1483:51:1483:58 | source(...) | user-provided value | | LogInjectionTest.java:1484:27:1484:43 | (...)... | LogInjectionTest.java:1484:36:1484:43 | source(...) : Object | LogInjectionTest.java:1484:27:1484:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1484:36:1484:43 | source(...) | user-provided value | -| LogInjectionTest.java:1485:72:1485:88 | (...)... | LogInjectionTest.java:1485:81:1485:88 | source(...) : Object | LogInjectionTest.java:1485:72:1485:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1485:81:1485:88 | source(...) | user-provided value | -| LogInjectionTest.java:1486:57:1486:73 | (...)... | LogInjectionTest.java:1486:66:1486:73 | source(...) : Object | LogInjectionTest.java:1486:57:1486:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1486:66:1486:73 | source(...) | user-provided value | -| LogInjectionTest.java:1487:42:1487:58 | (...)... | LogInjectionTest.java:1487:51:1487:58 | source(...) : Object | LogInjectionTest.java:1487:42:1487:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1487:51:1487:58 | source(...) | user-provided value | -| LogInjectionTest.java:1488:27:1488:43 | (...)... | LogInjectionTest.java:1488:36:1488:43 | source(...) : Object | LogInjectionTest.java:1488:27:1488:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1488:36:1488:43 | source(...) | user-provided value | -| LogInjectionTest.java:1489:72:1489:88 | (...)... | LogInjectionTest.java:1489:81:1489:88 | source(...) : Object | LogInjectionTest.java:1489:72:1489:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1489:81:1489:88 | source(...) | user-provided value | -| LogInjectionTest.java:1490:57:1490:73 | (...)... | LogInjectionTest.java:1490:66:1490:73 | source(...) : Object | LogInjectionTest.java:1490:57:1490:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1490:66:1490:73 | source(...) | user-provided value | -| LogInjectionTest.java:1491:42:1491:58 | (...)... | LogInjectionTest.java:1491:51:1491:58 | source(...) : Object | LogInjectionTest.java:1491:42:1491:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1491:51:1491:58 | source(...) | user-provided value | -| LogInjectionTest.java:1492:27:1492:43 | (...)... | LogInjectionTest.java:1492:36:1492:43 | source(...) : Object | LogInjectionTest.java:1492:27:1492:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1492:36:1492:43 | source(...) | user-provided value | -| LogInjectionTest.java:1498:26:1498:33 | source(...) | LogInjectionTest.java:1498:26:1498:33 | source(...) | LogInjectionTest.java:1498:26:1498:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1498:26:1498:33 | source(...) | user-provided value | -| LogInjectionTest.java:1499:26:1499:33 | source(...) | LogInjectionTest.java:1499:26:1499:33 | source(...) | LogInjectionTest.java:1499:26:1499:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1499:26:1499:33 | source(...) | user-provided value | -| LogInjectionTest.java:1503:41:1503:48 | source(...) | LogInjectionTest.java:1503:41:1503:48 | source(...) | LogInjectionTest.java:1503:41:1503:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1503:41:1503:48 | source(...) | user-provided value | -| LogInjectionTest.java:1504:56:1504:78 | new Object[] | LogInjectionTest.java:1504:70:1504:77 | source(...) : Object | LogInjectionTest.java:1504:56:1504:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1504:70:1504:77 | source(...) | user-provided value | -| LogInjectionTest.java:1505:41:1505:48 | source(...) | LogInjectionTest.java:1505:41:1505:48 | source(...) | LogInjectionTest.java:1505:41:1505:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1505:41:1505:48 | source(...) | user-provided value | -| LogInjectionTest.java:1506:26:1506:33 | source(...) | LogInjectionTest.java:1506:26:1506:33 | source(...) | LogInjectionTest.java:1506:26:1506:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1506:26:1506:33 | source(...) | user-provided value | -| LogInjectionTest.java:1507:26:1507:33 | source(...) | LogInjectionTest.java:1507:26:1507:33 | source(...) | LogInjectionTest.java:1507:26:1507:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1507:26:1507:33 | source(...) | user-provided value | -| LogInjectionTest.java:1511:41:1511:48 | source(...) | LogInjectionTest.java:1511:41:1511:48 | source(...) | LogInjectionTest.java:1511:41:1511:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1511:41:1511:48 | source(...) | user-provided value | -| LogInjectionTest.java:1512:56:1512:78 | new Object[] | LogInjectionTest.java:1512:70:1512:77 | source(...) : Object | LogInjectionTest.java:1512:56:1512:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1512:70:1512:77 | source(...) | user-provided value | +| LogInjectionTest.java:1485:27:1485:43 | (...)... | LogInjectionTest.java:1485:36:1485:43 | source(...) : Object | LogInjectionTest.java:1485:27:1485:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1485:36:1485:43 | source(...) | user-provided value | +| LogInjectionTest.java:1486:27:1486:43 | (...)... | LogInjectionTest.java:1486:36:1486:43 | source(...) : Object | LogInjectionTest.java:1486:27:1486:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1486:36:1486:43 | source(...) | user-provided value | +| LogInjectionTest.java:1487:42:1487:64 | new Object[] | LogInjectionTest.java:1487:56:1487:63 | source(...) : Object | LogInjectionTest.java:1487:42:1487:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1487:56:1487:63 | source(...) | user-provided value | +| LogInjectionTest.java:1488:42:1488:64 | new Object[] | LogInjectionTest.java:1488:56:1488:63 | source(...) : Object | LogInjectionTest.java:1488:42:1488:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1488:56:1488:63 | source(...) | user-provided value | +| LogInjectionTest.java:1489:57:1489:73 | (...)... | LogInjectionTest.java:1489:66:1489:73 | source(...) : Object | LogInjectionTest.java:1489:57:1489:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1489:66:1489:73 | source(...) | user-provided value | +| LogInjectionTest.java:1490:42:1490:58 | (...)... | LogInjectionTest.java:1490:51:1490:58 | source(...) : Object | LogInjectionTest.java:1490:42:1490:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1490:51:1490:58 | source(...) | user-provided value | +| LogInjectionTest.java:1491:27:1491:43 | (...)... | LogInjectionTest.java:1491:36:1491:43 | source(...) : Object | LogInjectionTest.java:1491:27:1491:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1491:36:1491:43 | source(...) | user-provided value | +| LogInjectionTest.java:1492:57:1492:73 | (...)... | LogInjectionTest.java:1492:66:1492:73 | source(...) : Object | LogInjectionTest.java:1492:57:1492:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1492:66:1492:73 | source(...) | user-provided value | +| LogInjectionTest.java:1493:42:1493:58 | (...)... | LogInjectionTest.java:1493:51:1493:58 | source(...) : Object | LogInjectionTest.java:1493:42:1493:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1493:51:1493:58 | source(...) | user-provided value | +| LogInjectionTest.java:1494:27:1494:43 | (...)... | LogInjectionTest.java:1494:36:1494:43 | source(...) : Object | LogInjectionTest.java:1494:27:1494:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1494:36:1494:43 | source(...) | user-provided value | +| LogInjectionTest.java:1495:72:1495:88 | (...)... | LogInjectionTest.java:1495:81:1495:88 | source(...) : Object | LogInjectionTest.java:1495:72:1495:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1495:81:1495:88 | source(...) | user-provided value | +| LogInjectionTest.java:1496:57:1496:73 | (...)... | LogInjectionTest.java:1496:66:1496:73 | source(...) : Object | LogInjectionTest.java:1496:57:1496:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1496:66:1496:73 | source(...) | user-provided value | +| LogInjectionTest.java:1497:42:1497:58 | (...)... | LogInjectionTest.java:1497:51:1497:58 | source(...) : Object | LogInjectionTest.java:1497:42:1497:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1497:51:1497:58 | source(...) | user-provided value | +| LogInjectionTest.java:1498:27:1498:43 | (...)... | LogInjectionTest.java:1498:36:1498:43 | source(...) : Object | LogInjectionTest.java:1498:27:1498:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1498:36:1498:43 | source(...) | user-provided value | +| LogInjectionTest.java:1499:72:1499:88 | (...)... | LogInjectionTest.java:1499:81:1499:88 | source(...) : Object | LogInjectionTest.java:1499:72:1499:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1499:81:1499:88 | source(...) | user-provided value | +| LogInjectionTest.java:1500:57:1500:73 | (...)... | LogInjectionTest.java:1500:66:1500:73 | source(...) : Object | LogInjectionTest.java:1500:57:1500:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1500:66:1500:73 | source(...) | user-provided value | +| LogInjectionTest.java:1501:42:1501:58 | (...)... | LogInjectionTest.java:1501:51:1501:58 | source(...) : Object | LogInjectionTest.java:1501:42:1501:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1501:51:1501:58 | source(...) | user-provided value | +| LogInjectionTest.java:1502:27:1502:43 | (...)... | LogInjectionTest.java:1502:36:1502:43 | source(...) : Object | LogInjectionTest.java:1502:27:1502:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1502:36:1502:43 | source(...) | user-provided value | +| LogInjectionTest.java:1508:26:1508:33 | source(...) | LogInjectionTest.java:1508:26:1508:33 | source(...) | LogInjectionTest.java:1508:26:1508:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1508:26:1508:33 | source(...) | user-provided value | +| LogInjectionTest.java:1509:26:1509:33 | source(...) | LogInjectionTest.java:1509:26:1509:33 | source(...) | LogInjectionTest.java:1509:26:1509:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1509:26:1509:33 | source(...) | user-provided value | | LogInjectionTest.java:1513:41:1513:48 | source(...) | LogInjectionTest.java:1513:41:1513:48 | source(...) | LogInjectionTest.java:1513:41:1513:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1513:41:1513:48 | source(...) | user-provided value | -| LogInjectionTest.java:1514:26:1514:33 | source(...) | LogInjectionTest.java:1514:26:1514:33 | source(...) | LogInjectionTest.java:1514:26:1514:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1514:26:1514:33 | source(...) | user-provided value | -| LogInjectionTest.java:1515:26:1515:33 | source(...) | LogInjectionTest.java:1515:26:1515:33 | source(...) | LogInjectionTest.java:1515:26:1515:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1515:26:1515:33 | source(...) | user-provided value | -| LogInjectionTest.java:1519:41:1519:48 | source(...) | LogInjectionTest.java:1519:41:1519:48 | source(...) | LogInjectionTest.java:1519:41:1519:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1519:41:1519:48 | source(...) | user-provided value | -| LogInjectionTest.java:1520:56:1520:78 | new Object[] | LogInjectionTest.java:1520:70:1520:77 | source(...) : Object | LogInjectionTest.java:1520:56:1520:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1520:70:1520:77 | source(...) | user-provided value | +| LogInjectionTest.java:1514:56:1514:78 | new Object[] | LogInjectionTest.java:1514:70:1514:77 | source(...) : Object | LogInjectionTest.java:1514:56:1514:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1514:70:1514:77 | source(...) | user-provided value | +| LogInjectionTest.java:1515:41:1515:48 | source(...) | LogInjectionTest.java:1515:41:1515:48 | source(...) | LogInjectionTest.java:1515:41:1515:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1515:41:1515:48 | source(...) | user-provided value | +| LogInjectionTest.java:1516:26:1516:33 | source(...) | LogInjectionTest.java:1516:26:1516:33 | source(...) | LogInjectionTest.java:1516:26:1516:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1516:26:1516:33 | source(...) | user-provided value | +| LogInjectionTest.java:1517:26:1517:33 | source(...) | LogInjectionTest.java:1517:26:1517:33 | source(...) | LogInjectionTest.java:1517:26:1517:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1517:26:1517:33 | source(...) | user-provided value | | LogInjectionTest.java:1521:41:1521:48 | source(...) | LogInjectionTest.java:1521:41:1521:48 | source(...) | LogInjectionTest.java:1521:41:1521:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1521:41:1521:48 | source(...) | user-provided value | -| LogInjectionTest.java:1522:25:1522:32 | source(...) | LogInjectionTest.java:1522:25:1522:32 | source(...) | LogInjectionTest.java:1522:25:1522:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1522:25:1522:32 | source(...) | user-provided value | -| LogInjectionTest.java:1523:25:1523:32 | source(...) | LogInjectionTest.java:1523:25:1523:32 | source(...) | LogInjectionTest.java:1523:25:1523:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1523:25:1523:32 | source(...) | user-provided value | -| LogInjectionTest.java:1527:40:1527:47 | source(...) | LogInjectionTest.java:1527:40:1527:47 | source(...) | LogInjectionTest.java:1527:40:1527:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1527:40:1527:47 | source(...) | user-provided value | -| LogInjectionTest.java:1528:55:1528:77 | new Object[] | LogInjectionTest.java:1528:69:1528:76 | source(...) : Object | LogInjectionTest.java:1528:55:1528:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1528:69:1528:76 | source(...) | user-provided value | -| LogInjectionTest.java:1529:40:1529:47 | source(...) | LogInjectionTest.java:1529:40:1529:47 | source(...) | LogInjectionTest.java:1529:40:1529:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1529:40:1529:47 | source(...) | user-provided value | -| LogInjectionTest.java:1530:26:1530:33 | source(...) | LogInjectionTest.java:1530:26:1530:33 | source(...) | LogInjectionTest.java:1530:26:1530:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1530:26:1530:33 | source(...) | user-provided value | -| LogInjectionTest.java:1531:26:1531:33 | source(...) | LogInjectionTest.java:1531:26:1531:33 | source(...) | LogInjectionTest.java:1531:26:1531:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1531:26:1531:33 | source(...) | user-provided value | -| LogInjectionTest.java:1535:41:1535:48 | source(...) | LogInjectionTest.java:1535:41:1535:48 | source(...) | LogInjectionTest.java:1535:41:1535:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1535:41:1535:48 | source(...) | user-provided value | -| LogInjectionTest.java:1536:56:1536:78 | new Object[] | LogInjectionTest.java:1536:70:1536:77 | source(...) : Object | LogInjectionTest.java:1536:56:1536:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1536:70:1536:77 | source(...) | user-provided value | -| LogInjectionTest.java:1537:41:1537:48 | source(...) | LogInjectionTest.java:1537:41:1537:48 | source(...) | LogInjectionTest.java:1537:41:1537:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1537:41:1537:48 | source(...) | user-provided value | -| LogInjectionTest.java:1538:25:1538:32 | source(...) | LogInjectionTest.java:1538:25:1538:32 | source(...) | LogInjectionTest.java:1538:25:1538:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1538:25:1538:32 | source(...) | user-provided value | -| LogInjectionTest.java:1539:25:1539:32 | source(...) | LogInjectionTest.java:1539:25:1539:32 | source(...) | LogInjectionTest.java:1539:25:1539:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1539:25:1539:32 | source(...) | user-provided value | -| LogInjectionTest.java:1543:40:1543:47 | source(...) | LogInjectionTest.java:1543:40:1543:47 | source(...) | LogInjectionTest.java:1543:40:1543:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1543:40:1543:47 | source(...) | user-provided value | -| LogInjectionTest.java:1544:55:1544:77 | new Object[] | LogInjectionTest.java:1544:69:1544:76 | source(...) : Object | LogInjectionTest.java:1544:55:1544:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1544:69:1544:76 | source(...) | user-provided value | -| LogInjectionTest.java:1545:40:1545:47 | source(...) | LogInjectionTest.java:1545:40:1545:47 | source(...) | LogInjectionTest.java:1545:40:1545:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1545:40:1545:47 | source(...) | user-provided value | -| LogInjectionTest.java:1546:63:1546:70 | source(...) | LogInjectionTest.java:1546:63:1546:70 | source(...) | LogInjectionTest.java:1546:63:1546:70 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1546:63:1546:70 | source(...) | user-provided value | -| LogInjectionTest.java:1547:63:1547:70 | source(...) | LogInjectionTest.java:1547:63:1547:70 | source(...) | LogInjectionTest.java:1547:63:1547:70 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1547:63:1547:70 | source(...) | user-provided value | -| LogInjectionTest.java:1551:78:1551:85 | source(...) | LogInjectionTest.java:1551:78:1551:85 | source(...) | LogInjectionTest.java:1551:78:1551:85 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1551:78:1551:85 | source(...) | user-provided value | -| LogInjectionTest.java:1552:78:1552:85 | source(...) | LogInjectionTest.java:1552:78:1552:85 | source(...) | LogInjectionTest.java:1552:78:1552:85 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1552:78:1552:85 | source(...) | user-provided value | -| LogInjectionTest.java:1553:93:1553:115 | new Object[] | LogInjectionTest.java:1553:107:1553:114 | source(...) : Object | LogInjectionTest.java:1553:93:1553:115 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1553:107:1553:114 | source(...) | user-provided value | -| LogInjectionTest.java:1554:42:1554:58 | (...)... | LogInjectionTest.java:1554:51:1554:58 | source(...) : Object | LogInjectionTest.java:1554:42:1554:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1554:51:1554:58 | source(...) | user-provided value | -| LogInjectionTest.java:1555:27:1555:43 | (...)... | LogInjectionTest.java:1555:36:1555:43 | source(...) : Object | LogInjectionTest.java:1555:27:1555:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1555:36:1555:43 | source(...) | user-provided value | -| LogInjectionTest.java:1556:42:1556:58 | (...)... | LogInjectionTest.java:1556:51:1556:58 | source(...) : Object | LogInjectionTest.java:1556:42:1556:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1556:51:1556:58 | source(...) | user-provided value | -| LogInjectionTest.java:1557:27:1557:43 | (...)... | LogInjectionTest.java:1557:36:1557:43 | source(...) : Object | LogInjectionTest.java:1557:27:1557:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1557:36:1557:43 | source(...) | user-provided value | -| LogInjectionTest.java:1558:27:1558:43 | (...)... | LogInjectionTest.java:1558:36:1558:43 | source(...) : Object | LogInjectionTest.java:1558:27:1558:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1558:36:1558:43 | source(...) | user-provided value | -| LogInjectionTest.java:1559:27:1559:43 | (...)... | LogInjectionTest.java:1559:36:1559:43 | source(...) : Object | LogInjectionTest.java:1559:27:1559:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1559:36:1559:43 | source(...) | user-provided value | -| LogInjectionTest.java:1560:42:1560:64 | new Object[] | LogInjectionTest.java:1560:56:1560:63 | source(...) : Object | LogInjectionTest.java:1560:42:1560:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1560:56:1560:63 | source(...) | user-provided value | -| LogInjectionTest.java:1561:42:1561:64 | new Object[] | LogInjectionTest.java:1561:56:1561:63 | source(...) : Object | LogInjectionTest.java:1561:42:1561:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1561:56:1561:63 | source(...) | user-provided value | -| LogInjectionTest.java:1562:57:1562:73 | (...)... | LogInjectionTest.java:1562:66:1562:73 | source(...) : Object | LogInjectionTest.java:1562:57:1562:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1562:66:1562:73 | source(...) | user-provided value | -| LogInjectionTest.java:1563:42:1563:58 | (...)... | LogInjectionTest.java:1563:51:1563:58 | source(...) : Object | LogInjectionTest.java:1563:42:1563:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1563:51:1563:58 | source(...) | user-provided value | -| LogInjectionTest.java:1564:27:1564:43 | (...)... | LogInjectionTest.java:1564:36:1564:43 | source(...) : Object | LogInjectionTest.java:1564:27:1564:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1564:36:1564:43 | source(...) | user-provided value | -| LogInjectionTest.java:1565:57:1565:73 | (...)... | LogInjectionTest.java:1565:66:1565:73 | source(...) : Object | LogInjectionTest.java:1565:57:1565:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1565:66:1565:73 | source(...) | user-provided value | +| LogInjectionTest.java:1522:56:1522:78 | new Object[] | LogInjectionTest.java:1522:70:1522:77 | source(...) : Object | LogInjectionTest.java:1522:56:1522:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1522:70:1522:77 | source(...) | user-provided value | +| LogInjectionTest.java:1523:41:1523:48 | source(...) | LogInjectionTest.java:1523:41:1523:48 | source(...) | LogInjectionTest.java:1523:41:1523:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1523:41:1523:48 | source(...) | user-provided value | +| LogInjectionTest.java:1524:26:1524:33 | source(...) | LogInjectionTest.java:1524:26:1524:33 | source(...) | LogInjectionTest.java:1524:26:1524:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1524:26:1524:33 | source(...) | user-provided value | +| LogInjectionTest.java:1525:26:1525:33 | source(...) | LogInjectionTest.java:1525:26:1525:33 | source(...) | LogInjectionTest.java:1525:26:1525:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1525:26:1525:33 | source(...) | user-provided value | +| LogInjectionTest.java:1529:41:1529:48 | source(...) | LogInjectionTest.java:1529:41:1529:48 | source(...) | LogInjectionTest.java:1529:41:1529:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1529:41:1529:48 | source(...) | user-provided value | +| LogInjectionTest.java:1530:56:1530:78 | new Object[] | LogInjectionTest.java:1530:70:1530:77 | source(...) : Object | LogInjectionTest.java:1530:56:1530:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1530:70:1530:77 | source(...) | user-provided value | +| LogInjectionTest.java:1531:41:1531:48 | source(...) | LogInjectionTest.java:1531:41:1531:48 | source(...) | LogInjectionTest.java:1531:41:1531:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1531:41:1531:48 | source(...) | user-provided value | +| LogInjectionTest.java:1532:25:1532:32 | source(...) | LogInjectionTest.java:1532:25:1532:32 | source(...) | LogInjectionTest.java:1532:25:1532:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1532:25:1532:32 | source(...) | user-provided value | +| LogInjectionTest.java:1533:25:1533:32 | source(...) | LogInjectionTest.java:1533:25:1533:32 | source(...) | LogInjectionTest.java:1533:25:1533:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1533:25:1533:32 | source(...) | user-provided value | +| LogInjectionTest.java:1537:40:1537:47 | source(...) | LogInjectionTest.java:1537:40:1537:47 | source(...) | LogInjectionTest.java:1537:40:1537:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1537:40:1537:47 | source(...) | user-provided value | +| LogInjectionTest.java:1538:55:1538:77 | new Object[] | LogInjectionTest.java:1538:69:1538:76 | source(...) : Object | LogInjectionTest.java:1538:55:1538:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1538:69:1538:76 | source(...) | user-provided value | +| LogInjectionTest.java:1539:40:1539:47 | source(...) | LogInjectionTest.java:1539:40:1539:47 | source(...) | LogInjectionTest.java:1539:40:1539:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1539:40:1539:47 | source(...) | user-provided value | +| LogInjectionTest.java:1540:26:1540:33 | source(...) | LogInjectionTest.java:1540:26:1540:33 | source(...) | LogInjectionTest.java:1540:26:1540:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1540:26:1540:33 | source(...) | user-provided value | +| LogInjectionTest.java:1541:26:1541:33 | source(...) | LogInjectionTest.java:1541:26:1541:33 | source(...) | LogInjectionTest.java:1541:26:1541:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1541:26:1541:33 | source(...) | user-provided value | +| LogInjectionTest.java:1545:41:1545:48 | source(...) | LogInjectionTest.java:1545:41:1545:48 | source(...) | LogInjectionTest.java:1545:41:1545:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1545:41:1545:48 | source(...) | user-provided value | +| LogInjectionTest.java:1546:56:1546:78 | new Object[] | LogInjectionTest.java:1546:70:1546:77 | source(...) : Object | LogInjectionTest.java:1546:56:1546:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1546:70:1546:77 | source(...) | user-provided value | +| LogInjectionTest.java:1547:41:1547:48 | source(...) | LogInjectionTest.java:1547:41:1547:48 | source(...) | LogInjectionTest.java:1547:41:1547:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1547:41:1547:48 | source(...) | user-provided value | +| LogInjectionTest.java:1548:25:1548:32 | source(...) | LogInjectionTest.java:1548:25:1548:32 | source(...) | LogInjectionTest.java:1548:25:1548:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1548:25:1548:32 | source(...) | user-provided value | +| LogInjectionTest.java:1549:25:1549:32 | source(...) | LogInjectionTest.java:1549:25:1549:32 | source(...) | LogInjectionTest.java:1549:25:1549:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1549:25:1549:32 | source(...) | user-provided value | +| LogInjectionTest.java:1553:40:1553:47 | source(...) | LogInjectionTest.java:1553:40:1553:47 | source(...) | LogInjectionTest.java:1553:40:1553:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1553:40:1553:47 | source(...) | user-provided value | +| LogInjectionTest.java:1554:55:1554:77 | new Object[] | LogInjectionTest.java:1554:69:1554:76 | source(...) : Object | LogInjectionTest.java:1554:55:1554:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1554:69:1554:76 | source(...) | user-provided value | +| LogInjectionTest.java:1555:40:1555:47 | source(...) | LogInjectionTest.java:1555:40:1555:47 | source(...) | LogInjectionTest.java:1555:40:1555:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1555:40:1555:47 | source(...) | user-provided value | +| LogInjectionTest.java:1556:63:1556:70 | source(...) | LogInjectionTest.java:1556:63:1556:70 | source(...) | LogInjectionTest.java:1556:63:1556:70 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1556:63:1556:70 | source(...) | user-provided value | +| LogInjectionTest.java:1557:63:1557:70 | source(...) | LogInjectionTest.java:1557:63:1557:70 | source(...) | LogInjectionTest.java:1557:63:1557:70 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1557:63:1557:70 | source(...) | user-provided value | +| LogInjectionTest.java:1561:78:1561:85 | source(...) | LogInjectionTest.java:1561:78:1561:85 | source(...) | LogInjectionTest.java:1561:78:1561:85 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1561:78:1561:85 | source(...) | user-provided value | +| LogInjectionTest.java:1562:78:1562:85 | source(...) | LogInjectionTest.java:1562:78:1562:85 | source(...) | LogInjectionTest.java:1562:78:1562:85 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1562:78:1562:85 | source(...) | user-provided value | +| LogInjectionTest.java:1563:93:1563:115 | new Object[] | LogInjectionTest.java:1563:107:1563:114 | source(...) : Object | LogInjectionTest.java:1563:93:1563:115 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1563:107:1563:114 | source(...) | user-provided value | +| LogInjectionTest.java:1564:42:1564:58 | (...)... | LogInjectionTest.java:1564:51:1564:58 | source(...) : Object | LogInjectionTest.java:1564:42:1564:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1564:51:1564:58 | source(...) | user-provided value | +| LogInjectionTest.java:1565:27:1565:43 | (...)... | LogInjectionTest.java:1565:36:1565:43 | source(...) : Object | LogInjectionTest.java:1565:27:1565:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1565:36:1565:43 | source(...) | user-provided value | | LogInjectionTest.java:1566:42:1566:58 | (...)... | LogInjectionTest.java:1566:51:1566:58 | source(...) : Object | LogInjectionTest.java:1566:42:1566:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1566:51:1566:58 | source(...) | user-provided value | | LogInjectionTest.java:1567:27:1567:43 | (...)... | LogInjectionTest.java:1567:36:1567:43 | source(...) : Object | LogInjectionTest.java:1567:27:1567:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1567:36:1567:43 | source(...) | user-provided value | -| LogInjectionTest.java:1568:72:1568:88 | (...)... | LogInjectionTest.java:1568:81:1568:88 | source(...) : Object | LogInjectionTest.java:1568:72:1568:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1568:81:1568:88 | source(...) | user-provided value | -| LogInjectionTest.java:1569:57:1569:73 | (...)... | LogInjectionTest.java:1569:66:1569:73 | source(...) : Object | LogInjectionTest.java:1569:57:1569:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1569:66:1569:73 | source(...) | user-provided value | -| LogInjectionTest.java:1570:42:1570:58 | (...)... | LogInjectionTest.java:1570:51:1570:58 | source(...) : Object | LogInjectionTest.java:1570:42:1570:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1570:51:1570:58 | source(...) | user-provided value | -| LogInjectionTest.java:1571:27:1571:43 | (...)... | LogInjectionTest.java:1571:36:1571:43 | source(...) : Object | LogInjectionTest.java:1571:27:1571:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1571:36:1571:43 | source(...) | user-provided value | -| LogInjectionTest.java:1572:72:1572:88 | (...)... | LogInjectionTest.java:1572:81:1572:88 | source(...) : Object | LogInjectionTest.java:1572:72:1572:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1572:81:1572:88 | source(...) | user-provided value | -| LogInjectionTest.java:1573:57:1573:73 | (...)... | LogInjectionTest.java:1573:66:1573:73 | source(...) : Object | LogInjectionTest.java:1573:57:1573:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1573:66:1573:73 | source(...) | user-provided value | -| LogInjectionTest.java:1574:42:1574:58 | (...)... | LogInjectionTest.java:1574:51:1574:58 | source(...) : Object | LogInjectionTest.java:1574:42:1574:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1574:51:1574:58 | source(...) | user-provided value | -| LogInjectionTest.java:1575:27:1575:43 | (...)... | LogInjectionTest.java:1575:36:1575:43 | source(...) : Object | LogInjectionTest.java:1575:27:1575:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1575:36:1575:43 | source(...) | user-provided value | +| LogInjectionTest.java:1568:27:1568:43 | (...)... | LogInjectionTest.java:1568:36:1568:43 | source(...) : Object | LogInjectionTest.java:1568:27:1568:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1568:36:1568:43 | source(...) | user-provided value | +| LogInjectionTest.java:1569:27:1569:43 | (...)... | LogInjectionTest.java:1569:36:1569:43 | source(...) : Object | LogInjectionTest.java:1569:27:1569:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1569:36:1569:43 | source(...) | user-provided value | +| LogInjectionTest.java:1570:42:1570:64 | new Object[] | LogInjectionTest.java:1570:56:1570:63 | source(...) : Object | LogInjectionTest.java:1570:42:1570:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1570:56:1570:63 | source(...) | user-provided value | +| LogInjectionTest.java:1571:42:1571:64 | new Object[] | LogInjectionTest.java:1571:56:1571:63 | source(...) : Object | LogInjectionTest.java:1571:42:1571:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1571:56:1571:63 | source(...) | user-provided value | +| LogInjectionTest.java:1572:57:1572:73 | (...)... | LogInjectionTest.java:1572:66:1572:73 | source(...) : Object | LogInjectionTest.java:1572:57:1572:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1572:66:1572:73 | source(...) | user-provided value | +| LogInjectionTest.java:1573:42:1573:58 | (...)... | LogInjectionTest.java:1573:51:1573:58 | source(...) : Object | LogInjectionTest.java:1573:42:1573:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1573:51:1573:58 | source(...) | user-provided value | +| LogInjectionTest.java:1574:27:1574:43 | (...)... | LogInjectionTest.java:1574:36:1574:43 | source(...) : Object | LogInjectionTest.java:1574:27:1574:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1574:36:1574:43 | source(...) | user-provided value | +| LogInjectionTest.java:1575:57:1575:73 | (...)... | LogInjectionTest.java:1575:66:1575:73 | source(...) : Object | LogInjectionTest.java:1575:57:1575:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1575:66:1575:73 | source(...) | user-provided value | | LogInjectionTest.java:1576:42:1576:58 | (...)... | LogInjectionTest.java:1576:51:1576:58 | source(...) : Object | LogInjectionTest.java:1576:42:1576:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1576:51:1576:58 | source(...) | user-provided value | | LogInjectionTest.java:1577:27:1577:43 | (...)... | LogInjectionTest.java:1577:36:1577:43 | source(...) : Object | LogInjectionTest.java:1577:27:1577:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1577:36:1577:43 | source(...) | user-provided value | -| LogInjectionTest.java:1578:42:1578:58 | (...)... | LogInjectionTest.java:1578:51:1578:58 | source(...) : Object | LogInjectionTest.java:1578:42:1578:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1578:51:1578:58 | source(...) | user-provided value | -| LogInjectionTest.java:1579:27:1579:43 | (...)... | LogInjectionTest.java:1579:36:1579:43 | source(...) : Object | LogInjectionTest.java:1579:27:1579:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1579:36:1579:43 | source(...) | user-provided value | -| LogInjectionTest.java:1580:27:1580:43 | (...)... | LogInjectionTest.java:1580:36:1580:43 | source(...) : Object | LogInjectionTest.java:1580:27:1580:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1580:36:1580:43 | source(...) | user-provided value | +| LogInjectionTest.java:1578:72:1578:88 | (...)... | LogInjectionTest.java:1578:81:1578:88 | source(...) : Object | LogInjectionTest.java:1578:72:1578:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1578:81:1578:88 | source(...) | user-provided value | +| LogInjectionTest.java:1579:57:1579:73 | (...)... | LogInjectionTest.java:1579:66:1579:73 | source(...) : Object | LogInjectionTest.java:1579:57:1579:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1579:66:1579:73 | source(...) | user-provided value | +| LogInjectionTest.java:1580:42:1580:58 | (...)... | LogInjectionTest.java:1580:51:1580:58 | source(...) : Object | LogInjectionTest.java:1580:42:1580:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1580:51:1580:58 | source(...) | user-provided value | | LogInjectionTest.java:1581:27:1581:43 | (...)... | LogInjectionTest.java:1581:36:1581:43 | source(...) : Object | LogInjectionTest.java:1581:27:1581:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1581:36:1581:43 | source(...) | user-provided value | -| LogInjectionTest.java:1582:42:1582:64 | new Object[] | LogInjectionTest.java:1582:56:1582:63 | source(...) : Object | LogInjectionTest.java:1582:42:1582:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1582:56:1582:63 | source(...) | user-provided value | -| LogInjectionTest.java:1583:42:1583:64 | new Object[] | LogInjectionTest.java:1583:56:1583:63 | source(...) : Object | LogInjectionTest.java:1583:42:1583:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1583:56:1583:63 | source(...) | user-provided value | -| LogInjectionTest.java:1584:57:1584:73 | (...)... | LogInjectionTest.java:1584:66:1584:73 | source(...) : Object | LogInjectionTest.java:1584:57:1584:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1584:66:1584:73 | source(...) | user-provided value | -| LogInjectionTest.java:1585:42:1585:58 | (...)... | LogInjectionTest.java:1585:51:1585:58 | source(...) : Object | LogInjectionTest.java:1585:42:1585:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1585:51:1585:58 | source(...) | user-provided value | -| LogInjectionTest.java:1586:27:1586:43 | (...)... | LogInjectionTest.java:1586:36:1586:43 | source(...) : Object | LogInjectionTest.java:1586:27:1586:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1586:36:1586:43 | source(...) | user-provided value | -| LogInjectionTest.java:1587:57:1587:73 | (...)... | LogInjectionTest.java:1587:66:1587:73 | source(...) : Object | LogInjectionTest.java:1587:57:1587:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1587:66:1587:73 | source(...) | user-provided value | +| LogInjectionTest.java:1582:72:1582:88 | (...)... | LogInjectionTest.java:1582:81:1582:88 | source(...) : Object | LogInjectionTest.java:1582:72:1582:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1582:81:1582:88 | source(...) | user-provided value | +| LogInjectionTest.java:1583:57:1583:73 | (...)... | LogInjectionTest.java:1583:66:1583:73 | source(...) : Object | LogInjectionTest.java:1583:57:1583:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1583:66:1583:73 | source(...) | user-provided value | +| LogInjectionTest.java:1584:42:1584:58 | (...)... | LogInjectionTest.java:1584:51:1584:58 | source(...) : Object | LogInjectionTest.java:1584:42:1584:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1584:51:1584:58 | source(...) | user-provided value | +| LogInjectionTest.java:1585:27:1585:43 | (...)... | LogInjectionTest.java:1585:36:1585:43 | source(...) : Object | LogInjectionTest.java:1585:27:1585:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1585:36:1585:43 | source(...) | user-provided value | +| LogInjectionTest.java:1586:42:1586:58 | (...)... | LogInjectionTest.java:1586:51:1586:58 | source(...) : Object | LogInjectionTest.java:1586:42:1586:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1586:51:1586:58 | source(...) | user-provided value | +| LogInjectionTest.java:1587:27:1587:43 | (...)... | LogInjectionTest.java:1587:36:1587:43 | source(...) : Object | LogInjectionTest.java:1587:27:1587:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1587:36:1587:43 | source(...) | user-provided value | | LogInjectionTest.java:1588:42:1588:58 | (...)... | LogInjectionTest.java:1588:51:1588:58 | source(...) : Object | LogInjectionTest.java:1588:42:1588:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1588:51:1588:58 | source(...) | user-provided value | | LogInjectionTest.java:1589:27:1589:43 | (...)... | LogInjectionTest.java:1589:36:1589:43 | source(...) : Object | LogInjectionTest.java:1589:27:1589:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1589:36:1589:43 | source(...) | user-provided value | -| LogInjectionTest.java:1590:72:1590:88 | (...)... | LogInjectionTest.java:1590:81:1590:88 | source(...) : Object | LogInjectionTest.java:1590:72:1590:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1590:81:1590:88 | source(...) | user-provided value | -| LogInjectionTest.java:1591:57:1591:73 | (...)... | LogInjectionTest.java:1591:66:1591:73 | source(...) : Object | LogInjectionTest.java:1591:57:1591:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1591:66:1591:73 | source(...) | user-provided value | -| LogInjectionTest.java:1592:42:1592:58 | (...)... | LogInjectionTest.java:1592:51:1592:58 | source(...) : Object | LogInjectionTest.java:1592:42:1592:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1592:51:1592:58 | source(...) | user-provided value | -| LogInjectionTest.java:1593:27:1593:43 | (...)... | LogInjectionTest.java:1593:36:1593:43 | source(...) : Object | LogInjectionTest.java:1593:27:1593:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1593:36:1593:43 | source(...) | user-provided value | -| LogInjectionTest.java:1594:72:1594:88 | (...)... | LogInjectionTest.java:1594:81:1594:88 | source(...) : Object | LogInjectionTest.java:1594:72:1594:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1594:81:1594:88 | source(...) | user-provided value | -| LogInjectionTest.java:1595:57:1595:73 | (...)... | LogInjectionTest.java:1595:66:1595:73 | source(...) : Object | LogInjectionTest.java:1595:57:1595:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1595:66:1595:73 | source(...) | user-provided value | -| LogInjectionTest.java:1596:42:1596:58 | (...)... | LogInjectionTest.java:1596:51:1596:58 | source(...) : Object | LogInjectionTest.java:1596:42:1596:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1596:51:1596:58 | source(...) | user-provided value | -| LogInjectionTest.java:1597:27:1597:43 | (...)... | LogInjectionTest.java:1597:36:1597:43 | source(...) : Object | LogInjectionTest.java:1597:27:1597:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1597:36:1597:43 | source(...) | user-provided value | +| LogInjectionTest.java:1590:27:1590:43 | (...)... | LogInjectionTest.java:1590:36:1590:43 | source(...) : Object | LogInjectionTest.java:1590:27:1590:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1590:36:1590:43 | source(...) | user-provided value | +| LogInjectionTest.java:1591:27:1591:43 | (...)... | LogInjectionTest.java:1591:36:1591:43 | source(...) : Object | LogInjectionTest.java:1591:27:1591:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1591:36:1591:43 | source(...) | user-provided value | +| LogInjectionTest.java:1592:42:1592:64 | new Object[] | LogInjectionTest.java:1592:56:1592:63 | source(...) : Object | LogInjectionTest.java:1592:42:1592:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1592:56:1592:63 | source(...) | user-provided value | +| LogInjectionTest.java:1593:42:1593:64 | new Object[] | LogInjectionTest.java:1593:56:1593:63 | source(...) : Object | LogInjectionTest.java:1593:42:1593:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1593:56:1593:63 | source(...) | user-provided value | +| LogInjectionTest.java:1594:57:1594:73 | (...)... | LogInjectionTest.java:1594:66:1594:73 | source(...) : Object | LogInjectionTest.java:1594:57:1594:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1594:66:1594:73 | source(...) | user-provided value | +| LogInjectionTest.java:1595:42:1595:58 | (...)... | LogInjectionTest.java:1595:51:1595:58 | source(...) : Object | LogInjectionTest.java:1595:42:1595:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1595:51:1595:58 | source(...) | user-provided value | +| LogInjectionTest.java:1596:27:1596:43 | (...)... | LogInjectionTest.java:1596:36:1596:43 | source(...) : Object | LogInjectionTest.java:1596:27:1596:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1596:36:1596:43 | source(...) | user-provided value | +| LogInjectionTest.java:1597:57:1597:73 | (...)... | LogInjectionTest.java:1597:66:1597:73 | source(...) : Object | LogInjectionTest.java:1597:57:1597:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1597:66:1597:73 | source(...) | user-provided value | | LogInjectionTest.java:1598:42:1598:58 | (...)... | LogInjectionTest.java:1598:51:1598:58 | source(...) : Object | LogInjectionTest.java:1598:42:1598:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1598:51:1598:58 | source(...) | user-provided value | | LogInjectionTest.java:1599:27:1599:43 | (...)... | LogInjectionTest.java:1599:36:1599:43 | source(...) : Object | LogInjectionTest.java:1599:27:1599:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1599:36:1599:43 | source(...) | user-provided value | -| LogInjectionTest.java:1600:42:1600:58 | (...)... | LogInjectionTest.java:1600:51:1600:58 | source(...) : Object | LogInjectionTest.java:1600:42:1600:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1600:51:1600:58 | source(...) | user-provided value | -| LogInjectionTest.java:1601:27:1601:43 | (...)... | LogInjectionTest.java:1601:36:1601:43 | source(...) : Object | LogInjectionTest.java:1601:27:1601:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1601:36:1601:43 | source(...) | user-provided value | -| LogInjectionTest.java:1602:27:1602:43 | (...)... | LogInjectionTest.java:1602:36:1602:43 | source(...) : Object | LogInjectionTest.java:1602:27:1602:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1602:36:1602:43 | source(...) | user-provided value | +| LogInjectionTest.java:1600:72:1600:88 | (...)... | LogInjectionTest.java:1600:81:1600:88 | source(...) : Object | LogInjectionTest.java:1600:72:1600:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1600:81:1600:88 | source(...) | user-provided value | +| LogInjectionTest.java:1601:57:1601:73 | (...)... | LogInjectionTest.java:1601:66:1601:73 | source(...) : Object | LogInjectionTest.java:1601:57:1601:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1601:66:1601:73 | source(...) | user-provided value | +| LogInjectionTest.java:1602:42:1602:58 | (...)... | LogInjectionTest.java:1602:51:1602:58 | source(...) : Object | LogInjectionTest.java:1602:42:1602:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1602:51:1602:58 | source(...) | user-provided value | | LogInjectionTest.java:1603:27:1603:43 | (...)... | LogInjectionTest.java:1603:36:1603:43 | source(...) : Object | LogInjectionTest.java:1603:27:1603:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1603:36:1603:43 | source(...) | user-provided value | -| LogInjectionTest.java:1604:42:1604:64 | new Object[] | LogInjectionTest.java:1604:56:1604:63 | source(...) : Object | LogInjectionTest.java:1604:42:1604:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1604:56:1604:63 | source(...) | user-provided value | -| LogInjectionTest.java:1605:42:1605:64 | new Object[] | LogInjectionTest.java:1605:56:1605:63 | source(...) : Object | LogInjectionTest.java:1605:42:1605:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1605:56:1605:63 | source(...) | user-provided value | -| LogInjectionTest.java:1606:57:1606:73 | (...)... | LogInjectionTest.java:1606:66:1606:73 | source(...) : Object | LogInjectionTest.java:1606:57:1606:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1606:66:1606:73 | source(...) | user-provided value | -| LogInjectionTest.java:1607:42:1607:58 | (...)... | LogInjectionTest.java:1607:51:1607:58 | source(...) : Object | LogInjectionTest.java:1607:42:1607:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1607:51:1607:58 | source(...) | user-provided value | -| LogInjectionTest.java:1608:27:1608:43 | (...)... | LogInjectionTest.java:1608:36:1608:43 | source(...) : Object | LogInjectionTest.java:1608:27:1608:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1608:36:1608:43 | source(...) | user-provided value | -| LogInjectionTest.java:1609:57:1609:73 | (...)... | LogInjectionTest.java:1609:66:1609:73 | source(...) : Object | LogInjectionTest.java:1609:57:1609:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1609:66:1609:73 | source(...) | user-provided value | +| LogInjectionTest.java:1604:72:1604:88 | (...)... | LogInjectionTest.java:1604:81:1604:88 | source(...) : Object | LogInjectionTest.java:1604:72:1604:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1604:81:1604:88 | source(...) | user-provided value | +| LogInjectionTest.java:1605:57:1605:73 | (...)... | LogInjectionTest.java:1605:66:1605:73 | source(...) : Object | LogInjectionTest.java:1605:57:1605:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1605:66:1605:73 | source(...) | user-provided value | +| LogInjectionTest.java:1606:42:1606:58 | (...)... | LogInjectionTest.java:1606:51:1606:58 | source(...) : Object | LogInjectionTest.java:1606:42:1606:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1606:51:1606:58 | source(...) | user-provided value | +| LogInjectionTest.java:1607:27:1607:43 | (...)... | LogInjectionTest.java:1607:36:1607:43 | source(...) : Object | LogInjectionTest.java:1607:27:1607:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1607:36:1607:43 | source(...) | user-provided value | +| LogInjectionTest.java:1608:42:1608:58 | (...)... | LogInjectionTest.java:1608:51:1608:58 | source(...) : Object | LogInjectionTest.java:1608:42:1608:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1608:51:1608:58 | source(...) | user-provided value | +| LogInjectionTest.java:1609:27:1609:43 | (...)... | LogInjectionTest.java:1609:36:1609:43 | source(...) : Object | LogInjectionTest.java:1609:27:1609:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1609:36:1609:43 | source(...) | user-provided value | | LogInjectionTest.java:1610:42:1610:58 | (...)... | LogInjectionTest.java:1610:51:1610:58 | source(...) : Object | LogInjectionTest.java:1610:42:1610:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1610:51:1610:58 | source(...) | user-provided value | | LogInjectionTest.java:1611:27:1611:43 | (...)... | LogInjectionTest.java:1611:36:1611:43 | source(...) : Object | LogInjectionTest.java:1611:27:1611:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1611:36:1611:43 | source(...) | user-provided value | -| LogInjectionTest.java:1612:72:1612:88 | (...)... | LogInjectionTest.java:1612:81:1612:88 | source(...) : Object | LogInjectionTest.java:1612:72:1612:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1612:81:1612:88 | source(...) | user-provided value | -| LogInjectionTest.java:1613:57:1613:73 | (...)... | LogInjectionTest.java:1613:66:1613:73 | source(...) : Object | LogInjectionTest.java:1613:57:1613:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1613:66:1613:73 | source(...) | user-provided value | -| LogInjectionTest.java:1614:42:1614:58 | (...)... | LogInjectionTest.java:1614:51:1614:58 | source(...) : Object | LogInjectionTest.java:1614:42:1614:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1614:51:1614:58 | source(...) | user-provided value | -| LogInjectionTest.java:1615:27:1615:43 | (...)... | LogInjectionTest.java:1615:36:1615:43 | source(...) : Object | LogInjectionTest.java:1615:27:1615:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1615:36:1615:43 | source(...) | user-provided value | -| LogInjectionTest.java:1616:72:1616:88 | (...)... | LogInjectionTest.java:1616:81:1616:88 | source(...) : Object | LogInjectionTest.java:1616:72:1616:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1616:81:1616:88 | source(...) | user-provided value | -| LogInjectionTest.java:1617:57:1617:73 | (...)... | LogInjectionTest.java:1617:66:1617:73 | source(...) : Object | LogInjectionTest.java:1617:57:1617:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1617:66:1617:73 | source(...) | user-provided value | -| LogInjectionTest.java:1618:42:1618:58 | (...)... | LogInjectionTest.java:1618:51:1618:58 | source(...) : Object | LogInjectionTest.java:1618:42:1618:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1618:51:1618:58 | source(...) | user-provided value | -| LogInjectionTest.java:1619:27:1619:43 | (...)... | LogInjectionTest.java:1619:36:1619:43 | source(...) : Object | LogInjectionTest.java:1619:27:1619:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1619:36:1619:43 | source(...) | user-provided value | -| LogInjectionTest.java:1620:41:1620:57 | (...)... | LogInjectionTest.java:1620:50:1620:57 | source(...) : Object | LogInjectionTest.java:1620:41:1620:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1620:50:1620:57 | source(...) | user-provided value | -| LogInjectionTest.java:1621:26:1621:42 | (...)... | LogInjectionTest.java:1621:35:1621:42 | source(...) : Object | LogInjectionTest.java:1621:26:1621:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1621:35:1621:42 | source(...) | user-provided value | -| LogInjectionTest.java:1622:41:1622:57 | (...)... | LogInjectionTest.java:1622:50:1622:57 | source(...) : Object | LogInjectionTest.java:1622:41:1622:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1622:50:1622:57 | source(...) | user-provided value | -| LogInjectionTest.java:1623:26:1623:42 | (...)... | LogInjectionTest.java:1623:35:1623:42 | source(...) : Object | LogInjectionTest.java:1623:26:1623:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1623:35:1623:42 | source(...) | user-provided value | -| LogInjectionTest.java:1624:26:1624:42 | (...)... | LogInjectionTest.java:1624:35:1624:42 | source(...) : Object | LogInjectionTest.java:1624:26:1624:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1624:35:1624:42 | source(...) | user-provided value | -| LogInjectionTest.java:1625:26:1625:42 | (...)... | LogInjectionTest.java:1625:35:1625:42 | source(...) : Object | LogInjectionTest.java:1625:26:1625:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1625:35:1625:42 | source(...) | user-provided value | -| LogInjectionTest.java:1626:41:1626:63 | new Object[] | LogInjectionTest.java:1626:55:1626:62 | source(...) : Object | LogInjectionTest.java:1626:41:1626:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1626:55:1626:62 | source(...) | user-provided value | -| LogInjectionTest.java:1627:41:1627:63 | new Object[] | LogInjectionTest.java:1627:55:1627:62 | source(...) : Object | LogInjectionTest.java:1627:41:1627:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1627:55:1627:62 | source(...) | user-provided value | -| LogInjectionTest.java:1628:56:1628:72 | (...)... | LogInjectionTest.java:1628:65:1628:72 | source(...) : Object | LogInjectionTest.java:1628:56:1628:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1628:65:1628:72 | source(...) | user-provided value | -| LogInjectionTest.java:1629:41:1629:57 | (...)... | LogInjectionTest.java:1629:50:1629:57 | source(...) : Object | LogInjectionTest.java:1629:41:1629:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1629:50:1629:57 | source(...) | user-provided value | -| LogInjectionTest.java:1630:26:1630:42 | (...)... | LogInjectionTest.java:1630:35:1630:42 | source(...) : Object | LogInjectionTest.java:1630:26:1630:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1630:35:1630:42 | source(...) | user-provided value | -| LogInjectionTest.java:1631:56:1631:72 | (...)... | LogInjectionTest.java:1631:65:1631:72 | source(...) : Object | LogInjectionTest.java:1631:56:1631:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1631:65:1631:72 | source(...) | user-provided value | +| LogInjectionTest.java:1612:27:1612:43 | (...)... | LogInjectionTest.java:1612:36:1612:43 | source(...) : Object | LogInjectionTest.java:1612:27:1612:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1612:36:1612:43 | source(...) | user-provided value | +| LogInjectionTest.java:1613:27:1613:43 | (...)... | LogInjectionTest.java:1613:36:1613:43 | source(...) : Object | LogInjectionTest.java:1613:27:1613:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1613:36:1613:43 | source(...) | user-provided value | +| LogInjectionTest.java:1614:42:1614:64 | new Object[] | LogInjectionTest.java:1614:56:1614:63 | source(...) : Object | LogInjectionTest.java:1614:42:1614:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1614:56:1614:63 | source(...) | user-provided value | +| LogInjectionTest.java:1615:42:1615:64 | new Object[] | LogInjectionTest.java:1615:56:1615:63 | source(...) : Object | LogInjectionTest.java:1615:42:1615:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1615:56:1615:63 | source(...) | user-provided value | +| LogInjectionTest.java:1616:57:1616:73 | (...)... | LogInjectionTest.java:1616:66:1616:73 | source(...) : Object | LogInjectionTest.java:1616:57:1616:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1616:66:1616:73 | source(...) | user-provided value | +| LogInjectionTest.java:1617:42:1617:58 | (...)... | LogInjectionTest.java:1617:51:1617:58 | source(...) : Object | LogInjectionTest.java:1617:42:1617:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1617:51:1617:58 | source(...) | user-provided value | +| LogInjectionTest.java:1618:27:1618:43 | (...)... | LogInjectionTest.java:1618:36:1618:43 | source(...) : Object | LogInjectionTest.java:1618:27:1618:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1618:36:1618:43 | source(...) | user-provided value | +| LogInjectionTest.java:1619:57:1619:73 | (...)... | LogInjectionTest.java:1619:66:1619:73 | source(...) : Object | LogInjectionTest.java:1619:57:1619:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1619:66:1619:73 | source(...) | user-provided value | +| LogInjectionTest.java:1620:42:1620:58 | (...)... | LogInjectionTest.java:1620:51:1620:58 | source(...) : Object | LogInjectionTest.java:1620:42:1620:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1620:51:1620:58 | source(...) | user-provided value | +| LogInjectionTest.java:1621:27:1621:43 | (...)... | LogInjectionTest.java:1621:36:1621:43 | source(...) : Object | LogInjectionTest.java:1621:27:1621:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1621:36:1621:43 | source(...) | user-provided value | +| LogInjectionTest.java:1622:72:1622:88 | (...)... | LogInjectionTest.java:1622:81:1622:88 | source(...) : Object | LogInjectionTest.java:1622:72:1622:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1622:81:1622:88 | source(...) | user-provided value | +| LogInjectionTest.java:1623:57:1623:73 | (...)... | LogInjectionTest.java:1623:66:1623:73 | source(...) : Object | LogInjectionTest.java:1623:57:1623:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1623:66:1623:73 | source(...) | user-provided value | +| LogInjectionTest.java:1624:42:1624:58 | (...)... | LogInjectionTest.java:1624:51:1624:58 | source(...) : Object | LogInjectionTest.java:1624:42:1624:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1624:51:1624:58 | source(...) | user-provided value | +| LogInjectionTest.java:1625:27:1625:43 | (...)... | LogInjectionTest.java:1625:36:1625:43 | source(...) : Object | LogInjectionTest.java:1625:27:1625:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1625:36:1625:43 | source(...) | user-provided value | +| LogInjectionTest.java:1626:72:1626:88 | (...)... | LogInjectionTest.java:1626:81:1626:88 | source(...) : Object | LogInjectionTest.java:1626:72:1626:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1626:81:1626:88 | source(...) | user-provided value | +| LogInjectionTest.java:1627:57:1627:73 | (...)... | LogInjectionTest.java:1627:66:1627:73 | source(...) : Object | LogInjectionTest.java:1627:57:1627:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1627:66:1627:73 | source(...) | user-provided value | +| LogInjectionTest.java:1628:42:1628:58 | (...)... | LogInjectionTest.java:1628:51:1628:58 | source(...) : Object | LogInjectionTest.java:1628:42:1628:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1628:51:1628:58 | source(...) | user-provided value | +| LogInjectionTest.java:1629:27:1629:43 | (...)... | LogInjectionTest.java:1629:36:1629:43 | source(...) : Object | LogInjectionTest.java:1629:27:1629:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1629:36:1629:43 | source(...) | user-provided value | +| LogInjectionTest.java:1630:41:1630:57 | (...)... | LogInjectionTest.java:1630:50:1630:57 | source(...) : Object | LogInjectionTest.java:1630:41:1630:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1630:50:1630:57 | source(...) | user-provided value | +| LogInjectionTest.java:1631:26:1631:42 | (...)... | LogInjectionTest.java:1631:35:1631:42 | source(...) : Object | LogInjectionTest.java:1631:26:1631:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1631:35:1631:42 | source(...) | user-provided value | | LogInjectionTest.java:1632:41:1632:57 | (...)... | LogInjectionTest.java:1632:50:1632:57 | source(...) : Object | LogInjectionTest.java:1632:41:1632:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1632:50:1632:57 | source(...) | user-provided value | | LogInjectionTest.java:1633:26:1633:42 | (...)... | LogInjectionTest.java:1633:35:1633:42 | source(...) : Object | LogInjectionTest.java:1633:26:1633:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1633:35:1633:42 | source(...) | user-provided value | -| LogInjectionTest.java:1634:71:1634:87 | (...)... | LogInjectionTest.java:1634:80:1634:87 | source(...) : Object | LogInjectionTest.java:1634:71:1634:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1634:80:1634:87 | source(...) | user-provided value | -| LogInjectionTest.java:1635:56:1635:72 | (...)... | LogInjectionTest.java:1635:65:1635:72 | source(...) : Object | LogInjectionTest.java:1635:56:1635:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1635:65:1635:72 | source(...) | user-provided value | -| LogInjectionTest.java:1636:41:1636:57 | (...)... | LogInjectionTest.java:1636:50:1636:57 | source(...) : Object | LogInjectionTest.java:1636:41:1636:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1636:50:1636:57 | source(...) | user-provided value | -| LogInjectionTest.java:1637:26:1637:42 | (...)... | LogInjectionTest.java:1637:35:1637:42 | source(...) : Object | LogInjectionTest.java:1637:26:1637:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1637:35:1637:42 | source(...) | user-provided value | -| LogInjectionTest.java:1638:71:1638:87 | (...)... | LogInjectionTest.java:1638:80:1638:87 | source(...) : Object | LogInjectionTest.java:1638:71:1638:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1638:80:1638:87 | source(...) | user-provided value | -| LogInjectionTest.java:1639:56:1639:72 | (...)... | LogInjectionTest.java:1639:65:1639:72 | source(...) : Object | LogInjectionTest.java:1639:56:1639:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1639:65:1639:72 | source(...) | user-provided value | -| LogInjectionTest.java:1640:41:1640:57 | (...)... | LogInjectionTest.java:1640:50:1640:57 | source(...) : Object | LogInjectionTest.java:1640:41:1640:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1640:50:1640:57 | source(...) | user-provided value | -| LogInjectionTest.java:1641:26:1641:42 | (...)... | LogInjectionTest.java:1641:35:1641:42 | source(...) : Object | LogInjectionTest.java:1641:26:1641:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1641:35:1641:42 | source(...) | user-provided value | -| LogInjectionTest.java:1642:79:1642:95 | (...)... | LogInjectionTest.java:1642:88:1642:95 | source(...) : Object | LogInjectionTest.java:1642:79:1642:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1642:88:1642:95 | source(...) | user-provided value | -| LogInjectionTest.java:1643:64:1643:80 | (...)... | LogInjectionTest.java:1643:73:1643:80 | source(...) : Object | LogInjectionTest.java:1643:64:1643:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1643:73:1643:80 | source(...) | user-provided value | -| LogInjectionTest.java:1644:79:1644:95 | (...)... | LogInjectionTest.java:1644:88:1644:95 | source(...) : Object | LogInjectionTest.java:1644:79:1644:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1644:88:1644:95 | source(...) | user-provided value | -| LogInjectionTest.java:1645:64:1645:80 | (...)... | LogInjectionTest.java:1645:73:1645:80 | source(...) : Object | LogInjectionTest.java:1645:64:1645:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1645:73:1645:80 | source(...) | user-provided value | -| LogInjectionTest.java:1646:64:1646:80 | (...)... | LogInjectionTest.java:1646:73:1646:80 | source(...) : Object | LogInjectionTest.java:1646:64:1646:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1646:73:1646:80 | source(...) | user-provided value | -| LogInjectionTest.java:1647:64:1647:80 | (...)... | LogInjectionTest.java:1647:73:1647:80 | source(...) : Object | LogInjectionTest.java:1647:64:1647:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1647:73:1647:80 | source(...) | user-provided value | -| LogInjectionTest.java:1648:79:1648:101 | new Object[] | LogInjectionTest.java:1648:93:1648:100 | source(...) : Object | LogInjectionTest.java:1648:79:1648:101 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1648:93:1648:100 | source(...) | user-provided value | -| LogInjectionTest.java:1649:79:1649:101 | new Object[] | LogInjectionTest.java:1649:93:1649:100 | source(...) : Object | LogInjectionTest.java:1649:79:1649:101 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1649:93:1649:100 | source(...) | user-provided value | -| LogInjectionTest.java:1650:94:1650:110 | (...)... | LogInjectionTest.java:1650:103:1650:110 | source(...) : Object | LogInjectionTest.java:1650:94:1650:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1650:103:1650:110 | source(...) | user-provided value | -| LogInjectionTest.java:1651:79:1651:95 | (...)... | LogInjectionTest.java:1651:88:1651:95 | source(...) : Object | LogInjectionTest.java:1651:79:1651:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1651:88:1651:95 | source(...) | user-provided value | -| LogInjectionTest.java:1652:64:1652:80 | (...)... | LogInjectionTest.java:1652:73:1652:80 | source(...) : Object | LogInjectionTest.java:1652:64:1652:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1652:73:1652:80 | source(...) | user-provided value | -| LogInjectionTest.java:1653:94:1653:110 | (...)... | LogInjectionTest.java:1653:103:1653:110 | source(...) : Object | LogInjectionTest.java:1653:94:1653:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1653:103:1653:110 | source(...) | user-provided value | +| LogInjectionTest.java:1634:26:1634:42 | (...)... | LogInjectionTest.java:1634:35:1634:42 | source(...) : Object | LogInjectionTest.java:1634:26:1634:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1634:35:1634:42 | source(...) | user-provided value | +| LogInjectionTest.java:1635:26:1635:42 | (...)... | LogInjectionTest.java:1635:35:1635:42 | source(...) : Object | LogInjectionTest.java:1635:26:1635:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1635:35:1635:42 | source(...) | user-provided value | +| LogInjectionTest.java:1636:41:1636:63 | new Object[] | LogInjectionTest.java:1636:55:1636:62 | source(...) : Object | LogInjectionTest.java:1636:41:1636:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1636:55:1636:62 | source(...) | user-provided value | +| LogInjectionTest.java:1637:41:1637:63 | new Object[] | LogInjectionTest.java:1637:55:1637:62 | source(...) : Object | LogInjectionTest.java:1637:41:1637:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1637:55:1637:62 | source(...) | user-provided value | +| LogInjectionTest.java:1638:56:1638:72 | (...)... | LogInjectionTest.java:1638:65:1638:72 | source(...) : Object | LogInjectionTest.java:1638:56:1638:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1638:65:1638:72 | source(...) | user-provided value | +| LogInjectionTest.java:1639:41:1639:57 | (...)... | LogInjectionTest.java:1639:50:1639:57 | source(...) : Object | LogInjectionTest.java:1639:41:1639:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1639:50:1639:57 | source(...) | user-provided value | +| LogInjectionTest.java:1640:26:1640:42 | (...)... | LogInjectionTest.java:1640:35:1640:42 | source(...) : Object | LogInjectionTest.java:1640:26:1640:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1640:35:1640:42 | source(...) | user-provided value | +| LogInjectionTest.java:1641:56:1641:72 | (...)... | LogInjectionTest.java:1641:65:1641:72 | source(...) : Object | LogInjectionTest.java:1641:56:1641:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1641:65:1641:72 | source(...) | user-provided value | +| LogInjectionTest.java:1642:41:1642:57 | (...)... | LogInjectionTest.java:1642:50:1642:57 | source(...) : Object | LogInjectionTest.java:1642:41:1642:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1642:50:1642:57 | source(...) | user-provided value | +| LogInjectionTest.java:1643:26:1643:42 | (...)... | LogInjectionTest.java:1643:35:1643:42 | source(...) : Object | LogInjectionTest.java:1643:26:1643:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1643:35:1643:42 | source(...) | user-provided value | +| LogInjectionTest.java:1644:71:1644:87 | (...)... | LogInjectionTest.java:1644:80:1644:87 | source(...) : Object | LogInjectionTest.java:1644:71:1644:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1644:80:1644:87 | source(...) | user-provided value | +| LogInjectionTest.java:1645:56:1645:72 | (...)... | LogInjectionTest.java:1645:65:1645:72 | source(...) : Object | LogInjectionTest.java:1645:56:1645:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1645:65:1645:72 | source(...) | user-provided value | +| LogInjectionTest.java:1646:41:1646:57 | (...)... | LogInjectionTest.java:1646:50:1646:57 | source(...) : Object | LogInjectionTest.java:1646:41:1646:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1646:50:1646:57 | source(...) | user-provided value | +| LogInjectionTest.java:1647:26:1647:42 | (...)... | LogInjectionTest.java:1647:35:1647:42 | source(...) : Object | LogInjectionTest.java:1647:26:1647:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1647:35:1647:42 | source(...) | user-provided value | +| LogInjectionTest.java:1648:71:1648:87 | (...)... | LogInjectionTest.java:1648:80:1648:87 | source(...) : Object | LogInjectionTest.java:1648:71:1648:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1648:80:1648:87 | source(...) | user-provided value | +| LogInjectionTest.java:1649:56:1649:72 | (...)... | LogInjectionTest.java:1649:65:1649:72 | source(...) : Object | LogInjectionTest.java:1649:56:1649:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1649:65:1649:72 | source(...) | user-provided value | +| LogInjectionTest.java:1650:41:1650:57 | (...)... | LogInjectionTest.java:1650:50:1650:57 | source(...) : Object | LogInjectionTest.java:1650:41:1650:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1650:50:1650:57 | source(...) | user-provided value | +| LogInjectionTest.java:1651:26:1651:42 | (...)... | LogInjectionTest.java:1651:35:1651:42 | source(...) : Object | LogInjectionTest.java:1651:26:1651:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1651:35:1651:42 | source(...) | user-provided value | +| LogInjectionTest.java:1652:79:1652:95 | (...)... | LogInjectionTest.java:1652:88:1652:95 | source(...) : Object | LogInjectionTest.java:1652:79:1652:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1652:88:1652:95 | source(...) | user-provided value | +| LogInjectionTest.java:1653:64:1653:80 | (...)... | LogInjectionTest.java:1653:73:1653:80 | source(...) : Object | LogInjectionTest.java:1653:64:1653:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1653:73:1653:80 | source(...) | user-provided value | | LogInjectionTest.java:1654:79:1654:95 | (...)... | LogInjectionTest.java:1654:88:1654:95 | source(...) : Object | LogInjectionTest.java:1654:79:1654:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1654:88:1654:95 | source(...) | user-provided value | | LogInjectionTest.java:1655:64:1655:80 | (...)... | LogInjectionTest.java:1655:73:1655:80 | source(...) : Object | LogInjectionTest.java:1655:64:1655:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1655:73:1655:80 | source(...) | user-provided value | -| LogInjectionTest.java:1656:109:1656:125 | (...)... | LogInjectionTest.java:1656:118:1656:125 | source(...) : Object | LogInjectionTest.java:1656:109:1656:125 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1656:118:1656:125 | source(...) | user-provided value | -| LogInjectionTest.java:1657:94:1657:110 | (...)... | LogInjectionTest.java:1657:103:1657:110 | source(...) : Object | LogInjectionTest.java:1657:94:1657:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1657:103:1657:110 | source(...) | user-provided value | -| LogInjectionTest.java:1658:79:1658:95 | (...)... | LogInjectionTest.java:1658:88:1658:95 | source(...) : Object | LogInjectionTest.java:1658:79:1658:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1658:88:1658:95 | source(...) | user-provided value | -| LogInjectionTest.java:1659:64:1659:80 | (...)... | LogInjectionTest.java:1659:73:1659:80 | source(...) : Object | LogInjectionTest.java:1659:64:1659:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1659:73:1659:80 | source(...) | user-provided value | -| LogInjectionTest.java:1660:109:1660:125 | (...)... | LogInjectionTest.java:1660:118:1660:125 | source(...) : Object | LogInjectionTest.java:1660:109:1660:125 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1660:118:1660:125 | source(...) | user-provided value | -| LogInjectionTest.java:1661:94:1661:110 | (...)... | LogInjectionTest.java:1661:103:1661:110 | source(...) : Object | LogInjectionTest.java:1661:94:1661:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1661:103:1661:110 | source(...) | user-provided value | -| LogInjectionTest.java:1662:79:1662:95 | (...)... | LogInjectionTest.java:1662:88:1662:95 | source(...) : Object | LogInjectionTest.java:1662:79:1662:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1662:88:1662:95 | source(...) | user-provided value | -| LogInjectionTest.java:1663:64:1663:80 | (...)... | LogInjectionTest.java:1663:73:1663:80 | source(...) : Object | LogInjectionTest.java:1663:64:1663:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1663:73:1663:80 | source(...) | user-provided value | -| LogInjectionTest.java:1664:42:1664:58 | (...)... | LogInjectionTest.java:1664:51:1664:58 | source(...) : Object | LogInjectionTest.java:1664:42:1664:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1664:51:1664:58 | source(...) | user-provided value | -| LogInjectionTest.java:1665:27:1665:43 | (...)... | LogInjectionTest.java:1665:36:1665:43 | source(...) : Object | LogInjectionTest.java:1665:27:1665:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1665:36:1665:43 | source(...) | user-provided value | -| LogInjectionTest.java:1666:42:1666:58 | (...)... | LogInjectionTest.java:1666:51:1666:58 | source(...) : Object | LogInjectionTest.java:1666:42:1666:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1666:51:1666:58 | source(...) | user-provided value | -| LogInjectionTest.java:1667:27:1667:43 | (...)... | LogInjectionTest.java:1667:36:1667:43 | source(...) : Object | LogInjectionTest.java:1667:27:1667:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1667:36:1667:43 | source(...) | user-provided value | -| LogInjectionTest.java:1668:27:1668:43 | (...)... | LogInjectionTest.java:1668:36:1668:43 | source(...) : Object | LogInjectionTest.java:1668:27:1668:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1668:36:1668:43 | source(...) | user-provided value | -| LogInjectionTest.java:1669:27:1669:43 | (...)... | LogInjectionTest.java:1669:36:1669:43 | source(...) : Object | LogInjectionTest.java:1669:27:1669:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1669:36:1669:43 | source(...) | user-provided value | -| LogInjectionTest.java:1670:42:1670:64 | new Object[] | LogInjectionTest.java:1670:56:1670:63 | source(...) : Object | LogInjectionTest.java:1670:42:1670:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1670:56:1670:63 | source(...) | user-provided value | -| LogInjectionTest.java:1671:42:1671:64 | new Object[] | LogInjectionTest.java:1671:56:1671:63 | source(...) : Object | LogInjectionTest.java:1671:42:1671:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1671:56:1671:63 | source(...) | user-provided value | -| LogInjectionTest.java:1672:57:1672:73 | (...)... | LogInjectionTest.java:1672:66:1672:73 | source(...) : Object | LogInjectionTest.java:1672:57:1672:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1672:66:1672:73 | source(...) | user-provided value | -| LogInjectionTest.java:1673:42:1673:58 | (...)... | LogInjectionTest.java:1673:51:1673:58 | source(...) : Object | LogInjectionTest.java:1673:42:1673:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1673:51:1673:58 | source(...) | user-provided value | -| LogInjectionTest.java:1674:27:1674:43 | (...)... | LogInjectionTest.java:1674:36:1674:43 | source(...) : Object | LogInjectionTest.java:1674:27:1674:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1674:36:1674:43 | source(...) | user-provided value | -| LogInjectionTest.java:1675:57:1675:73 | (...)... | LogInjectionTest.java:1675:66:1675:73 | source(...) : Object | LogInjectionTest.java:1675:57:1675:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1675:66:1675:73 | source(...) | user-provided value | +| LogInjectionTest.java:1656:64:1656:80 | (...)... | LogInjectionTest.java:1656:73:1656:80 | source(...) : Object | LogInjectionTest.java:1656:64:1656:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1656:73:1656:80 | source(...) | user-provided value | +| LogInjectionTest.java:1657:64:1657:80 | (...)... | LogInjectionTest.java:1657:73:1657:80 | source(...) : Object | LogInjectionTest.java:1657:64:1657:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1657:73:1657:80 | source(...) | user-provided value | +| LogInjectionTest.java:1658:79:1658:101 | new Object[] | LogInjectionTest.java:1658:93:1658:100 | source(...) : Object | LogInjectionTest.java:1658:79:1658:101 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1658:93:1658:100 | source(...) | user-provided value | +| LogInjectionTest.java:1659:79:1659:101 | new Object[] | LogInjectionTest.java:1659:93:1659:100 | source(...) : Object | LogInjectionTest.java:1659:79:1659:101 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1659:93:1659:100 | source(...) | user-provided value | +| LogInjectionTest.java:1660:94:1660:110 | (...)... | LogInjectionTest.java:1660:103:1660:110 | source(...) : Object | LogInjectionTest.java:1660:94:1660:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1660:103:1660:110 | source(...) | user-provided value | +| LogInjectionTest.java:1661:79:1661:95 | (...)... | LogInjectionTest.java:1661:88:1661:95 | source(...) : Object | LogInjectionTest.java:1661:79:1661:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1661:88:1661:95 | source(...) | user-provided value | +| LogInjectionTest.java:1662:64:1662:80 | (...)... | LogInjectionTest.java:1662:73:1662:80 | source(...) : Object | LogInjectionTest.java:1662:64:1662:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1662:73:1662:80 | source(...) | user-provided value | +| LogInjectionTest.java:1663:94:1663:110 | (...)... | LogInjectionTest.java:1663:103:1663:110 | source(...) : Object | LogInjectionTest.java:1663:94:1663:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1663:103:1663:110 | source(...) | user-provided value | +| LogInjectionTest.java:1664:79:1664:95 | (...)... | LogInjectionTest.java:1664:88:1664:95 | source(...) : Object | LogInjectionTest.java:1664:79:1664:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1664:88:1664:95 | source(...) | user-provided value | +| LogInjectionTest.java:1665:64:1665:80 | (...)... | LogInjectionTest.java:1665:73:1665:80 | source(...) : Object | LogInjectionTest.java:1665:64:1665:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1665:73:1665:80 | source(...) | user-provided value | +| LogInjectionTest.java:1666:109:1666:125 | (...)... | LogInjectionTest.java:1666:118:1666:125 | source(...) : Object | LogInjectionTest.java:1666:109:1666:125 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1666:118:1666:125 | source(...) | user-provided value | +| LogInjectionTest.java:1667:94:1667:110 | (...)... | LogInjectionTest.java:1667:103:1667:110 | source(...) : Object | LogInjectionTest.java:1667:94:1667:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1667:103:1667:110 | source(...) | user-provided value | +| LogInjectionTest.java:1668:79:1668:95 | (...)... | LogInjectionTest.java:1668:88:1668:95 | source(...) : Object | LogInjectionTest.java:1668:79:1668:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1668:88:1668:95 | source(...) | user-provided value | +| LogInjectionTest.java:1669:64:1669:80 | (...)... | LogInjectionTest.java:1669:73:1669:80 | source(...) : Object | LogInjectionTest.java:1669:64:1669:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1669:73:1669:80 | source(...) | user-provided value | +| LogInjectionTest.java:1670:109:1670:125 | (...)... | LogInjectionTest.java:1670:118:1670:125 | source(...) : Object | LogInjectionTest.java:1670:109:1670:125 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1670:118:1670:125 | source(...) | user-provided value | +| LogInjectionTest.java:1671:94:1671:110 | (...)... | LogInjectionTest.java:1671:103:1671:110 | source(...) : Object | LogInjectionTest.java:1671:94:1671:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1671:103:1671:110 | source(...) | user-provided value | +| LogInjectionTest.java:1672:79:1672:95 | (...)... | LogInjectionTest.java:1672:88:1672:95 | source(...) : Object | LogInjectionTest.java:1672:79:1672:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1672:88:1672:95 | source(...) | user-provided value | +| LogInjectionTest.java:1673:64:1673:80 | (...)... | LogInjectionTest.java:1673:73:1673:80 | source(...) : Object | LogInjectionTest.java:1673:64:1673:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1673:73:1673:80 | source(...) | user-provided value | +| LogInjectionTest.java:1674:42:1674:58 | (...)... | LogInjectionTest.java:1674:51:1674:58 | source(...) : Object | LogInjectionTest.java:1674:42:1674:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1674:51:1674:58 | source(...) | user-provided value | +| LogInjectionTest.java:1675:27:1675:43 | (...)... | LogInjectionTest.java:1675:36:1675:43 | source(...) : Object | LogInjectionTest.java:1675:27:1675:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1675:36:1675:43 | source(...) | user-provided value | | LogInjectionTest.java:1676:42:1676:58 | (...)... | LogInjectionTest.java:1676:51:1676:58 | source(...) : Object | LogInjectionTest.java:1676:42:1676:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1676:51:1676:58 | source(...) | user-provided value | | LogInjectionTest.java:1677:27:1677:43 | (...)... | LogInjectionTest.java:1677:36:1677:43 | source(...) : Object | LogInjectionTest.java:1677:27:1677:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1677:36:1677:43 | source(...) | user-provided value | -| LogInjectionTest.java:1678:72:1678:88 | (...)... | LogInjectionTest.java:1678:81:1678:88 | source(...) : Object | LogInjectionTest.java:1678:72:1678:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1678:81:1678:88 | source(...) | user-provided value | -| LogInjectionTest.java:1679:57:1679:73 | (...)... | LogInjectionTest.java:1679:66:1679:73 | source(...) : Object | LogInjectionTest.java:1679:57:1679:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1679:66:1679:73 | source(...) | user-provided value | -| LogInjectionTest.java:1680:42:1680:58 | (...)... | LogInjectionTest.java:1680:51:1680:58 | source(...) : Object | LogInjectionTest.java:1680:42:1680:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1680:51:1680:58 | source(...) | user-provided value | -| LogInjectionTest.java:1681:27:1681:43 | (...)... | LogInjectionTest.java:1681:36:1681:43 | source(...) : Object | LogInjectionTest.java:1681:27:1681:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1681:36:1681:43 | source(...) | user-provided value | -| LogInjectionTest.java:1682:72:1682:88 | (...)... | LogInjectionTest.java:1682:81:1682:88 | source(...) : Object | LogInjectionTest.java:1682:72:1682:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1682:81:1682:88 | source(...) | user-provided value | -| LogInjectionTest.java:1683:57:1683:73 | (...)... | LogInjectionTest.java:1683:66:1683:73 | source(...) : Object | LogInjectionTest.java:1683:57:1683:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1683:66:1683:73 | source(...) | user-provided value | -| LogInjectionTest.java:1684:42:1684:58 | (...)... | LogInjectionTest.java:1684:51:1684:58 | source(...) : Object | LogInjectionTest.java:1684:42:1684:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1684:51:1684:58 | source(...) | user-provided value | -| LogInjectionTest.java:1685:27:1685:43 | (...)... | LogInjectionTest.java:1685:36:1685:43 | source(...) : Object | LogInjectionTest.java:1685:27:1685:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1685:36:1685:43 | source(...) | user-provided value | -| LogInjectionTest.java:1686:41:1686:57 | (...)... | LogInjectionTest.java:1686:50:1686:57 | source(...) : Object | LogInjectionTest.java:1686:41:1686:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1686:50:1686:57 | source(...) | user-provided value | -| LogInjectionTest.java:1687:26:1687:42 | (...)... | LogInjectionTest.java:1687:35:1687:42 | source(...) : Object | LogInjectionTest.java:1687:26:1687:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1687:35:1687:42 | source(...) | user-provided value | -| LogInjectionTest.java:1688:41:1688:57 | (...)... | LogInjectionTest.java:1688:50:1688:57 | source(...) : Object | LogInjectionTest.java:1688:41:1688:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1688:50:1688:57 | source(...) | user-provided value | -| LogInjectionTest.java:1689:26:1689:42 | (...)... | LogInjectionTest.java:1689:35:1689:42 | source(...) : Object | LogInjectionTest.java:1689:26:1689:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1689:35:1689:42 | source(...) | user-provided value | -| LogInjectionTest.java:1690:26:1690:42 | (...)... | LogInjectionTest.java:1690:35:1690:42 | source(...) : Object | LogInjectionTest.java:1690:26:1690:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1690:35:1690:42 | source(...) | user-provided value | -| LogInjectionTest.java:1691:26:1691:42 | (...)... | LogInjectionTest.java:1691:35:1691:42 | source(...) : Object | LogInjectionTest.java:1691:26:1691:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1691:35:1691:42 | source(...) | user-provided value | -| LogInjectionTest.java:1692:41:1692:63 | new Object[] | LogInjectionTest.java:1692:55:1692:62 | source(...) : Object | LogInjectionTest.java:1692:41:1692:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1692:55:1692:62 | source(...) | user-provided value | -| LogInjectionTest.java:1693:41:1693:63 | new Object[] | LogInjectionTest.java:1693:55:1693:62 | source(...) : Object | LogInjectionTest.java:1693:41:1693:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1693:55:1693:62 | source(...) | user-provided value | -| LogInjectionTest.java:1694:56:1694:72 | (...)... | LogInjectionTest.java:1694:65:1694:72 | source(...) : Object | LogInjectionTest.java:1694:56:1694:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1694:65:1694:72 | source(...) | user-provided value | -| LogInjectionTest.java:1695:41:1695:57 | (...)... | LogInjectionTest.java:1695:50:1695:57 | source(...) : Object | LogInjectionTest.java:1695:41:1695:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1695:50:1695:57 | source(...) | user-provided value | -| LogInjectionTest.java:1696:26:1696:42 | (...)... | LogInjectionTest.java:1696:35:1696:42 | source(...) : Object | LogInjectionTest.java:1696:26:1696:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1696:35:1696:42 | source(...) | user-provided value | -| LogInjectionTest.java:1697:56:1697:72 | (...)... | LogInjectionTest.java:1697:65:1697:72 | source(...) : Object | LogInjectionTest.java:1697:56:1697:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1697:65:1697:72 | source(...) | user-provided value | +| LogInjectionTest.java:1678:27:1678:43 | (...)... | LogInjectionTest.java:1678:36:1678:43 | source(...) : Object | LogInjectionTest.java:1678:27:1678:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1678:36:1678:43 | source(...) | user-provided value | +| LogInjectionTest.java:1679:27:1679:43 | (...)... | LogInjectionTest.java:1679:36:1679:43 | source(...) : Object | LogInjectionTest.java:1679:27:1679:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1679:36:1679:43 | source(...) | user-provided value | +| LogInjectionTest.java:1680:42:1680:64 | new Object[] | LogInjectionTest.java:1680:56:1680:63 | source(...) : Object | LogInjectionTest.java:1680:42:1680:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1680:56:1680:63 | source(...) | user-provided value | +| LogInjectionTest.java:1681:42:1681:64 | new Object[] | LogInjectionTest.java:1681:56:1681:63 | source(...) : Object | LogInjectionTest.java:1681:42:1681:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1681:56:1681:63 | source(...) | user-provided value | +| LogInjectionTest.java:1682:57:1682:73 | (...)... | LogInjectionTest.java:1682:66:1682:73 | source(...) : Object | LogInjectionTest.java:1682:57:1682:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1682:66:1682:73 | source(...) | user-provided value | +| LogInjectionTest.java:1683:42:1683:58 | (...)... | LogInjectionTest.java:1683:51:1683:58 | source(...) : Object | LogInjectionTest.java:1683:42:1683:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1683:51:1683:58 | source(...) | user-provided value | +| LogInjectionTest.java:1684:27:1684:43 | (...)... | LogInjectionTest.java:1684:36:1684:43 | source(...) : Object | LogInjectionTest.java:1684:27:1684:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1684:36:1684:43 | source(...) | user-provided value | +| LogInjectionTest.java:1685:57:1685:73 | (...)... | LogInjectionTest.java:1685:66:1685:73 | source(...) : Object | LogInjectionTest.java:1685:57:1685:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1685:66:1685:73 | source(...) | user-provided value | +| LogInjectionTest.java:1686:42:1686:58 | (...)... | LogInjectionTest.java:1686:51:1686:58 | source(...) : Object | LogInjectionTest.java:1686:42:1686:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1686:51:1686:58 | source(...) | user-provided value | +| LogInjectionTest.java:1687:27:1687:43 | (...)... | LogInjectionTest.java:1687:36:1687:43 | source(...) : Object | LogInjectionTest.java:1687:27:1687:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1687:36:1687:43 | source(...) | user-provided value | +| LogInjectionTest.java:1688:72:1688:88 | (...)... | LogInjectionTest.java:1688:81:1688:88 | source(...) : Object | LogInjectionTest.java:1688:72:1688:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1688:81:1688:88 | source(...) | user-provided value | +| LogInjectionTest.java:1689:57:1689:73 | (...)... | LogInjectionTest.java:1689:66:1689:73 | source(...) : Object | LogInjectionTest.java:1689:57:1689:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1689:66:1689:73 | source(...) | user-provided value | +| LogInjectionTest.java:1690:42:1690:58 | (...)... | LogInjectionTest.java:1690:51:1690:58 | source(...) : Object | LogInjectionTest.java:1690:42:1690:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1690:51:1690:58 | source(...) | user-provided value | +| LogInjectionTest.java:1691:27:1691:43 | (...)... | LogInjectionTest.java:1691:36:1691:43 | source(...) : Object | LogInjectionTest.java:1691:27:1691:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1691:36:1691:43 | source(...) | user-provided value | +| LogInjectionTest.java:1692:72:1692:88 | (...)... | LogInjectionTest.java:1692:81:1692:88 | source(...) : Object | LogInjectionTest.java:1692:72:1692:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1692:81:1692:88 | source(...) | user-provided value | +| LogInjectionTest.java:1693:57:1693:73 | (...)... | LogInjectionTest.java:1693:66:1693:73 | source(...) : Object | LogInjectionTest.java:1693:57:1693:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1693:66:1693:73 | source(...) | user-provided value | +| LogInjectionTest.java:1694:42:1694:58 | (...)... | LogInjectionTest.java:1694:51:1694:58 | source(...) : Object | LogInjectionTest.java:1694:42:1694:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1694:51:1694:58 | source(...) | user-provided value | +| LogInjectionTest.java:1695:27:1695:43 | (...)... | LogInjectionTest.java:1695:36:1695:43 | source(...) : Object | LogInjectionTest.java:1695:27:1695:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1695:36:1695:43 | source(...) | user-provided value | +| LogInjectionTest.java:1696:41:1696:57 | (...)... | LogInjectionTest.java:1696:50:1696:57 | source(...) : Object | LogInjectionTest.java:1696:41:1696:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1696:50:1696:57 | source(...) | user-provided value | +| LogInjectionTest.java:1697:26:1697:42 | (...)... | LogInjectionTest.java:1697:35:1697:42 | source(...) : Object | LogInjectionTest.java:1697:26:1697:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1697:35:1697:42 | source(...) | user-provided value | | LogInjectionTest.java:1698:41:1698:57 | (...)... | LogInjectionTest.java:1698:50:1698:57 | source(...) : Object | LogInjectionTest.java:1698:41:1698:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1698:50:1698:57 | source(...) | user-provided value | | LogInjectionTest.java:1699:26:1699:42 | (...)... | LogInjectionTest.java:1699:35:1699:42 | source(...) : Object | LogInjectionTest.java:1699:26:1699:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1699:35:1699:42 | source(...) | user-provided value | -| LogInjectionTest.java:1700:71:1700:87 | (...)... | LogInjectionTest.java:1700:80:1700:87 | source(...) : Object | LogInjectionTest.java:1700:71:1700:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1700:80:1700:87 | source(...) | user-provided value | -| LogInjectionTest.java:1701:56:1701:72 | (...)... | LogInjectionTest.java:1701:65:1701:72 | source(...) : Object | LogInjectionTest.java:1701:56:1701:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1701:65:1701:72 | source(...) | user-provided value | -| LogInjectionTest.java:1702:41:1702:57 | (...)... | LogInjectionTest.java:1702:50:1702:57 | source(...) : Object | LogInjectionTest.java:1702:41:1702:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1702:50:1702:57 | source(...) | user-provided value | -| LogInjectionTest.java:1703:26:1703:42 | (...)... | LogInjectionTest.java:1703:35:1703:42 | source(...) : Object | LogInjectionTest.java:1703:26:1703:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1703:35:1703:42 | source(...) | user-provided value | -| LogInjectionTest.java:1704:71:1704:87 | (...)... | LogInjectionTest.java:1704:80:1704:87 | source(...) : Object | LogInjectionTest.java:1704:71:1704:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1704:80:1704:87 | source(...) | user-provided value | -| LogInjectionTest.java:1705:56:1705:72 | (...)... | LogInjectionTest.java:1705:65:1705:72 | source(...) : Object | LogInjectionTest.java:1705:56:1705:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1705:65:1705:72 | source(...) | user-provided value | -| LogInjectionTest.java:1706:41:1706:57 | (...)... | LogInjectionTest.java:1706:50:1706:57 | source(...) : Object | LogInjectionTest.java:1706:41:1706:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1706:50:1706:57 | source(...) | user-provided value | -| LogInjectionTest.java:1707:26:1707:42 | (...)... | LogInjectionTest.java:1707:35:1707:42 | source(...) : Object | LogInjectionTest.java:1707:26:1707:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1707:35:1707:42 | source(...) | user-provided value | -| LogInjectionTest.java:1712:25:1712:41 | (...)... | LogInjectionTest.java:1712:34:1712:41 | source(...) : Object | LogInjectionTest.java:1712:25:1712:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1712:34:1712:41 | source(...) | user-provided value | -| LogInjectionTest.java:1713:25:1713:41 | (...)... | LogInjectionTest.java:1713:34:1713:41 | source(...) : Object | LogInjectionTest.java:1713:25:1713:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1713:34:1713:41 | source(...) | user-provided value | -| LogInjectionTest.java:1714:40:1714:47 | source(...) | LogInjectionTest.java:1714:40:1714:47 | source(...) | LogInjectionTest.java:1714:40:1714:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1714:40:1714:47 | source(...) | user-provided value | -| LogInjectionTest.java:1715:25:1715:41 | (...)... | LogInjectionTest.java:1715:34:1715:41 | source(...) : Object | LogInjectionTest.java:1715:25:1715:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1715:34:1715:41 | source(...) | user-provided value | -| LogInjectionTest.java:1716:40:1716:62 | new Object[] | LogInjectionTest.java:1716:54:1716:61 | source(...) : Object | LogInjectionTest.java:1716:40:1716:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1716:54:1716:61 | source(...) | user-provided value | -| LogInjectionTest.java:1717:25:1717:41 | (...)... | LogInjectionTest.java:1717:34:1717:41 | source(...) : Object | LogInjectionTest.java:1717:25:1717:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1717:34:1717:41 | source(...) | user-provided value | -| LogInjectionTest.java:1718:40:1718:47 | source(...) | LogInjectionTest.java:1718:40:1718:47 | source(...) | LogInjectionTest.java:1718:40:1718:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1718:40:1718:47 | source(...) | user-provided value | -| LogInjectionTest.java:1719:55:1719:62 | source(...) | LogInjectionTest.java:1719:55:1719:62 | source(...) | LogInjectionTest.java:1719:55:1719:62 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1719:55:1719:62 | source(...) | user-provided value | -| LogInjectionTest.java:1720:25:1720:62 | (...)... | LogInjectionTest.java:1720:55:1720:62 | source(...) : Object | LogInjectionTest.java:1720:25:1720:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1720:55:1720:62 | source(...) | user-provided value | -| LogInjectionTest.java:1725:26:1725:42 | (...)... | LogInjectionTest.java:1725:35:1725:42 | source(...) : Object | LogInjectionTest.java:1725:26:1725:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1725:35:1725:42 | source(...) | user-provided value | -| LogInjectionTest.java:1726:26:1726:42 | (...)... | LogInjectionTest.java:1726:35:1726:42 | source(...) : Object | LogInjectionTest.java:1726:26:1726:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1726:35:1726:42 | source(...) | user-provided value | -| LogInjectionTest.java:1727:41:1727:48 | source(...) | LogInjectionTest.java:1727:41:1727:48 | source(...) | LogInjectionTest.java:1727:41:1727:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1727:41:1727:48 | source(...) | user-provided value | -| LogInjectionTest.java:1728:26:1728:42 | (...)... | LogInjectionTest.java:1728:35:1728:42 | source(...) : Object | LogInjectionTest.java:1728:26:1728:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1728:35:1728:42 | source(...) | user-provided value | -| LogInjectionTest.java:1729:41:1729:63 | new Object[] | LogInjectionTest.java:1729:55:1729:62 | source(...) : Object | LogInjectionTest.java:1729:41:1729:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1729:55:1729:62 | source(...) | user-provided value | -| LogInjectionTest.java:1730:26:1730:42 | (...)... | LogInjectionTest.java:1730:35:1730:42 | source(...) : Object | LogInjectionTest.java:1730:26:1730:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1730:35:1730:42 | source(...) | user-provided value | -| LogInjectionTest.java:1731:41:1731:48 | source(...) | LogInjectionTest.java:1731:41:1731:48 | source(...) | LogInjectionTest.java:1731:41:1731:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1731:41:1731:48 | source(...) | user-provided value | -| LogInjectionTest.java:1732:56:1732:63 | source(...) | LogInjectionTest.java:1732:56:1732:63 | source(...) | LogInjectionTest.java:1732:56:1732:63 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1732:56:1732:63 | source(...) | user-provided value | -| LogInjectionTest.java:1733:26:1733:42 | (...)... | LogInjectionTest.java:1733:35:1733:42 | source(...) : Object | LogInjectionTest.java:1733:26:1733:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1733:35:1733:42 | source(...) | user-provided value | -| LogInjectionTest.java:1734:51:1734:67 | (...)... | LogInjectionTest.java:1734:60:1734:67 | source(...) : Object | LogInjectionTest.java:1734:51:1734:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1734:60:1734:67 | source(...) | user-provided value | -| LogInjectionTest.java:1735:51:1735:67 | (...)... | LogInjectionTest.java:1735:60:1735:67 | source(...) : Object | LogInjectionTest.java:1735:51:1735:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1735:60:1735:67 | source(...) | user-provided value | -| LogInjectionTest.java:1736:66:1736:73 | source(...) | LogInjectionTest.java:1736:66:1736:73 | source(...) | LogInjectionTest.java:1736:66:1736:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1736:66:1736:73 | source(...) | user-provided value | -| LogInjectionTest.java:1737:51:1737:67 | (...)... | LogInjectionTest.java:1737:60:1737:67 | source(...) : Object | LogInjectionTest.java:1737:51:1737:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1737:60:1737:67 | source(...) | user-provided value | -| LogInjectionTest.java:1738:66:1738:88 | new Object[] | LogInjectionTest.java:1738:80:1738:87 | source(...) : Object | LogInjectionTest.java:1738:66:1738:88 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1738:80:1738:87 | source(...) | user-provided value | -| LogInjectionTest.java:1739:51:1739:67 | (...)... | LogInjectionTest.java:1739:60:1739:67 | source(...) : Object | LogInjectionTest.java:1739:51:1739:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1739:60:1739:67 | source(...) | user-provided value | -| LogInjectionTest.java:1740:66:1740:73 | source(...) | LogInjectionTest.java:1740:66:1740:73 | source(...) | LogInjectionTest.java:1740:66:1740:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1740:66:1740:73 | source(...) | user-provided value | -| LogInjectionTest.java:1741:81:1741:88 | source(...) | LogInjectionTest.java:1741:81:1741:88 | source(...) | LogInjectionTest.java:1741:81:1741:88 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1741:81:1741:88 | source(...) | user-provided value | -| LogInjectionTest.java:1742:51:1742:67 | (...)... | LogInjectionTest.java:1742:60:1742:67 | source(...) : Object | LogInjectionTest.java:1742:51:1742:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1742:60:1742:67 | source(...) | user-provided value | -| LogInjectionTest.java:1743:13:1743:104 | new ..[] { .. } | LogInjectionTest.java:1743:66:1743:73 | source(...) : Object | LogInjectionTest.java:1743:13:1743:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1743:66:1743:73 | source(...) | user-provided value | -| LogInjectionTest.java:1744:13:1744:104 | new ..[] { .. } | LogInjectionTest.java:1744:81:1744:88 | source(...) : Object | LogInjectionTest.java:1744:13:1744:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1744:81:1744:88 | source(...) | user-provided value | -| LogInjectionTest.java:1745:13:1745:104 | new ..[] { .. } | LogInjectionTest.java:1745:96:1745:103 | source(...) : Object | LogInjectionTest.java:1745:13:1745:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1745:96:1745:103 | source(...) | user-provided value | -| LogInjectionTest.java:1746:26:1746:42 | (...)... | LogInjectionTest.java:1746:35:1746:42 | source(...) : Object | LogInjectionTest.java:1746:26:1746:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1746:35:1746:42 | source(...) | user-provided value | -| LogInjectionTest.java:1747:26:1747:42 | (...)... | LogInjectionTest.java:1747:35:1747:42 | source(...) : Object | LogInjectionTest.java:1747:26:1747:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1747:35:1747:42 | source(...) | user-provided value | -| LogInjectionTest.java:1748:41:1748:48 | source(...) | LogInjectionTest.java:1748:41:1748:48 | source(...) | LogInjectionTest.java:1748:41:1748:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1748:41:1748:48 | source(...) | user-provided value | -| LogInjectionTest.java:1749:26:1749:42 | (...)... | LogInjectionTest.java:1749:35:1749:42 | source(...) : Object | LogInjectionTest.java:1749:26:1749:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1749:35:1749:42 | source(...) | user-provided value | -| LogInjectionTest.java:1750:41:1750:63 | new Object[] | LogInjectionTest.java:1750:55:1750:62 | source(...) : Object | LogInjectionTest.java:1750:41:1750:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1750:55:1750:62 | source(...) | user-provided value | -| LogInjectionTest.java:1751:26:1751:42 | (...)... | LogInjectionTest.java:1751:35:1751:42 | source(...) : Object | LogInjectionTest.java:1751:26:1751:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1751:35:1751:42 | source(...) | user-provided value | -| LogInjectionTest.java:1752:41:1752:48 | source(...) | LogInjectionTest.java:1752:41:1752:48 | source(...) | LogInjectionTest.java:1752:41:1752:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1752:41:1752:48 | source(...) | user-provided value | -| LogInjectionTest.java:1753:56:1753:63 | source(...) | LogInjectionTest.java:1753:56:1753:63 | source(...) | LogInjectionTest.java:1753:56:1753:63 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1753:56:1753:63 | source(...) | user-provided value | -| LogInjectionTest.java:1754:26:1754:42 | (...)... | LogInjectionTest.java:1754:35:1754:42 | source(...) : Object | LogInjectionTest.java:1754:26:1754:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1754:35:1754:42 | source(...) | user-provided value | -| LogInjectionTest.java:1755:51:1755:67 | (...)... | LogInjectionTest.java:1755:60:1755:67 | source(...) : Object | LogInjectionTest.java:1755:51:1755:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1755:60:1755:67 | source(...) | user-provided value | -| LogInjectionTest.java:1756:51:1756:67 | (...)... | LogInjectionTest.java:1756:60:1756:67 | source(...) : Object | LogInjectionTest.java:1756:51:1756:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1756:60:1756:67 | source(...) | user-provided value | -| LogInjectionTest.java:1757:66:1757:73 | source(...) | LogInjectionTest.java:1757:66:1757:73 | source(...) | LogInjectionTest.java:1757:66:1757:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1757:66:1757:73 | source(...) | user-provided value | -| LogInjectionTest.java:1758:51:1758:67 | (...)... | LogInjectionTest.java:1758:60:1758:67 | source(...) : Object | LogInjectionTest.java:1758:51:1758:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1758:60:1758:67 | source(...) | user-provided value | -| LogInjectionTest.java:1759:66:1759:88 | new Object[] | LogInjectionTest.java:1759:80:1759:87 | source(...) : Object | LogInjectionTest.java:1759:66:1759:88 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1759:80:1759:87 | source(...) | user-provided value | -| LogInjectionTest.java:1760:51:1760:67 | (...)... | LogInjectionTest.java:1760:60:1760:67 | source(...) : Object | LogInjectionTest.java:1760:51:1760:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1760:60:1760:67 | source(...) | user-provided value | -| LogInjectionTest.java:1761:66:1761:73 | source(...) | LogInjectionTest.java:1761:66:1761:73 | source(...) | LogInjectionTest.java:1761:66:1761:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1761:66:1761:73 | source(...) | user-provided value | -| LogInjectionTest.java:1762:81:1762:88 | source(...) | LogInjectionTest.java:1762:81:1762:88 | source(...) | LogInjectionTest.java:1762:81:1762:88 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1762:81:1762:88 | source(...) | user-provided value | -| LogInjectionTest.java:1763:51:1763:67 | (...)... | LogInjectionTest.java:1763:60:1763:67 | source(...) : Object | LogInjectionTest.java:1763:51:1763:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1763:60:1763:67 | source(...) | user-provided value | -| LogInjectionTest.java:1764:13:1764:104 | new ..[] { .. } | LogInjectionTest.java:1764:66:1764:73 | source(...) : Object | LogInjectionTest.java:1764:13:1764:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1764:66:1764:73 | source(...) | user-provided value | -| LogInjectionTest.java:1765:13:1765:104 | new ..[] { .. } | LogInjectionTest.java:1765:81:1765:88 | source(...) : Object | LogInjectionTest.java:1765:13:1765:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1765:81:1765:88 | source(...) | user-provided value | -| LogInjectionTest.java:1766:13:1766:104 | new ..[] { .. } | LogInjectionTest.java:1766:96:1766:103 | source(...) : Object | LogInjectionTest.java:1766:13:1766:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1766:96:1766:103 | source(...) | user-provided value | -| LogInjectionTest.java:1767:25:1767:41 | (...)... | LogInjectionTest.java:1767:34:1767:41 | source(...) : Object | LogInjectionTest.java:1767:25:1767:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1767:34:1767:41 | source(...) | user-provided value | -| LogInjectionTest.java:1768:25:1768:41 | (...)... | LogInjectionTest.java:1768:34:1768:41 | source(...) : Object | LogInjectionTest.java:1768:25:1768:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1768:34:1768:41 | source(...) | user-provided value | -| LogInjectionTest.java:1769:40:1769:47 | source(...) | LogInjectionTest.java:1769:40:1769:47 | source(...) | LogInjectionTest.java:1769:40:1769:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1769:40:1769:47 | source(...) | user-provided value | -| LogInjectionTest.java:1770:25:1770:41 | (...)... | LogInjectionTest.java:1770:34:1770:41 | source(...) : Object | LogInjectionTest.java:1770:25:1770:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1770:34:1770:41 | source(...) | user-provided value | -| LogInjectionTest.java:1771:40:1771:62 | new Object[] | LogInjectionTest.java:1771:54:1771:61 | source(...) : Object | LogInjectionTest.java:1771:40:1771:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1771:54:1771:61 | source(...) | user-provided value | -| LogInjectionTest.java:1772:25:1772:41 | (...)... | LogInjectionTest.java:1772:34:1772:41 | source(...) : Object | LogInjectionTest.java:1772:25:1772:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1772:34:1772:41 | source(...) | user-provided value | -| LogInjectionTest.java:1773:40:1773:47 | source(...) | LogInjectionTest.java:1773:40:1773:47 | source(...) | LogInjectionTest.java:1773:40:1773:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1773:40:1773:47 | source(...) | user-provided value | -| LogInjectionTest.java:1774:55:1774:62 | source(...) | LogInjectionTest.java:1774:55:1774:62 | source(...) | LogInjectionTest.java:1774:55:1774:62 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1774:55:1774:62 | source(...) | user-provided value | -| LogInjectionTest.java:1775:25:1775:41 | (...)... | LogInjectionTest.java:1775:34:1775:41 | source(...) : Object | LogInjectionTest.java:1775:25:1775:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1775:34:1775:41 | source(...) | user-provided value | -| LogInjectionTest.java:1776:50:1776:66 | (...)... | LogInjectionTest.java:1776:59:1776:66 | source(...) : Object | LogInjectionTest.java:1776:50:1776:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1776:59:1776:66 | source(...) | user-provided value | -| LogInjectionTest.java:1777:50:1777:66 | (...)... | LogInjectionTest.java:1777:59:1777:66 | source(...) : Object | LogInjectionTest.java:1777:50:1777:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1777:59:1777:66 | source(...) | user-provided value | -| LogInjectionTest.java:1778:65:1778:72 | source(...) | LogInjectionTest.java:1778:65:1778:72 | source(...) | LogInjectionTest.java:1778:65:1778:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1778:65:1778:72 | source(...) | user-provided value | -| LogInjectionTest.java:1779:50:1779:66 | (...)... | LogInjectionTest.java:1779:59:1779:66 | source(...) : Object | LogInjectionTest.java:1779:50:1779:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1779:59:1779:66 | source(...) | user-provided value | -| LogInjectionTest.java:1780:65:1780:87 | new Object[] | LogInjectionTest.java:1780:79:1780:86 | source(...) : Object | LogInjectionTest.java:1780:65:1780:87 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1780:79:1780:86 | source(...) | user-provided value | -| LogInjectionTest.java:1781:50:1781:66 | (...)... | LogInjectionTest.java:1781:59:1781:66 | source(...) : Object | LogInjectionTest.java:1781:50:1781:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1781:59:1781:66 | source(...) | user-provided value | -| LogInjectionTest.java:1782:65:1782:72 | source(...) | LogInjectionTest.java:1782:65:1782:72 | source(...) | LogInjectionTest.java:1782:65:1782:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1782:65:1782:72 | source(...) | user-provided value | -| LogInjectionTest.java:1783:80:1783:87 | source(...) | LogInjectionTest.java:1783:80:1783:87 | source(...) | LogInjectionTest.java:1783:80:1783:87 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1783:80:1783:87 | source(...) | user-provided value | -| LogInjectionTest.java:1784:50:1784:66 | (...)... | LogInjectionTest.java:1784:59:1784:66 | source(...) : Object | LogInjectionTest.java:1784:50:1784:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1784:59:1784:66 | source(...) | user-provided value | -| LogInjectionTest.java:1785:13:1785:103 | new ..[] { .. } | LogInjectionTest.java:1785:65:1785:72 | source(...) : Object | LogInjectionTest.java:1785:13:1785:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1785:65:1785:72 | source(...) | user-provided value | -| LogInjectionTest.java:1786:13:1786:103 | new ..[] { .. } | LogInjectionTest.java:1786:80:1786:87 | source(...) : Object | LogInjectionTest.java:1786:13:1786:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1786:80:1786:87 | source(...) | user-provided value | -| LogInjectionTest.java:1787:13:1787:103 | new ..[] { .. } | LogInjectionTest.java:1787:95:1787:102 | source(...) : Object | LogInjectionTest.java:1787:13:1787:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1787:95:1787:102 | source(...) | user-provided value | -| LogInjectionTest.java:1788:26:1788:42 | (...)... | LogInjectionTest.java:1788:35:1788:42 | source(...) : Object | LogInjectionTest.java:1788:26:1788:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1788:35:1788:42 | source(...) | user-provided value | -| LogInjectionTest.java:1789:26:1789:42 | (...)... | LogInjectionTest.java:1789:35:1789:42 | source(...) : Object | LogInjectionTest.java:1789:26:1789:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1789:35:1789:42 | source(...) | user-provided value | -| LogInjectionTest.java:1790:41:1790:48 | source(...) | LogInjectionTest.java:1790:41:1790:48 | source(...) | LogInjectionTest.java:1790:41:1790:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1790:41:1790:48 | source(...) | user-provided value | -| LogInjectionTest.java:1791:26:1791:42 | (...)... | LogInjectionTest.java:1791:35:1791:42 | source(...) : Object | LogInjectionTest.java:1791:26:1791:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1791:35:1791:42 | source(...) | user-provided value | -| LogInjectionTest.java:1792:41:1792:63 | new Object[] | LogInjectionTest.java:1792:55:1792:62 | source(...) : Object | LogInjectionTest.java:1792:41:1792:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1792:55:1792:62 | source(...) | user-provided value | -| LogInjectionTest.java:1793:26:1793:42 | (...)... | LogInjectionTest.java:1793:35:1793:42 | source(...) : Object | LogInjectionTest.java:1793:26:1793:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1793:35:1793:42 | source(...) | user-provided value | -| LogInjectionTest.java:1794:41:1794:48 | source(...) | LogInjectionTest.java:1794:41:1794:48 | source(...) | LogInjectionTest.java:1794:41:1794:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1794:41:1794:48 | source(...) | user-provided value | -| LogInjectionTest.java:1795:56:1795:63 | source(...) | LogInjectionTest.java:1795:56:1795:63 | source(...) | LogInjectionTest.java:1795:56:1795:63 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1795:56:1795:63 | source(...) | user-provided value | -| LogInjectionTest.java:1796:26:1796:42 | (...)... | LogInjectionTest.java:1796:35:1796:42 | source(...) : Object | LogInjectionTest.java:1796:26:1796:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1796:35:1796:42 | source(...) | user-provided value | -| LogInjectionTest.java:1797:51:1797:67 | (...)... | LogInjectionTest.java:1797:60:1797:67 | source(...) : Object | LogInjectionTest.java:1797:51:1797:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1797:60:1797:67 | source(...) | user-provided value | -| LogInjectionTest.java:1798:51:1798:67 | (...)... | LogInjectionTest.java:1798:60:1798:67 | source(...) : Object | LogInjectionTest.java:1798:51:1798:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1798:60:1798:67 | source(...) | user-provided value | -| LogInjectionTest.java:1799:66:1799:73 | source(...) | LogInjectionTest.java:1799:66:1799:73 | source(...) | LogInjectionTest.java:1799:66:1799:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1799:66:1799:73 | source(...) | user-provided value | -| LogInjectionTest.java:1800:51:1800:67 | (...)... | LogInjectionTest.java:1800:60:1800:67 | source(...) : Object | LogInjectionTest.java:1800:51:1800:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1800:60:1800:67 | source(...) | user-provided value | -| LogInjectionTest.java:1801:66:1801:88 | new Object[] | LogInjectionTest.java:1801:80:1801:87 | source(...) : Object | LogInjectionTest.java:1801:66:1801:88 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1801:80:1801:87 | source(...) | user-provided value | -| LogInjectionTest.java:1802:51:1802:67 | (...)... | LogInjectionTest.java:1802:60:1802:67 | source(...) : Object | LogInjectionTest.java:1802:51:1802:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1802:60:1802:67 | source(...) | user-provided value | -| LogInjectionTest.java:1803:66:1803:73 | source(...) | LogInjectionTest.java:1803:66:1803:73 | source(...) | LogInjectionTest.java:1803:66:1803:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1803:66:1803:73 | source(...) | user-provided value | -| LogInjectionTest.java:1804:81:1804:88 | source(...) | LogInjectionTest.java:1804:81:1804:88 | source(...) | LogInjectionTest.java:1804:81:1804:88 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1804:81:1804:88 | source(...) | user-provided value | -| LogInjectionTest.java:1805:51:1805:67 | (...)... | LogInjectionTest.java:1805:60:1805:67 | source(...) : Object | LogInjectionTest.java:1805:51:1805:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1805:60:1805:67 | source(...) | user-provided value | -| LogInjectionTest.java:1806:13:1806:104 | new ..[] { .. } | LogInjectionTest.java:1806:66:1806:73 | source(...) : Object | LogInjectionTest.java:1806:13:1806:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1806:66:1806:73 | source(...) | user-provided value | -| LogInjectionTest.java:1807:13:1807:104 | new ..[] { .. } | LogInjectionTest.java:1807:81:1807:88 | source(...) : Object | LogInjectionTest.java:1807:13:1807:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1807:81:1807:88 | source(...) | user-provided value | -| LogInjectionTest.java:1808:13:1808:104 | new ..[] { .. } | LogInjectionTest.java:1808:96:1808:103 | source(...) : Object | LogInjectionTest.java:1808:13:1808:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1808:96:1808:103 | source(...) | user-provided value | -| LogInjectionTest.java:1809:25:1809:41 | (...)... | LogInjectionTest.java:1809:34:1809:41 | source(...) : Object | LogInjectionTest.java:1809:25:1809:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1809:34:1809:41 | source(...) | user-provided value | -| LogInjectionTest.java:1810:25:1810:41 | (...)... | LogInjectionTest.java:1810:34:1810:41 | source(...) : Object | LogInjectionTest.java:1810:25:1810:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1810:34:1810:41 | source(...) | user-provided value | -| LogInjectionTest.java:1811:40:1811:47 | source(...) | LogInjectionTest.java:1811:40:1811:47 | source(...) | LogInjectionTest.java:1811:40:1811:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1811:40:1811:47 | source(...) | user-provided value | -| LogInjectionTest.java:1812:25:1812:41 | (...)... | LogInjectionTest.java:1812:34:1812:41 | source(...) : Object | LogInjectionTest.java:1812:25:1812:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1812:34:1812:41 | source(...) | user-provided value | -| LogInjectionTest.java:1813:40:1813:62 | new Object[] | LogInjectionTest.java:1813:54:1813:61 | source(...) : Object | LogInjectionTest.java:1813:40:1813:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1813:54:1813:61 | source(...) | user-provided value | -| LogInjectionTest.java:1814:25:1814:41 | (...)... | LogInjectionTest.java:1814:34:1814:41 | source(...) : Object | LogInjectionTest.java:1814:25:1814:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1814:34:1814:41 | source(...) | user-provided value | -| LogInjectionTest.java:1815:40:1815:47 | source(...) | LogInjectionTest.java:1815:40:1815:47 | source(...) | LogInjectionTest.java:1815:40:1815:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1815:40:1815:47 | source(...) | user-provided value | -| LogInjectionTest.java:1816:55:1816:62 | source(...) | LogInjectionTest.java:1816:55:1816:62 | source(...) | LogInjectionTest.java:1816:55:1816:62 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1816:55:1816:62 | source(...) | user-provided value | -| LogInjectionTest.java:1817:25:1817:41 | (...)... | LogInjectionTest.java:1817:34:1817:41 | source(...) : Object | LogInjectionTest.java:1817:25:1817:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1817:34:1817:41 | source(...) | user-provided value | -| LogInjectionTest.java:1818:50:1818:66 | (...)... | LogInjectionTest.java:1818:59:1818:66 | source(...) : Object | LogInjectionTest.java:1818:50:1818:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1818:59:1818:66 | source(...) | user-provided value | -| LogInjectionTest.java:1819:50:1819:66 | (...)... | LogInjectionTest.java:1819:59:1819:66 | source(...) : Object | LogInjectionTest.java:1819:50:1819:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1819:59:1819:66 | source(...) | user-provided value | -| LogInjectionTest.java:1820:65:1820:72 | source(...) | LogInjectionTest.java:1820:65:1820:72 | source(...) | LogInjectionTest.java:1820:65:1820:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1820:65:1820:72 | source(...) | user-provided value | -| LogInjectionTest.java:1821:50:1821:66 | (...)... | LogInjectionTest.java:1821:59:1821:66 | source(...) : Object | LogInjectionTest.java:1821:50:1821:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1821:59:1821:66 | source(...) | user-provided value | -| LogInjectionTest.java:1822:65:1822:87 | new Object[] | LogInjectionTest.java:1822:79:1822:86 | source(...) : Object | LogInjectionTest.java:1822:65:1822:87 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1822:79:1822:86 | source(...) | user-provided value | -| LogInjectionTest.java:1823:50:1823:66 | (...)... | LogInjectionTest.java:1823:59:1823:66 | source(...) : Object | LogInjectionTest.java:1823:50:1823:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1823:59:1823:66 | source(...) | user-provided value | -| LogInjectionTest.java:1824:65:1824:72 | source(...) | LogInjectionTest.java:1824:65:1824:72 | source(...) | LogInjectionTest.java:1824:65:1824:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1824:65:1824:72 | source(...) | user-provided value | -| LogInjectionTest.java:1825:80:1825:87 | source(...) | LogInjectionTest.java:1825:80:1825:87 | source(...) | LogInjectionTest.java:1825:80:1825:87 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1825:80:1825:87 | source(...) | user-provided value | -| LogInjectionTest.java:1826:50:1826:66 | (...)... | LogInjectionTest.java:1826:59:1826:66 | source(...) : Object | LogInjectionTest.java:1826:50:1826:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1826:59:1826:66 | source(...) | user-provided value | -| LogInjectionTest.java:1827:13:1827:103 | new ..[] { .. } | LogInjectionTest.java:1827:65:1827:72 | source(...) : Object | LogInjectionTest.java:1827:13:1827:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1827:65:1827:72 | source(...) | user-provided value | -| LogInjectionTest.java:1828:13:1828:103 | new ..[] { .. } | LogInjectionTest.java:1828:80:1828:87 | source(...) : Object | LogInjectionTest.java:1828:13:1828:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1828:80:1828:87 | source(...) | user-provided value | -| LogInjectionTest.java:1829:13:1829:103 | new ..[] { .. } | LogInjectionTest.java:1829:95:1829:102 | source(...) : Object | LogInjectionTest.java:1829:13:1829:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1829:95:1829:102 | source(...) | user-provided value | -| LogInjectionTest.java:1834:33:1834:40 | source(...) | LogInjectionTest.java:1834:33:1834:40 | source(...) | LogInjectionTest.java:1834:33:1834:40 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1834:33:1834:40 | source(...) | user-provided value | -| LogInjectionTest.java:1835:26:1835:33 | source(...) | LogInjectionTest.java:1835:26:1835:33 | source(...) | LogInjectionTest.java:1835:26:1835:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1835:26:1835:33 | source(...) | user-provided value | -| LogInjectionTest.java:1836:26:1836:33 | source(...) | LogInjectionTest.java:1836:26:1836:33 | source(...) | LogInjectionTest.java:1836:26:1836:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1836:26:1836:33 | source(...) | user-provided value | -| LogInjectionTest.java:1837:26:1837:33 | source(...) | LogInjectionTest.java:1837:26:1837:33 | source(...) | LogInjectionTest.java:1837:26:1837:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1837:26:1837:33 | source(...) | user-provided value | -| LogInjectionTest.java:1838:26:1838:33 | source(...) | LogInjectionTest.java:1838:26:1838:33 | source(...) | LogInjectionTest.java:1838:26:1838:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1838:26:1838:33 | source(...) | user-provided value | -| LogInjectionTest.java:1839:25:1839:32 | source(...) | LogInjectionTest.java:1839:25:1839:32 | source(...) | LogInjectionTest.java:1839:25:1839:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1839:25:1839:32 | source(...) | user-provided value | -| LogInjectionTest.java:1840:25:1840:32 | source(...) | LogInjectionTest.java:1840:25:1840:32 | source(...) | LogInjectionTest.java:1840:25:1840:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1840:25:1840:32 | source(...) | user-provided value | -| LogInjectionTest.java:1841:26:1841:33 | source(...) | LogInjectionTest.java:1841:26:1841:33 | source(...) | LogInjectionTest.java:1841:26:1841:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1841:26:1841:33 | source(...) | user-provided value | -| LogInjectionTest.java:1842:26:1842:33 | source(...) | LogInjectionTest.java:1842:26:1842:33 | source(...) | LogInjectionTest.java:1842:26:1842:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1842:26:1842:33 | source(...) | user-provided value | -| LogInjectionTest.java:1843:25:1843:32 | source(...) | LogInjectionTest.java:1843:25:1843:32 | source(...) | LogInjectionTest.java:1843:25:1843:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1843:25:1843:32 | source(...) | user-provided value | -| LogInjectionTest.java:1844:25:1844:32 | source(...) | LogInjectionTest.java:1844:25:1844:32 | source(...) | LogInjectionTest.java:1844:25:1844:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1844:25:1844:32 | source(...) | user-provided value | -| LogInjectionTest.java:1845:27:1845:34 | source(...) | LogInjectionTest.java:1845:27:1845:34 | source(...) | LogInjectionTest.java:1845:27:1845:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1845:27:1845:34 | source(...) | user-provided value | -| LogInjectionTest.java:1846:27:1846:34 | source(...) | LogInjectionTest.java:1846:27:1846:34 | source(...) | LogInjectionTest.java:1846:27:1846:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1846:27:1846:34 | source(...) | user-provided value | -| LogInjectionTest.java:1850:28:1850:44 | (...)... | LogInjectionTest.java:1850:37:1850:44 | source(...) : Object | LogInjectionTest.java:1850:28:1850:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1850:37:1850:44 | source(...) | user-provided value | -| LogInjectionTest.java:1851:43:1851:65 | new Object[] | LogInjectionTest.java:1851:57:1851:64 | source(...) : Object | LogInjectionTest.java:1851:43:1851:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1851:57:1851:64 | source(...) | user-provided value | -| LogInjectionTest.java:1853:21:1853:37 | (...)... | LogInjectionTest.java:1853:30:1853:37 | source(...) : Object | LogInjectionTest.java:1853:21:1853:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1853:30:1853:37 | source(...) | user-provided value | -| LogInjectionTest.java:1854:36:1854:52 | (...)... | LogInjectionTest.java:1854:45:1854:52 | source(...) : Object | LogInjectionTest.java:1854:36:1854:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1854:45:1854:52 | source(...) | user-provided value | -| LogInjectionTest.java:1855:21:1855:37 | (...)... | LogInjectionTest.java:1855:30:1855:37 | source(...) : Object | LogInjectionTest.java:1855:21:1855:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1855:30:1855:37 | source(...) | user-provided value | -| LogInjectionTest.java:1856:51:1856:67 | (...)... | LogInjectionTest.java:1856:60:1856:67 | source(...) : Object | LogInjectionTest.java:1856:51:1856:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1856:60:1856:67 | source(...) | user-provided value | -| LogInjectionTest.java:1857:36:1857:52 | (...)... | LogInjectionTest.java:1857:45:1857:52 | source(...) : Object | LogInjectionTest.java:1857:36:1857:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1857:45:1857:52 | source(...) | user-provided value | -| LogInjectionTest.java:1858:21:1858:37 | (...)... | LogInjectionTest.java:1858:30:1858:37 | source(...) : Object | LogInjectionTest.java:1858:21:1858:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1858:30:1858:37 | source(...) | user-provided value | -| LogInjectionTest.java:1859:66:1859:82 | (...)... | LogInjectionTest.java:1859:75:1859:82 | source(...) : Object | LogInjectionTest.java:1859:66:1859:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1859:75:1859:82 | source(...) | user-provided value | -| LogInjectionTest.java:1860:51:1860:67 | (...)... | LogInjectionTest.java:1860:60:1860:67 | source(...) : Object | LogInjectionTest.java:1860:51:1860:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1860:60:1860:67 | source(...) | user-provided value | -| LogInjectionTest.java:1861:36:1861:52 | (...)... | LogInjectionTest.java:1861:45:1861:52 | source(...) : Object | LogInjectionTest.java:1861:36:1861:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1861:45:1861:52 | source(...) | user-provided value | -| LogInjectionTest.java:1862:21:1862:37 | (...)... | LogInjectionTest.java:1862:30:1862:37 | source(...) : Object | LogInjectionTest.java:1862:21:1862:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1862:30:1862:37 | source(...) | user-provided value | -| LogInjectionTest.java:1863:81:1863:97 | (...)... | LogInjectionTest.java:1863:90:1863:97 | source(...) : Object | LogInjectionTest.java:1863:81:1863:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1863:90:1863:97 | source(...) | user-provided value | -| LogInjectionTest.java:1864:66:1864:82 | (...)... | LogInjectionTest.java:1864:75:1864:82 | source(...) : Object | LogInjectionTest.java:1864:66:1864:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1864:75:1864:82 | source(...) | user-provided value | -| LogInjectionTest.java:1865:51:1865:67 | (...)... | LogInjectionTest.java:1865:60:1865:67 | source(...) : Object | LogInjectionTest.java:1865:51:1865:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1865:60:1865:67 | source(...) | user-provided value | -| LogInjectionTest.java:1866:36:1866:52 | (...)... | LogInjectionTest.java:1866:45:1866:52 | source(...) : Object | LogInjectionTest.java:1866:36:1866:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1866:45:1866:52 | source(...) | user-provided value | -| LogInjectionTest.java:1867:21:1867:37 | (...)... | LogInjectionTest.java:1867:30:1867:37 | source(...) : Object | LogInjectionTest.java:1867:21:1867:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1867:30:1867:37 | source(...) | user-provided value | -| LogInjectionTest.java:1868:96:1868:112 | (...)... | LogInjectionTest.java:1868:105:1868:112 | source(...) : Object | LogInjectionTest.java:1868:96:1868:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1868:105:1868:112 | source(...) | user-provided value | -| LogInjectionTest.java:1869:81:1869:97 | (...)... | LogInjectionTest.java:1869:90:1869:97 | source(...) : Object | LogInjectionTest.java:1869:81:1869:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1869:90:1869:97 | source(...) | user-provided value | -| LogInjectionTest.java:1870:66:1870:82 | (...)... | LogInjectionTest.java:1870:75:1870:82 | source(...) : Object | LogInjectionTest.java:1870:66:1870:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1870:75:1870:82 | source(...) | user-provided value | -| LogInjectionTest.java:1871:51:1871:67 | (...)... | LogInjectionTest.java:1871:60:1871:67 | source(...) : Object | LogInjectionTest.java:1871:51:1871:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1871:60:1871:67 | source(...) | user-provided value | -| LogInjectionTest.java:1872:36:1872:52 | (...)... | LogInjectionTest.java:1872:45:1872:52 | source(...) : Object | LogInjectionTest.java:1872:36:1872:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1872:45:1872:52 | source(...) | user-provided value | -| LogInjectionTest.java:1873:21:1873:37 | (...)... | LogInjectionTest.java:1873:30:1873:37 | source(...) : Object | LogInjectionTest.java:1873:21:1873:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1873:30:1873:37 | source(...) | user-provided value | -| LogInjectionTest.java:1874:111:1874:127 | (...)... | LogInjectionTest.java:1874:120:1874:127 | source(...) : Object | LogInjectionTest.java:1874:111:1874:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1874:120:1874:127 | source(...) | user-provided value | -| LogInjectionTest.java:1875:96:1875:112 | (...)... | LogInjectionTest.java:1875:105:1875:112 | source(...) : Object | LogInjectionTest.java:1875:96:1875:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1875:105:1875:112 | source(...) | user-provided value | -| LogInjectionTest.java:1876:81:1876:97 | (...)... | LogInjectionTest.java:1876:90:1876:97 | source(...) : Object | LogInjectionTest.java:1876:81:1876:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1876:90:1876:97 | source(...) | user-provided value | -| LogInjectionTest.java:1877:66:1877:82 | (...)... | LogInjectionTest.java:1877:75:1877:82 | source(...) : Object | LogInjectionTest.java:1877:66:1877:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1877:75:1877:82 | source(...) | user-provided value | -| LogInjectionTest.java:1878:51:1878:67 | (...)... | LogInjectionTest.java:1878:60:1878:67 | source(...) : Object | LogInjectionTest.java:1878:51:1878:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1878:60:1878:67 | source(...) | user-provided value | -| LogInjectionTest.java:1879:36:1879:52 | (...)... | LogInjectionTest.java:1879:45:1879:52 | source(...) : Object | LogInjectionTest.java:1879:36:1879:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1879:45:1879:52 | source(...) | user-provided value | -| LogInjectionTest.java:1880:21:1880:37 | (...)... | LogInjectionTest.java:1880:30:1880:37 | source(...) : Object | LogInjectionTest.java:1880:21:1880:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1880:30:1880:37 | source(...) | user-provided value | -| LogInjectionTest.java:1881:126:1881:142 | (...)... | LogInjectionTest.java:1881:135:1881:142 | source(...) : Object | LogInjectionTest.java:1881:126:1881:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1881:135:1881:142 | source(...) | user-provided value | -| LogInjectionTest.java:1882:111:1882:127 | (...)... | LogInjectionTest.java:1882:120:1882:127 | source(...) : Object | LogInjectionTest.java:1882:111:1882:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1882:120:1882:127 | source(...) | user-provided value | -| LogInjectionTest.java:1883:96:1883:112 | (...)... | LogInjectionTest.java:1883:105:1883:112 | source(...) : Object | LogInjectionTest.java:1883:96:1883:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1883:105:1883:112 | source(...) | user-provided value | -| LogInjectionTest.java:1884:81:1884:97 | (...)... | LogInjectionTest.java:1884:90:1884:97 | source(...) : Object | LogInjectionTest.java:1884:81:1884:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1884:90:1884:97 | source(...) | user-provided value | -| LogInjectionTest.java:1885:66:1885:82 | (...)... | LogInjectionTest.java:1885:75:1885:82 | source(...) : Object | LogInjectionTest.java:1885:66:1885:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1885:75:1885:82 | source(...) | user-provided value | -| LogInjectionTest.java:1886:51:1886:67 | (...)... | LogInjectionTest.java:1886:60:1886:67 | source(...) : Object | LogInjectionTest.java:1886:51:1886:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1886:60:1886:67 | source(...) | user-provided value | -| LogInjectionTest.java:1887:36:1887:52 | (...)... | LogInjectionTest.java:1887:45:1887:52 | source(...) : Object | LogInjectionTest.java:1887:36:1887:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1887:45:1887:52 | source(...) | user-provided value | -| LogInjectionTest.java:1888:21:1888:37 | (...)... | LogInjectionTest.java:1888:30:1888:37 | source(...) : Object | LogInjectionTest.java:1888:21:1888:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1888:30:1888:37 | source(...) | user-provided value | -| LogInjectionTest.java:1889:141:1889:157 | (...)... | LogInjectionTest.java:1889:150:1889:157 | source(...) : Object | LogInjectionTest.java:1889:141:1889:157 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1889:150:1889:157 | source(...) | user-provided value | -| LogInjectionTest.java:1890:126:1890:142 | (...)... | LogInjectionTest.java:1890:135:1890:142 | source(...) : Object | LogInjectionTest.java:1890:126:1890:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1890:135:1890:142 | source(...) | user-provided value | -| LogInjectionTest.java:1891:111:1891:127 | (...)... | LogInjectionTest.java:1891:120:1891:127 | source(...) : Object | LogInjectionTest.java:1891:111:1891:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1891:120:1891:127 | source(...) | user-provided value | -| LogInjectionTest.java:1892:96:1892:112 | (...)... | LogInjectionTest.java:1892:105:1892:112 | source(...) : Object | LogInjectionTest.java:1892:96:1892:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1892:105:1892:112 | source(...) | user-provided value | -| LogInjectionTest.java:1893:81:1893:97 | (...)... | LogInjectionTest.java:1893:90:1893:97 | source(...) : Object | LogInjectionTest.java:1893:81:1893:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1893:90:1893:97 | source(...) | user-provided value | -| LogInjectionTest.java:1894:66:1894:82 | (...)... | LogInjectionTest.java:1894:75:1894:82 | source(...) : Object | LogInjectionTest.java:1894:66:1894:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1894:75:1894:82 | source(...) | user-provided value | -| LogInjectionTest.java:1895:51:1895:67 | (...)... | LogInjectionTest.java:1895:60:1895:67 | source(...) : Object | LogInjectionTest.java:1895:51:1895:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1895:60:1895:67 | source(...) | user-provided value | -| LogInjectionTest.java:1896:36:1896:52 | (...)... | LogInjectionTest.java:1896:45:1896:52 | source(...) : Object | LogInjectionTest.java:1896:36:1896:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1896:45:1896:52 | source(...) | user-provided value | -| LogInjectionTest.java:1897:21:1897:37 | (...)... | LogInjectionTest.java:1897:30:1897:37 | source(...) : Object | LogInjectionTest.java:1897:21:1897:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1897:30:1897:37 | source(...) | user-provided value | -| LogInjectionTest.java:1898:156:1898:172 | (...)... | LogInjectionTest.java:1898:165:1898:172 | source(...) : Object | LogInjectionTest.java:1898:156:1898:172 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1898:165:1898:172 | source(...) | user-provided value | +| LogInjectionTest.java:1700:26:1700:42 | (...)... | LogInjectionTest.java:1700:35:1700:42 | source(...) : Object | LogInjectionTest.java:1700:26:1700:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1700:35:1700:42 | source(...) | user-provided value | +| LogInjectionTest.java:1701:26:1701:42 | (...)... | LogInjectionTest.java:1701:35:1701:42 | source(...) : Object | LogInjectionTest.java:1701:26:1701:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1701:35:1701:42 | source(...) | user-provided value | +| LogInjectionTest.java:1702:41:1702:63 | new Object[] | LogInjectionTest.java:1702:55:1702:62 | source(...) : Object | LogInjectionTest.java:1702:41:1702:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1702:55:1702:62 | source(...) | user-provided value | +| LogInjectionTest.java:1703:41:1703:63 | new Object[] | LogInjectionTest.java:1703:55:1703:62 | source(...) : Object | LogInjectionTest.java:1703:41:1703:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1703:55:1703:62 | source(...) | user-provided value | +| LogInjectionTest.java:1704:56:1704:72 | (...)... | LogInjectionTest.java:1704:65:1704:72 | source(...) : Object | LogInjectionTest.java:1704:56:1704:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1704:65:1704:72 | source(...) | user-provided value | +| LogInjectionTest.java:1705:41:1705:57 | (...)... | LogInjectionTest.java:1705:50:1705:57 | source(...) : Object | LogInjectionTest.java:1705:41:1705:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1705:50:1705:57 | source(...) | user-provided value | +| LogInjectionTest.java:1706:26:1706:42 | (...)... | LogInjectionTest.java:1706:35:1706:42 | source(...) : Object | LogInjectionTest.java:1706:26:1706:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1706:35:1706:42 | source(...) | user-provided value | +| LogInjectionTest.java:1707:56:1707:72 | (...)... | LogInjectionTest.java:1707:65:1707:72 | source(...) : Object | LogInjectionTest.java:1707:56:1707:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1707:65:1707:72 | source(...) | user-provided value | +| LogInjectionTest.java:1708:41:1708:57 | (...)... | LogInjectionTest.java:1708:50:1708:57 | source(...) : Object | LogInjectionTest.java:1708:41:1708:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1708:50:1708:57 | source(...) | user-provided value | +| LogInjectionTest.java:1709:26:1709:42 | (...)... | LogInjectionTest.java:1709:35:1709:42 | source(...) : Object | LogInjectionTest.java:1709:26:1709:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1709:35:1709:42 | source(...) | user-provided value | +| LogInjectionTest.java:1710:71:1710:87 | (...)... | LogInjectionTest.java:1710:80:1710:87 | source(...) : Object | LogInjectionTest.java:1710:71:1710:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1710:80:1710:87 | source(...) | user-provided value | +| LogInjectionTest.java:1711:56:1711:72 | (...)... | LogInjectionTest.java:1711:65:1711:72 | source(...) : Object | LogInjectionTest.java:1711:56:1711:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1711:65:1711:72 | source(...) | user-provided value | +| LogInjectionTest.java:1712:41:1712:57 | (...)... | LogInjectionTest.java:1712:50:1712:57 | source(...) : Object | LogInjectionTest.java:1712:41:1712:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1712:50:1712:57 | source(...) | user-provided value | +| LogInjectionTest.java:1713:26:1713:42 | (...)... | LogInjectionTest.java:1713:35:1713:42 | source(...) : Object | LogInjectionTest.java:1713:26:1713:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1713:35:1713:42 | source(...) | user-provided value | +| LogInjectionTest.java:1714:71:1714:87 | (...)... | LogInjectionTest.java:1714:80:1714:87 | source(...) : Object | LogInjectionTest.java:1714:71:1714:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1714:80:1714:87 | source(...) | user-provided value | +| LogInjectionTest.java:1715:56:1715:72 | (...)... | LogInjectionTest.java:1715:65:1715:72 | source(...) : Object | LogInjectionTest.java:1715:56:1715:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1715:65:1715:72 | source(...) | user-provided value | +| LogInjectionTest.java:1716:41:1716:57 | (...)... | LogInjectionTest.java:1716:50:1716:57 | source(...) : Object | LogInjectionTest.java:1716:41:1716:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1716:50:1716:57 | source(...) | user-provided value | +| LogInjectionTest.java:1717:26:1717:42 | (...)... | LogInjectionTest.java:1717:35:1717:42 | source(...) : Object | LogInjectionTest.java:1717:26:1717:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1717:35:1717:42 | source(...) | user-provided value | +| LogInjectionTest.java:1722:25:1722:41 | (...)... | LogInjectionTest.java:1722:34:1722:41 | source(...) : Object | LogInjectionTest.java:1722:25:1722:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1722:34:1722:41 | source(...) | user-provided value | +| LogInjectionTest.java:1723:25:1723:41 | (...)... | LogInjectionTest.java:1723:34:1723:41 | source(...) : Object | LogInjectionTest.java:1723:25:1723:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1723:34:1723:41 | source(...) | user-provided value | +| LogInjectionTest.java:1724:40:1724:47 | source(...) | LogInjectionTest.java:1724:40:1724:47 | source(...) | LogInjectionTest.java:1724:40:1724:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1724:40:1724:47 | source(...) | user-provided value | +| LogInjectionTest.java:1725:25:1725:41 | (...)... | LogInjectionTest.java:1725:34:1725:41 | source(...) : Object | LogInjectionTest.java:1725:25:1725:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1725:34:1725:41 | source(...) | user-provided value | +| LogInjectionTest.java:1726:40:1726:62 | new Object[] | LogInjectionTest.java:1726:54:1726:61 | source(...) : Object | LogInjectionTest.java:1726:40:1726:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1726:54:1726:61 | source(...) | user-provided value | +| LogInjectionTest.java:1727:25:1727:41 | (...)... | LogInjectionTest.java:1727:34:1727:41 | source(...) : Object | LogInjectionTest.java:1727:25:1727:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1727:34:1727:41 | source(...) | user-provided value | +| LogInjectionTest.java:1728:40:1728:47 | source(...) | LogInjectionTest.java:1728:40:1728:47 | source(...) | LogInjectionTest.java:1728:40:1728:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1728:40:1728:47 | source(...) | user-provided value | +| LogInjectionTest.java:1729:55:1729:62 | source(...) | LogInjectionTest.java:1729:55:1729:62 | source(...) | LogInjectionTest.java:1729:55:1729:62 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1729:55:1729:62 | source(...) | user-provided value | +| LogInjectionTest.java:1730:25:1730:62 | (...)... | LogInjectionTest.java:1730:55:1730:62 | source(...) : Object | LogInjectionTest.java:1730:25:1730:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1730:55:1730:62 | source(...) | user-provided value | +| LogInjectionTest.java:1735:26:1735:42 | (...)... | LogInjectionTest.java:1735:35:1735:42 | source(...) : Object | LogInjectionTest.java:1735:26:1735:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1735:35:1735:42 | source(...) | user-provided value | +| LogInjectionTest.java:1736:26:1736:42 | (...)... | LogInjectionTest.java:1736:35:1736:42 | source(...) : Object | LogInjectionTest.java:1736:26:1736:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1736:35:1736:42 | source(...) | user-provided value | +| LogInjectionTest.java:1737:41:1737:48 | source(...) | LogInjectionTest.java:1737:41:1737:48 | source(...) | LogInjectionTest.java:1737:41:1737:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1737:41:1737:48 | source(...) | user-provided value | +| LogInjectionTest.java:1738:26:1738:42 | (...)... | LogInjectionTest.java:1738:35:1738:42 | source(...) : Object | LogInjectionTest.java:1738:26:1738:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1738:35:1738:42 | source(...) | user-provided value | +| LogInjectionTest.java:1739:41:1739:63 | new Object[] | LogInjectionTest.java:1739:55:1739:62 | source(...) : Object | LogInjectionTest.java:1739:41:1739:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1739:55:1739:62 | source(...) | user-provided value | +| LogInjectionTest.java:1740:26:1740:42 | (...)... | LogInjectionTest.java:1740:35:1740:42 | source(...) : Object | LogInjectionTest.java:1740:26:1740:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1740:35:1740:42 | source(...) | user-provided value | +| LogInjectionTest.java:1741:41:1741:48 | source(...) | LogInjectionTest.java:1741:41:1741:48 | source(...) | LogInjectionTest.java:1741:41:1741:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1741:41:1741:48 | source(...) | user-provided value | +| LogInjectionTest.java:1742:56:1742:63 | source(...) | LogInjectionTest.java:1742:56:1742:63 | source(...) | LogInjectionTest.java:1742:56:1742:63 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1742:56:1742:63 | source(...) | user-provided value | +| LogInjectionTest.java:1743:26:1743:42 | (...)... | LogInjectionTest.java:1743:35:1743:42 | source(...) : Object | LogInjectionTest.java:1743:26:1743:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1743:35:1743:42 | source(...) | user-provided value | +| LogInjectionTest.java:1744:51:1744:67 | (...)... | LogInjectionTest.java:1744:60:1744:67 | source(...) : Object | LogInjectionTest.java:1744:51:1744:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1744:60:1744:67 | source(...) | user-provided value | +| LogInjectionTest.java:1745:51:1745:67 | (...)... | LogInjectionTest.java:1745:60:1745:67 | source(...) : Object | LogInjectionTest.java:1745:51:1745:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1745:60:1745:67 | source(...) | user-provided value | +| LogInjectionTest.java:1746:66:1746:73 | source(...) | LogInjectionTest.java:1746:66:1746:73 | source(...) | LogInjectionTest.java:1746:66:1746:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1746:66:1746:73 | source(...) | user-provided value | +| LogInjectionTest.java:1747:51:1747:67 | (...)... | LogInjectionTest.java:1747:60:1747:67 | source(...) : Object | LogInjectionTest.java:1747:51:1747:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1747:60:1747:67 | source(...) | user-provided value | +| LogInjectionTest.java:1748:66:1748:88 | new Object[] | LogInjectionTest.java:1748:80:1748:87 | source(...) : Object | LogInjectionTest.java:1748:66:1748:88 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1748:80:1748:87 | source(...) | user-provided value | +| LogInjectionTest.java:1749:51:1749:67 | (...)... | LogInjectionTest.java:1749:60:1749:67 | source(...) : Object | LogInjectionTest.java:1749:51:1749:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1749:60:1749:67 | source(...) | user-provided value | +| LogInjectionTest.java:1750:66:1750:73 | source(...) | LogInjectionTest.java:1750:66:1750:73 | source(...) | LogInjectionTest.java:1750:66:1750:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1750:66:1750:73 | source(...) | user-provided value | +| LogInjectionTest.java:1751:81:1751:88 | source(...) | LogInjectionTest.java:1751:81:1751:88 | source(...) | LogInjectionTest.java:1751:81:1751:88 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1751:81:1751:88 | source(...) | user-provided value | +| LogInjectionTest.java:1752:51:1752:67 | (...)... | LogInjectionTest.java:1752:60:1752:67 | source(...) : Object | LogInjectionTest.java:1752:51:1752:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1752:60:1752:67 | source(...) | user-provided value | +| LogInjectionTest.java:1753:13:1753:104 | new ..[] { .. } | LogInjectionTest.java:1753:66:1753:73 | source(...) : Object | LogInjectionTest.java:1753:13:1753:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1753:66:1753:73 | source(...) | user-provided value | +| LogInjectionTest.java:1754:13:1754:104 | new ..[] { .. } | LogInjectionTest.java:1754:81:1754:88 | source(...) : Object | LogInjectionTest.java:1754:13:1754:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1754:81:1754:88 | source(...) | user-provided value | +| LogInjectionTest.java:1755:13:1755:104 | new ..[] { .. } | LogInjectionTest.java:1755:96:1755:103 | source(...) : Object | LogInjectionTest.java:1755:13:1755:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1755:96:1755:103 | source(...) | user-provided value | +| LogInjectionTest.java:1756:26:1756:42 | (...)... | LogInjectionTest.java:1756:35:1756:42 | source(...) : Object | LogInjectionTest.java:1756:26:1756:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1756:35:1756:42 | source(...) | user-provided value | +| LogInjectionTest.java:1757:26:1757:42 | (...)... | LogInjectionTest.java:1757:35:1757:42 | source(...) : Object | LogInjectionTest.java:1757:26:1757:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1757:35:1757:42 | source(...) | user-provided value | +| LogInjectionTest.java:1758:41:1758:48 | source(...) | LogInjectionTest.java:1758:41:1758:48 | source(...) | LogInjectionTest.java:1758:41:1758:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1758:41:1758:48 | source(...) | user-provided value | +| LogInjectionTest.java:1759:26:1759:42 | (...)... | LogInjectionTest.java:1759:35:1759:42 | source(...) : Object | LogInjectionTest.java:1759:26:1759:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1759:35:1759:42 | source(...) | user-provided value | +| LogInjectionTest.java:1760:41:1760:63 | new Object[] | LogInjectionTest.java:1760:55:1760:62 | source(...) : Object | LogInjectionTest.java:1760:41:1760:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1760:55:1760:62 | source(...) | user-provided value | +| LogInjectionTest.java:1761:26:1761:42 | (...)... | LogInjectionTest.java:1761:35:1761:42 | source(...) : Object | LogInjectionTest.java:1761:26:1761:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1761:35:1761:42 | source(...) | user-provided value | +| LogInjectionTest.java:1762:41:1762:48 | source(...) | LogInjectionTest.java:1762:41:1762:48 | source(...) | LogInjectionTest.java:1762:41:1762:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1762:41:1762:48 | source(...) | user-provided value | +| LogInjectionTest.java:1763:56:1763:63 | source(...) | LogInjectionTest.java:1763:56:1763:63 | source(...) | LogInjectionTest.java:1763:56:1763:63 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1763:56:1763:63 | source(...) | user-provided value | +| LogInjectionTest.java:1764:26:1764:42 | (...)... | LogInjectionTest.java:1764:35:1764:42 | source(...) : Object | LogInjectionTest.java:1764:26:1764:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1764:35:1764:42 | source(...) | user-provided value | +| LogInjectionTest.java:1765:51:1765:67 | (...)... | LogInjectionTest.java:1765:60:1765:67 | source(...) : Object | LogInjectionTest.java:1765:51:1765:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1765:60:1765:67 | source(...) | user-provided value | +| LogInjectionTest.java:1766:51:1766:67 | (...)... | LogInjectionTest.java:1766:60:1766:67 | source(...) : Object | LogInjectionTest.java:1766:51:1766:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1766:60:1766:67 | source(...) | user-provided value | +| LogInjectionTest.java:1767:66:1767:73 | source(...) | LogInjectionTest.java:1767:66:1767:73 | source(...) | LogInjectionTest.java:1767:66:1767:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1767:66:1767:73 | source(...) | user-provided value | +| LogInjectionTest.java:1768:51:1768:67 | (...)... | LogInjectionTest.java:1768:60:1768:67 | source(...) : Object | LogInjectionTest.java:1768:51:1768:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1768:60:1768:67 | source(...) | user-provided value | +| LogInjectionTest.java:1769:66:1769:88 | new Object[] | LogInjectionTest.java:1769:80:1769:87 | source(...) : Object | LogInjectionTest.java:1769:66:1769:88 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1769:80:1769:87 | source(...) | user-provided value | +| LogInjectionTest.java:1770:51:1770:67 | (...)... | LogInjectionTest.java:1770:60:1770:67 | source(...) : Object | LogInjectionTest.java:1770:51:1770:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1770:60:1770:67 | source(...) | user-provided value | +| LogInjectionTest.java:1771:66:1771:73 | source(...) | LogInjectionTest.java:1771:66:1771:73 | source(...) | LogInjectionTest.java:1771:66:1771:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1771:66:1771:73 | source(...) | user-provided value | +| LogInjectionTest.java:1772:81:1772:88 | source(...) | LogInjectionTest.java:1772:81:1772:88 | source(...) | LogInjectionTest.java:1772:81:1772:88 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1772:81:1772:88 | source(...) | user-provided value | +| LogInjectionTest.java:1773:51:1773:67 | (...)... | LogInjectionTest.java:1773:60:1773:67 | source(...) : Object | LogInjectionTest.java:1773:51:1773:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1773:60:1773:67 | source(...) | user-provided value | +| LogInjectionTest.java:1774:13:1774:104 | new ..[] { .. } | LogInjectionTest.java:1774:66:1774:73 | source(...) : Object | LogInjectionTest.java:1774:13:1774:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1774:66:1774:73 | source(...) | user-provided value | +| LogInjectionTest.java:1775:13:1775:104 | new ..[] { .. } | LogInjectionTest.java:1775:81:1775:88 | source(...) : Object | LogInjectionTest.java:1775:13:1775:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1775:81:1775:88 | source(...) | user-provided value | +| LogInjectionTest.java:1776:13:1776:104 | new ..[] { .. } | LogInjectionTest.java:1776:96:1776:103 | source(...) : Object | LogInjectionTest.java:1776:13:1776:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1776:96:1776:103 | source(...) | user-provided value | +| LogInjectionTest.java:1777:25:1777:41 | (...)... | LogInjectionTest.java:1777:34:1777:41 | source(...) : Object | LogInjectionTest.java:1777:25:1777:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1777:34:1777:41 | source(...) | user-provided value | +| LogInjectionTest.java:1778:25:1778:41 | (...)... | LogInjectionTest.java:1778:34:1778:41 | source(...) : Object | LogInjectionTest.java:1778:25:1778:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1778:34:1778:41 | source(...) | user-provided value | +| LogInjectionTest.java:1779:40:1779:47 | source(...) | LogInjectionTest.java:1779:40:1779:47 | source(...) | LogInjectionTest.java:1779:40:1779:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1779:40:1779:47 | source(...) | user-provided value | +| LogInjectionTest.java:1780:25:1780:41 | (...)... | LogInjectionTest.java:1780:34:1780:41 | source(...) : Object | LogInjectionTest.java:1780:25:1780:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1780:34:1780:41 | source(...) | user-provided value | +| LogInjectionTest.java:1781:40:1781:62 | new Object[] | LogInjectionTest.java:1781:54:1781:61 | source(...) : Object | LogInjectionTest.java:1781:40:1781:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1781:54:1781:61 | source(...) | user-provided value | +| LogInjectionTest.java:1782:25:1782:41 | (...)... | LogInjectionTest.java:1782:34:1782:41 | source(...) : Object | LogInjectionTest.java:1782:25:1782:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1782:34:1782:41 | source(...) | user-provided value | +| LogInjectionTest.java:1783:40:1783:47 | source(...) | LogInjectionTest.java:1783:40:1783:47 | source(...) | LogInjectionTest.java:1783:40:1783:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1783:40:1783:47 | source(...) | user-provided value | +| LogInjectionTest.java:1784:55:1784:62 | source(...) | LogInjectionTest.java:1784:55:1784:62 | source(...) | LogInjectionTest.java:1784:55:1784:62 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1784:55:1784:62 | source(...) | user-provided value | +| LogInjectionTest.java:1785:25:1785:41 | (...)... | LogInjectionTest.java:1785:34:1785:41 | source(...) : Object | LogInjectionTest.java:1785:25:1785:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1785:34:1785:41 | source(...) | user-provided value | +| LogInjectionTest.java:1786:50:1786:66 | (...)... | LogInjectionTest.java:1786:59:1786:66 | source(...) : Object | LogInjectionTest.java:1786:50:1786:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1786:59:1786:66 | source(...) | user-provided value | +| LogInjectionTest.java:1787:50:1787:66 | (...)... | LogInjectionTest.java:1787:59:1787:66 | source(...) : Object | LogInjectionTest.java:1787:50:1787:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1787:59:1787:66 | source(...) | user-provided value | +| LogInjectionTest.java:1788:65:1788:72 | source(...) | LogInjectionTest.java:1788:65:1788:72 | source(...) | LogInjectionTest.java:1788:65:1788:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1788:65:1788:72 | source(...) | user-provided value | +| LogInjectionTest.java:1789:50:1789:66 | (...)... | LogInjectionTest.java:1789:59:1789:66 | source(...) : Object | LogInjectionTest.java:1789:50:1789:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1789:59:1789:66 | source(...) | user-provided value | +| LogInjectionTest.java:1790:65:1790:87 | new Object[] | LogInjectionTest.java:1790:79:1790:86 | source(...) : Object | LogInjectionTest.java:1790:65:1790:87 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1790:79:1790:86 | source(...) | user-provided value | +| LogInjectionTest.java:1791:50:1791:66 | (...)... | LogInjectionTest.java:1791:59:1791:66 | source(...) : Object | LogInjectionTest.java:1791:50:1791:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1791:59:1791:66 | source(...) | user-provided value | +| LogInjectionTest.java:1792:65:1792:72 | source(...) | LogInjectionTest.java:1792:65:1792:72 | source(...) | LogInjectionTest.java:1792:65:1792:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1792:65:1792:72 | source(...) | user-provided value | +| LogInjectionTest.java:1793:80:1793:87 | source(...) | LogInjectionTest.java:1793:80:1793:87 | source(...) | LogInjectionTest.java:1793:80:1793:87 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1793:80:1793:87 | source(...) | user-provided value | +| LogInjectionTest.java:1794:50:1794:66 | (...)... | LogInjectionTest.java:1794:59:1794:66 | source(...) : Object | LogInjectionTest.java:1794:50:1794:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1794:59:1794:66 | source(...) | user-provided value | +| LogInjectionTest.java:1795:13:1795:103 | new ..[] { .. } | LogInjectionTest.java:1795:65:1795:72 | source(...) : Object | LogInjectionTest.java:1795:13:1795:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1795:65:1795:72 | source(...) | user-provided value | +| LogInjectionTest.java:1796:13:1796:103 | new ..[] { .. } | LogInjectionTest.java:1796:80:1796:87 | source(...) : Object | LogInjectionTest.java:1796:13:1796:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1796:80:1796:87 | source(...) | user-provided value | +| LogInjectionTest.java:1797:13:1797:103 | new ..[] { .. } | LogInjectionTest.java:1797:95:1797:102 | source(...) : Object | LogInjectionTest.java:1797:13:1797:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1797:95:1797:102 | source(...) | user-provided value | +| LogInjectionTest.java:1798:26:1798:42 | (...)... | LogInjectionTest.java:1798:35:1798:42 | source(...) : Object | LogInjectionTest.java:1798:26:1798:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1798:35:1798:42 | source(...) | user-provided value | +| LogInjectionTest.java:1799:26:1799:42 | (...)... | LogInjectionTest.java:1799:35:1799:42 | source(...) : Object | LogInjectionTest.java:1799:26:1799:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1799:35:1799:42 | source(...) | user-provided value | +| LogInjectionTest.java:1800:41:1800:48 | source(...) | LogInjectionTest.java:1800:41:1800:48 | source(...) | LogInjectionTest.java:1800:41:1800:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1800:41:1800:48 | source(...) | user-provided value | +| LogInjectionTest.java:1801:26:1801:42 | (...)... | LogInjectionTest.java:1801:35:1801:42 | source(...) : Object | LogInjectionTest.java:1801:26:1801:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1801:35:1801:42 | source(...) | user-provided value | +| LogInjectionTest.java:1802:41:1802:63 | new Object[] | LogInjectionTest.java:1802:55:1802:62 | source(...) : Object | LogInjectionTest.java:1802:41:1802:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1802:55:1802:62 | source(...) | user-provided value | +| LogInjectionTest.java:1803:26:1803:42 | (...)... | LogInjectionTest.java:1803:35:1803:42 | source(...) : Object | LogInjectionTest.java:1803:26:1803:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1803:35:1803:42 | source(...) | user-provided value | +| LogInjectionTest.java:1804:41:1804:48 | source(...) | LogInjectionTest.java:1804:41:1804:48 | source(...) | LogInjectionTest.java:1804:41:1804:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1804:41:1804:48 | source(...) | user-provided value | +| LogInjectionTest.java:1805:56:1805:63 | source(...) | LogInjectionTest.java:1805:56:1805:63 | source(...) | LogInjectionTest.java:1805:56:1805:63 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1805:56:1805:63 | source(...) | user-provided value | +| LogInjectionTest.java:1806:26:1806:42 | (...)... | LogInjectionTest.java:1806:35:1806:42 | source(...) : Object | LogInjectionTest.java:1806:26:1806:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1806:35:1806:42 | source(...) | user-provided value | +| LogInjectionTest.java:1807:51:1807:67 | (...)... | LogInjectionTest.java:1807:60:1807:67 | source(...) : Object | LogInjectionTest.java:1807:51:1807:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1807:60:1807:67 | source(...) | user-provided value | +| LogInjectionTest.java:1808:51:1808:67 | (...)... | LogInjectionTest.java:1808:60:1808:67 | source(...) : Object | LogInjectionTest.java:1808:51:1808:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1808:60:1808:67 | source(...) | user-provided value | +| LogInjectionTest.java:1809:66:1809:73 | source(...) | LogInjectionTest.java:1809:66:1809:73 | source(...) | LogInjectionTest.java:1809:66:1809:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1809:66:1809:73 | source(...) | user-provided value | +| LogInjectionTest.java:1810:51:1810:67 | (...)... | LogInjectionTest.java:1810:60:1810:67 | source(...) : Object | LogInjectionTest.java:1810:51:1810:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1810:60:1810:67 | source(...) | user-provided value | +| LogInjectionTest.java:1811:66:1811:88 | new Object[] | LogInjectionTest.java:1811:80:1811:87 | source(...) : Object | LogInjectionTest.java:1811:66:1811:88 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1811:80:1811:87 | source(...) | user-provided value | +| LogInjectionTest.java:1812:51:1812:67 | (...)... | LogInjectionTest.java:1812:60:1812:67 | source(...) : Object | LogInjectionTest.java:1812:51:1812:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1812:60:1812:67 | source(...) | user-provided value | +| LogInjectionTest.java:1813:66:1813:73 | source(...) | LogInjectionTest.java:1813:66:1813:73 | source(...) | LogInjectionTest.java:1813:66:1813:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1813:66:1813:73 | source(...) | user-provided value | +| LogInjectionTest.java:1814:81:1814:88 | source(...) | LogInjectionTest.java:1814:81:1814:88 | source(...) | LogInjectionTest.java:1814:81:1814:88 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1814:81:1814:88 | source(...) | user-provided value | +| LogInjectionTest.java:1815:51:1815:67 | (...)... | LogInjectionTest.java:1815:60:1815:67 | source(...) : Object | LogInjectionTest.java:1815:51:1815:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1815:60:1815:67 | source(...) | user-provided value | +| LogInjectionTest.java:1816:13:1816:104 | new ..[] { .. } | LogInjectionTest.java:1816:66:1816:73 | source(...) : Object | LogInjectionTest.java:1816:13:1816:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1816:66:1816:73 | source(...) | user-provided value | +| LogInjectionTest.java:1817:13:1817:104 | new ..[] { .. } | LogInjectionTest.java:1817:81:1817:88 | source(...) : Object | LogInjectionTest.java:1817:13:1817:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1817:81:1817:88 | source(...) | user-provided value | +| LogInjectionTest.java:1818:13:1818:104 | new ..[] { .. } | LogInjectionTest.java:1818:96:1818:103 | source(...) : Object | LogInjectionTest.java:1818:13:1818:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1818:96:1818:103 | source(...) | user-provided value | +| LogInjectionTest.java:1819:25:1819:41 | (...)... | LogInjectionTest.java:1819:34:1819:41 | source(...) : Object | LogInjectionTest.java:1819:25:1819:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1819:34:1819:41 | source(...) | user-provided value | +| LogInjectionTest.java:1820:25:1820:41 | (...)... | LogInjectionTest.java:1820:34:1820:41 | source(...) : Object | LogInjectionTest.java:1820:25:1820:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1820:34:1820:41 | source(...) | user-provided value | +| LogInjectionTest.java:1821:40:1821:47 | source(...) | LogInjectionTest.java:1821:40:1821:47 | source(...) | LogInjectionTest.java:1821:40:1821:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1821:40:1821:47 | source(...) | user-provided value | +| LogInjectionTest.java:1822:25:1822:41 | (...)... | LogInjectionTest.java:1822:34:1822:41 | source(...) : Object | LogInjectionTest.java:1822:25:1822:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1822:34:1822:41 | source(...) | user-provided value | +| LogInjectionTest.java:1823:40:1823:62 | new Object[] | LogInjectionTest.java:1823:54:1823:61 | source(...) : Object | LogInjectionTest.java:1823:40:1823:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1823:54:1823:61 | source(...) | user-provided value | +| LogInjectionTest.java:1824:25:1824:41 | (...)... | LogInjectionTest.java:1824:34:1824:41 | source(...) : Object | LogInjectionTest.java:1824:25:1824:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1824:34:1824:41 | source(...) | user-provided value | +| LogInjectionTest.java:1825:40:1825:47 | source(...) | LogInjectionTest.java:1825:40:1825:47 | source(...) | LogInjectionTest.java:1825:40:1825:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1825:40:1825:47 | source(...) | user-provided value | +| LogInjectionTest.java:1826:55:1826:62 | source(...) | LogInjectionTest.java:1826:55:1826:62 | source(...) | LogInjectionTest.java:1826:55:1826:62 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1826:55:1826:62 | source(...) | user-provided value | +| LogInjectionTest.java:1827:25:1827:41 | (...)... | LogInjectionTest.java:1827:34:1827:41 | source(...) : Object | LogInjectionTest.java:1827:25:1827:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1827:34:1827:41 | source(...) | user-provided value | +| LogInjectionTest.java:1828:50:1828:66 | (...)... | LogInjectionTest.java:1828:59:1828:66 | source(...) : Object | LogInjectionTest.java:1828:50:1828:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1828:59:1828:66 | source(...) | user-provided value | +| LogInjectionTest.java:1829:50:1829:66 | (...)... | LogInjectionTest.java:1829:59:1829:66 | source(...) : Object | LogInjectionTest.java:1829:50:1829:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1829:59:1829:66 | source(...) | user-provided value | +| LogInjectionTest.java:1830:65:1830:72 | source(...) | LogInjectionTest.java:1830:65:1830:72 | source(...) | LogInjectionTest.java:1830:65:1830:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1830:65:1830:72 | source(...) | user-provided value | +| LogInjectionTest.java:1831:50:1831:66 | (...)... | LogInjectionTest.java:1831:59:1831:66 | source(...) : Object | LogInjectionTest.java:1831:50:1831:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1831:59:1831:66 | source(...) | user-provided value | +| LogInjectionTest.java:1832:65:1832:87 | new Object[] | LogInjectionTest.java:1832:79:1832:86 | source(...) : Object | LogInjectionTest.java:1832:65:1832:87 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1832:79:1832:86 | source(...) | user-provided value | +| LogInjectionTest.java:1833:50:1833:66 | (...)... | LogInjectionTest.java:1833:59:1833:66 | source(...) : Object | LogInjectionTest.java:1833:50:1833:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1833:59:1833:66 | source(...) | user-provided value | +| LogInjectionTest.java:1834:65:1834:72 | source(...) | LogInjectionTest.java:1834:65:1834:72 | source(...) | LogInjectionTest.java:1834:65:1834:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1834:65:1834:72 | source(...) | user-provided value | +| LogInjectionTest.java:1835:80:1835:87 | source(...) | LogInjectionTest.java:1835:80:1835:87 | source(...) | LogInjectionTest.java:1835:80:1835:87 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1835:80:1835:87 | source(...) | user-provided value | +| LogInjectionTest.java:1836:50:1836:66 | (...)... | LogInjectionTest.java:1836:59:1836:66 | source(...) : Object | LogInjectionTest.java:1836:50:1836:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1836:59:1836:66 | source(...) | user-provided value | +| LogInjectionTest.java:1837:13:1837:103 | new ..[] { .. } | LogInjectionTest.java:1837:65:1837:72 | source(...) : Object | LogInjectionTest.java:1837:13:1837:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1837:65:1837:72 | source(...) | user-provided value | +| LogInjectionTest.java:1838:13:1838:103 | new ..[] { .. } | LogInjectionTest.java:1838:80:1838:87 | source(...) : Object | LogInjectionTest.java:1838:13:1838:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1838:80:1838:87 | source(...) | user-provided value | +| LogInjectionTest.java:1839:13:1839:103 | new ..[] { .. } | LogInjectionTest.java:1839:95:1839:102 | source(...) : Object | LogInjectionTest.java:1839:13:1839:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1839:95:1839:102 | source(...) | user-provided value | +| LogInjectionTest.java:1844:33:1844:40 | source(...) | LogInjectionTest.java:1844:33:1844:40 | source(...) | LogInjectionTest.java:1844:33:1844:40 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1844:33:1844:40 | source(...) | user-provided value | +| LogInjectionTest.java:1845:26:1845:33 | source(...) | LogInjectionTest.java:1845:26:1845:33 | source(...) | LogInjectionTest.java:1845:26:1845:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1845:26:1845:33 | source(...) | user-provided value | +| LogInjectionTest.java:1846:26:1846:33 | source(...) | LogInjectionTest.java:1846:26:1846:33 | source(...) | LogInjectionTest.java:1846:26:1846:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1846:26:1846:33 | source(...) | user-provided value | +| LogInjectionTest.java:1847:26:1847:33 | source(...) | LogInjectionTest.java:1847:26:1847:33 | source(...) | LogInjectionTest.java:1847:26:1847:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1847:26:1847:33 | source(...) | user-provided value | +| LogInjectionTest.java:1848:26:1848:33 | source(...) | LogInjectionTest.java:1848:26:1848:33 | source(...) | LogInjectionTest.java:1848:26:1848:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1848:26:1848:33 | source(...) | user-provided value | +| LogInjectionTest.java:1849:25:1849:32 | source(...) | LogInjectionTest.java:1849:25:1849:32 | source(...) | LogInjectionTest.java:1849:25:1849:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1849:25:1849:32 | source(...) | user-provided value | +| LogInjectionTest.java:1850:25:1850:32 | source(...) | LogInjectionTest.java:1850:25:1850:32 | source(...) | LogInjectionTest.java:1850:25:1850:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1850:25:1850:32 | source(...) | user-provided value | +| LogInjectionTest.java:1851:26:1851:33 | source(...) | LogInjectionTest.java:1851:26:1851:33 | source(...) | LogInjectionTest.java:1851:26:1851:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1851:26:1851:33 | source(...) | user-provided value | +| LogInjectionTest.java:1852:26:1852:33 | source(...) | LogInjectionTest.java:1852:26:1852:33 | source(...) | LogInjectionTest.java:1852:26:1852:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1852:26:1852:33 | source(...) | user-provided value | +| LogInjectionTest.java:1853:25:1853:32 | source(...) | LogInjectionTest.java:1853:25:1853:32 | source(...) | LogInjectionTest.java:1853:25:1853:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1853:25:1853:32 | source(...) | user-provided value | +| LogInjectionTest.java:1854:25:1854:32 | source(...) | LogInjectionTest.java:1854:25:1854:32 | source(...) | LogInjectionTest.java:1854:25:1854:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1854:25:1854:32 | source(...) | user-provided value | +| LogInjectionTest.java:1855:27:1855:34 | source(...) | LogInjectionTest.java:1855:27:1855:34 | source(...) | LogInjectionTest.java:1855:27:1855:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1855:27:1855:34 | source(...) | user-provided value | +| LogInjectionTest.java:1856:27:1856:34 | source(...) | LogInjectionTest.java:1856:27:1856:34 | source(...) | LogInjectionTest.java:1856:27:1856:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1856:27:1856:34 | source(...) | user-provided value | +| LogInjectionTest.java:1860:28:1860:44 | (...)... | LogInjectionTest.java:1860:37:1860:44 | source(...) : Object | LogInjectionTest.java:1860:28:1860:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1860:37:1860:44 | source(...) | user-provided value | +| LogInjectionTest.java:1861:43:1861:65 | new Object[] | LogInjectionTest.java:1861:57:1861:64 | source(...) : Object | LogInjectionTest.java:1861:43:1861:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1861:57:1861:64 | source(...) | user-provided value | +| LogInjectionTest.java:1863:21:1863:37 | (...)... | LogInjectionTest.java:1863:30:1863:37 | source(...) : Object | LogInjectionTest.java:1863:21:1863:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1863:30:1863:37 | source(...) | user-provided value | +| LogInjectionTest.java:1864:36:1864:52 | (...)... | LogInjectionTest.java:1864:45:1864:52 | source(...) : Object | LogInjectionTest.java:1864:36:1864:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1864:45:1864:52 | source(...) | user-provided value | +| LogInjectionTest.java:1865:21:1865:37 | (...)... | LogInjectionTest.java:1865:30:1865:37 | source(...) : Object | LogInjectionTest.java:1865:21:1865:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1865:30:1865:37 | source(...) | user-provided value | +| LogInjectionTest.java:1866:51:1866:67 | (...)... | LogInjectionTest.java:1866:60:1866:67 | source(...) : Object | LogInjectionTest.java:1866:51:1866:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1866:60:1866:67 | source(...) | user-provided value | +| LogInjectionTest.java:1867:36:1867:52 | (...)... | LogInjectionTest.java:1867:45:1867:52 | source(...) : Object | LogInjectionTest.java:1867:36:1867:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1867:45:1867:52 | source(...) | user-provided value | +| LogInjectionTest.java:1868:21:1868:37 | (...)... | LogInjectionTest.java:1868:30:1868:37 | source(...) : Object | LogInjectionTest.java:1868:21:1868:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1868:30:1868:37 | source(...) | user-provided value | +| LogInjectionTest.java:1869:66:1869:82 | (...)... | LogInjectionTest.java:1869:75:1869:82 | source(...) : Object | LogInjectionTest.java:1869:66:1869:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1869:75:1869:82 | source(...) | user-provided value | +| LogInjectionTest.java:1870:51:1870:67 | (...)... | LogInjectionTest.java:1870:60:1870:67 | source(...) : Object | LogInjectionTest.java:1870:51:1870:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1870:60:1870:67 | source(...) | user-provided value | +| LogInjectionTest.java:1871:36:1871:52 | (...)... | LogInjectionTest.java:1871:45:1871:52 | source(...) : Object | LogInjectionTest.java:1871:36:1871:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1871:45:1871:52 | source(...) | user-provided value | +| LogInjectionTest.java:1872:21:1872:37 | (...)... | LogInjectionTest.java:1872:30:1872:37 | source(...) : Object | LogInjectionTest.java:1872:21:1872:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1872:30:1872:37 | source(...) | user-provided value | +| LogInjectionTest.java:1873:81:1873:97 | (...)... | LogInjectionTest.java:1873:90:1873:97 | source(...) : Object | LogInjectionTest.java:1873:81:1873:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1873:90:1873:97 | source(...) | user-provided value | +| LogInjectionTest.java:1874:66:1874:82 | (...)... | LogInjectionTest.java:1874:75:1874:82 | source(...) : Object | LogInjectionTest.java:1874:66:1874:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1874:75:1874:82 | source(...) | user-provided value | +| LogInjectionTest.java:1875:51:1875:67 | (...)... | LogInjectionTest.java:1875:60:1875:67 | source(...) : Object | LogInjectionTest.java:1875:51:1875:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1875:60:1875:67 | source(...) | user-provided value | +| LogInjectionTest.java:1876:36:1876:52 | (...)... | LogInjectionTest.java:1876:45:1876:52 | source(...) : Object | LogInjectionTest.java:1876:36:1876:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1876:45:1876:52 | source(...) | user-provided value | +| LogInjectionTest.java:1877:21:1877:37 | (...)... | LogInjectionTest.java:1877:30:1877:37 | source(...) : Object | LogInjectionTest.java:1877:21:1877:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1877:30:1877:37 | source(...) | user-provided value | +| LogInjectionTest.java:1878:96:1878:112 | (...)... | LogInjectionTest.java:1878:105:1878:112 | source(...) : Object | LogInjectionTest.java:1878:96:1878:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1878:105:1878:112 | source(...) | user-provided value | +| LogInjectionTest.java:1879:81:1879:97 | (...)... | LogInjectionTest.java:1879:90:1879:97 | source(...) : Object | LogInjectionTest.java:1879:81:1879:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1879:90:1879:97 | source(...) | user-provided value | +| LogInjectionTest.java:1880:66:1880:82 | (...)... | LogInjectionTest.java:1880:75:1880:82 | source(...) : Object | LogInjectionTest.java:1880:66:1880:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1880:75:1880:82 | source(...) | user-provided value | +| LogInjectionTest.java:1881:51:1881:67 | (...)... | LogInjectionTest.java:1881:60:1881:67 | source(...) : Object | LogInjectionTest.java:1881:51:1881:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1881:60:1881:67 | source(...) | user-provided value | +| LogInjectionTest.java:1882:36:1882:52 | (...)... | LogInjectionTest.java:1882:45:1882:52 | source(...) : Object | LogInjectionTest.java:1882:36:1882:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1882:45:1882:52 | source(...) | user-provided value | +| LogInjectionTest.java:1883:21:1883:37 | (...)... | LogInjectionTest.java:1883:30:1883:37 | source(...) : Object | LogInjectionTest.java:1883:21:1883:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1883:30:1883:37 | source(...) | user-provided value | +| LogInjectionTest.java:1884:111:1884:127 | (...)... | LogInjectionTest.java:1884:120:1884:127 | source(...) : Object | LogInjectionTest.java:1884:111:1884:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1884:120:1884:127 | source(...) | user-provided value | +| LogInjectionTest.java:1885:96:1885:112 | (...)... | LogInjectionTest.java:1885:105:1885:112 | source(...) : Object | LogInjectionTest.java:1885:96:1885:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1885:105:1885:112 | source(...) | user-provided value | +| LogInjectionTest.java:1886:81:1886:97 | (...)... | LogInjectionTest.java:1886:90:1886:97 | source(...) : Object | LogInjectionTest.java:1886:81:1886:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1886:90:1886:97 | source(...) | user-provided value | +| LogInjectionTest.java:1887:66:1887:82 | (...)... | LogInjectionTest.java:1887:75:1887:82 | source(...) : Object | LogInjectionTest.java:1887:66:1887:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1887:75:1887:82 | source(...) | user-provided value | +| LogInjectionTest.java:1888:51:1888:67 | (...)... | LogInjectionTest.java:1888:60:1888:67 | source(...) : Object | LogInjectionTest.java:1888:51:1888:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1888:60:1888:67 | source(...) | user-provided value | +| LogInjectionTest.java:1889:36:1889:52 | (...)... | LogInjectionTest.java:1889:45:1889:52 | source(...) : Object | LogInjectionTest.java:1889:36:1889:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1889:45:1889:52 | source(...) | user-provided value | +| LogInjectionTest.java:1890:21:1890:37 | (...)... | LogInjectionTest.java:1890:30:1890:37 | source(...) : Object | LogInjectionTest.java:1890:21:1890:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1890:30:1890:37 | source(...) | user-provided value | +| LogInjectionTest.java:1891:126:1891:142 | (...)... | LogInjectionTest.java:1891:135:1891:142 | source(...) : Object | LogInjectionTest.java:1891:126:1891:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1891:135:1891:142 | source(...) | user-provided value | +| LogInjectionTest.java:1892:111:1892:127 | (...)... | LogInjectionTest.java:1892:120:1892:127 | source(...) : Object | LogInjectionTest.java:1892:111:1892:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1892:120:1892:127 | source(...) | user-provided value | +| LogInjectionTest.java:1893:96:1893:112 | (...)... | LogInjectionTest.java:1893:105:1893:112 | source(...) : Object | LogInjectionTest.java:1893:96:1893:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1893:105:1893:112 | source(...) | user-provided value | +| LogInjectionTest.java:1894:81:1894:97 | (...)... | LogInjectionTest.java:1894:90:1894:97 | source(...) : Object | LogInjectionTest.java:1894:81:1894:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1894:90:1894:97 | source(...) | user-provided value | +| LogInjectionTest.java:1895:66:1895:82 | (...)... | LogInjectionTest.java:1895:75:1895:82 | source(...) : Object | LogInjectionTest.java:1895:66:1895:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1895:75:1895:82 | source(...) | user-provided value | +| LogInjectionTest.java:1896:51:1896:67 | (...)... | LogInjectionTest.java:1896:60:1896:67 | source(...) : Object | LogInjectionTest.java:1896:51:1896:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1896:60:1896:67 | source(...) | user-provided value | +| LogInjectionTest.java:1897:36:1897:52 | (...)... | LogInjectionTest.java:1897:45:1897:52 | source(...) : Object | LogInjectionTest.java:1897:36:1897:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1897:45:1897:52 | source(...) | user-provided value | +| LogInjectionTest.java:1898:21:1898:37 | (...)... | LogInjectionTest.java:1898:30:1898:37 | source(...) : Object | LogInjectionTest.java:1898:21:1898:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1898:30:1898:37 | source(...) | user-provided value | | LogInjectionTest.java:1899:141:1899:157 | (...)... | LogInjectionTest.java:1899:150:1899:157 | source(...) : Object | LogInjectionTest.java:1899:141:1899:157 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1899:150:1899:157 | source(...) | user-provided value | | LogInjectionTest.java:1900:126:1900:142 | (...)... | LogInjectionTest.java:1900:135:1900:142 | source(...) : Object | LogInjectionTest.java:1900:126:1900:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1900:135:1900:142 | source(...) | user-provided value | | LogInjectionTest.java:1901:111:1901:127 | (...)... | LogInjectionTest.java:1901:120:1901:127 | source(...) : Object | LogInjectionTest.java:1901:111:1901:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1901:120:1901:127 | source(...) | user-provided value | @@ -1679,44 +1669,44 @@ | LogInjectionTest.java:1905:51:1905:67 | (...)... | LogInjectionTest.java:1905:60:1905:67 | source(...) : Object | LogInjectionTest.java:1905:51:1905:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1905:60:1905:67 | source(...) | user-provided value | | LogInjectionTest.java:1906:36:1906:52 | (...)... | LogInjectionTest.java:1906:45:1906:52 | source(...) : Object | LogInjectionTest.java:1906:36:1906:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1906:45:1906:52 | source(...) | user-provided value | | LogInjectionTest.java:1907:21:1907:37 | (...)... | LogInjectionTest.java:1907:30:1907:37 | source(...) : Object | LogInjectionTest.java:1907:21:1907:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1907:30:1907:37 | source(...) | user-provided value | -| LogInjectionTest.java:1908:171:1908:187 | (...)... | LogInjectionTest.java:1908:180:1908:187 | source(...) : Object | LogInjectionTest.java:1908:171:1908:187 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1908:180:1908:187 | source(...) | user-provided value | -| LogInjectionTest.java:1909:156:1909:172 | (...)... | LogInjectionTest.java:1909:165:1909:172 | source(...) : Object | LogInjectionTest.java:1909:156:1909:172 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1909:165:1909:172 | source(...) | user-provided value | -| LogInjectionTest.java:1910:141:1910:157 | (...)... | LogInjectionTest.java:1910:150:1910:157 | source(...) : Object | LogInjectionTest.java:1910:141:1910:157 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1910:150:1910:157 | source(...) | user-provided value | -| LogInjectionTest.java:1911:126:1911:142 | (...)... | LogInjectionTest.java:1911:135:1911:142 | source(...) : Object | LogInjectionTest.java:1911:126:1911:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1911:135:1911:142 | source(...) | user-provided value | -| LogInjectionTest.java:1912:111:1912:127 | (...)... | LogInjectionTest.java:1912:120:1912:127 | source(...) : Object | LogInjectionTest.java:1912:111:1912:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1912:120:1912:127 | source(...) | user-provided value | -| LogInjectionTest.java:1913:96:1913:112 | (...)... | LogInjectionTest.java:1913:105:1913:112 | source(...) : Object | LogInjectionTest.java:1913:96:1913:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1913:105:1913:112 | source(...) | user-provided value | -| LogInjectionTest.java:1914:81:1914:97 | (...)... | LogInjectionTest.java:1914:90:1914:97 | source(...) : Object | LogInjectionTest.java:1914:81:1914:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1914:90:1914:97 | source(...) | user-provided value | -| LogInjectionTest.java:1915:66:1915:82 | (...)... | LogInjectionTest.java:1915:75:1915:82 | source(...) : Object | LogInjectionTest.java:1915:66:1915:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1915:75:1915:82 | source(...) | user-provided value | -| LogInjectionTest.java:1916:51:1916:67 | (...)... | LogInjectionTest.java:1916:60:1916:67 | source(...) : Object | LogInjectionTest.java:1916:51:1916:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1916:60:1916:67 | source(...) | user-provided value | -| LogInjectionTest.java:1917:36:1917:52 | (...)... | LogInjectionTest.java:1917:45:1917:52 | source(...) : Object | LogInjectionTest.java:1917:36:1917:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1917:45:1917:52 | source(...) | user-provided value | -| LogInjectionTest.java:1918:21:1918:37 | (...)... | LogInjectionTest.java:1918:30:1918:37 | source(...) : Object | LogInjectionTest.java:1918:21:1918:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1918:30:1918:37 | source(...) | user-provided value | -| LogInjectionTest.java:1919:186:1919:207 | new Object[] | LogInjectionTest.java:1919:199:1919:206 | source(...) : Object | LogInjectionTest.java:1919:186:1919:207 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1919:199:1919:206 | source(...) | user-provided value | -| LogInjectionTest.java:1920:171:1920:187 | (...)... | LogInjectionTest.java:1920:180:1920:187 | source(...) : Object | LogInjectionTest.java:1920:171:1920:187 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1920:180:1920:187 | source(...) | user-provided value | -| LogInjectionTest.java:1921:156:1921:172 | (...)... | LogInjectionTest.java:1921:165:1921:172 | source(...) : Object | LogInjectionTest.java:1921:156:1921:172 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1921:165:1921:172 | source(...) | user-provided value | -| LogInjectionTest.java:1922:141:1922:157 | (...)... | LogInjectionTest.java:1922:150:1922:157 | source(...) : Object | LogInjectionTest.java:1922:141:1922:157 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1922:150:1922:157 | source(...) | user-provided value | -| LogInjectionTest.java:1923:126:1923:142 | (...)... | LogInjectionTest.java:1923:135:1923:142 | source(...) : Object | LogInjectionTest.java:1923:126:1923:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1923:135:1923:142 | source(...) | user-provided value | -| LogInjectionTest.java:1924:111:1924:127 | (...)... | LogInjectionTest.java:1924:120:1924:127 | source(...) : Object | LogInjectionTest.java:1924:111:1924:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1924:120:1924:127 | source(...) | user-provided value | -| LogInjectionTest.java:1925:96:1925:112 | (...)... | LogInjectionTest.java:1925:105:1925:112 | source(...) : Object | LogInjectionTest.java:1925:96:1925:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1925:105:1925:112 | source(...) | user-provided value | -| LogInjectionTest.java:1926:81:1926:97 | (...)... | LogInjectionTest.java:1926:90:1926:97 | source(...) : Object | LogInjectionTest.java:1926:81:1926:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1926:90:1926:97 | source(...) | user-provided value | -| LogInjectionTest.java:1927:66:1927:82 | (...)... | LogInjectionTest.java:1927:75:1927:82 | source(...) : Object | LogInjectionTest.java:1927:66:1927:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1927:75:1927:82 | source(...) | user-provided value | -| LogInjectionTest.java:1928:51:1928:67 | (...)... | LogInjectionTest.java:1928:60:1928:67 | source(...) : Object | LogInjectionTest.java:1928:51:1928:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1928:60:1928:67 | source(...) | user-provided value | -| LogInjectionTest.java:1929:36:1929:52 | (...)... | LogInjectionTest.java:1929:45:1929:52 | source(...) : Object | LogInjectionTest.java:1929:36:1929:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1929:45:1929:52 | source(...) | user-provided value | -| LogInjectionTest.java:1930:21:1930:37 | (...)... | LogInjectionTest.java:1930:30:1930:37 | source(...) : Object | LogInjectionTest.java:1930:21:1930:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1930:30:1930:37 | source(...) | user-provided value | -| LogInjectionTest.java:1932:21:1932:37 | (...)... | LogInjectionTest.java:1932:30:1932:37 | source(...) : Object | LogInjectionTest.java:1932:21:1932:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1932:30:1932:37 | source(...) | user-provided value | -| LogInjectionTest.java:1933:21:1933:37 | (...)... | LogInjectionTest.java:1933:30:1933:37 | source(...) : Object | LogInjectionTest.java:1933:21:1933:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1933:30:1933:37 | source(...) | user-provided value | -| LogInjectionTest.java:1934:21:1934:37 | (...)... | LogInjectionTest.java:1934:30:1934:37 | source(...) : Object | LogInjectionTest.java:1934:21:1934:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1934:30:1934:37 | source(...) | user-provided value | -| LogInjectionTest.java:1935:21:1935:37 | (...)... | LogInjectionTest.java:1935:30:1935:37 | source(...) : Object | LogInjectionTest.java:1935:21:1935:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1935:30:1935:37 | source(...) | user-provided value | -| LogInjectionTest.java:1936:21:1936:37 | (...)... | LogInjectionTest.java:1936:30:1936:37 | source(...) : Object | LogInjectionTest.java:1936:21:1936:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1936:30:1936:37 | source(...) | user-provided value | -| LogInjectionTest.java:1937:21:1937:37 | (...)... | LogInjectionTest.java:1937:30:1937:37 | source(...) : Object | LogInjectionTest.java:1937:21:1937:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1937:30:1937:37 | source(...) | user-provided value | -| LogInjectionTest.java:1938:36:1938:43 | source(...) | LogInjectionTest.java:1938:36:1938:43 | source(...) | LogInjectionTest.java:1938:36:1938:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1938:36:1938:43 | source(...) | user-provided value | -| LogInjectionTest.java:1939:21:1939:37 | (...)... | LogInjectionTest.java:1939:30:1939:37 | source(...) : Object | LogInjectionTest.java:1939:21:1939:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1939:30:1939:37 | source(...) | user-provided value | -| LogInjectionTest.java:1940:36:1940:43 | source(...) | LogInjectionTest.java:1940:36:1940:43 | source(...) | LogInjectionTest.java:1940:36:1940:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1940:36:1940:43 | source(...) | user-provided value | -| LogInjectionTest.java:1941:21:1941:37 | (...)... | LogInjectionTest.java:1941:30:1941:37 | source(...) : Object | LogInjectionTest.java:1941:21:1941:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1941:30:1941:37 | source(...) | user-provided value | -| LogInjectionTest.java:1942:36:1942:43 | source(...) | LogInjectionTest.java:1942:36:1942:43 | source(...) | LogInjectionTest.java:1942:36:1942:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1942:36:1942:43 | source(...) | user-provided value | +| LogInjectionTest.java:1908:156:1908:172 | (...)... | LogInjectionTest.java:1908:165:1908:172 | source(...) : Object | LogInjectionTest.java:1908:156:1908:172 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1908:165:1908:172 | source(...) | user-provided value | +| LogInjectionTest.java:1909:141:1909:157 | (...)... | LogInjectionTest.java:1909:150:1909:157 | source(...) : Object | LogInjectionTest.java:1909:141:1909:157 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1909:150:1909:157 | source(...) | user-provided value | +| LogInjectionTest.java:1910:126:1910:142 | (...)... | LogInjectionTest.java:1910:135:1910:142 | source(...) : Object | LogInjectionTest.java:1910:126:1910:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1910:135:1910:142 | source(...) | user-provided value | +| LogInjectionTest.java:1911:111:1911:127 | (...)... | LogInjectionTest.java:1911:120:1911:127 | source(...) : Object | LogInjectionTest.java:1911:111:1911:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1911:120:1911:127 | source(...) | user-provided value | +| LogInjectionTest.java:1912:96:1912:112 | (...)... | LogInjectionTest.java:1912:105:1912:112 | source(...) : Object | LogInjectionTest.java:1912:96:1912:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1912:105:1912:112 | source(...) | user-provided value | +| LogInjectionTest.java:1913:81:1913:97 | (...)... | LogInjectionTest.java:1913:90:1913:97 | source(...) : Object | LogInjectionTest.java:1913:81:1913:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1913:90:1913:97 | source(...) | user-provided value | +| LogInjectionTest.java:1914:66:1914:82 | (...)... | LogInjectionTest.java:1914:75:1914:82 | source(...) : Object | LogInjectionTest.java:1914:66:1914:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1914:75:1914:82 | source(...) | user-provided value | +| LogInjectionTest.java:1915:51:1915:67 | (...)... | LogInjectionTest.java:1915:60:1915:67 | source(...) : Object | LogInjectionTest.java:1915:51:1915:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1915:60:1915:67 | source(...) | user-provided value | +| LogInjectionTest.java:1916:36:1916:52 | (...)... | LogInjectionTest.java:1916:45:1916:52 | source(...) : Object | LogInjectionTest.java:1916:36:1916:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1916:45:1916:52 | source(...) | user-provided value | +| LogInjectionTest.java:1917:21:1917:37 | (...)... | LogInjectionTest.java:1917:30:1917:37 | source(...) : Object | LogInjectionTest.java:1917:21:1917:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1917:30:1917:37 | source(...) | user-provided value | +| LogInjectionTest.java:1918:171:1918:187 | (...)... | LogInjectionTest.java:1918:180:1918:187 | source(...) : Object | LogInjectionTest.java:1918:171:1918:187 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1918:180:1918:187 | source(...) | user-provided value | +| LogInjectionTest.java:1919:156:1919:172 | (...)... | LogInjectionTest.java:1919:165:1919:172 | source(...) : Object | LogInjectionTest.java:1919:156:1919:172 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1919:165:1919:172 | source(...) | user-provided value | +| LogInjectionTest.java:1920:141:1920:157 | (...)... | LogInjectionTest.java:1920:150:1920:157 | source(...) : Object | LogInjectionTest.java:1920:141:1920:157 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1920:150:1920:157 | source(...) | user-provided value | +| LogInjectionTest.java:1921:126:1921:142 | (...)... | LogInjectionTest.java:1921:135:1921:142 | source(...) : Object | LogInjectionTest.java:1921:126:1921:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1921:135:1921:142 | source(...) | user-provided value | +| LogInjectionTest.java:1922:111:1922:127 | (...)... | LogInjectionTest.java:1922:120:1922:127 | source(...) : Object | LogInjectionTest.java:1922:111:1922:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1922:120:1922:127 | source(...) | user-provided value | +| LogInjectionTest.java:1923:96:1923:112 | (...)... | LogInjectionTest.java:1923:105:1923:112 | source(...) : Object | LogInjectionTest.java:1923:96:1923:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1923:105:1923:112 | source(...) | user-provided value | +| LogInjectionTest.java:1924:81:1924:97 | (...)... | LogInjectionTest.java:1924:90:1924:97 | source(...) : Object | LogInjectionTest.java:1924:81:1924:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1924:90:1924:97 | source(...) | user-provided value | +| LogInjectionTest.java:1925:66:1925:82 | (...)... | LogInjectionTest.java:1925:75:1925:82 | source(...) : Object | LogInjectionTest.java:1925:66:1925:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1925:75:1925:82 | source(...) | user-provided value | +| LogInjectionTest.java:1926:51:1926:67 | (...)... | LogInjectionTest.java:1926:60:1926:67 | source(...) : Object | LogInjectionTest.java:1926:51:1926:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1926:60:1926:67 | source(...) | user-provided value | +| LogInjectionTest.java:1927:36:1927:52 | (...)... | LogInjectionTest.java:1927:45:1927:52 | source(...) : Object | LogInjectionTest.java:1927:36:1927:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1927:45:1927:52 | source(...) | user-provided value | +| LogInjectionTest.java:1928:21:1928:37 | (...)... | LogInjectionTest.java:1928:30:1928:37 | source(...) : Object | LogInjectionTest.java:1928:21:1928:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1928:30:1928:37 | source(...) | user-provided value | +| LogInjectionTest.java:1929:186:1929:207 | new Object[] | LogInjectionTest.java:1929:199:1929:206 | source(...) : Object | LogInjectionTest.java:1929:186:1929:207 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1929:199:1929:206 | source(...) | user-provided value | +| LogInjectionTest.java:1930:171:1930:187 | (...)... | LogInjectionTest.java:1930:180:1930:187 | source(...) : Object | LogInjectionTest.java:1930:171:1930:187 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1930:180:1930:187 | source(...) | user-provided value | +| LogInjectionTest.java:1931:156:1931:172 | (...)... | LogInjectionTest.java:1931:165:1931:172 | source(...) : Object | LogInjectionTest.java:1931:156:1931:172 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1931:165:1931:172 | source(...) | user-provided value | +| LogInjectionTest.java:1932:141:1932:157 | (...)... | LogInjectionTest.java:1932:150:1932:157 | source(...) : Object | LogInjectionTest.java:1932:141:1932:157 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1932:150:1932:157 | source(...) | user-provided value | +| LogInjectionTest.java:1933:126:1933:142 | (...)... | LogInjectionTest.java:1933:135:1933:142 | source(...) : Object | LogInjectionTest.java:1933:126:1933:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1933:135:1933:142 | source(...) | user-provided value | +| LogInjectionTest.java:1934:111:1934:127 | (...)... | LogInjectionTest.java:1934:120:1934:127 | source(...) : Object | LogInjectionTest.java:1934:111:1934:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1934:120:1934:127 | source(...) | user-provided value | +| LogInjectionTest.java:1935:96:1935:112 | (...)... | LogInjectionTest.java:1935:105:1935:112 | source(...) : Object | LogInjectionTest.java:1935:96:1935:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1935:105:1935:112 | source(...) | user-provided value | +| LogInjectionTest.java:1936:81:1936:97 | (...)... | LogInjectionTest.java:1936:90:1936:97 | source(...) : Object | LogInjectionTest.java:1936:81:1936:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1936:90:1936:97 | source(...) | user-provided value | +| LogInjectionTest.java:1937:66:1937:82 | (...)... | LogInjectionTest.java:1937:75:1937:82 | source(...) : Object | LogInjectionTest.java:1937:66:1937:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1937:75:1937:82 | source(...) | user-provided value | +| LogInjectionTest.java:1938:51:1938:67 | (...)... | LogInjectionTest.java:1938:60:1938:67 | source(...) : Object | LogInjectionTest.java:1938:51:1938:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1938:60:1938:67 | source(...) | user-provided value | +| LogInjectionTest.java:1939:36:1939:52 | (...)... | LogInjectionTest.java:1939:45:1939:52 | source(...) : Object | LogInjectionTest.java:1939:36:1939:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1939:45:1939:52 | source(...) | user-provided value | +| LogInjectionTest.java:1940:21:1940:37 | (...)... | LogInjectionTest.java:1940:30:1940:37 | source(...) : Object | LogInjectionTest.java:1940:21:1940:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1940:30:1940:37 | source(...) | user-provided value | +| LogInjectionTest.java:1942:21:1942:37 | (...)... | LogInjectionTest.java:1942:30:1942:37 | source(...) : Object | LogInjectionTest.java:1942:21:1942:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1942:30:1942:37 | source(...) | user-provided value | | LogInjectionTest.java:1943:21:1943:37 | (...)... | LogInjectionTest.java:1943:30:1943:37 | source(...) : Object | LogInjectionTest.java:1943:21:1943:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1943:30:1943:37 | source(...) | user-provided value | -| LogInjectionTest.java:1944:36:1944:43 | source(...) | LogInjectionTest.java:1944:36:1944:43 | source(...) | LogInjectionTest.java:1944:36:1944:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1944:36:1944:43 | source(...) | user-provided value | +| LogInjectionTest.java:1944:21:1944:37 | (...)... | LogInjectionTest.java:1944:30:1944:37 | source(...) : Object | LogInjectionTest.java:1944:21:1944:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1944:30:1944:37 | source(...) | user-provided value | | LogInjectionTest.java:1945:21:1945:37 | (...)... | LogInjectionTest.java:1945:30:1945:37 | source(...) : Object | LogInjectionTest.java:1945:21:1945:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1945:30:1945:37 | source(...) | user-provided value | -| LogInjectionTest.java:1946:36:1946:43 | source(...) | LogInjectionTest.java:1946:36:1946:43 | source(...) | LogInjectionTest.java:1946:36:1946:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1946:36:1946:43 | source(...) | user-provided value | +| LogInjectionTest.java:1946:21:1946:37 | (...)... | LogInjectionTest.java:1946:30:1946:37 | source(...) : Object | LogInjectionTest.java:1946:21:1946:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1946:30:1946:37 | source(...) | user-provided value | | LogInjectionTest.java:1947:21:1947:37 | (...)... | LogInjectionTest.java:1947:30:1947:37 | source(...) : Object | LogInjectionTest.java:1947:21:1947:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1947:30:1947:37 | source(...) | user-provided value | | LogInjectionTest.java:1948:36:1948:43 | source(...) | LogInjectionTest.java:1948:36:1948:43 | source(...) | LogInjectionTest.java:1948:36:1948:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1948:36:1948:43 | source(...) | user-provided value | | LogInjectionTest.java:1949:21:1949:37 | (...)... | LogInjectionTest.java:1949:30:1949:37 | source(...) : Object | LogInjectionTest.java:1949:21:1949:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1949:30:1949:37 | source(...) | user-provided value | @@ -1724,31 +1714,31 @@ | LogInjectionTest.java:1951:21:1951:37 | (...)... | LogInjectionTest.java:1951:30:1951:37 | source(...) : Object | LogInjectionTest.java:1951:21:1951:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1951:30:1951:37 | source(...) | user-provided value | | LogInjectionTest.java:1952:36:1952:43 | source(...) | LogInjectionTest.java:1952:36:1952:43 | source(...) | LogInjectionTest.java:1952:36:1952:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1952:36:1952:43 | source(...) | user-provided value | | LogInjectionTest.java:1953:21:1953:37 | (...)... | LogInjectionTest.java:1953:30:1953:37 | source(...) : Object | LogInjectionTest.java:1953:21:1953:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1953:30:1953:37 | source(...) | user-provided value | -| LogInjectionTest.java:1954:43:1954:50 | source(...) | LogInjectionTest.java:1954:43:1954:50 | source(...) | LogInjectionTest.java:1954:43:1954:50 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1954:43:1954:50 | source(...) | user-provided value | +| LogInjectionTest.java:1954:36:1954:43 | source(...) | LogInjectionTest.java:1954:36:1954:43 | source(...) | LogInjectionTest.java:1954:36:1954:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1954:36:1954:43 | source(...) | user-provided value | | LogInjectionTest.java:1955:21:1955:37 | (...)... | LogInjectionTest.java:1955:30:1955:37 | source(...) : Object | LogInjectionTest.java:1955:21:1955:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1955:30:1955:37 | source(...) | user-provided value | -| LogInjectionTest.java:1956:41:1956:48 | source(...) | LogInjectionTest.java:1956:41:1956:48 | source(...) | LogInjectionTest.java:1956:41:1956:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1956:41:1956:48 | source(...) | user-provided value | +| LogInjectionTest.java:1956:36:1956:43 | source(...) | LogInjectionTest.java:1956:36:1956:43 | source(...) | LogInjectionTest.java:1956:36:1956:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1956:36:1956:43 | source(...) | user-provided value | | LogInjectionTest.java:1957:21:1957:37 | (...)... | LogInjectionTest.java:1957:30:1957:37 | source(...) : Object | LogInjectionTest.java:1957:21:1957:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1957:30:1957:37 | source(...) | user-provided value | -| LogInjectionTest.java:1958:46:1958:53 | source(...) | LogInjectionTest.java:1958:46:1958:53 | source(...) | LogInjectionTest.java:1958:46:1958:53 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1958:46:1958:53 | source(...) | user-provided value | +| LogInjectionTest.java:1958:36:1958:43 | source(...) | LogInjectionTest.java:1958:36:1958:43 | source(...) | LogInjectionTest.java:1958:36:1958:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1958:36:1958:43 | source(...) | user-provided value | | LogInjectionTest.java:1959:21:1959:37 | (...)... | LogInjectionTest.java:1959:30:1959:37 | source(...) : Object | LogInjectionTest.java:1959:21:1959:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1959:30:1959:37 | source(...) | user-provided value | -| LogInjectionTest.java:1960:47:1960:54 | source(...) | LogInjectionTest.java:1960:47:1960:54 | source(...) | LogInjectionTest.java:1960:47:1960:54 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1960:47:1960:54 | source(...) | user-provided value | +| LogInjectionTest.java:1960:36:1960:43 | source(...) | LogInjectionTest.java:1960:36:1960:43 | source(...) | LogInjectionTest.java:1960:36:1960:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1960:36:1960:43 | source(...) | user-provided value | | LogInjectionTest.java:1961:21:1961:37 | (...)... | LogInjectionTest.java:1961:30:1961:37 | source(...) : Object | LogInjectionTest.java:1961:21:1961:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1961:30:1961:37 | source(...) | user-provided value | -| LogInjectionTest.java:1962:39:1962:46 | source(...) | LogInjectionTest.java:1962:39:1962:46 | source(...) | LogInjectionTest.java:1962:39:1962:46 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1962:39:1962:46 | source(...) | user-provided value | +| LogInjectionTest.java:1962:36:1962:43 | source(...) | LogInjectionTest.java:1962:36:1962:43 | source(...) | LogInjectionTest.java:1962:36:1962:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1962:36:1962:43 | source(...) | user-provided value | | LogInjectionTest.java:1963:21:1963:37 | (...)... | LogInjectionTest.java:1963:30:1963:37 | source(...) : Object | LogInjectionTest.java:1963:21:1963:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1963:30:1963:37 | source(...) | user-provided value | -| LogInjectionTest.java:1964:40:1964:47 | source(...) | LogInjectionTest.java:1964:40:1964:47 | source(...) | LogInjectionTest.java:1964:40:1964:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1964:40:1964:47 | source(...) | user-provided value | +| LogInjectionTest.java:1964:43:1964:50 | source(...) | LogInjectionTest.java:1964:43:1964:50 | source(...) | LogInjectionTest.java:1964:43:1964:50 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1964:43:1964:50 | source(...) | user-provided value | | LogInjectionTest.java:1965:21:1965:37 | (...)... | LogInjectionTest.java:1965:30:1965:37 | source(...) : Object | LogInjectionTest.java:1965:21:1965:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1965:30:1965:37 | source(...) | user-provided value | -| LogInjectionTest.java:1966:47:1966:54 | source(...) | LogInjectionTest.java:1966:47:1966:54 | source(...) | LogInjectionTest.java:1966:47:1966:54 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1966:47:1966:54 | source(...) | user-provided value | +| LogInjectionTest.java:1966:41:1966:48 | source(...) | LogInjectionTest.java:1966:41:1966:48 | source(...) | LogInjectionTest.java:1966:41:1966:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1966:41:1966:48 | source(...) | user-provided value | | LogInjectionTest.java:1967:21:1967:37 | (...)... | LogInjectionTest.java:1967:30:1967:37 | source(...) : Object | LogInjectionTest.java:1967:21:1967:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1967:30:1967:37 | source(...) | user-provided value | -| LogInjectionTest.java:1968:48:1968:55 | source(...) | LogInjectionTest.java:1968:48:1968:55 | source(...) | LogInjectionTest.java:1968:48:1968:55 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1968:48:1968:55 | source(...) | user-provided value | +| LogInjectionTest.java:1968:46:1968:53 | source(...) | LogInjectionTest.java:1968:46:1968:53 | source(...) | LogInjectionTest.java:1968:46:1968:53 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1968:46:1968:53 | source(...) | user-provided value | | LogInjectionTest.java:1969:21:1969:37 | (...)... | LogInjectionTest.java:1969:30:1969:37 | source(...) : Object | LogInjectionTest.java:1969:21:1969:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1969:30:1969:37 | source(...) | user-provided value | -| LogInjectionTest.java:1970:21:1970:37 | (...)... | LogInjectionTest.java:1970:30:1970:37 | source(...) : Object | LogInjectionTest.java:1970:21:1970:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1970:30:1970:37 | source(...) | user-provided value | +| LogInjectionTest.java:1970:47:1970:54 | source(...) | LogInjectionTest.java:1970:47:1970:54 | source(...) | LogInjectionTest.java:1970:47:1970:54 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1970:47:1970:54 | source(...) | user-provided value | | LogInjectionTest.java:1971:21:1971:37 | (...)... | LogInjectionTest.java:1971:30:1971:37 | source(...) : Object | LogInjectionTest.java:1971:21:1971:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1971:30:1971:37 | source(...) | user-provided value | -| LogInjectionTest.java:1972:21:1972:37 | (...)... | LogInjectionTest.java:1972:30:1972:37 | source(...) : Object | LogInjectionTest.java:1972:21:1972:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1972:30:1972:37 | source(...) | user-provided value | +| LogInjectionTest.java:1972:39:1972:46 | source(...) | LogInjectionTest.java:1972:39:1972:46 | source(...) | LogInjectionTest.java:1972:39:1972:46 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1972:39:1972:46 | source(...) | user-provided value | | LogInjectionTest.java:1973:21:1973:37 | (...)... | LogInjectionTest.java:1973:30:1973:37 | source(...) : Object | LogInjectionTest.java:1973:21:1973:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1973:30:1973:37 | source(...) | user-provided value | -| LogInjectionTest.java:1974:21:1974:37 | (...)... | LogInjectionTest.java:1974:30:1974:37 | source(...) : Object | LogInjectionTest.java:1974:21:1974:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1974:30:1974:37 | source(...) | user-provided value | +| LogInjectionTest.java:1974:40:1974:47 | source(...) | LogInjectionTest.java:1974:40:1974:47 | source(...) | LogInjectionTest.java:1974:40:1974:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1974:40:1974:47 | source(...) | user-provided value | | LogInjectionTest.java:1975:21:1975:37 | (...)... | LogInjectionTest.java:1975:30:1975:37 | source(...) : Object | LogInjectionTest.java:1975:21:1975:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1975:30:1975:37 | source(...) | user-provided value | -| LogInjectionTest.java:1976:21:1976:37 | (...)... | LogInjectionTest.java:1976:30:1976:37 | source(...) : Object | LogInjectionTest.java:1976:21:1976:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1976:30:1976:37 | source(...) | user-provided value | +| LogInjectionTest.java:1976:47:1976:54 | source(...) | LogInjectionTest.java:1976:47:1976:54 | source(...) | LogInjectionTest.java:1976:47:1976:54 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1976:47:1976:54 | source(...) | user-provided value | | LogInjectionTest.java:1977:21:1977:37 | (...)... | LogInjectionTest.java:1977:30:1977:37 | source(...) : Object | LogInjectionTest.java:1977:21:1977:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1977:30:1977:37 | source(...) | user-provided value | -| LogInjectionTest.java:1978:21:1978:37 | (...)... | LogInjectionTest.java:1978:30:1978:37 | source(...) : Object | LogInjectionTest.java:1978:21:1978:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1978:30:1978:37 | source(...) | user-provided value | +| LogInjectionTest.java:1978:48:1978:55 | source(...) | LogInjectionTest.java:1978:48:1978:55 | source(...) | LogInjectionTest.java:1978:48:1978:55 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1978:48:1978:55 | source(...) | user-provided value | | LogInjectionTest.java:1979:21:1979:37 | (...)... | LogInjectionTest.java:1979:30:1979:37 | source(...) : Object | LogInjectionTest.java:1979:21:1979:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1979:30:1979:37 | source(...) | user-provided value | | LogInjectionTest.java:1980:21:1980:37 | (...)... | LogInjectionTest.java:1980:30:1980:37 | source(...) : Object | LogInjectionTest.java:1980:21:1980:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1980:30:1980:37 | source(...) | user-provided value | | LogInjectionTest.java:1981:21:1981:37 | (...)... | LogInjectionTest.java:1981:30:1981:37 | source(...) : Object | LogInjectionTest.java:1981:21:1981:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1981:30:1981:37 | source(...) | user-provided value | @@ -1803,1932 +1793,1937 @@ | LogInjectionTest.java:2030:21:2030:37 | (...)... | LogInjectionTest.java:2030:30:2030:37 | source(...) : Object | LogInjectionTest.java:2030:21:2030:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2030:30:2030:37 | source(...) | user-provided value | | LogInjectionTest.java:2031:21:2031:37 | (...)... | LogInjectionTest.java:2031:30:2031:37 | source(...) : Object | LogInjectionTest.java:2031:21:2031:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2031:30:2031:37 | source(...) | user-provided value | | LogInjectionTest.java:2032:21:2032:37 | (...)... | LogInjectionTest.java:2032:30:2032:37 | source(...) : Object | LogInjectionTest.java:2032:21:2032:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2032:30:2032:37 | source(...) | user-provided value | -| LogInjectionTest.java:2037:27:2037:43 | (...)... | LogInjectionTest.java:2037:36:2037:43 | source(...) : Object | LogInjectionTest.java:2037:27:2037:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2037:36:2037:43 | source(...) | user-provided value | -| LogInjectionTest.java:2038:27:2038:64 | (...)... | LogInjectionTest.java:2038:57:2038:64 | source(...) : Object | LogInjectionTest.java:2038:27:2038:64 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2038:57:2038:64 | source(...) | user-provided value | -| LogInjectionTest.java:2039:25:2039:41 | (...)... | LogInjectionTest.java:2039:34:2039:41 | source(...) : Object | LogInjectionTest.java:2039:25:2039:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2039:34:2039:41 | source(...) | user-provided value | -| LogInjectionTest.java:2040:25:2040:62 | (...)... | LogInjectionTest.java:2040:55:2040:62 | source(...) : Object | LogInjectionTest.java:2040:25:2040:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2040:55:2040:62 | source(...) | user-provided value | -| LogInjectionTest.java:2041:26:2041:42 | (...)... | LogInjectionTest.java:2041:35:2041:42 | source(...) : Object | LogInjectionTest.java:2041:26:2041:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2041:35:2041:42 | source(...) | user-provided value | -| LogInjectionTest.java:2042:26:2042:63 | (...)... | LogInjectionTest.java:2042:56:2042:63 | source(...) : Object | LogInjectionTest.java:2042:26:2042:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2042:56:2042:63 | source(...) | user-provided value | -| LogInjectionTest.java:2043:27:2043:43 | (...)... | LogInjectionTest.java:2043:36:2043:43 | source(...) : Object | LogInjectionTest.java:2043:27:2043:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2043:36:2043:43 | source(...) | user-provided value | -| LogInjectionTest.java:2044:27:2044:64 | (...)... | LogInjectionTest.java:2044:57:2044:64 | source(...) : Object | LogInjectionTest.java:2044:27:2044:64 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2044:57:2044:64 | source(...) | user-provided value | -| LogInjectionTest.java:2045:25:2045:41 | (...)... | LogInjectionTest.java:2045:34:2045:41 | source(...) : Object | LogInjectionTest.java:2045:25:2045:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2045:34:2045:41 | source(...) | user-provided value | -| LogInjectionTest.java:2046:25:2046:62 | (...)... | LogInjectionTest.java:2046:55:2046:62 | source(...) : Object | LogInjectionTest.java:2046:25:2046:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2046:55:2046:62 | source(...) | user-provided value | +| LogInjectionTest.java:2033:21:2033:37 | (...)... | LogInjectionTest.java:2033:30:2033:37 | source(...) : Object | LogInjectionTest.java:2033:21:2033:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2033:30:2033:37 | source(...) | user-provided value | +| LogInjectionTest.java:2034:21:2034:37 | (...)... | LogInjectionTest.java:2034:30:2034:37 | source(...) : Object | LogInjectionTest.java:2034:21:2034:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2034:30:2034:37 | source(...) | user-provided value | +| LogInjectionTest.java:2035:21:2035:37 | (...)... | LogInjectionTest.java:2035:30:2035:37 | source(...) : Object | LogInjectionTest.java:2035:21:2035:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2035:30:2035:37 | source(...) | user-provided value | +| LogInjectionTest.java:2036:21:2036:37 | (...)... | LogInjectionTest.java:2036:30:2036:37 | source(...) : Object | LogInjectionTest.java:2036:21:2036:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2036:30:2036:37 | source(...) | user-provided value | +| LogInjectionTest.java:2037:21:2037:37 | (...)... | LogInjectionTest.java:2037:30:2037:37 | source(...) : Object | LogInjectionTest.java:2037:21:2037:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2037:30:2037:37 | source(...) | user-provided value | +| LogInjectionTest.java:2038:21:2038:37 | (...)... | LogInjectionTest.java:2038:30:2038:37 | source(...) : Object | LogInjectionTest.java:2038:21:2038:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2038:30:2038:37 | source(...) | user-provided value | +| LogInjectionTest.java:2039:21:2039:37 | (...)... | LogInjectionTest.java:2039:30:2039:37 | source(...) : Object | LogInjectionTest.java:2039:21:2039:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2039:30:2039:37 | source(...) | user-provided value | +| LogInjectionTest.java:2040:21:2040:37 | (...)... | LogInjectionTest.java:2040:30:2040:37 | source(...) : Object | LogInjectionTest.java:2040:21:2040:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2040:30:2040:37 | source(...) | user-provided value | +| LogInjectionTest.java:2041:21:2041:37 | (...)... | LogInjectionTest.java:2041:30:2041:37 | source(...) : Object | LogInjectionTest.java:2041:21:2041:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2041:30:2041:37 | source(...) | user-provided value | +| LogInjectionTest.java:2042:21:2042:37 | (...)... | LogInjectionTest.java:2042:30:2042:37 | source(...) : Object | LogInjectionTest.java:2042:21:2042:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2042:30:2042:37 | source(...) | user-provided value | | LogInjectionTest.java:2047:27:2047:43 | (...)... | LogInjectionTest.java:2047:36:2047:43 | source(...) : Object | LogInjectionTest.java:2047:27:2047:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2047:36:2047:43 | source(...) | user-provided value | | LogInjectionTest.java:2048:27:2048:64 | (...)... | LogInjectionTest.java:2048:57:2048:64 | source(...) : Object | LogInjectionTest.java:2048:27:2048:64 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2048:57:2048:64 | source(...) | user-provided value | -| LogInjectionTest.java:2049:28:2049:44 | (...)... | LogInjectionTest.java:2049:37:2049:44 | source(...) : Object | LogInjectionTest.java:2049:28:2049:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2049:37:2049:44 | source(...) | user-provided value | -| LogInjectionTest.java:2050:28:2050:65 | (...)... | LogInjectionTest.java:2050:58:2050:65 | source(...) : Object | LogInjectionTest.java:2050:28:2050:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2050:58:2050:65 | source(...) | user-provided value | -| LogInjectionTest.java:2051:29:2051:45 | (...)... | LogInjectionTest.java:2051:38:2051:45 | source(...) : Object | LogInjectionTest.java:2051:29:2051:45 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2051:38:2051:45 | source(...) | user-provided value | -| LogInjectionTest.java:2052:44:2052:60 | (...)... | LogInjectionTest.java:2052:53:2052:60 | source(...) : Object | LogInjectionTest.java:2052:44:2052:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2052:53:2052:60 | source(...) | user-provided value | -| LogInjectionTest.java:2053:29:2053:45 | (...)... | LogInjectionTest.java:2053:38:2053:45 | source(...) : Object | LogInjectionTest.java:2053:29:2053:45 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2053:38:2053:45 | source(...) | user-provided value | -| LogInjectionTest.java:2054:44:2054:60 | (...)... | LogInjectionTest.java:2054:53:2054:60 | source(...) : Object | LogInjectionTest.java:2054:44:2054:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2054:53:2054:60 | source(...) | user-provided value | -| LogInjectionTest.java:2055:59:2055:75 | (...)... | LogInjectionTest.java:2055:68:2055:75 | source(...) : Object | LogInjectionTest.java:2055:59:2055:75 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2055:68:2055:75 | source(...) | user-provided value | -| LogInjectionTest.java:2056:29:2056:45 | (...)... | LogInjectionTest.java:2056:38:2056:45 | source(...) : Object | LogInjectionTest.java:2056:29:2056:45 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2056:38:2056:45 | source(...) | user-provided value | -| LogInjectionTest.java:2057:44:2057:60 | (...)... | LogInjectionTest.java:2057:53:2057:60 | source(...) : Object | LogInjectionTest.java:2057:44:2057:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2057:53:2057:60 | source(...) | user-provided value | -| LogInjectionTest.java:2058:59:2058:81 | new Object[] | LogInjectionTest.java:2058:73:2058:80 | source(...) : Object | LogInjectionTest.java:2058:59:2058:81 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2058:73:2058:80 | source(...) | user-provided value | +| LogInjectionTest.java:2049:25:2049:41 | (...)... | LogInjectionTest.java:2049:34:2049:41 | source(...) : Object | LogInjectionTest.java:2049:25:2049:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2049:34:2049:41 | source(...) | user-provided value | +| LogInjectionTest.java:2050:25:2050:62 | (...)... | LogInjectionTest.java:2050:55:2050:62 | source(...) : Object | LogInjectionTest.java:2050:25:2050:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2050:55:2050:62 | source(...) | user-provided value | +| LogInjectionTest.java:2051:26:2051:42 | (...)... | LogInjectionTest.java:2051:35:2051:42 | source(...) : Object | LogInjectionTest.java:2051:26:2051:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2051:35:2051:42 | source(...) | user-provided value | +| LogInjectionTest.java:2052:26:2052:63 | (...)... | LogInjectionTest.java:2052:56:2052:63 | source(...) : Object | LogInjectionTest.java:2052:26:2052:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2052:56:2052:63 | source(...) | user-provided value | +| LogInjectionTest.java:2053:27:2053:43 | (...)... | LogInjectionTest.java:2053:36:2053:43 | source(...) : Object | LogInjectionTest.java:2053:27:2053:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2053:36:2053:43 | source(...) | user-provided value | +| LogInjectionTest.java:2054:27:2054:64 | (...)... | LogInjectionTest.java:2054:57:2054:64 | source(...) : Object | LogInjectionTest.java:2054:27:2054:64 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2054:57:2054:64 | source(...) | user-provided value | +| LogInjectionTest.java:2055:25:2055:41 | (...)... | LogInjectionTest.java:2055:34:2055:41 | source(...) : Object | LogInjectionTest.java:2055:25:2055:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2055:34:2055:41 | source(...) | user-provided value | +| LogInjectionTest.java:2056:25:2056:62 | (...)... | LogInjectionTest.java:2056:55:2056:62 | source(...) : Object | LogInjectionTest.java:2056:25:2056:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2056:55:2056:62 | source(...) | user-provided value | +| LogInjectionTest.java:2057:27:2057:43 | (...)... | LogInjectionTest.java:2057:36:2057:43 | source(...) : Object | LogInjectionTest.java:2057:27:2057:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2057:36:2057:43 | source(...) | user-provided value | +| LogInjectionTest.java:2058:27:2058:64 | (...)... | LogInjectionTest.java:2058:57:2058:64 | source(...) : Object | LogInjectionTest.java:2058:27:2058:64 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2058:57:2058:64 | source(...) | user-provided value | | LogInjectionTest.java:2059:28:2059:44 | (...)... | LogInjectionTest.java:2059:37:2059:44 | source(...) : Object | LogInjectionTest.java:2059:28:2059:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2059:37:2059:44 | source(...) | user-provided value | -| LogInjectionTest.java:2060:43:2060:59 | (...)... | LogInjectionTest.java:2060:52:2060:59 | source(...) : Object | LogInjectionTest.java:2060:43:2060:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2060:52:2060:59 | source(...) | user-provided value | -| LogInjectionTest.java:2061:28:2061:44 | (...)... | LogInjectionTest.java:2061:37:2061:44 | source(...) : Object | LogInjectionTest.java:2061:28:2061:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2061:37:2061:44 | source(...) | user-provided value | -| LogInjectionTest.java:2062:43:2062:59 | (...)... | LogInjectionTest.java:2062:52:2062:59 | source(...) : Object | LogInjectionTest.java:2062:43:2062:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2062:52:2062:59 | source(...) | user-provided value | -| LogInjectionTest.java:2063:58:2063:74 | (...)... | LogInjectionTest.java:2063:67:2063:74 | source(...) : Object | LogInjectionTest.java:2063:58:2063:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2063:67:2063:74 | source(...) | user-provided value | -| LogInjectionTest.java:2064:56:2064:72 | (...)... | LogInjectionTest.java:2064:65:2064:72 | source(...) : Object | LogInjectionTest.java:2064:56:2064:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2064:65:2064:72 | source(...) | user-provided value | -| LogInjectionTest.java:2065:56:2065:72 | (...)... | LogInjectionTest.java:2065:65:2065:72 | source(...) : Object | LogInjectionTest.java:2065:56:2065:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2065:65:2065:72 | source(...) | user-provided value | -| LogInjectionTest.java:2066:71:2066:78 | source(...) | LogInjectionTest.java:2066:71:2066:78 | source(...) | LogInjectionTest.java:2066:71:2066:78 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:2066:71:2066:78 | source(...) | user-provided value | -| LogInjectionTest.java:2067:56:2067:72 | (...)... | LogInjectionTest.java:2067:65:2067:72 | source(...) : Object | LogInjectionTest.java:2067:56:2067:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2067:65:2067:72 | source(...) | user-provided value | -| LogInjectionTest.java:2068:71:2068:92 | new Object[] | LogInjectionTest.java:2068:84:2068:91 | source(...) : Object | LogInjectionTest.java:2068:71:2068:92 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2068:84:2068:91 | source(...) | user-provided value | -| LogInjectionTest.java:2069:56:2069:72 | (...)... | LogInjectionTest.java:2069:65:2069:72 | source(...) : Object | LogInjectionTest.java:2069:56:2069:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2069:65:2069:72 | source(...) | user-provided value | -| LogInjectionTest.java:2070:56:2070:93 | (...)... | LogInjectionTest.java:2070:86:2070:93 | source(...) : Object | LogInjectionTest.java:2070:56:2070:93 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2070:86:2070:93 | source(...) | user-provided value | -| LogInjectionTest.java:2071:74:2071:111 | (...)... | LogInjectionTest.java:2071:104:2071:111 | source(...) : Object | LogInjectionTest.java:2071:74:2071:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2071:104:2071:111 | source(...) | user-provided value | -| LogInjectionTest.java:2072:24:2072:43 | (...)... | LogInjectionTest.java:2072:36:2072:43 | source(...) : Object | LogInjectionTest.java:2072:24:2072:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2072:36:2072:43 | source(...) | user-provided value | -| LogInjectionTest.java:2073:57:2073:73 | (...)... | LogInjectionTest.java:2073:66:2073:73 | source(...) : Object | LogInjectionTest.java:2073:57:2073:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2073:66:2073:73 | source(...) | user-provided value | -| LogInjectionTest.java:2074:72:2074:88 | (...)... | LogInjectionTest.java:2074:81:2074:88 | source(...) : Object | LogInjectionTest.java:2074:72:2074:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2074:81:2074:88 | source(...) | user-provided value | -| LogInjectionTest.java:2075:87:2075:103 | (...)... | LogInjectionTest.java:2075:96:2075:103 | source(...) : Object | LogInjectionTest.java:2075:87:2075:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2075:96:2075:103 | source(...) | user-provided value | -| LogInjectionTest.java:2076:57:2076:73 | (...)... | LogInjectionTest.java:2076:66:2076:73 | source(...) : Object | LogInjectionTest.java:2076:57:2076:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2076:66:2076:73 | source(...) | user-provided value | -| LogInjectionTest.java:2077:72:2077:88 | (...)... | LogInjectionTest.java:2077:81:2077:88 | source(...) : Object | LogInjectionTest.java:2077:72:2077:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2077:81:2077:88 | source(...) | user-provided value | -| LogInjectionTest.java:2078:87:2078:103 | (...)... | LogInjectionTest.java:2078:96:2078:103 | source(...) : Object | LogInjectionTest.java:2078:87:2078:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2078:96:2078:103 | source(...) | user-provided value | -| LogInjectionTest.java:2079:102:2079:109 | source(...) | LogInjectionTest.java:2079:102:2079:109 | source(...) | LogInjectionTest.java:2079:102:2079:109 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:2079:102:2079:109 | source(...) | user-provided value | -| LogInjectionTest.java:2080:57:2080:73 | (...)... | LogInjectionTest.java:2080:66:2080:73 | source(...) : Object | LogInjectionTest.java:2080:57:2080:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2080:66:2080:73 | source(...) | user-provided value | -| LogInjectionTest.java:2081:72:2081:88 | (...)... | LogInjectionTest.java:2081:81:2081:88 | source(...) : Object | LogInjectionTest.java:2081:72:2081:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2081:81:2081:88 | source(...) | user-provided value | -| LogInjectionTest.java:2082:87:2082:103 | (...)... | LogInjectionTest.java:2082:96:2082:103 | source(...) : Object | LogInjectionTest.java:2082:87:2082:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2082:96:2082:103 | source(...) | user-provided value | -| LogInjectionTest.java:2083:102:2083:124 | new Object[] | LogInjectionTest.java:2083:116:2083:123 | source(...) : Object | LogInjectionTest.java:2083:102:2083:124 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2083:116:2083:123 | source(...) | user-provided value | -| LogInjectionTest.java:2084:57:2084:73 | (...)... | LogInjectionTest.java:2084:66:2084:73 | source(...) : Object | LogInjectionTest.java:2084:57:2084:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2084:66:2084:73 | source(...) | user-provided value | -| LogInjectionTest.java:2085:72:2085:88 | (...)... | LogInjectionTest.java:2085:81:2085:88 | source(...) : Object | LogInjectionTest.java:2085:72:2085:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2085:81:2085:88 | source(...) | user-provided value | -| LogInjectionTest.java:2086:87:2086:103 | (...)... | LogInjectionTest.java:2086:96:2086:103 | source(...) : Object | LogInjectionTest.java:2086:87:2086:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2086:96:2086:103 | source(...) | user-provided value | -| LogInjectionTest.java:2087:57:2087:73 | (...)... | LogInjectionTest.java:2087:66:2087:73 | source(...) : Object | LogInjectionTest.java:2087:57:2087:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2087:66:2087:73 | source(...) | user-provided value | -| LogInjectionTest.java:2088:72:2088:88 | (...)... | LogInjectionTest.java:2088:81:2088:88 | source(...) : Object | LogInjectionTest.java:2088:72:2088:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2088:81:2088:88 | source(...) | user-provided value | -| LogInjectionTest.java:2089:87:2089:124 | (...)... | LogInjectionTest.java:2089:117:2089:124 | source(...) : Object | LogInjectionTest.java:2089:87:2089:124 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2089:117:2089:124 | source(...) | user-provided value | +| LogInjectionTest.java:2060:28:2060:65 | (...)... | LogInjectionTest.java:2060:58:2060:65 | source(...) : Object | LogInjectionTest.java:2060:28:2060:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2060:58:2060:65 | source(...) | user-provided value | +| LogInjectionTest.java:2061:29:2061:45 | (...)... | LogInjectionTest.java:2061:38:2061:45 | source(...) : Object | LogInjectionTest.java:2061:29:2061:45 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2061:38:2061:45 | source(...) | user-provided value | +| LogInjectionTest.java:2062:44:2062:60 | (...)... | LogInjectionTest.java:2062:53:2062:60 | source(...) : Object | LogInjectionTest.java:2062:44:2062:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2062:53:2062:60 | source(...) | user-provided value | +| LogInjectionTest.java:2063:29:2063:45 | (...)... | LogInjectionTest.java:2063:38:2063:45 | source(...) : Object | LogInjectionTest.java:2063:29:2063:45 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2063:38:2063:45 | source(...) | user-provided value | +| LogInjectionTest.java:2064:44:2064:60 | (...)... | LogInjectionTest.java:2064:53:2064:60 | source(...) : Object | LogInjectionTest.java:2064:44:2064:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2064:53:2064:60 | source(...) | user-provided value | +| LogInjectionTest.java:2065:59:2065:75 | (...)... | LogInjectionTest.java:2065:68:2065:75 | source(...) : Object | LogInjectionTest.java:2065:59:2065:75 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2065:68:2065:75 | source(...) | user-provided value | +| LogInjectionTest.java:2066:29:2066:45 | (...)... | LogInjectionTest.java:2066:38:2066:45 | source(...) : Object | LogInjectionTest.java:2066:29:2066:45 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2066:38:2066:45 | source(...) | user-provided value | +| LogInjectionTest.java:2067:44:2067:60 | (...)... | LogInjectionTest.java:2067:53:2067:60 | source(...) : Object | LogInjectionTest.java:2067:44:2067:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2067:53:2067:60 | source(...) | user-provided value | +| LogInjectionTest.java:2068:59:2068:81 | new Object[] | LogInjectionTest.java:2068:73:2068:80 | source(...) : Object | LogInjectionTest.java:2068:59:2068:81 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2068:73:2068:80 | source(...) | user-provided value | +| LogInjectionTest.java:2069:28:2069:44 | (...)... | LogInjectionTest.java:2069:37:2069:44 | source(...) : Object | LogInjectionTest.java:2069:28:2069:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2069:37:2069:44 | source(...) | user-provided value | +| LogInjectionTest.java:2070:43:2070:59 | (...)... | LogInjectionTest.java:2070:52:2070:59 | source(...) : Object | LogInjectionTest.java:2070:43:2070:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2070:52:2070:59 | source(...) | user-provided value | +| LogInjectionTest.java:2071:28:2071:44 | (...)... | LogInjectionTest.java:2071:37:2071:44 | source(...) : Object | LogInjectionTest.java:2071:28:2071:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2071:37:2071:44 | source(...) | user-provided value | +| LogInjectionTest.java:2072:43:2072:59 | (...)... | LogInjectionTest.java:2072:52:2072:59 | source(...) : Object | LogInjectionTest.java:2072:43:2072:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2072:52:2072:59 | source(...) | user-provided value | +| LogInjectionTest.java:2073:58:2073:74 | (...)... | LogInjectionTest.java:2073:67:2073:74 | source(...) : Object | LogInjectionTest.java:2073:58:2073:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2073:67:2073:74 | source(...) | user-provided value | +| LogInjectionTest.java:2074:56:2074:72 | (...)... | LogInjectionTest.java:2074:65:2074:72 | source(...) : Object | LogInjectionTest.java:2074:56:2074:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2074:65:2074:72 | source(...) | user-provided value | +| LogInjectionTest.java:2075:56:2075:72 | (...)... | LogInjectionTest.java:2075:65:2075:72 | source(...) : Object | LogInjectionTest.java:2075:56:2075:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2075:65:2075:72 | source(...) | user-provided value | +| LogInjectionTest.java:2076:71:2076:78 | source(...) | LogInjectionTest.java:2076:71:2076:78 | source(...) | LogInjectionTest.java:2076:71:2076:78 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:2076:71:2076:78 | source(...) | user-provided value | +| LogInjectionTest.java:2077:56:2077:72 | (...)... | LogInjectionTest.java:2077:65:2077:72 | source(...) : Object | LogInjectionTest.java:2077:56:2077:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2077:65:2077:72 | source(...) | user-provided value | +| LogInjectionTest.java:2078:71:2078:92 | new Object[] | LogInjectionTest.java:2078:84:2078:91 | source(...) : Object | LogInjectionTest.java:2078:71:2078:92 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2078:84:2078:91 | source(...) | user-provided value | +| LogInjectionTest.java:2079:56:2079:72 | (...)... | LogInjectionTest.java:2079:65:2079:72 | source(...) : Object | LogInjectionTest.java:2079:56:2079:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2079:65:2079:72 | source(...) | user-provided value | +| LogInjectionTest.java:2080:56:2080:93 | (...)... | LogInjectionTest.java:2080:86:2080:93 | source(...) : Object | LogInjectionTest.java:2080:56:2080:93 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2080:86:2080:93 | source(...) | user-provided value | +| LogInjectionTest.java:2081:74:2081:111 | (...)... | LogInjectionTest.java:2081:104:2081:111 | source(...) : Object | LogInjectionTest.java:2081:74:2081:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2081:104:2081:111 | source(...) | user-provided value | +| LogInjectionTest.java:2082:24:2082:43 | (...)... | LogInjectionTest.java:2082:36:2082:43 | source(...) : Object | LogInjectionTest.java:2082:24:2082:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2082:36:2082:43 | source(...) | user-provided value | +| LogInjectionTest.java:2083:57:2083:73 | (...)... | LogInjectionTest.java:2083:66:2083:73 | source(...) : Object | LogInjectionTest.java:2083:57:2083:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2083:66:2083:73 | source(...) | user-provided value | +| LogInjectionTest.java:2084:72:2084:88 | (...)... | LogInjectionTest.java:2084:81:2084:88 | source(...) : Object | LogInjectionTest.java:2084:72:2084:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2084:81:2084:88 | source(...) | user-provided value | +| LogInjectionTest.java:2085:87:2085:103 | (...)... | LogInjectionTest.java:2085:96:2085:103 | source(...) : Object | LogInjectionTest.java:2085:87:2085:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2085:96:2085:103 | source(...) | user-provided value | +| LogInjectionTest.java:2086:57:2086:73 | (...)... | LogInjectionTest.java:2086:66:2086:73 | source(...) : Object | LogInjectionTest.java:2086:57:2086:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2086:66:2086:73 | source(...) | user-provided value | +| LogInjectionTest.java:2087:72:2087:88 | (...)... | LogInjectionTest.java:2087:81:2087:88 | source(...) : Object | LogInjectionTest.java:2087:72:2087:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2087:81:2087:88 | source(...) | user-provided value | +| LogInjectionTest.java:2088:87:2088:103 | (...)... | LogInjectionTest.java:2088:96:2088:103 | source(...) : Object | LogInjectionTest.java:2088:87:2088:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2088:96:2088:103 | source(...) | user-provided value | +| LogInjectionTest.java:2089:102:2089:109 | source(...) | LogInjectionTest.java:2089:102:2089:109 | source(...) | LogInjectionTest.java:2089:102:2089:109 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:2089:102:2089:109 | source(...) | user-provided value | | LogInjectionTest.java:2090:57:2090:73 | (...)... | LogInjectionTest.java:2090:66:2090:73 | source(...) : Object | LogInjectionTest.java:2090:57:2090:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2090:66:2090:73 | source(...) | user-provided value | | LogInjectionTest.java:2091:72:2091:88 | (...)... | LogInjectionTest.java:2091:81:2091:88 | source(...) : Object | LogInjectionTest.java:2091:72:2091:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2091:81:2091:88 | source(...) | user-provided value | -| LogInjectionTest.java:2092:105:2092:142 | (...)... | LogInjectionTest.java:2092:135:2092:142 | source(...) : Object | LogInjectionTest.java:2092:105:2092:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2092:135:2092:142 | source(...) | user-provided value | -| LogInjectionTest.java:2093:58:2093:74 | (...)... | LogInjectionTest.java:2093:67:2093:74 | source(...) : Object | LogInjectionTest.java:2093:58:2093:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2093:67:2093:74 | source(...) | user-provided value | -| LogInjectionTest.java:2094:73:2094:89 | (...)... | LogInjectionTest.java:2094:82:2094:89 | source(...) : Object | LogInjectionTest.java:2094:73:2094:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2094:82:2094:89 | source(...) | user-provided value | -| LogInjectionTest.java:2095:111:2095:127 | (...)... | LogInjectionTest.java:2095:120:2095:127 | source(...) : Object | LogInjectionTest.java:2095:111:2095:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2095:120:2095:127 | source(...) | user-provided value | -| LogInjectionTest.java:2096:126:2096:148 | new Object[] | LogInjectionTest.java:2096:140:2096:147 | source(...) : Object | LogInjectionTest.java:2096:126:2096:148 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2096:140:2096:147 | source(...) | user-provided value | -| LogInjectionTest.java:2097:58:2097:74 | (...)... | LogInjectionTest.java:2097:67:2097:74 | source(...) : Object | LogInjectionTest.java:2097:58:2097:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2097:67:2097:74 | source(...) | user-provided value | -| LogInjectionTest.java:2098:73:2098:89 | (...)... | LogInjectionTest.java:2098:82:2098:89 | source(...) : Object | LogInjectionTest.java:2098:73:2098:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2098:82:2098:89 | source(...) | user-provided value | -| LogInjectionTest.java:2099:111:2099:127 | (...)... | LogInjectionTest.java:2099:120:2099:127 | source(...) : Object | LogInjectionTest.java:2099:111:2099:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2099:120:2099:127 | source(...) | user-provided value | -| LogInjectionTest.java:2100:58:2100:74 | (...)... | LogInjectionTest.java:2100:67:2100:74 | source(...) : Object | LogInjectionTest.java:2100:58:2100:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2100:67:2100:74 | source(...) | user-provided value | -| LogInjectionTest.java:2101:73:2101:89 | (...)... | LogInjectionTest.java:2101:82:2101:89 | source(...) : Object | LogInjectionTest.java:2101:73:2101:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2101:82:2101:89 | source(...) | user-provided value | -| LogInjectionTest.java:2102:88:2102:104 | (...)... | LogInjectionTest.java:2102:97:2102:104 | source(...) : Object | LogInjectionTest.java:2102:88:2102:104 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2102:97:2102:104 | source(...) | user-provided value | -| LogInjectionTest.java:2103:103:2103:119 | (...)... | LogInjectionTest.java:2103:112:2103:119 | source(...) : Object | LogInjectionTest.java:2103:103:2103:119 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2103:112:2103:119 | source(...) | user-provided value | -| LogInjectionTest.java:2104:58:2104:74 | (...)... | LogInjectionTest.java:2104:67:2104:74 | source(...) : Object | LogInjectionTest.java:2104:58:2104:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2104:67:2104:74 | source(...) | user-provided value | -| LogInjectionTest.java:2105:73:2105:89 | (...)... | LogInjectionTest.java:2105:82:2105:89 | source(...) : Object | LogInjectionTest.java:2105:73:2105:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2105:82:2105:89 | source(...) | user-provided value | -| LogInjectionTest.java:2106:88:2106:104 | (...)... | LogInjectionTest.java:2106:97:2106:104 | source(...) : Object | LogInjectionTest.java:2106:88:2106:104 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2106:97:2106:104 | source(...) | user-provided value | -| LogInjectionTest.java:2107:103:2107:119 | (...)... | LogInjectionTest.java:2107:112:2107:119 | source(...) : Object | LogInjectionTest.java:2107:103:2107:119 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2107:112:2107:119 | source(...) | user-provided value | -| LogInjectionTest.java:2108:118:2108:125 | source(...) | LogInjectionTest.java:2108:118:2108:125 | source(...) | LogInjectionTest.java:2108:118:2108:125 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:2108:118:2108:125 | source(...) | user-provided value | -| LogInjectionTest.java:2109:58:2109:74 | (...)... | LogInjectionTest.java:2109:67:2109:74 | source(...) : Object | LogInjectionTest.java:2109:58:2109:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2109:67:2109:74 | source(...) | user-provided value | -| LogInjectionTest.java:2110:73:2110:89 | (...)... | LogInjectionTest.java:2110:82:2110:89 | source(...) : Object | LogInjectionTest.java:2110:73:2110:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2110:82:2110:89 | source(...) | user-provided value | -| LogInjectionTest.java:2111:88:2111:104 | (...)... | LogInjectionTest.java:2111:97:2111:104 | source(...) : Object | LogInjectionTest.java:2111:88:2111:104 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2111:97:2111:104 | source(...) | user-provided value | -| LogInjectionTest.java:2112:103:2112:119 | (...)... | LogInjectionTest.java:2112:112:2112:119 | source(...) : Object | LogInjectionTest.java:2112:103:2112:119 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2112:112:2112:119 | source(...) | user-provided value | -| LogInjectionTest.java:2113:118:2113:140 | new Object[] | LogInjectionTest.java:2113:132:2113:139 | source(...) : Object | LogInjectionTest.java:2113:118:2113:140 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2113:132:2113:139 | source(...) | user-provided value | +| LogInjectionTest.java:2092:87:2092:103 | (...)... | LogInjectionTest.java:2092:96:2092:103 | source(...) : Object | LogInjectionTest.java:2092:87:2092:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2092:96:2092:103 | source(...) | user-provided value | +| LogInjectionTest.java:2093:102:2093:124 | new Object[] | LogInjectionTest.java:2093:116:2093:123 | source(...) : Object | LogInjectionTest.java:2093:102:2093:124 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2093:116:2093:123 | source(...) | user-provided value | +| LogInjectionTest.java:2094:57:2094:73 | (...)... | LogInjectionTest.java:2094:66:2094:73 | source(...) : Object | LogInjectionTest.java:2094:57:2094:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2094:66:2094:73 | source(...) | user-provided value | +| LogInjectionTest.java:2095:72:2095:88 | (...)... | LogInjectionTest.java:2095:81:2095:88 | source(...) : Object | LogInjectionTest.java:2095:72:2095:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2095:81:2095:88 | source(...) | user-provided value | +| LogInjectionTest.java:2096:87:2096:103 | (...)... | LogInjectionTest.java:2096:96:2096:103 | source(...) : Object | LogInjectionTest.java:2096:87:2096:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2096:96:2096:103 | source(...) | user-provided value | +| LogInjectionTest.java:2097:57:2097:73 | (...)... | LogInjectionTest.java:2097:66:2097:73 | source(...) : Object | LogInjectionTest.java:2097:57:2097:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2097:66:2097:73 | source(...) | user-provided value | +| LogInjectionTest.java:2098:72:2098:88 | (...)... | LogInjectionTest.java:2098:81:2098:88 | source(...) : Object | LogInjectionTest.java:2098:72:2098:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2098:81:2098:88 | source(...) | user-provided value | +| LogInjectionTest.java:2099:87:2099:124 | (...)... | LogInjectionTest.java:2099:117:2099:124 | source(...) : Object | LogInjectionTest.java:2099:87:2099:124 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2099:117:2099:124 | source(...) | user-provided value | +| LogInjectionTest.java:2100:57:2100:73 | (...)... | LogInjectionTest.java:2100:66:2100:73 | source(...) : Object | LogInjectionTest.java:2100:57:2100:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2100:66:2100:73 | source(...) | user-provided value | +| LogInjectionTest.java:2101:72:2101:88 | (...)... | LogInjectionTest.java:2101:81:2101:88 | source(...) : Object | LogInjectionTest.java:2101:72:2101:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2101:81:2101:88 | source(...) | user-provided value | +| LogInjectionTest.java:2102:105:2102:142 | (...)... | LogInjectionTest.java:2102:135:2102:142 | source(...) : Object | LogInjectionTest.java:2102:105:2102:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2102:135:2102:142 | source(...) | user-provided value | +| LogInjectionTest.java:2103:58:2103:74 | (...)... | LogInjectionTest.java:2103:67:2103:74 | source(...) : Object | LogInjectionTest.java:2103:58:2103:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2103:67:2103:74 | source(...) | user-provided value | +| LogInjectionTest.java:2104:73:2104:89 | (...)... | LogInjectionTest.java:2104:82:2104:89 | source(...) : Object | LogInjectionTest.java:2104:73:2104:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2104:82:2104:89 | source(...) | user-provided value | +| LogInjectionTest.java:2105:111:2105:127 | (...)... | LogInjectionTest.java:2105:120:2105:127 | source(...) : Object | LogInjectionTest.java:2105:111:2105:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2105:120:2105:127 | source(...) | user-provided value | +| LogInjectionTest.java:2106:126:2106:148 | new Object[] | LogInjectionTest.java:2106:140:2106:147 | source(...) : Object | LogInjectionTest.java:2106:126:2106:148 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2106:140:2106:147 | source(...) | user-provided value | +| LogInjectionTest.java:2107:58:2107:74 | (...)... | LogInjectionTest.java:2107:67:2107:74 | source(...) : Object | LogInjectionTest.java:2107:58:2107:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2107:67:2107:74 | source(...) | user-provided value | +| LogInjectionTest.java:2108:73:2108:89 | (...)... | LogInjectionTest.java:2108:82:2108:89 | source(...) : Object | LogInjectionTest.java:2108:73:2108:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2108:82:2108:89 | source(...) | user-provided value | +| LogInjectionTest.java:2109:111:2109:127 | (...)... | LogInjectionTest.java:2109:120:2109:127 | source(...) : Object | LogInjectionTest.java:2109:111:2109:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2109:120:2109:127 | source(...) | user-provided value | +| LogInjectionTest.java:2110:58:2110:74 | (...)... | LogInjectionTest.java:2110:67:2110:74 | source(...) : Object | LogInjectionTest.java:2110:58:2110:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2110:67:2110:74 | source(...) | user-provided value | +| LogInjectionTest.java:2111:73:2111:89 | (...)... | LogInjectionTest.java:2111:82:2111:89 | source(...) : Object | LogInjectionTest.java:2111:73:2111:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2111:82:2111:89 | source(...) | user-provided value | +| LogInjectionTest.java:2112:88:2112:104 | (...)... | LogInjectionTest.java:2112:97:2112:104 | source(...) : Object | LogInjectionTest.java:2112:88:2112:104 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2112:97:2112:104 | source(...) | user-provided value | +| LogInjectionTest.java:2113:103:2113:119 | (...)... | LogInjectionTest.java:2113:112:2113:119 | source(...) : Object | LogInjectionTest.java:2113:103:2113:119 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2113:112:2113:119 | source(...) | user-provided value | | LogInjectionTest.java:2114:58:2114:74 | (...)... | LogInjectionTest.java:2114:67:2114:74 | source(...) : Object | LogInjectionTest.java:2114:58:2114:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2114:67:2114:74 | source(...) | user-provided value | | LogInjectionTest.java:2115:73:2115:89 | (...)... | LogInjectionTest.java:2115:82:2115:89 | source(...) : Object | LogInjectionTest.java:2115:73:2115:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2115:82:2115:89 | source(...) | user-provided value | | LogInjectionTest.java:2116:88:2116:104 | (...)... | LogInjectionTest.java:2116:97:2116:104 | source(...) : Object | LogInjectionTest.java:2116:88:2116:104 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2116:97:2116:104 | source(...) | user-provided value | | LogInjectionTest.java:2117:103:2117:119 | (...)... | LogInjectionTest.java:2117:112:2117:119 | source(...) : Object | LogInjectionTest.java:2117:103:2117:119 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2117:112:2117:119 | source(...) | user-provided value | -| LogInjectionTest.java:2121:36:2121:52 | (...)... | LogInjectionTest.java:2121:45:2121:52 | source(...) : Object | LogInjectionTest.java:2121:36:2121:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2121:45:2121:52 | source(...) | user-provided value | -| LogInjectionTest.java:2122:36:2122:52 | (...)... | LogInjectionTest.java:2122:45:2122:52 | source(...) : Object | LogInjectionTest.java:2122:36:2122:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2122:45:2122:52 | source(...) | user-provided value | -| LogInjectionTest.java:2123:36:2123:52 | (...)... | LogInjectionTest.java:2123:45:2123:52 | source(...) : Object | LogInjectionTest.java:2123:36:2123:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2123:45:2123:52 | source(...) | user-provided value | -| LogInjectionTest.java:2124:36:2124:52 | (...)... | LogInjectionTest.java:2124:45:2124:52 | source(...) : Object | LogInjectionTest.java:2124:36:2124:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2124:45:2124:52 | source(...) | user-provided value | -| LogInjectionTest.java:2125:36:2125:52 | (...)... | LogInjectionTest.java:2125:45:2125:52 | source(...) : Object | LogInjectionTest.java:2125:36:2125:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2125:45:2125:52 | source(...) | user-provided value | -| LogInjectionTest.java:2126:38:2126:54 | (...)... | LogInjectionTest.java:2126:47:2126:54 | source(...) : Object | LogInjectionTest.java:2126:38:2126:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2126:47:2126:54 | source(...) | user-provided value | -| LogInjectionTest.java:2131:38:2131:54 | (...)... | LogInjectionTest.java:2131:47:2131:54 | source(...) : Object | LogInjectionTest.java:2131:38:2131:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2131:47:2131:54 | source(...) | user-provided value | -| LogInjectionTest.java:2133:38:2133:54 | (...)... | LogInjectionTest.java:2133:47:2133:54 | source(...) : Object | LogInjectionTest.java:2133:38:2133:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2133:47:2133:54 | source(...) | user-provided value | -| LogInjectionTest.java:2135:38:2135:54 | (...)... | LogInjectionTest.java:2135:47:2135:54 | source(...) : Object | LogInjectionTest.java:2135:38:2135:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2135:47:2135:54 | source(...) | user-provided value | -| LogInjectionTest.java:2137:38:2137:54 | (...)... | LogInjectionTest.java:2137:47:2137:54 | source(...) : Object | LogInjectionTest.java:2137:38:2137:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2137:47:2137:54 | source(...) | user-provided value | -| LogInjectionTest.java:2139:38:2139:54 | (...)... | LogInjectionTest.java:2139:47:2139:54 | source(...) : Object | LogInjectionTest.java:2139:38:2139:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2139:47:2139:54 | source(...) | user-provided value | +| LogInjectionTest.java:2118:118:2118:125 | source(...) | LogInjectionTest.java:2118:118:2118:125 | source(...) | LogInjectionTest.java:2118:118:2118:125 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:2118:118:2118:125 | source(...) | user-provided value | +| LogInjectionTest.java:2119:58:2119:74 | (...)... | LogInjectionTest.java:2119:67:2119:74 | source(...) : Object | LogInjectionTest.java:2119:58:2119:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2119:67:2119:74 | source(...) | user-provided value | +| LogInjectionTest.java:2120:73:2120:89 | (...)... | LogInjectionTest.java:2120:82:2120:89 | source(...) : Object | LogInjectionTest.java:2120:73:2120:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2120:82:2120:89 | source(...) | user-provided value | +| LogInjectionTest.java:2121:88:2121:104 | (...)... | LogInjectionTest.java:2121:97:2121:104 | source(...) : Object | LogInjectionTest.java:2121:88:2121:104 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2121:97:2121:104 | source(...) | user-provided value | +| LogInjectionTest.java:2122:103:2122:119 | (...)... | LogInjectionTest.java:2122:112:2122:119 | source(...) : Object | LogInjectionTest.java:2122:103:2122:119 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2122:112:2122:119 | source(...) | user-provided value | +| LogInjectionTest.java:2123:118:2123:140 | new Object[] | LogInjectionTest.java:2123:132:2123:139 | source(...) : Object | LogInjectionTest.java:2123:118:2123:140 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2123:132:2123:139 | source(...) | user-provided value | +| LogInjectionTest.java:2124:58:2124:74 | (...)... | LogInjectionTest.java:2124:67:2124:74 | source(...) : Object | LogInjectionTest.java:2124:58:2124:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2124:67:2124:74 | source(...) | user-provided value | +| LogInjectionTest.java:2125:73:2125:89 | (...)... | LogInjectionTest.java:2125:82:2125:89 | source(...) : Object | LogInjectionTest.java:2125:73:2125:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2125:82:2125:89 | source(...) | user-provided value | +| LogInjectionTest.java:2126:88:2126:104 | (...)... | LogInjectionTest.java:2126:97:2126:104 | source(...) : Object | LogInjectionTest.java:2126:88:2126:104 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2126:97:2126:104 | source(...) | user-provided value | +| LogInjectionTest.java:2127:103:2127:119 | (...)... | LogInjectionTest.java:2127:112:2127:119 | source(...) : Object | LogInjectionTest.java:2127:103:2127:119 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2127:112:2127:119 | source(...) | user-provided value | +| LogInjectionTest.java:2131:36:2131:52 | (...)... | LogInjectionTest.java:2131:45:2131:52 | source(...) : Object | LogInjectionTest.java:2131:36:2131:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2131:45:2131:52 | source(...) | user-provided value | +| LogInjectionTest.java:2132:36:2132:52 | (...)... | LogInjectionTest.java:2132:45:2132:52 | source(...) : Object | LogInjectionTest.java:2132:36:2132:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2132:45:2132:52 | source(...) | user-provided value | +| LogInjectionTest.java:2133:36:2133:52 | (...)... | LogInjectionTest.java:2133:45:2133:52 | source(...) : Object | LogInjectionTest.java:2133:36:2133:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2133:45:2133:52 | source(...) | user-provided value | +| LogInjectionTest.java:2134:36:2134:52 | (...)... | LogInjectionTest.java:2134:45:2134:52 | source(...) : Object | LogInjectionTest.java:2134:36:2134:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2134:45:2134:52 | source(...) | user-provided value | +| LogInjectionTest.java:2135:36:2135:52 | (...)... | LogInjectionTest.java:2135:45:2135:52 | source(...) : Object | LogInjectionTest.java:2135:36:2135:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2135:45:2135:52 | source(...) | user-provided value | +| LogInjectionTest.java:2136:38:2136:54 | (...)... | LogInjectionTest.java:2136:47:2136:54 | source(...) : Object | LogInjectionTest.java:2136:38:2136:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2136:47:2136:54 | source(...) | user-provided value | | LogInjectionTest.java:2141:38:2141:54 | (...)... | LogInjectionTest.java:2141:47:2141:54 | source(...) : Object | LogInjectionTest.java:2141:38:2141:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2141:47:2141:54 | source(...) | user-provided value | +| LogInjectionTest.java:2143:38:2143:54 | (...)... | LogInjectionTest.java:2143:47:2143:54 | source(...) : Object | LogInjectionTest.java:2143:38:2143:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2143:47:2143:54 | source(...) | user-provided value | +| LogInjectionTest.java:2145:38:2145:54 | (...)... | LogInjectionTest.java:2145:47:2145:54 | source(...) : Object | LogInjectionTest.java:2145:38:2145:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2145:47:2145:54 | source(...) | user-provided value | +| LogInjectionTest.java:2147:38:2147:54 | (...)... | LogInjectionTest.java:2147:47:2147:54 | source(...) : Object | LogInjectionTest.java:2147:38:2147:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2147:47:2147:54 | source(...) | user-provided value | +| LogInjectionTest.java:2149:38:2149:54 | (...)... | LogInjectionTest.java:2149:47:2149:54 | source(...) : Object | LogInjectionTest.java:2149:38:2149:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2149:47:2149:54 | source(...) | user-provided value | +| LogInjectionTest.java:2151:38:2151:54 | (...)... | LogInjectionTest.java:2151:47:2151:54 | source(...) : Object | LogInjectionTest.java:2151:38:2151:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2151:47:2151:54 | source(...) | user-provided value | edges -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:30:22:30:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:31:22:31:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:33:22:33:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:34:22:34:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:35:22:35:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:37:22:37:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:38:22:38:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:40:22:40:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:41:22:41:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:42:22:42:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:44:22:44:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:45:22:45:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:47:22:47:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:48:22:48:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:50:22:50:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:51:22:51:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:53:22:53:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:54:22:54:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:56:22:56:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:57:22:57:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:59:22:59:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:60:22:60:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:61:22:61:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:62:22:62:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:63:22:63:27 | source : String | provenance | | -| LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:27:25:27:41 | (...)... : String | provenance | Src:MaD:536 | -| LogInjectionTest.java:30:22:30:27 | source : String | LogInjectionTest.java:30:22:30:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:31:22:31:27 | source : String | LogInjectionTest.java:31:22:31:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:33:22:33:27 | source : String | LogInjectionTest.java:33:22:33:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:34:22:34:27 | source : String | LogInjectionTest.java:34:22:34:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:35:22:35:27 | source : String | LogInjectionTest.java:35:22:35:57 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:37:22:37:27 | source : String | LogInjectionTest.java:37:22:37:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:38:22:38:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:39:22:39:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:41:22:41:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:42:22:42:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:43:22:43:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:45:22:45:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:46:22:46:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:48:22:48:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:49:22:49:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:50:22:50:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:52:22:52:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:53:22:53:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:55:22:55:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:56:22:56:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:58:22:58:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:59:22:59:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:61:22:61:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:62:22:62:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:64:22:64:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:65:22:65:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:67:22:67:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:68:22:68:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:69:22:69:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:70:22:70:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:71:22:71:27 | source : String | provenance | | +| LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:35:25:35:41 | (...)... : String | provenance | Src:MaD:536 | | LogInjectionTest.java:38:22:38:27 | source : String | LogInjectionTest.java:38:22:38:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:40:22:40:27 | source : String | LogInjectionTest.java:40:22:40:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:39:22:39:27 | source : String | LogInjectionTest.java:39:22:39:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | | LogInjectionTest.java:41:22:41:27 | source : String | LogInjectionTest.java:41:22:41:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:42:22:42:27 | source : String | LogInjectionTest.java:42:22:42:45 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:44:22:44:27 | source : String | LogInjectionTest.java:44:22:44:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:45:22:45:27 | source : String | LogInjectionTest.java:45:22:45:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:47:22:47:27 | source : String | LogInjectionTest.java:47:22:47:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:48:22:48:27 | source : String | LogInjectionTest.java:48:22:48:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:50:22:50:27 | source : String | LogInjectionTest.java:50:22:50:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:51:22:51:27 | source : String | LogInjectionTest.java:51:22:51:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:53:22:53:27 | source : String | LogInjectionTest.java:53:22:53:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:54:22:54:27 | source : String | LogInjectionTest.java:54:22:54:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:56:22:56:27 | source : String | LogInjectionTest.java:56:22:56:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:57:22:57:27 | source : String | LogInjectionTest.java:57:22:57:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:59:22:59:27 | source : String | LogInjectionTest.java:59:22:59:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:60:22:60:27 | source : String | LogInjectionTest.java:60:22:60:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:61:22:61:27 | source : String | LogInjectionTest.java:61:22:61:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:62:22:62:27 | source : String | LogInjectionTest.java:62:22:62:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:63:22:63:27 | source : String | LogInjectionTest.java:63:22:63:58 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:71:26:71:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:77:26:77:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:83:26:83:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:89:26:89:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:95:26:95:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:101:26:101:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:107:26:107:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:113:26:113:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:119:26:119:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:125:26:125:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:133:26:133:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:139:26:139:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:145:26:145:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:151:26:151:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:157:26:157:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:163:26:163:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:167:26:167:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:169:26:169:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:173:26:173:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:175:26:175:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:179:26:179:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:185:26:185:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:67:25:67:41 | (...)... : String | provenance | Src:MaD:536 | -| LogInjectionTest.java:195:48:195:55 | source(...) : Object | LogInjectionTest.java:195:39:195:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:60 | -| LogInjectionTest.java:205:41:205:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:205:41:205:63 | new Object[] | provenance | Sink:MaD:61 | -| LogInjectionTest.java:205:55:205:62 | source(...) : Object | LogInjectionTest.java:205:41:205:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:215:41:215:48 | source(...) : Object | LogInjectionTest.java:215:26:215:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:76 | -| LogInjectionTest.java:216:41:216:48 | source(...) : Object | LogInjectionTest.java:216:26:216:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:77 | -| LogInjectionTest.java:217:56:217:63 | source(...) : Object | LogInjectionTest.java:217:41:217:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:78 | -| LogInjectionTest.java:218:56:218:63 | source(...) : Object | LogInjectionTest.java:218:41:218:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:79 | -| LogInjectionTest.java:219:51:219:58 | source(...) : Object | LogInjectionTest.java:219:41:219:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:80 | -| LogInjectionTest.java:220:59:220:66 | source(...) : Object | LogInjectionTest.java:220:41:220:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:81 | -| LogInjectionTest.java:221:59:221:66 | source(...) : Object | LogInjectionTest.java:221:41:221:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:82 | -| LogInjectionTest.java:223:50:223:57 | source(...) : Object | LogInjectionTest.java:223:41:223:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:83 | -| LogInjectionTest.java:224:50:224:57 | source(...) : Object | LogInjectionTest.java:224:41:224:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:93 | -| LogInjectionTest.java:225:56:225:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:225:56:225:78 | new Object[] | provenance | Sink:MaD:93 | -| LogInjectionTest.java:225:70:225:77 | source(...) : Object | LogInjectionTest.java:225:56:225:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:226:65:226:72 | source(...) : Object | LogInjectionTest.java:226:56:226:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | -| LogInjectionTest.java:227:50:227:57 | source(...) : Object | LogInjectionTest.java:227:41:227:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | -| LogInjectionTest.java:228:80:228:87 | source(...) : Object | LogInjectionTest.java:228:71:228:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:85 | -| LogInjectionTest.java:229:65:229:72 | source(...) : Object | LogInjectionTest.java:229:56:229:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:85 | -| LogInjectionTest.java:230:50:230:57 | source(...) : Object | LogInjectionTest.java:230:41:230:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:85 | -| LogInjectionTest.java:231:95:231:102 | source(...) : Object | LogInjectionTest.java:231:86:231:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | -| LogInjectionTest.java:232:80:232:87 | source(...) : Object | LogInjectionTest.java:232:71:232:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | -| LogInjectionTest.java:233:65:233:72 | source(...) : Object | LogInjectionTest.java:233:56:233:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | -| LogInjectionTest.java:234:50:234:57 | source(...) : Object | LogInjectionTest.java:234:41:234:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | -| LogInjectionTest.java:235:110:235:117 | source(...) : Object | LogInjectionTest.java:235:101:235:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | -| LogInjectionTest.java:236:95:236:102 | source(...) : Object | LogInjectionTest.java:236:86:236:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | -| LogInjectionTest.java:237:80:237:87 | source(...) : Object | LogInjectionTest.java:237:71:237:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | -| LogInjectionTest.java:238:65:238:72 | source(...) : Object | LogInjectionTest.java:238:56:238:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | -| LogInjectionTest.java:239:50:239:57 | source(...) : Object | LogInjectionTest.java:239:41:239:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | -| LogInjectionTest.java:240:125:240:132 | source(...) : Object | LogInjectionTest.java:240:116:240:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | -| LogInjectionTest.java:241:110:241:117 | source(...) : Object | LogInjectionTest.java:241:101:241:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | -| LogInjectionTest.java:242:95:242:102 | source(...) : Object | LogInjectionTest.java:242:86:242:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | -| LogInjectionTest.java:243:80:243:87 | source(...) : Object | LogInjectionTest.java:243:71:243:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | -| LogInjectionTest.java:244:65:244:72 | source(...) : Object | LogInjectionTest.java:244:56:244:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | -| LogInjectionTest.java:245:50:245:57 | source(...) : Object | LogInjectionTest.java:245:41:245:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | -| LogInjectionTest.java:246:140:246:147 | source(...) : Object | LogInjectionTest.java:246:131:246:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | -| LogInjectionTest.java:247:125:247:132 | source(...) : Object | LogInjectionTest.java:247:116:247:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | -| LogInjectionTest.java:248:110:248:117 | source(...) : Object | LogInjectionTest.java:248:101:248:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | -| LogInjectionTest.java:249:95:249:102 | source(...) : Object | LogInjectionTest.java:249:86:249:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | -| LogInjectionTest.java:250:80:250:87 | source(...) : Object | LogInjectionTest.java:250:71:250:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | -| LogInjectionTest.java:251:65:251:72 | source(...) : Object | LogInjectionTest.java:251:56:251:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | -| LogInjectionTest.java:252:50:252:57 | source(...) : Object | LogInjectionTest.java:252:41:252:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | -| LogInjectionTest.java:253:155:253:162 | source(...) : Object | LogInjectionTest.java:253:146:253:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:254:140:254:147 | source(...) : Object | LogInjectionTest.java:254:131:254:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:255:125:255:132 | source(...) : Object | LogInjectionTest.java:255:116:255:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:256:110:256:117 | source(...) : Object | LogInjectionTest.java:256:101:256:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:257:95:257:102 | source(...) : Object | LogInjectionTest.java:257:86:257:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:258:80:258:87 | source(...) : Object | LogInjectionTest.java:258:71:258:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:259:65:259:72 | source(...) : Object | LogInjectionTest.java:259:56:259:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:260:50:260:57 | source(...) : Object | LogInjectionTest.java:260:41:260:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:261:170:261:177 | source(...) : Object | LogInjectionTest.java:261:161:261:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:262:155:262:162 | source(...) : Object | LogInjectionTest.java:262:146:262:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:263:140:263:147 | source(...) : Object | LogInjectionTest.java:263:131:263:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:264:125:264:132 | source(...) : Object | LogInjectionTest.java:264:116:264:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:265:110:265:117 | source(...) : Object | LogInjectionTest.java:265:101:265:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:266:95:266:102 | source(...) : Object | LogInjectionTest.java:266:86:266:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:267:80:267:87 | source(...) : Object | LogInjectionTest.java:267:71:267:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:268:65:268:72 | source(...) : Object | LogInjectionTest.java:268:56:268:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:269:50:269:57 | source(...) : Object | LogInjectionTest.java:269:41:269:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:270:185:270:192 | source(...) : Object | LogInjectionTest.java:270:176:270:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:271:170:271:177 | source(...) : Object | LogInjectionTest.java:271:161:271:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:272:155:272:162 | source(...) : Object | LogInjectionTest.java:272:146:272:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:273:140:273:147 | source(...) : Object | LogInjectionTest.java:273:131:273:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:274:125:274:132 | source(...) : Object | LogInjectionTest.java:274:116:274:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:275:110:275:117 | source(...) : Object | LogInjectionTest.java:275:101:275:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:276:95:276:102 | source(...) : Object | LogInjectionTest.java:276:86:276:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:277:80:277:87 | source(...) : Object | LogInjectionTest.java:277:71:277:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:278:65:278:72 | source(...) : Object | LogInjectionTest.java:278:56:278:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:279:50:279:57 | source(...) : Object | LogInjectionTest.java:279:41:279:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:280:50:280:57 | source(...) : Object | LogInjectionTest.java:280:41:280:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | -| LogInjectionTest.java:281:70:281:77 | source(...) : Object | LogInjectionTest.java:281:56:281:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | -| LogInjectionTest.java:282:50:282:57 | source(...) : Object | LogInjectionTest.java:282:41:282:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:94 | -| LogInjectionTest.java:283:55:283:62 | source(...) : Object | LogInjectionTest.java:283:41:283:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:95 | -| LogInjectionTest.java:284:55:284:62 | source(...) : Object | LogInjectionTest.java:284:41:284:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:96 | -| LogInjectionTest.java:285:44:285:51 | source(...) : Object | LogInjectionTest.java:285:26:285:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:99 | -| LogInjectionTest.java:286:44:286:51 | source(...) : Object | LogInjectionTest.java:286:26:286:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:100 | -| LogInjectionTest.java:287:36:287:43 | source(...) : Object | LogInjectionTest.java:287:26:287:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:97 | -| LogInjectionTest.java:288:36:288:43 | source(...) : Object | LogInjectionTest.java:288:26:288:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:98 | -| LogInjectionTest.java:291:35:291:42 | source(...) : Object | LogInjectionTest.java:291:26:291:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:101 | -| LogInjectionTest.java:292:35:292:42 | source(...) : Object | LogInjectionTest.java:292:26:292:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:111 | -| LogInjectionTest.java:293:41:293:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:293:41:293:63 | new Object[] | provenance | Sink:MaD:111 | -| LogInjectionTest.java:293:55:293:62 | source(...) : Object | LogInjectionTest.java:293:41:293:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:294:50:294:57 | source(...) : Object | LogInjectionTest.java:294:41:294:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | -| LogInjectionTest.java:295:35:295:42 | source(...) : Object | LogInjectionTest.java:295:26:295:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | -| LogInjectionTest.java:296:65:296:72 | source(...) : Object | LogInjectionTest.java:296:56:296:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:103 | -| LogInjectionTest.java:297:50:297:57 | source(...) : Object | LogInjectionTest.java:297:41:297:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:103 | -| LogInjectionTest.java:298:35:298:42 | source(...) : Object | LogInjectionTest.java:298:26:298:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:103 | -| LogInjectionTest.java:299:80:299:87 | source(...) : Object | LogInjectionTest.java:299:71:299:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | -| LogInjectionTest.java:300:65:300:72 | source(...) : Object | LogInjectionTest.java:300:56:300:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | -| LogInjectionTest.java:301:50:301:57 | source(...) : Object | LogInjectionTest.java:301:41:301:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | -| LogInjectionTest.java:302:35:302:42 | source(...) : Object | LogInjectionTest.java:302:26:302:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | -| LogInjectionTest.java:303:95:303:102 | source(...) : Object | LogInjectionTest.java:303:86:303:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | -| LogInjectionTest.java:304:80:304:87 | source(...) : Object | LogInjectionTest.java:304:71:304:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | -| LogInjectionTest.java:305:65:305:72 | source(...) : Object | LogInjectionTest.java:305:56:305:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | -| LogInjectionTest.java:306:50:306:57 | source(...) : Object | LogInjectionTest.java:306:41:306:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | -| LogInjectionTest.java:307:35:307:42 | source(...) : Object | LogInjectionTest.java:307:26:307:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | -| LogInjectionTest.java:308:110:308:117 | source(...) : Object | LogInjectionTest.java:308:101:308:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | -| LogInjectionTest.java:309:95:309:102 | source(...) : Object | LogInjectionTest.java:309:86:309:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | -| LogInjectionTest.java:310:80:310:87 | source(...) : Object | LogInjectionTest.java:310:71:310:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | -| LogInjectionTest.java:311:65:311:72 | source(...) : Object | LogInjectionTest.java:311:56:311:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | -| LogInjectionTest.java:312:50:312:57 | source(...) : Object | LogInjectionTest.java:312:41:312:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | -| LogInjectionTest.java:313:35:313:42 | source(...) : Object | LogInjectionTest.java:313:26:313:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | -| LogInjectionTest.java:314:125:314:132 | source(...) : Object | LogInjectionTest.java:314:116:314:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | -| LogInjectionTest.java:315:110:315:117 | source(...) : Object | LogInjectionTest.java:315:101:315:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | -| LogInjectionTest.java:316:95:316:102 | source(...) : Object | LogInjectionTest.java:316:86:316:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | -| LogInjectionTest.java:317:80:317:87 | source(...) : Object | LogInjectionTest.java:317:71:317:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | -| LogInjectionTest.java:318:65:318:72 | source(...) : Object | LogInjectionTest.java:318:56:318:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | -| LogInjectionTest.java:319:50:319:57 | source(...) : Object | LogInjectionTest.java:319:41:319:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | -| LogInjectionTest.java:320:35:320:42 | source(...) : Object | LogInjectionTest.java:320:26:320:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | -| LogInjectionTest.java:321:140:321:147 | source(...) : Object | LogInjectionTest.java:321:131:321:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:322:125:322:132 | source(...) : Object | LogInjectionTest.java:322:116:322:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:323:110:323:117 | source(...) : Object | LogInjectionTest.java:323:101:323:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:324:95:324:102 | source(...) : Object | LogInjectionTest.java:324:86:324:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:325:80:325:87 | source(...) : Object | LogInjectionTest.java:325:71:325:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:326:65:326:72 | source(...) : Object | LogInjectionTest.java:326:56:326:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:327:50:327:57 | source(...) : Object | LogInjectionTest.java:327:41:327:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:328:35:328:42 | source(...) : Object | LogInjectionTest.java:328:26:328:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:329:155:329:162 | source(...) : Object | LogInjectionTest.java:329:146:329:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:330:140:330:147 | source(...) : Object | LogInjectionTest.java:330:131:330:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:331:125:331:132 | source(...) : Object | LogInjectionTest.java:331:116:331:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:332:110:332:117 | source(...) : Object | LogInjectionTest.java:332:101:332:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:333:95:333:102 | source(...) : Object | LogInjectionTest.java:333:86:333:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:334:80:334:87 | source(...) : Object | LogInjectionTest.java:334:71:334:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:335:65:335:72 | source(...) : Object | LogInjectionTest.java:335:56:335:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:336:50:336:57 | source(...) : Object | LogInjectionTest.java:336:41:336:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:337:35:337:42 | source(...) : Object | LogInjectionTest.java:337:26:337:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:338:170:338:177 | source(...) : Object | LogInjectionTest.java:338:161:338:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:339:155:339:162 | source(...) : Object | LogInjectionTest.java:339:146:339:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:340:140:340:147 | source(...) : Object | LogInjectionTest.java:340:131:340:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:341:125:341:132 | source(...) : Object | LogInjectionTest.java:341:116:341:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:342:110:342:117 | source(...) : Object | LogInjectionTest.java:342:101:342:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:343:95:343:102 | source(...) : Object | LogInjectionTest.java:343:86:343:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:344:80:344:87 | source(...) : Object | LogInjectionTest.java:344:71:344:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:345:65:345:72 | source(...) : Object | LogInjectionTest.java:345:56:345:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:346:50:346:57 | source(...) : Object | LogInjectionTest.java:346:41:346:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:347:35:347:42 | source(...) : Object | LogInjectionTest.java:347:26:347:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:348:35:348:42 | source(...) : Object | LogInjectionTest.java:348:26:348:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | -| LogInjectionTest.java:349:55:349:62 | source(...) : Object | LogInjectionTest.java:349:41:349:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | -| LogInjectionTest.java:350:35:350:42 | source(...) : Object | LogInjectionTest.java:350:26:350:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:112 | -| LogInjectionTest.java:351:40:351:47 | source(...) : Object | LogInjectionTest.java:351:26:351:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:113 | -| LogInjectionTest.java:352:40:352:47 | source(...) : Object | LogInjectionTest.java:352:26:352:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:114 | -| LogInjectionTest.java:353:41:353:48 | source(...) : Object | LogInjectionTest.java:353:26:353:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:115 | -| LogInjectionTest.java:354:41:354:48 | source(...) : Object | LogInjectionTest.java:354:26:354:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:116 | -| LogInjectionTest.java:355:56:355:63 | source(...) : Object | LogInjectionTest.java:355:41:355:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:117 | -| LogInjectionTest.java:356:56:356:63 | source(...) : Object | LogInjectionTest.java:356:41:356:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:118 | -| LogInjectionTest.java:357:51:357:58 | source(...) : Object | LogInjectionTest.java:357:41:357:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:119 | -| LogInjectionTest.java:358:59:358:66 | source(...) : Object | LogInjectionTest.java:358:41:358:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:120 | -| LogInjectionTest.java:359:59:359:66 | source(...) : Object | LogInjectionTest.java:359:41:359:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:121 | -| LogInjectionTest.java:361:50:361:57 | source(...) : Object | LogInjectionTest.java:361:41:361:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:122 | -| LogInjectionTest.java:362:50:362:57 | source(...) : Object | LogInjectionTest.java:362:41:362:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:132 | -| LogInjectionTest.java:363:56:363:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:363:56:363:78 | new Object[] | provenance | Sink:MaD:132 | -| LogInjectionTest.java:363:70:363:77 | source(...) : Object | LogInjectionTest.java:363:56:363:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:364:65:364:72 | source(...) : Object | LogInjectionTest.java:364:56:364:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | -| LogInjectionTest.java:365:50:365:57 | source(...) : Object | LogInjectionTest.java:365:41:365:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | -| LogInjectionTest.java:366:80:366:87 | source(...) : Object | LogInjectionTest.java:366:71:366:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:124 | -| LogInjectionTest.java:367:65:367:72 | source(...) : Object | LogInjectionTest.java:367:56:367:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:124 | -| LogInjectionTest.java:368:50:368:57 | source(...) : Object | LogInjectionTest.java:368:41:368:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:124 | -| LogInjectionTest.java:369:95:369:102 | source(...) : Object | LogInjectionTest.java:369:86:369:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | -| LogInjectionTest.java:370:80:370:87 | source(...) : Object | LogInjectionTest.java:370:71:370:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | -| LogInjectionTest.java:371:65:371:72 | source(...) : Object | LogInjectionTest.java:371:56:371:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | -| LogInjectionTest.java:372:50:372:57 | source(...) : Object | LogInjectionTest.java:372:41:372:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | -| LogInjectionTest.java:373:110:373:117 | source(...) : Object | LogInjectionTest.java:373:101:373:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | -| LogInjectionTest.java:374:95:374:102 | source(...) : Object | LogInjectionTest.java:374:86:374:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | -| LogInjectionTest.java:375:80:375:87 | source(...) : Object | LogInjectionTest.java:375:71:375:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | -| LogInjectionTest.java:376:65:376:72 | source(...) : Object | LogInjectionTest.java:376:56:376:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | -| LogInjectionTest.java:377:50:377:57 | source(...) : Object | LogInjectionTest.java:377:41:377:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | -| LogInjectionTest.java:378:125:378:132 | source(...) : Object | LogInjectionTest.java:378:116:378:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | -| LogInjectionTest.java:379:110:379:117 | source(...) : Object | LogInjectionTest.java:379:101:379:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | -| LogInjectionTest.java:380:95:380:102 | source(...) : Object | LogInjectionTest.java:380:86:380:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | -| LogInjectionTest.java:381:80:381:87 | source(...) : Object | LogInjectionTest.java:381:71:381:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | -| LogInjectionTest.java:382:65:382:72 | source(...) : Object | LogInjectionTest.java:382:56:382:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | -| LogInjectionTest.java:383:50:383:57 | source(...) : Object | LogInjectionTest.java:383:41:383:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | -| LogInjectionTest.java:384:140:384:147 | source(...) : Object | LogInjectionTest.java:384:131:384:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | -| LogInjectionTest.java:385:125:385:132 | source(...) : Object | LogInjectionTest.java:385:116:385:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | -| LogInjectionTest.java:386:110:386:117 | source(...) : Object | LogInjectionTest.java:386:101:386:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | -| LogInjectionTest.java:387:95:387:102 | source(...) : Object | LogInjectionTest.java:387:86:387:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | -| LogInjectionTest.java:388:80:388:87 | source(...) : Object | LogInjectionTest.java:388:71:388:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | -| LogInjectionTest.java:389:65:389:72 | source(...) : Object | LogInjectionTest.java:389:56:389:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | -| LogInjectionTest.java:390:50:390:57 | source(...) : Object | LogInjectionTest.java:390:41:390:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | -| LogInjectionTest.java:391:155:391:162 | source(...) : Object | LogInjectionTest.java:391:146:391:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:392:140:392:147 | source(...) : Object | LogInjectionTest.java:392:131:392:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:393:125:393:132 | source(...) : Object | LogInjectionTest.java:393:116:393:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:394:110:394:117 | source(...) : Object | LogInjectionTest.java:394:101:394:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:395:95:395:102 | source(...) : Object | LogInjectionTest.java:395:86:395:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:396:80:396:87 | source(...) : Object | LogInjectionTest.java:396:71:396:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:397:65:397:72 | source(...) : Object | LogInjectionTest.java:397:56:397:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:398:50:398:57 | source(...) : Object | LogInjectionTest.java:398:41:398:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:399:170:399:177 | source(...) : Object | LogInjectionTest.java:399:161:399:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:400:155:400:162 | source(...) : Object | LogInjectionTest.java:400:146:400:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:401:140:401:147 | source(...) : Object | LogInjectionTest.java:401:131:401:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:402:125:402:132 | source(...) : Object | LogInjectionTest.java:402:116:402:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:403:110:403:117 | source(...) : Object | LogInjectionTest.java:403:101:403:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:404:95:404:102 | source(...) : Object | LogInjectionTest.java:404:86:404:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:405:80:405:87 | source(...) : Object | LogInjectionTest.java:405:71:405:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:406:65:406:72 | source(...) : Object | LogInjectionTest.java:406:56:406:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:407:50:407:57 | source(...) : Object | LogInjectionTest.java:407:41:407:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:408:185:408:192 | source(...) : Object | LogInjectionTest.java:408:176:408:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:409:170:409:177 | source(...) : Object | LogInjectionTest.java:409:161:409:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:410:155:410:162 | source(...) : Object | LogInjectionTest.java:410:146:410:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:411:140:411:147 | source(...) : Object | LogInjectionTest.java:411:131:411:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:412:125:412:132 | source(...) : Object | LogInjectionTest.java:412:116:412:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:413:110:413:117 | source(...) : Object | LogInjectionTest.java:413:101:413:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:414:95:414:102 | source(...) : Object | LogInjectionTest.java:414:86:414:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:415:80:415:87 | source(...) : Object | LogInjectionTest.java:415:71:415:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:416:65:416:72 | source(...) : Object | LogInjectionTest.java:416:56:416:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:417:50:417:57 | source(...) : Object | LogInjectionTest.java:417:41:417:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:418:50:418:57 | source(...) : Object | LogInjectionTest.java:418:41:418:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | -| LogInjectionTest.java:419:70:419:77 | source(...) : Object | LogInjectionTest.java:419:56:419:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | -| LogInjectionTest.java:420:50:420:57 | source(...) : Object | LogInjectionTest.java:420:41:420:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:133 | -| LogInjectionTest.java:421:55:421:62 | source(...) : Object | LogInjectionTest.java:421:41:421:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:134 | -| LogInjectionTest.java:422:55:422:62 | source(...) : Object | LogInjectionTest.java:422:41:422:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:135 | -| LogInjectionTest.java:423:44:423:51 | source(...) : Object | LogInjectionTest.java:423:26:423:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:138 | -| LogInjectionTest.java:424:44:424:51 | source(...) : Object | LogInjectionTest.java:424:26:424:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:139 | -| LogInjectionTest.java:425:36:425:43 | source(...) : Object | LogInjectionTest.java:425:26:425:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:136 | -| LogInjectionTest.java:426:36:426:43 | source(...) : Object | LogInjectionTest.java:426:26:426:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:137 | -| LogInjectionTest.java:429:35:429:42 | source(...) : Object | LogInjectionTest.java:429:26:429:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:140 | -| LogInjectionTest.java:430:35:430:42 | source(...) : Object | LogInjectionTest.java:430:26:430:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:150 | -| LogInjectionTest.java:431:41:431:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:431:41:431:63 | new Object[] | provenance | Sink:MaD:150 | -| LogInjectionTest.java:431:55:431:62 | source(...) : Object | LogInjectionTest.java:431:41:431:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:432:50:432:57 | source(...) : Object | LogInjectionTest.java:432:41:432:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | -| LogInjectionTest.java:433:35:433:42 | source(...) : Object | LogInjectionTest.java:433:26:433:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | -| LogInjectionTest.java:434:65:434:72 | source(...) : Object | LogInjectionTest.java:434:56:434:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:142 | -| LogInjectionTest.java:435:50:435:57 | source(...) : Object | LogInjectionTest.java:435:41:435:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:142 | -| LogInjectionTest.java:436:35:436:42 | source(...) : Object | LogInjectionTest.java:436:26:436:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:142 | -| LogInjectionTest.java:437:80:437:87 | source(...) : Object | LogInjectionTest.java:437:71:437:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | -| LogInjectionTest.java:438:65:438:72 | source(...) : Object | LogInjectionTest.java:438:56:438:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | -| LogInjectionTest.java:439:50:439:57 | source(...) : Object | LogInjectionTest.java:439:41:439:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | -| LogInjectionTest.java:440:35:440:42 | source(...) : Object | LogInjectionTest.java:440:26:440:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | -| LogInjectionTest.java:441:95:441:102 | source(...) : Object | LogInjectionTest.java:441:86:441:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | -| LogInjectionTest.java:442:80:442:87 | source(...) : Object | LogInjectionTest.java:442:71:442:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | -| LogInjectionTest.java:443:65:443:72 | source(...) : Object | LogInjectionTest.java:443:56:443:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | -| LogInjectionTest.java:444:50:444:57 | source(...) : Object | LogInjectionTest.java:444:41:444:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | -| LogInjectionTest.java:445:35:445:42 | source(...) : Object | LogInjectionTest.java:445:26:445:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | -| LogInjectionTest.java:446:110:446:117 | source(...) : Object | LogInjectionTest.java:446:101:446:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | -| LogInjectionTest.java:447:95:447:102 | source(...) : Object | LogInjectionTest.java:447:86:447:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | -| LogInjectionTest.java:448:80:448:87 | source(...) : Object | LogInjectionTest.java:448:71:448:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | -| LogInjectionTest.java:449:65:449:72 | source(...) : Object | LogInjectionTest.java:449:56:449:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | -| LogInjectionTest.java:450:50:450:57 | source(...) : Object | LogInjectionTest.java:450:41:450:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | -| LogInjectionTest.java:451:35:451:42 | source(...) : Object | LogInjectionTest.java:451:26:451:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | -| LogInjectionTest.java:452:125:452:132 | source(...) : Object | LogInjectionTest.java:452:116:452:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | -| LogInjectionTest.java:453:110:453:117 | source(...) : Object | LogInjectionTest.java:453:101:453:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | -| LogInjectionTest.java:454:95:454:102 | source(...) : Object | LogInjectionTest.java:454:86:454:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | -| LogInjectionTest.java:455:80:455:87 | source(...) : Object | LogInjectionTest.java:455:71:455:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | -| LogInjectionTest.java:456:65:456:72 | source(...) : Object | LogInjectionTest.java:456:56:456:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | -| LogInjectionTest.java:457:50:457:57 | source(...) : Object | LogInjectionTest.java:457:41:457:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | -| LogInjectionTest.java:458:35:458:42 | source(...) : Object | LogInjectionTest.java:458:26:458:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | -| LogInjectionTest.java:459:140:459:147 | source(...) : Object | LogInjectionTest.java:459:131:459:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:460:125:460:132 | source(...) : Object | LogInjectionTest.java:460:116:460:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:461:110:461:117 | source(...) : Object | LogInjectionTest.java:461:101:461:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:462:95:462:102 | source(...) : Object | LogInjectionTest.java:462:86:462:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:463:80:463:87 | source(...) : Object | LogInjectionTest.java:463:71:463:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:464:65:464:72 | source(...) : Object | LogInjectionTest.java:464:56:464:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:465:50:465:57 | source(...) : Object | LogInjectionTest.java:465:41:465:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:466:35:466:42 | source(...) : Object | LogInjectionTest.java:466:26:466:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:467:155:467:162 | source(...) : Object | LogInjectionTest.java:467:146:467:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:468:140:468:147 | source(...) : Object | LogInjectionTest.java:468:131:468:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:469:125:469:132 | source(...) : Object | LogInjectionTest.java:469:116:469:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:470:110:470:117 | source(...) : Object | LogInjectionTest.java:470:101:470:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:471:95:471:102 | source(...) : Object | LogInjectionTest.java:471:86:471:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:472:80:472:87 | source(...) : Object | LogInjectionTest.java:472:71:472:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:473:65:473:72 | source(...) : Object | LogInjectionTest.java:473:56:473:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:474:50:474:57 | source(...) : Object | LogInjectionTest.java:474:41:474:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:475:35:475:42 | source(...) : Object | LogInjectionTest.java:475:26:475:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:476:170:476:177 | source(...) : Object | LogInjectionTest.java:476:161:476:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:477:155:477:162 | source(...) : Object | LogInjectionTest.java:477:146:477:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:478:140:478:147 | source(...) : Object | LogInjectionTest.java:478:131:478:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:479:125:479:132 | source(...) : Object | LogInjectionTest.java:479:116:479:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:480:110:480:117 | source(...) : Object | LogInjectionTest.java:480:101:480:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:481:95:481:102 | source(...) : Object | LogInjectionTest.java:481:86:481:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:482:80:482:87 | source(...) : Object | LogInjectionTest.java:482:71:482:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:483:65:483:72 | source(...) : Object | LogInjectionTest.java:483:56:483:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:484:50:484:57 | source(...) : Object | LogInjectionTest.java:484:41:484:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:485:35:485:42 | source(...) : Object | LogInjectionTest.java:485:26:485:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:486:35:486:42 | source(...) : Object | LogInjectionTest.java:486:26:486:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | -| LogInjectionTest.java:487:55:487:62 | source(...) : Object | LogInjectionTest.java:487:41:487:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | -| LogInjectionTest.java:488:35:488:42 | source(...) : Object | LogInjectionTest.java:488:26:488:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:151 | -| LogInjectionTest.java:489:40:489:47 | source(...) : Object | LogInjectionTest.java:489:26:489:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:152 | -| LogInjectionTest.java:490:40:490:47 | source(...) : Object | LogInjectionTest.java:490:26:490:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:153 | -| LogInjectionTest.java:491:41:491:48 | source(...) : Object | LogInjectionTest.java:491:26:491:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:154 | -| LogInjectionTest.java:492:41:492:48 | source(...) : Object | LogInjectionTest.java:492:26:492:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:155 | -| LogInjectionTest.java:493:56:493:63 | source(...) : Object | LogInjectionTest.java:493:41:493:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:156 | -| LogInjectionTest.java:494:56:494:63 | source(...) : Object | LogInjectionTest.java:494:41:494:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:157 | -| LogInjectionTest.java:495:51:495:58 | source(...) : Object | LogInjectionTest.java:495:41:495:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:158 | -| LogInjectionTest.java:496:59:496:66 | source(...) : Object | LogInjectionTest.java:496:41:496:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:159 | -| LogInjectionTest.java:497:59:497:66 | source(...) : Object | LogInjectionTest.java:497:41:497:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:160 | -| LogInjectionTest.java:499:50:499:57 | source(...) : Object | LogInjectionTest.java:499:41:499:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:161 | -| LogInjectionTest.java:500:50:500:57 | source(...) : Object | LogInjectionTest.java:500:41:500:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:171 | -| LogInjectionTest.java:501:56:501:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:501:56:501:78 | new Object[] | provenance | Sink:MaD:171 | -| LogInjectionTest.java:501:70:501:77 | source(...) : Object | LogInjectionTest.java:501:56:501:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:502:65:502:72 | source(...) : Object | LogInjectionTest.java:502:56:502:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | -| LogInjectionTest.java:503:50:503:57 | source(...) : Object | LogInjectionTest.java:503:41:503:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | -| LogInjectionTest.java:504:80:504:87 | source(...) : Object | LogInjectionTest.java:504:71:504:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:163 | -| LogInjectionTest.java:505:65:505:72 | source(...) : Object | LogInjectionTest.java:505:56:505:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:163 | -| LogInjectionTest.java:506:50:506:57 | source(...) : Object | LogInjectionTest.java:506:41:506:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:163 | -| LogInjectionTest.java:507:95:507:102 | source(...) : Object | LogInjectionTest.java:507:86:507:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | -| LogInjectionTest.java:508:80:508:87 | source(...) : Object | LogInjectionTest.java:508:71:508:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | -| LogInjectionTest.java:509:65:509:72 | source(...) : Object | LogInjectionTest.java:509:56:509:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | -| LogInjectionTest.java:510:50:510:57 | source(...) : Object | LogInjectionTest.java:510:41:510:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | -| LogInjectionTest.java:511:110:511:117 | source(...) : Object | LogInjectionTest.java:511:101:511:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | -| LogInjectionTest.java:512:95:512:102 | source(...) : Object | LogInjectionTest.java:512:86:512:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | -| LogInjectionTest.java:513:80:513:87 | source(...) : Object | LogInjectionTest.java:513:71:513:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | -| LogInjectionTest.java:514:65:514:72 | source(...) : Object | LogInjectionTest.java:514:56:514:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | -| LogInjectionTest.java:515:50:515:57 | source(...) : Object | LogInjectionTest.java:515:41:515:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | -| LogInjectionTest.java:516:125:516:132 | source(...) : Object | LogInjectionTest.java:516:116:516:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | -| LogInjectionTest.java:517:110:517:117 | source(...) : Object | LogInjectionTest.java:517:101:517:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | -| LogInjectionTest.java:518:95:518:102 | source(...) : Object | LogInjectionTest.java:518:86:518:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | -| LogInjectionTest.java:519:80:519:87 | source(...) : Object | LogInjectionTest.java:519:71:519:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | -| LogInjectionTest.java:520:65:520:72 | source(...) : Object | LogInjectionTest.java:520:56:520:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | -| LogInjectionTest.java:521:50:521:57 | source(...) : Object | LogInjectionTest.java:521:41:521:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | -| LogInjectionTest.java:522:140:522:147 | source(...) : Object | LogInjectionTest.java:522:131:522:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | -| LogInjectionTest.java:523:125:523:132 | source(...) : Object | LogInjectionTest.java:523:116:523:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | -| LogInjectionTest.java:524:110:524:117 | source(...) : Object | LogInjectionTest.java:524:101:524:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | -| LogInjectionTest.java:525:95:525:102 | source(...) : Object | LogInjectionTest.java:525:86:525:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | -| LogInjectionTest.java:526:80:526:87 | source(...) : Object | LogInjectionTest.java:526:71:526:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | -| LogInjectionTest.java:527:65:527:72 | source(...) : Object | LogInjectionTest.java:527:56:527:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | -| LogInjectionTest.java:528:50:528:57 | source(...) : Object | LogInjectionTest.java:528:41:528:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | -| LogInjectionTest.java:529:155:529:162 | source(...) : Object | LogInjectionTest.java:529:146:529:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:530:140:530:147 | source(...) : Object | LogInjectionTest.java:530:131:530:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:531:125:531:132 | source(...) : Object | LogInjectionTest.java:531:116:531:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:532:110:532:117 | source(...) : Object | LogInjectionTest.java:532:101:532:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:533:95:533:102 | source(...) : Object | LogInjectionTest.java:533:86:533:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:534:80:534:87 | source(...) : Object | LogInjectionTest.java:534:71:534:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:535:65:535:72 | source(...) : Object | LogInjectionTest.java:535:56:535:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:536:50:536:57 | source(...) : Object | LogInjectionTest.java:536:41:536:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:537:170:537:177 | source(...) : Object | LogInjectionTest.java:537:161:537:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:538:155:538:162 | source(...) : Object | LogInjectionTest.java:538:146:538:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:539:140:539:147 | source(...) : Object | LogInjectionTest.java:539:131:539:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:540:125:540:132 | source(...) : Object | LogInjectionTest.java:540:116:540:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:541:110:541:117 | source(...) : Object | LogInjectionTest.java:541:101:541:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:542:95:542:102 | source(...) : Object | LogInjectionTest.java:542:86:542:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:543:80:543:87 | source(...) : Object | LogInjectionTest.java:543:71:543:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:544:65:544:72 | source(...) : Object | LogInjectionTest.java:544:56:544:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:545:50:545:57 | source(...) : Object | LogInjectionTest.java:545:41:545:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:546:185:546:192 | source(...) : Object | LogInjectionTest.java:546:176:546:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:547:170:547:177 | source(...) : Object | LogInjectionTest.java:547:161:547:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:548:155:548:162 | source(...) : Object | LogInjectionTest.java:548:146:548:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:549:140:549:147 | source(...) : Object | LogInjectionTest.java:549:131:549:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:550:125:550:132 | source(...) : Object | LogInjectionTest.java:550:116:550:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:551:110:551:117 | source(...) : Object | LogInjectionTest.java:551:101:551:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:552:95:552:102 | source(...) : Object | LogInjectionTest.java:552:86:552:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:553:80:553:87 | source(...) : Object | LogInjectionTest.java:553:71:553:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:554:65:554:72 | source(...) : Object | LogInjectionTest.java:554:56:554:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:555:50:555:57 | source(...) : Object | LogInjectionTest.java:555:41:555:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:556:50:556:57 | source(...) : Object | LogInjectionTest.java:556:41:556:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | -| LogInjectionTest.java:557:70:557:77 | source(...) : Object | LogInjectionTest.java:557:56:557:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | -| LogInjectionTest.java:558:50:558:57 | source(...) : Object | LogInjectionTest.java:558:41:558:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:172 | -| LogInjectionTest.java:559:55:559:62 | source(...) : Object | LogInjectionTest.java:559:41:559:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:173 | -| LogInjectionTest.java:560:55:560:62 | source(...) : Object | LogInjectionTest.java:560:41:560:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:174 | -| LogInjectionTest.java:561:44:561:51 | source(...) : Object | LogInjectionTest.java:561:26:561:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:177 | -| LogInjectionTest.java:562:44:562:51 | source(...) : Object | LogInjectionTest.java:562:26:562:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:178 | -| LogInjectionTest.java:563:36:563:43 | source(...) : Object | LogInjectionTest.java:563:26:563:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:175 | -| LogInjectionTest.java:564:36:564:43 | source(...) : Object | LogInjectionTest.java:564:26:564:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:176 | -| LogInjectionTest.java:567:35:567:42 | source(...) : Object | LogInjectionTest.java:567:26:567:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:179 | -| LogInjectionTest.java:568:35:568:42 | source(...) : Object | LogInjectionTest.java:568:26:568:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:189 | -| LogInjectionTest.java:569:41:569:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:569:41:569:63 | new Object[] | provenance | Sink:MaD:189 | -| LogInjectionTest.java:569:55:569:62 | source(...) : Object | LogInjectionTest.java:569:41:569:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:570:50:570:57 | source(...) : Object | LogInjectionTest.java:570:41:570:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | -| LogInjectionTest.java:571:35:571:42 | source(...) : Object | LogInjectionTest.java:571:26:571:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | -| LogInjectionTest.java:572:65:572:72 | source(...) : Object | LogInjectionTest.java:572:56:572:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:181 | -| LogInjectionTest.java:573:50:573:57 | source(...) : Object | LogInjectionTest.java:573:41:573:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:181 | -| LogInjectionTest.java:574:35:574:42 | source(...) : Object | LogInjectionTest.java:574:26:574:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:181 | -| LogInjectionTest.java:575:80:575:87 | source(...) : Object | LogInjectionTest.java:575:71:575:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | -| LogInjectionTest.java:576:65:576:72 | source(...) : Object | LogInjectionTest.java:576:56:576:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | -| LogInjectionTest.java:577:50:577:57 | source(...) : Object | LogInjectionTest.java:577:41:577:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | -| LogInjectionTest.java:578:35:578:42 | source(...) : Object | LogInjectionTest.java:578:26:578:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | -| LogInjectionTest.java:579:95:579:102 | source(...) : Object | LogInjectionTest.java:579:86:579:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | -| LogInjectionTest.java:580:80:580:87 | source(...) : Object | LogInjectionTest.java:580:71:580:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | -| LogInjectionTest.java:581:65:581:72 | source(...) : Object | LogInjectionTest.java:581:56:581:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | -| LogInjectionTest.java:582:50:582:57 | source(...) : Object | LogInjectionTest.java:582:41:582:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | -| LogInjectionTest.java:583:35:583:42 | source(...) : Object | LogInjectionTest.java:583:26:583:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | -| LogInjectionTest.java:584:110:584:117 | source(...) : Object | LogInjectionTest.java:584:101:584:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | -| LogInjectionTest.java:585:95:585:102 | source(...) : Object | LogInjectionTest.java:585:86:585:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | -| LogInjectionTest.java:586:80:586:87 | source(...) : Object | LogInjectionTest.java:586:71:586:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | -| LogInjectionTest.java:587:65:587:72 | source(...) : Object | LogInjectionTest.java:587:56:587:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | -| LogInjectionTest.java:588:50:588:57 | source(...) : Object | LogInjectionTest.java:588:41:588:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | -| LogInjectionTest.java:589:35:589:42 | source(...) : Object | LogInjectionTest.java:589:26:589:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | -| LogInjectionTest.java:590:125:590:132 | source(...) : Object | LogInjectionTest.java:590:116:590:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | -| LogInjectionTest.java:591:110:591:117 | source(...) : Object | LogInjectionTest.java:591:101:591:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | -| LogInjectionTest.java:592:95:592:102 | source(...) : Object | LogInjectionTest.java:592:86:592:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | -| LogInjectionTest.java:593:80:593:87 | source(...) : Object | LogInjectionTest.java:593:71:593:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | -| LogInjectionTest.java:594:65:594:72 | source(...) : Object | LogInjectionTest.java:594:56:594:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | -| LogInjectionTest.java:595:50:595:57 | source(...) : Object | LogInjectionTest.java:595:41:595:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | -| LogInjectionTest.java:596:35:596:42 | source(...) : Object | LogInjectionTest.java:596:26:596:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | -| LogInjectionTest.java:597:140:597:147 | source(...) : Object | LogInjectionTest.java:597:131:597:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:598:125:598:132 | source(...) : Object | LogInjectionTest.java:598:116:598:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:599:110:599:117 | source(...) : Object | LogInjectionTest.java:599:101:599:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:600:95:600:102 | source(...) : Object | LogInjectionTest.java:600:86:600:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:601:80:601:87 | source(...) : Object | LogInjectionTest.java:601:71:601:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:602:65:602:72 | source(...) : Object | LogInjectionTest.java:602:56:602:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:603:50:603:57 | source(...) : Object | LogInjectionTest.java:603:41:603:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:604:35:604:42 | source(...) : Object | LogInjectionTest.java:604:26:604:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:605:155:605:162 | source(...) : Object | LogInjectionTest.java:605:146:605:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:606:140:606:147 | source(...) : Object | LogInjectionTest.java:606:131:606:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:607:125:607:132 | source(...) : Object | LogInjectionTest.java:607:116:607:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:608:110:608:117 | source(...) : Object | LogInjectionTest.java:608:101:608:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:609:95:609:102 | source(...) : Object | LogInjectionTest.java:609:86:609:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:610:80:610:87 | source(...) : Object | LogInjectionTest.java:610:71:610:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:611:65:611:72 | source(...) : Object | LogInjectionTest.java:611:56:611:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:612:50:612:57 | source(...) : Object | LogInjectionTest.java:612:41:612:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:613:35:613:42 | source(...) : Object | LogInjectionTest.java:613:26:613:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:614:170:614:177 | source(...) : Object | LogInjectionTest.java:614:161:614:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:615:155:615:162 | source(...) : Object | LogInjectionTest.java:615:146:615:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:616:140:616:147 | source(...) : Object | LogInjectionTest.java:616:131:616:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:617:125:617:132 | source(...) : Object | LogInjectionTest.java:617:116:617:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:618:110:618:117 | source(...) : Object | LogInjectionTest.java:618:101:618:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:619:95:619:102 | source(...) : Object | LogInjectionTest.java:619:86:619:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:620:80:620:87 | source(...) : Object | LogInjectionTest.java:620:71:620:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:621:65:621:72 | source(...) : Object | LogInjectionTest.java:621:56:621:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:622:50:622:57 | source(...) : Object | LogInjectionTest.java:622:41:622:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:623:35:623:42 | source(...) : Object | LogInjectionTest.java:623:26:623:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:624:35:624:42 | source(...) : Object | LogInjectionTest.java:624:26:624:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | -| LogInjectionTest.java:625:55:625:62 | source(...) : Object | LogInjectionTest.java:625:41:625:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | -| LogInjectionTest.java:626:35:626:42 | source(...) : Object | LogInjectionTest.java:626:26:626:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:190 | -| LogInjectionTest.java:627:40:627:47 | source(...) : Object | LogInjectionTest.java:627:26:627:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:191 | -| LogInjectionTest.java:628:40:628:47 | source(...) : Object | LogInjectionTest.java:628:26:628:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:192 | -| LogInjectionTest.java:629:40:629:47 | source(...) : Object | LogInjectionTest.java:629:25:629:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:193 | -| LogInjectionTest.java:630:40:630:47 | source(...) : Object | LogInjectionTest.java:630:25:630:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:194 | -| LogInjectionTest.java:631:55:631:62 | source(...) : Object | LogInjectionTest.java:631:40:631:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:195 | -| LogInjectionTest.java:632:55:632:62 | source(...) : Object | LogInjectionTest.java:632:40:632:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:196 | -| LogInjectionTest.java:633:50:633:57 | source(...) : Object | LogInjectionTest.java:633:40:633:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:197 | -| LogInjectionTest.java:634:58:634:65 | source(...) : Object | LogInjectionTest.java:634:40:634:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:198 | -| LogInjectionTest.java:635:58:635:65 | source(...) : Object | LogInjectionTest.java:635:40:635:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:199 | -| LogInjectionTest.java:637:49:637:56 | source(...) : Object | LogInjectionTest.java:637:40:637:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:200 | -| LogInjectionTest.java:638:49:638:56 | source(...) : Object | LogInjectionTest.java:638:40:638:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:210 | -| LogInjectionTest.java:639:55:639:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:639:55:639:77 | new Object[] | provenance | Sink:MaD:210 | -| LogInjectionTest.java:639:69:639:76 | source(...) : Object | LogInjectionTest.java:639:55:639:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:640:64:640:71 | source(...) : Object | LogInjectionTest.java:640:55:640:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | -| LogInjectionTest.java:641:49:641:56 | source(...) : Object | LogInjectionTest.java:641:40:641:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | -| LogInjectionTest.java:642:79:642:86 | source(...) : Object | LogInjectionTest.java:642:70:642:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:202 | -| LogInjectionTest.java:643:64:643:71 | source(...) : Object | LogInjectionTest.java:643:55:643:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:202 | -| LogInjectionTest.java:644:49:644:56 | source(...) : Object | LogInjectionTest.java:644:40:644:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:202 | -| LogInjectionTest.java:645:94:645:101 | source(...) : Object | LogInjectionTest.java:645:85:645:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | -| LogInjectionTest.java:646:79:646:86 | source(...) : Object | LogInjectionTest.java:646:70:646:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | -| LogInjectionTest.java:647:64:647:71 | source(...) : Object | LogInjectionTest.java:647:55:647:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | -| LogInjectionTest.java:648:49:648:56 | source(...) : Object | LogInjectionTest.java:648:40:648:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | -| LogInjectionTest.java:649:109:649:116 | source(...) : Object | LogInjectionTest.java:649:100:649:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | -| LogInjectionTest.java:650:94:650:101 | source(...) : Object | LogInjectionTest.java:650:85:650:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | -| LogInjectionTest.java:651:79:651:86 | source(...) : Object | LogInjectionTest.java:651:70:651:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | -| LogInjectionTest.java:652:64:652:71 | source(...) : Object | LogInjectionTest.java:652:55:652:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | -| LogInjectionTest.java:653:49:653:56 | source(...) : Object | LogInjectionTest.java:653:40:653:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | -| LogInjectionTest.java:654:124:654:131 | source(...) : Object | LogInjectionTest.java:654:115:654:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | -| LogInjectionTest.java:655:109:655:116 | source(...) : Object | LogInjectionTest.java:655:100:655:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | -| LogInjectionTest.java:656:94:656:101 | source(...) : Object | LogInjectionTest.java:656:85:656:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | -| LogInjectionTest.java:657:79:657:86 | source(...) : Object | LogInjectionTest.java:657:70:657:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | -| LogInjectionTest.java:658:64:658:71 | source(...) : Object | LogInjectionTest.java:658:55:658:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | -| LogInjectionTest.java:659:49:659:56 | source(...) : Object | LogInjectionTest.java:659:40:659:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | -| LogInjectionTest.java:660:139:660:146 | source(...) : Object | LogInjectionTest.java:660:130:660:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | -| LogInjectionTest.java:661:124:661:131 | source(...) : Object | LogInjectionTest.java:661:115:661:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | -| LogInjectionTest.java:662:109:662:116 | source(...) : Object | LogInjectionTest.java:662:100:662:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | -| LogInjectionTest.java:663:94:663:101 | source(...) : Object | LogInjectionTest.java:663:85:663:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | -| LogInjectionTest.java:664:79:664:86 | source(...) : Object | LogInjectionTest.java:664:70:664:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | -| LogInjectionTest.java:665:64:665:71 | source(...) : Object | LogInjectionTest.java:665:55:665:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | -| LogInjectionTest.java:666:49:666:56 | source(...) : Object | LogInjectionTest.java:666:40:666:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | -| LogInjectionTest.java:667:154:667:161 | source(...) : Object | LogInjectionTest.java:667:145:667:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:668:139:668:146 | source(...) : Object | LogInjectionTest.java:668:130:668:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:669:124:669:131 | source(...) : Object | LogInjectionTest.java:669:115:669:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:670:109:670:116 | source(...) : Object | LogInjectionTest.java:670:100:670:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:671:94:671:101 | source(...) : Object | LogInjectionTest.java:671:85:671:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:672:79:672:86 | source(...) : Object | LogInjectionTest.java:672:70:672:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:673:64:673:71 | source(...) : Object | LogInjectionTest.java:673:55:673:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:674:49:674:56 | source(...) : Object | LogInjectionTest.java:674:40:674:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:675:169:675:176 | source(...) : Object | LogInjectionTest.java:675:160:675:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:676:154:676:161 | source(...) : Object | LogInjectionTest.java:676:145:676:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:677:139:677:146 | source(...) : Object | LogInjectionTest.java:677:130:677:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:678:124:678:131 | source(...) : Object | LogInjectionTest.java:678:115:678:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:679:109:679:116 | source(...) : Object | LogInjectionTest.java:679:100:679:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:680:94:680:101 | source(...) : Object | LogInjectionTest.java:680:85:680:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:681:79:681:86 | source(...) : Object | LogInjectionTest.java:681:70:681:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:682:64:682:71 | source(...) : Object | LogInjectionTest.java:682:55:682:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:683:49:683:56 | source(...) : Object | LogInjectionTest.java:683:40:683:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:684:184:684:191 | source(...) : Object | LogInjectionTest.java:684:175:684:191 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:685:169:685:176 | source(...) : Object | LogInjectionTest.java:685:160:685:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:686:154:686:161 | source(...) : Object | LogInjectionTest.java:686:145:686:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:687:139:687:146 | source(...) : Object | LogInjectionTest.java:687:130:687:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:688:124:688:131 | source(...) : Object | LogInjectionTest.java:688:115:688:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:689:109:689:116 | source(...) : Object | LogInjectionTest.java:689:100:689:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:690:94:690:101 | source(...) : Object | LogInjectionTest.java:690:85:690:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:691:79:691:86 | source(...) : Object | LogInjectionTest.java:691:70:691:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:692:64:692:71 | source(...) : Object | LogInjectionTest.java:692:55:692:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:693:49:693:56 | source(...) : Object | LogInjectionTest.java:693:40:693:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:694:49:694:56 | source(...) : Object | LogInjectionTest.java:694:40:694:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | -| LogInjectionTest.java:695:69:695:76 | source(...) : Object | LogInjectionTest.java:695:55:695:76 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | -| LogInjectionTest.java:696:49:696:56 | source(...) : Object | LogInjectionTest.java:696:40:696:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:211 | -| LogInjectionTest.java:697:54:697:61 | source(...) : Object | LogInjectionTest.java:697:40:697:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:212 | -| LogInjectionTest.java:698:54:698:61 | source(...) : Object | LogInjectionTest.java:698:40:698:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:213 | -| LogInjectionTest.java:699:43:699:50 | source(...) : Object | LogInjectionTest.java:699:25:699:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:216 | -| LogInjectionTest.java:700:43:700:50 | source(...) : Object | LogInjectionTest.java:700:25:700:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:217 | -| LogInjectionTest.java:701:35:701:42 | source(...) : Object | LogInjectionTest.java:701:25:701:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:214 | -| LogInjectionTest.java:702:35:702:42 | source(...) : Object | LogInjectionTest.java:702:25:702:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:215 | -| LogInjectionTest.java:705:34:705:41 | source(...) : Object | LogInjectionTest.java:705:25:705:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:218 | -| LogInjectionTest.java:706:34:706:41 | source(...) : Object | LogInjectionTest.java:706:25:706:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:228 | -| LogInjectionTest.java:707:40:707:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:707:40:707:62 | new Object[] | provenance | Sink:MaD:228 | -| LogInjectionTest.java:707:54:707:61 | source(...) : Object | LogInjectionTest.java:707:40:707:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:708:49:708:56 | source(...) : Object | LogInjectionTest.java:708:40:708:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | -| LogInjectionTest.java:709:34:709:41 | source(...) : Object | LogInjectionTest.java:709:25:709:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | -| LogInjectionTest.java:710:64:710:71 | source(...) : Object | LogInjectionTest.java:710:55:710:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:220 | -| LogInjectionTest.java:711:49:711:56 | source(...) : Object | LogInjectionTest.java:711:40:711:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:220 | -| LogInjectionTest.java:712:34:712:41 | source(...) : Object | LogInjectionTest.java:712:25:712:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:220 | -| LogInjectionTest.java:713:79:713:86 | source(...) : Object | LogInjectionTest.java:713:70:713:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | -| LogInjectionTest.java:714:64:714:71 | source(...) : Object | LogInjectionTest.java:714:55:714:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | -| LogInjectionTest.java:715:49:715:56 | source(...) : Object | LogInjectionTest.java:715:40:715:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | -| LogInjectionTest.java:716:34:716:41 | source(...) : Object | LogInjectionTest.java:716:25:716:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | -| LogInjectionTest.java:717:94:717:101 | source(...) : Object | LogInjectionTest.java:717:85:717:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | -| LogInjectionTest.java:718:79:718:86 | source(...) : Object | LogInjectionTest.java:718:70:718:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | -| LogInjectionTest.java:719:64:719:71 | source(...) : Object | LogInjectionTest.java:719:55:719:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | -| LogInjectionTest.java:720:49:720:56 | source(...) : Object | LogInjectionTest.java:720:40:720:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | -| LogInjectionTest.java:721:34:721:41 | source(...) : Object | LogInjectionTest.java:721:25:721:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | -| LogInjectionTest.java:722:109:722:116 | source(...) : Object | LogInjectionTest.java:722:100:722:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | -| LogInjectionTest.java:723:94:723:101 | source(...) : Object | LogInjectionTest.java:723:85:723:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | -| LogInjectionTest.java:724:79:724:86 | source(...) : Object | LogInjectionTest.java:724:70:724:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | -| LogInjectionTest.java:725:64:725:71 | source(...) : Object | LogInjectionTest.java:725:55:725:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | -| LogInjectionTest.java:726:49:726:56 | source(...) : Object | LogInjectionTest.java:726:40:726:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | -| LogInjectionTest.java:727:34:727:41 | source(...) : Object | LogInjectionTest.java:727:25:727:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | -| LogInjectionTest.java:728:124:728:131 | source(...) : Object | LogInjectionTest.java:728:115:728:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | -| LogInjectionTest.java:729:109:729:116 | source(...) : Object | LogInjectionTest.java:729:100:729:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | -| LogInjectionTest.java:730:94:730:101 | source(...) : Object | LogInjectionTest.java:730:85:730:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | -| LogInjectionTest.java:731:79:731:86 | source(...) : Object | LogInjectionTest.java:731:70:731:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | -| LogInjectionTest.java:732:64:732:71 | source(...) : Object | LogInjectionTest.java:732:55:732:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | -| LogInjectionTest.java:733:49:733:56 | source(...) : Object | LogInjectionTest.java:733:40:733:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | -| LogInjectionTest.java:734:34:734:41 | source(...) : Object | LogInjectionTest.java:734:25:734:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | -| LogInjectionTest.java:735:139:735:146 | source(...) : Object | LogInjectionTest.java:735:130:735:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:736:124:736:131 | source(...) : Object | LogInjectionTest.java:736:115:736:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:737:109:737:116 | source(...) : Object | LogInjectionTest.java:737:100:737:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:738:94:738:101 | source(...) : Object | LogInjectionTest.java:738:85:738:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:739:79:739:86 | source(...) : Object | LogInjectionTest.java:739:70:739:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:740:64:740:71 | source(...) : Object | LogInjectionTest.java:740:55:740:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:741:49:741:56 | source(...) : Object | LogInjectionTest.java:741:40:741:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:742:34:742:41 | source(...) : Object | LogInjectionTest.java:742:25:742:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:743:154:743:161 | source(...) : Object | LogInjectionTest.java:743:145:743:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:744:139:744:146 | source(...) : Object | LogInjectionTest.java:744:130:744:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:745:124:745:131 | source(...) : Object | LogInjectionTest.java:745:115:745:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:746:109:746:116 | source(...) : Object | LogInjectionTest.java:746:100:746:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:747:94:747:101 | source(...) : Object | LogInjectionTest.java:747:85:747:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:748:79:748:86 | source(...) : Object | LogInjectionTest.java:748:70:748:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:749:64:749:71 | source(...) : Object | LogInjectionTest.java:749:55:749:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:750:49:750:56 | source(...) : Object | LogInjectionTest.java:750:40:750:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:751:34:751:41 | source(...) : Object | LogInjectionTest.java:751:25:751:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:752:169:752:176 | source(...) : Object | LogInjectionTest.java:752:160:752:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:753:154:753:161 | source(...) : Object | LogInjectionTest.java:753:145:753:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:754:139:754:146 | source(...) : Object | LogInjectionTest.java:754:130:754:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:755:124:755:131 | source(...) : Object | LogInjectionTest.java:755:115:755:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:756:109:756:116 | source(...) : Object | LogInjectionTest.java:756:100:756:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:757:94:757:101 | source(...) : Object | LogInjectionTest.java:757:85:757:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:758:79:758:86 | source(...) : Object | LogInjectionTest.java:758:70:758:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:759:64:759:71 | source(...) : Object | LogInjectionTest.java:759:55:759:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:760:49:760:56 | source(...) : Object | LogInjectionTest.java:760:40:760:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:761:34:761:41 | source(...) : Object | LogInjectionTest.java:761:25:761:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:762:34:762:41 | source(...) : Object | LogInjectionTest.java:762:25:762:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | -| LogInjectionTest.java:763:54:763:61 | source(...) : Object | LogInjectionTest.java:763:40:763:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | -| LogInjectionTest.java:764:34:764:41 | source(...) : Object | LogInjectionTest.java:764:25:764:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:229 | -| LogInjectionTest.java:765:39:765:46 | source(...) : Object | LogInjectionTest.java:765:25:765:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:230 | -| LogInjectionTest.java:766:39:766:46 | source(...) : Object | LogInjectionTest.java:766:25:766:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:231 | -| LogInjectionTest.java:767:53:767:60 | source(...) : Object | LogInjectionTest.java:767:38:767:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:232 | -| LogInjectionTest.java:768:53:768:60 | source(...) : Object | LogInjectionTest.java:768:38:768:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:233 | -| LogInjectionTest.java:769:68:769:75 | source(...) : Object | LogInjectionTest.java:769:53:769:75 | (...)... | provenance | Src:MaD:536 Sink:MaD:234 | -| LogInjectionTest.java:770:68:770:75 | source(...) : Object | LogInjectionTest.java:770:53:770:75 | (...)... | provenance | Src:MaD:536 Sink:MaD:235 | -| LogInjectionTest.java:771:63:771:70 | source(...) : Object | LogInjectionTest.java:771:53:771:70 | (...)... | provenance | Src:MaD:536 Sink:MaD:236 | -| LogInjectionTest.java:772:71:772:78 | source(...) : Object | LogInjectionTest.java:772:53:772:78 | (...)... | provenance | Src:MaD:536 Sink:MaD:237 | -| LogInjectionTest.java:773:71:773:78 | source(...) : Object | LogInjectionTest.java:773:53:773:78 | (...)... | provenance | Src:MaD:536 Sink:MaD:238 | -| LogInjectionTest.java:775:62:775:69 | source(...) : Object | LogInjectionTest.java:775:53:775:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:239 | -| LogInjectionTest.java:776:62:776:69 | source(...) : Object | LogInjectionTest.java:776:53:776:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:249 | -| LogInjectionTest.java:777:68:777:90 | {...} : Object[] [[]] : Object | LogInjectionTest.java:777:68:777:90 | new Object[] | provenance | Sink:MaD:249 | -| LogInjectionTest.java:777:82:777:89 | source(...) : Object | LogInjectionTest.java:777:68:777:90 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:778:77:778:84 | source(...) : Object | LogInjectionTest.java:778:68:778:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | -| LogInjectionTest.java:779:62:779:69 | source(...) : Object | LogInjectionTest.java:779:53:779:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | -| LogInjectionTest.java:780:92:780:99 | source(...) : Object | LogInjectionTest.java:780:83:780:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:241 | -| LogInjectionTest.java:781:77:781:84 | source(...) : Object | LogInjectionTest.java:781:68:781:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:241 | -| LogInjectionTest.java:782:62:782:69 | source(...) : Object | LogInjectionTest.java:782:53:782:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:241 | -| LogInjectionTest.java:783:107:783:114 | source(...) : Object | LogInjectionTest.java:783:98:783:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | -| LogInjectionTest.java:784:92:784:99 | source(...) : Object | LogInjectionTest.java:784:83:784:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | -| LogInjectionTest.java:785:77:785:84 | source(...) : Object | LogInjectionTest.java:785:68:785:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | -| LogInjectionTest.java:786:62:786:69 | source(...) : Object | LogInjectionTest.java:786:53:786:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | -| LogInjectionTest.java:787:122:787:129 | source(...) : Object | LogInjectionTest.java:787:113:787:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | -| LogInjectionTest.java:788:107:788:114 | source(...) : Object | LogInjectionTest.java:788:98:788:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | -| LogInjectionTest.java:789:92:789:99 | source(...) : Object | LogInjectionTest.java:789:83:789:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | -| LogInjectionTest.java:790:77:790:84 | source(...) : Object | LogInjectionTest.java:790:68:790:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | -| LogInjectionTest.java:791:62:791:69 | source(...) : Object | LogInjectionTest.java:791:53:791:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | -| LogInjectionTest.java:792:137:792:144 | source(...) : Object | LogInjectionTest.java:792:128:792:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | -| LogInjectionTest.java:793:122:793:129 | source(...) : Object | LogInjectionTest.java:793:113:793:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | -| LogInjectionTest.java:794:107:794:114 | source(...) : Object | LogInjectionTest.java:794:98:794:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | -| LogInjectionTest.java:795:92:795:99 | source(...) : Object | LogInjectionTest.java:795:83:795:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | -| LogInjectionTest.java:796:77:796:84 | source(...) : Object | LogInjectionTest.java:796:68:796:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | -| LogInjectionTest.java:797:62:797:69 | source(...) : Object | LogInjectionTest.java:797:53:797:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | -| LogInjectionTest.java:798:152:798:159 | source(...) : Object | LogInjectionTest.java:798:143:798:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | -| LogInjectionTest.java:799:137:799:144 | source(...) : Object | LogInjectionTest.java:799:128:799:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | -| LogInjectionTest.java:800:122:800:129 | source(...) : Object | LogInjectionTest.java:800:113:800:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | -| LogInjectionTest.java:801:107:801:114 | source(...) : Object | LogInjectionTest.java:801:98:801:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | -| LogInjectionTest.java:802:92:802:99 | source(...) : Object | LogInjectionTest.java:802:83:802:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | -| LogInjectionTest.java:803:77:803:84 | source(...) : Object | LogInjectionTest.java:803:68:803:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | -| LogInjectionTest.java:804:62:804:69 | source(...) : Object | LogInjectionTest.java:804:53:804:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | -| LogInjectionTest.java:805:167:805:174 | source(...) : Object | LogInjectionTest.java:805:158:805:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:806:152:806:159 | source(...) : Object | LogInjectionTest.java:806:143:806:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:807:137:807:144 | source(...) : Object | LogInjectionTest.java:807:128:807:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:808:122:808:129 | source(...) : Object | LogInjectionTest.java:808:113:808:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:809:107:809:114 | source(...) : Object | LogInjectionTest.java:809:98:809:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:810:92:810:99 | source(...) : Object | LogInjectionTest.java:810:83:810:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:811:77:811:84 | source(...) : Object | LogInjectionTest.java:811:68:811:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:812:62:812:69 | source(...) : Object | LogInjectionTest.java:812:53:812:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:813:182:813:189 | source(...) : Object | LogInjectionTest.java:813:173:813:189 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:814:167:814:174 | source(...) : Object | LogInjectionTest.java:814:158:814:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:815:152:815:159 | source(...) : Object | LogInjectionTest.java:815:143:815:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:816:137:816:144 | source(...) : Object | LogInjectionTest.java:816:128:816:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:817:122:817:129 | source(...) : Object | LogInjectionTest.java:817:113:817:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:818:107:818:114 | source(...) : Object | LogInjectionTest.java:818:98:818:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:819:92:819:99 | source(...) : Object | LogInjectionTest.java:819:83:819:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:820:77:820:84 | source(...) : Object | LogInjectionTest.java:820:68:820:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:821:62:821:69 | source(...) : Object | LogInjectionTest.java:821:53:821:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:822:197:822:204 | source(...) : Object | LogInjectionTest.java:822:188:822:204 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:823:182:823:189 | source(...) : Object | LogInjectionTest.java:823:173:823:189 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:824:167:824:174 | source(...) : Object | LogInjectionTest.java:824:158:824:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:825:152:825:159 | source(...) : Object | LogInjectionTest.java:825:143:825:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:826:137:826:144 | source(...) : Object | LogInjectionTest.java:826:128:826:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:827:122:827:129 | source(...) : Object | LogInjectionTest.java:827:113:827:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:828:107:828:114 | source(...) : Object | LogInjectionTest.java:828:98:828:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:829:92:829:99 | source(...) : Object | LogInjectionTest.java:829:83:829:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:830:77:830:84 | source(...) : Object | LogInjectionTest.java:830:68:830:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:831:62:831:69 | source(...) : Object | LogInjectionTest.java:831:53:831:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:832:62:832:69 | source(...) : Object | LogInjectionTest.java:832:53:832:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | -| LogInjectionTest.java:833:82:833:89 | source(...) : Object | LogInjectionTest.java:833:68:833:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | -| LogInjectionTest.java:834:62:834:69 | source(...) : Object | LogInjectionTest.java:834:53:834:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:250 | -| LogInjectionTest.java:835:67:835:74 | source(...) : Object | LogInjectionTest.java:835:53:835:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:251 | -| LogInjectionTest.java:836:67:836:74 | source(...) : Object | LogInjectionTest.java:836:53:836:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:252 | -| LogInjectionTest.java:837:56:837:63 | source(...) : Object | LogInjectionTest.java:837:38:837:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:255 | -| LogInjectionTest.java:838:56:838:63 | source(...) : Object | LogInjectionTest.java:838:38:838:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:256 | -| LogInjectionTest.java:839:48:839:55 | source(...) : Object | LogInjectionTest.java:839:38:839:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:253 | -| LogInjectionTest.java:840:48:840:55 | source(...) : Object | LogInjectionTest.java:840:38:840:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:254 | -| LogInjectionTest.java:843:47:843:54 | source(...) : Object | LogInjectionTest.java:843:38:843:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:257 | -| LogInjectionTest.java:844:47:844:54 | source(...) : Object | LogInjectionTest.java:844:38:844:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:267 | -| LogInjectionTest.java:845:53:845:75 | {...} : Object[] [[]] : Object | LogInjectionTest.java:845:53:845:75 | new Object[] | provenance | Sink:MaD:267 | -| LogInjectionTest.java:845:67:845:74 | source(...) : Object | LogInjectionTest.java:845:53:845:75 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:846:62:846:69 | source(...) : Object | LogInjectionTest.java:846:53:846:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | -| LogInjectionTest.java:847:47:847:54 | source(...) : Object | LogInjectionTest.java:847:38:847:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | -| LogInjectionTest.java:848:77:848:84 | source(...) : Object | LogInjectionTest.java:848:68:848:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:259 | -| LogInjectionTest.java:849:62:849:69 | source(...) : Object | LogInjectionTest.java:849:53:849:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:259 | -| LogInjectionTest.java:850:47:850:54 | source(...) : Object | LogInjectionTest.java:850:38:850:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:259 | -| LogInjectionTest.java:851:92:851:99 | source(...) : Object | LogInjectionTest.java:851:83:851:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | -| LogInjectionTest.java:852:77:852:84 | source(...) : Object | LogInjectionTest.java:852:68:852:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | -| LogInjectionTest.java:853:62:853:69 | source(...) : Object | LogInjectionTest.java:853:53:853:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | -| LogInjectionTest.java:854:47:854:54 | source(...) : Object | LogInjectionTest.java:854:38:854:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | -| LogInjectionTest.java:855:107:855:114 | source(...) : Object | LogInjectionTest.java:855:98:855:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | -| LogInjectionTest.java:856:92:856:99 | source(...) : Object | LogInjectionTest.java:856:83:856:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | -| LogInjectionTest.java:857:77:857:84 | source(...) : Object | LogInjectionTest.java:857:68:857:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | -| LogInjectionTest.java:858:62:858:69 | source(...) : Object | LogInjectionTest.java:858:53:858:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | -| LogInjectionTest.java:859:47:859:54 | source(...) : Object | LogInjectionTest.java:859:38:859:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | -| LogInjectionTest.java:860:122:860:129 | source(...) : Object | LogInjectionTest.java:860:113:860:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | -| LogInjectionTest.java:861:107:861:114 | source(...) : Object | LogInjectionTest.java:861:98:861:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | -| LogInjectionTest.java:862:92:862:99 | source(...) : Object | LogInjectionTest.java:862:83:862:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | -| LogInjectionTest.java:863:77:863:84 | source(...) : Object | LogInjectionTest.java:863:68:863:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | -| LogInjectionTest.java:864:62:864:69 | source(...) : Object | LogInjectionTest.java:864:53:864:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | -| LogInjectionTest.java:865:47:865:54 | source(...) : Object | LogInjectionTest.java:865:38:865:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | -| LogInjectionTest.java:866:137:866:144 | source(...) : Object | LogInjectionTest.java:866:128:866:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | -| LogInjectionTest.java:867:122:867:129 | source(...) : Object | LogInjectionTest.java:867:113:867:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | -| LogInjectionTest.java:868:107:868:114 | source(...) : Object | LogInjectionTest.java:868:98:868:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | -| LogInjectionTest.java:869:92:869:99 | source(...) : Object | LogInjectionTest.java:869:83:869:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | -| LogInjectionTest.java:870:77:870:84 | source(...) : Object | LogInjectionTest.java:870:68:870:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | -| LogInjectionTest.java:871:62:871:69 | source(...) : Object | LogInjectionTest.java:871:53:871:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | -| LogInjectionTest.java:872:47:872:54 | source(...) : Object | LogInjectionTest.java:872:38:872:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | -| LogInjectionTest.java:873:152:873:159 | source(...) : Object | LogInjectionTest.java:873:143:873:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:874:137:874:144 | source(...) : Object | LogInjectionTest.java:874:128:874:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:875:122:875:129 | source(...) : Object | LogInjectionTest.java:875:113:875:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:876:107:876:114 | source(...) : Object | LogInjectionTest.java:876:98:876:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:877:92:877:99 | source(...) : Object | LogInjectionTest.java:877:83:877:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:878:77:878:84 | source(...) : Object | LogInjectionTest.java:878:68:878:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:879:62:879:69 | source(...) : Object | LogInjectionTest.java:879:53:879:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:880:47:880:54 | source(...) : Object | LogInjectionTest.java:880:38:880:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:881:167:881:174 | source(...) : Object | LogInjectionTest.java:881:158:881:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:882:152:882:159 | source(...) : Object | LogInjectionTest.java:882:143:882:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:883:137:883:144 | source(...) : Object | LogInjectionTest.java:883:128:883:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:884:122:884:129 | source(...) : Object | LogInjectionTest.java:884:113:884:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:885:107:885:114 | source(...) : Object | LogInjectionTest.java:885:98:885:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:886:92:886:99 | source(...) : Object | LogInjectionTest.java:886:83:886:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:887:77:887:84 | source(...) : Object | LogInjectionTest.java:887:68:887:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:888:62:888:69 | source(...) : Object | LogInjectionTest.java:888:53:888:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:889:47:889:54 | source(...) : Object | LogInjectionTest.java:889:38:889:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:890:182:890:189 | source(...) : Object | LogInjectionTest.java:890:173:890:189 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:891:167:891:174 | source(...) : Object | LogInjectionTest.java:891:158:891:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:892:152:892:159 | source(...) : Object | LogInjectionTest.java:892:143:892:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:893:137:893:144 | source(...) : Object | LogInjectionTest.java:893:128:893:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:894:122:894:129 | source(...) : Object | LogInjectionTest.java:894:113:894:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:895:107:895:114 | source(...) : Object | LogInjectionTest.java:895:98:895:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:896:92:896:99 | source(...) : Object | LogInjectionTest.java:896:83:896:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:897:77:897:84 | source(...) : Object | LogInjectionTest.java:897:68:897:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:898:62:898:69 | source(...) : Object | LogInjectionTest.java:898:53:898:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:899:47:899:54 | source(...) : Object | LogInjectionTest.java:899:38:899:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:900:47:900:54 | source(...) : Object | LogInjectionTest.java:900:38:900:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | -| LogInjectionTest.java:901:67:901:74 | source(...) : Object | LogInjectionTest.java:901:53:901:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | -| LogInjectionTest.java:902:47:902:54 | source(...) : Object | LogInjectionTest.java:902:38:902:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:268 | -| LogInjectionTest.java:903:52:903:59 | source(...) : Object | LogInjectionTest.java:903:38:903:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:269 | -| LogInjectionTest.java:904:52:904:59 | source(...) : Object | LogInjectionTest.java:904:38:904:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:270 | -| LogInjectionTest.java:905:41:905:48 | source(...) : Object | LogInjectionTest.java:905:26:905:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:274 | -| LogInjectionTest.java:906:41:906:48 | source(...) : Object | LogInjectionTest.java:906:26:906:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:275 | -| LogInjectionTest.java:907:56:907:63 | source(...) : Object | LogInjectionTest.java:907:41:907:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:276 | -| LogInjectionTest.java:908:56:908:63 | source(...) : Object | LogInjectionTest.java:908:41:908:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:277 | -| LogInjectionTest.java:909:51:909:58 | source(...) : Object | LogInjectionTest.java:909:41:909:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:278 | -| LogInjectionTest.java:910:59:910:66 | source(...) : Object | LogInjectionTest.java:910:41:910:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:279 | -| LogInjectionTest.java:911:59:911:66 | source(...) : Object | LogInjectionTest.java:911:41:911:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:280 | -| LogInjectionTest.java:913:50:913:57 | source(...) : Object | LogInjectionTest.java:913:41:913:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:281 | -| LogInjectionTest.java:914:50:914:57 | source(...) : Object | LogInjectionTest.java:914:41:914:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:291 | -| LogInjectionTest.java:915:56:915:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:915:56:915:78 | new Object[] | provenance | Sink:MaD:291 | -| LogInjectionTest.java:915:70:915:77 | source(...) : Object | LogInjectionTest.java:915:56:915:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:916:65:916:72 | source(...) : Object | LogInjectionTest.java:916:56:916:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | -| LogInjectionTest.java:917:50:917:57 | source(...) : Object | LogInjectionTest.java:917:41:917:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | -| LogInjectionTest.java:918:80:918:87 | source(...) : Object | LogInjectionTest.java:918:71:918:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:283 | -| LogInjectionTest.java:919:65:919:72 | source(...) : Object | LogInjectionTest.java:919:56:919:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:283 | -| LogInjectionTest.java:920:50:920:57 | source(...) : Object | LogInjectionTest.java:920:41:920:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:283 | -| LogInjectionTest.java:921:95:921:102 | source(...) : Object | LogInjectionTest.java:921:86:921:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | -| LogInjectionTest.java:922:80:922:87 | source(...) : Object | LogInjectionTest.java:922:71:922:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | -| LogInjectionTest.java:923:65:923:72 | source(...) : Object | LogInjectionTest.java:923:56:923:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | -| LogInjectionTest.java:924:50:924:57 | source(...) : Object | LogInjectionTest.java:924:41:924:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | -| LogInjectionTest.java:925:110:925:117 | source(...) : Object | LogInjectionTest.java:925:101:925:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | -| LogInjectionTest.java:926:95:926:102 | source(...) : Object | LogInjectionTest.java:926:86:926:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | -| LogInjectionTest.java:927:80:927:87 | source(...) : Object | LogInjectionTest.java:927:71:927:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | -| LogInjectionTest.java:928:65:928:72 | source(...) : Object | LogInjectionTest.java:928:56:928:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | -| LogInjectionTest.java:929:50:929:57 | source(...) : Object | LogInjectionTest.java:929:41:929:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | -| LogInjectionTest.java:930:125:930:132 | source(...) : Object | LogInjectionTest.java:930:116:930:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | -| LogInjectionTest.java:931:110:931:117 | source(...) : Object | LogInjectionTest.java:931:101:931:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | -| LogInjectionTest.java:932:95:932:102 | source(...) : Object | LogInjectionTest.java:932:86:932:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | -| LogInjectionTest.java:933:80:933:87 | source(...) : Object | LogInjectionTest.java:933:71:933:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | -| LogInjectionTest.java:934:65:934:72 | source(...) : Object | LogInjectionTest.java:934:56:934:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | -| LogInjectionTest.java:935:50:935:57 | source(...) : Object | LogInjectionTest.java:935:41:935:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | -| LogInjectionTest.java:936:140:936:147 | source(...) : Object | LogInjectionTest.java:936:131:936:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | -| LogInjectionTest.java:937:125:937:132 | source(...) : Object | LogInjectionTest.java:937:116:937:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | -| LogInjectionTest.java:938:110:938:117 | source(...) : Object | LogInjectionTest.java:938:101:938:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | -| LogInjectionTest.java:939:95:939:102 | source(...) : Object | LogInjectionTest.java:939:86:939:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | -| LogInjectionTest.java:940:80:940:87 | source(...) : Object | LogInjectionTest.java:940:71:940:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | -| LogInjectionTest.java:941:65:941:72 | source(...) : Object | LogInjectionTest.java:941:56:941:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | -| LogInjectionTest.java:942:50:942:57 | source(...) : Object | LogInjectionTest.java:942:41:942:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | -| LogInjectionTest.java:943:155:943:162 | source(...) : Object | LogInjectionTest.java:943:146:943:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:944:140:944:147 | source(...) : Object | LogInjectionTest.java:944:131:944:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:945:125:945:132 | source(...) : Object | LogInjectionTest.java:945:116:945:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:946:110:946:117 | source(...) : Object | LogInjectionTest.java:946:101:946:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:947:95:947:102 | source(...) : Object | LogInjectionTest.java:947:86:947:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:948:80:948:87 | source(...) : Object | LogInjectionTest.java:948:71:948:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:949:65:949:72 | source(...) : Object | LogInjectionTest.java:949:56:949:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:950:50:950:57 | source(...) : Object | LogInjectionTest.java:950:41:950:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:951:170:951:177 | source(...) : Object | LogInjectionTest.java:951:161:951:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:952:155:952:162 | source(...) : Object | LogInjectionTest.java:952:146:952:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:953:140:953:147 | source(...) : Object | LogInjectionTest.java:953:131:953:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:954:125:954:132 | source(...) : Object | LogInjectionTest.java:954:116:954:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:955:110:955:117 | source(...) : Object | LogInjectionTest.java:955:101:955:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:956:95:956:102 | source(...) : Object | LogInjectionTest.java:956:86:956:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:957:80:957:87 | source(...) : Object | LogInjectionTest.java:957:71:957:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:958:65:958:72 | source(...) : Object | LogInjectionTest.java:958:56:958:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:959:50:959:57 | source(...) : Object | LogInjectionTest.java:959:41:959:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:960:185:960:192 | source(...) : Object | LogInjectionTest.java:960:176:960:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:961:170:961:177 | source(...) : Object | LogInjectionTest.java:961:161:961:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:962:155:962:162 | source(...) : Object | LogInjectionTest.java:962:146:962:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:963:140:963:147 | source(...) : Object | LogInjectionTest.java:963:131:963:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:964:125:964:132 | source(...) : Object | LogInjectionTest.java:964:116:964:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:965:110:965:117 | source(...) : Object | LogInjectionTest.java:965:101:965:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:966:95:966:102 | source(...) : Object | LogInjectionTest.java:966:86:966:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:967:80:967:87 | source(...) : Object | LogInjectionTest.java:967:71:967:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:968:65:968:72 | source(...) : Object | LogInjectionTest.java:968:56:968:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:969:50:969:57 | source(...) : Object | LogInjectionTest.java:969:41:969:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:970:50:970:57 | source(...) : Object | LogInjectionTest.java:970:41:970:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | -| LogInjectionTest.java:971:70:971:77 | source(...) : Object | LogInjectionTest.java:971:56:971:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | -| LogInjectionTest.java:972:50:972:57 | source(...) : Object | LogInjectionTest.java:972:41:972:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:292 | -| LogInjectionTest.java:973:55:973:62 | source(...) : Object | LogInjectionTest.java:973:41:973:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:293 | -| LogInjectionTest.java:974:55:974:62 | source(...) : Object | LogInjectionTest.java:974:41:974:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:294 | -| LogInjectionTest.java:975:44:975:51 | source(...) : Object | LogInjectionTest.java:975:26:975:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:297 | -| LogInjectionTest.java:976:44:976:51 | source(...) : Object | LogInjectionTest.java:976:26:976:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:298 | -| LogInjectionTest.java:977:36:977:43 | source(...) : Object | LogInjectionTest.java:977:26:977:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:295 | -| LogInjectionTest.java:978:36:978:43 | source(...) : Object | LogInjectionTest.java:978:26:978:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:296 | -| LogInjectionTest.java:981:35:981:42 | source(...) : Object | LogInjectionTest.java:981:26:981:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:299 | -| LogInjectionTest.java:982:35:982:42 | source(...) : Object | LogInjectionTest.java:982:26:982:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:309 | -| LogInjectionTest.java:983:41:983:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:983:41:983:63 | new Object[] | provenance | Sink:MaD:309 | -| LogInjectionTest.java:983:55:983:62 | source(...) : Object | LogInjectionTest.java:983:41:983:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:984:50:984:57 | source(...) : Object | LogInjectionTest.java:984:41:984:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | -| LogInjectionTest.java:985:35:985:42 | source(...) : Object | LogInjectionTest.java:985:26:985:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | -| LogInjectionTest.java:986:65:986:72 | source(...) : Object | LogInjectionTest.java:986:56:986:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:301 | -| LogInjectionTest.java:987:50:987:57 | source(...) : Object | LogInjectionTest.java:987:41:987:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:301 | -| LogInjectionTest.java:988:35:988:42 | source(...) : Object | LogInjectionTest.java:988:26:988:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:301 | -| LogInjectionTest.java:989:80:989:87 | source(...) : Object | LogInjectionTest.java:989:71:989:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | -| LogInjectionTest.java:990:65:990:72 | source(...) : Object | LogInjectionTest.java:990:56:990:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | -| LogInjectionTest.java:991:50:991:57 | source(...) : Object | LogInjectionTest.java:991:41:991:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | -| LogInjectionTest.java:992:35:992:42 | source(...) : Object | LogInjectionTest.java:992:26:992:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | -| LogInjectionTest.java:993:95:993:102 | source(...) : Object | LogInjectionTest.java:993:86:993:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | -| LogInjectionTest.java:994:80:994:87 | source(...) : Object | LogInjectionTest.java:994:71:994:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | -| LogInjectionTest.java:995:65:995:72 | source(...) : Object | LogInjectionTest.java:995:56:995:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | -| LogInjectionTest.java:996:50:996:57 | source(...) : Object | LogInjectionTest.java:996:41:996:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | -| LogInjectionTest.java:997:35:997:42 | source(...) : Object | LogInjectionTest.java:997:26:997:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | -| LogInjectionTest.java:998:110:998:117 | source(...) : Object | LogInjectionTest.java:998:101:998:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | -| LogInjectionTest.java:999:95:999:102 | source(...) : Object | LogInjectionTest.java:999:86:999:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | -| LogInjectionTest.java:1000:80:1000:87 | source(...) : Object | LogInjectionTest.java:1000:71:1000:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | -| LogInjectionTest.java:1001:65:1001:72 | source(...) : Object | LogInjectionTest.java:1001:56:1001:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | -| LogInjectionTest.java:1002:50:1002:57 | source(...) : Object | LogInjectionTest.java:1002:41:1002:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | -| LogInjectionTest.java:1003:35:1003:42 | source(...) : Object | LogInjectionTest.java:1003:26:1003:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | -| LogInjectionTest.java:1004:125:1004:132 | source(...) : Object | LogInjectionTest.java:1004:116:1004:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | -| LogInjectionTest.java:1005:110:1005:117 | source(...) : Object | LogInjectionTest.java:1005:101:1005:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | -| LogInjectionTest.java:1006:95:1006:102 | source(...) : Object | LogInjectionTest.java:1006:86:1006:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | -| LogInjectionTest.java:1007:80:1007:87 | source(...) : Object | LogInjectionTest.java:1007:71:1007:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | -| LogInjectionTest.java:1008:65:1008:72 | source(...) : Object | LogInjectionTest.java:1008:56:1008:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | -| LogInjectionTest.java:1009:50:1009:57 | source(...) : Object | LogInjectionTest.java:1009:41:1009:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | -| LogInjectionTest.java:1010:35:1010:42 | source(...) : Object | LogInjectionTest.java:1010:26:1010:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | -| LogInjectionTest.java:1011:140:1011:147 | source(...) : Object | LogInjectionTest.java:1011:131:1011:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1012:125:1012:132 | source(...) : Object | LogInjectionTest.java:1012:116:1012:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1013:110:1013:117 | source(...) : Object | LogInjectionTest.java:1013:101:1013:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1014:95:1014:102 | source(...) : Object | LogInjectionTest.java:1014:86:1014:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1015:80:1015:87 | source(...) : Object | LogInjectionTest.java:1015:71:1015:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1016:65:1016:72 | source(...) : Object | LogInjectionTest.java:1016:56:1016:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1017:50:1017:57 | source(...) : Object | LogInjectionTest.java:1017:41:1017:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1018:35:1018:42 | source(...) : Object | LogInjectionTest.java:1018:26:1018:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1019:155:1019:162 | source(...) : Object | LogInjectionTest.java:1019:146:1019:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1020:140:1020:147 | source(...) : Object | LogInjectionTest.java:1020:131:1020:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1021:125:1021:132 | source(...) : Object | LogInjectionTest.java:1021:116:1021:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1022:110:1022:117 | source(...) : Object | LogInjectionTest.java:1022:101:1022:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1023:95:1023:102 | source(...) : Object | LogInjectionTest.java:1023:86:1023:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1024:80:1024:87 | source(...) : Object | LogInjectionTest.java:1024:71:1024:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1025:65:1025:72 | source(...) : Object | LogInjectionTest.java:1025:56:1025:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1026:50:1026:57 | source(...) : Object | LogInjectionTest.java:1026:41:1026:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1027:35:1027:42 | source(...) : Object | LogInjectionTest.java:1027:26:1027:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1028:170:1028:177 | source(...) : Object | LogInjectionTest.java:1028:161:1028:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1029:155:1029:162 | source(...) : Object | LogInjectionTest.java:1029:146:1029:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1030:140:1030:147 | source(...) : Object | LogInjectionTest.java:1030:131:1030:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1031:125:1031:132 | source(...) : Object | LogInjectionTest.java:1031:116:1031:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1032:110:1032:117 | source(...) : Object | LogInjectionTest.java:1032:101:1032:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1033:95:1033:102 | source(...) : Object | LogInjectionTest.java:1033:86:1033:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1034:80:1034:87 | source(...) : Object | LogInjectionTest.java:1034:71:1034:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1035:65:1035:72 | source(...) : Object | LogInjectionTest.java:1035:56:1035:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1036:50:1036:57 | source(...) : Object | LogInjectionTest.java:1036:41:1036:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1037:35:1037:42 | source(...) : Object | LogInjectionTest.java:1037:26:1037:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1038:35:1038:42 | source(...) : Object | LogInjectionTest.java:1038:26:1038:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | -| LogInjectionTest.java:1039:55:1039:62 | source(...) : Object | LogInjectionTest.java:1039:41:1039:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | -| LogInjectionTest.java:1040:35:1040:42 | source(...) : Object | LogInjectionTest.java:1040:26:1040:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:310 | -| LogInjectionTest.java:1041:40:1041:47 | source(...) : Object | LogInjectionTest.java:1041:26:1041:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:311 | -| LogInjectionTest.java:1042:40:1042:47 | source(...) : Object | LogInjectionTest.java:1042:26:1042:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:312 | -| LogInjectionTest.java:1043:40:1043:47 | source(...) : Object | LogInjectionTest.java:1043:25:1043:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:321 | -| LogInjectionTest.java:1044:40:1044:47 | source(...) : Object | LogInjectionTest.java:1044:25:1044:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:322 | -| LogInjectionTest.java:1045:55:1045:62 | source(...) : Object | LogInjectionTest.java:1045:40:1045:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:323 | -| LogInjectionTest.java:1046:55:1046:62 | source(...) : Object | LogInjectionTest.java:1046:40:1046:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:324 | -| LogInjectionTest.java:1047:50:1047:57 | source(...) : Object | LogInjectionTest.java:1047:40:1047:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:325 | -| LogInjectionTest.java:1048:58:1048:65 | source(...) : Object | LogInjectionTest.java:1048:40:1048:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:326 | -| LogInjectionTest.java:1049:58:1049:65 | source(...) : Object | LogInjectionTest.java:1049:40:1049:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:327 | -| LogInjectionTest.java:1051:49:1051:56 | source(...) : Object | LogInjectionTest.java:1051:40:1051:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:328 | -| LogInjectionTest.java:1052:49:1052:56 | source(...) : Object | LogInjectionTest.java:1052:40:1052:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:338 | -| LogInjectionTest.java:1053:55:1053:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1053:55:1053:77 | new Object[] | provenance | Sink:MaD:338 | -| LogInjectionTest.java:1053:69:1053:76 | source(...) : Object | LogInjectionTest.java:1053:55:1053:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1054:64:1054:71 | source(...) : Object | LogInjectionTest.java:1054:55:1054:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | -| LogInjectionTest.java:1055:49:1055:56 | source(...) : Object | LogInjectionTest.java:1055:40:1055:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | -| LogInjectionTest.java:1056:79:1056:86 | source(...) : Object | LogInjectionTest.java:1056:70:1056:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:330 | -| LogInjectionTest.java:1057:64:1057:71 | source(...) : Object | LogInjectionTest.java:1057:55:1057:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:330 | -| LogInjectionTest.java:1058:49:1058:56 | source(...) : Object | LogInjectionTest.java:1058:40:1058:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:330 | -| LogInjectionTest.java:1059:94:1059:101 | source(...) : Object | LogInjectionTest.java:1059:85:1059:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | -| LogInjectionTest.java:1060:79:1060:86 | source(...) : Object | LogInjectionTest.java:1060:70:1060:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | -| LogInjectionTest.java:1061:64:1061:71 | source(...) : Object | LogInjectionTest.java:1061:55:1061:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | -| LogInjectionTest.java:1062:49:1062:56 | source(...) : Object | LogInjectionTest.java:1062:40:1062:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | -| LogInjectionTest.java:1063:109:1063:116 | source(...) : Object | LogInjectionTest.java:1063:100:1063:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | -| LogInjectionTest.java:1064:94:1064:101 | source(...) : Object | LogInjectionTest.java:1064:85:1064:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | -| LogInjectionTest.java:1065:79:1065:86 | source(...) : Object | LogInjectionTest.java:1065:70:1065:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | -| LogInjectionTest.java:1066:64:1066:71 | source(...) : Object | LogInjectionTest.java:1066:55:1066:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | -| LogInjectionTest.java:1067:49:1067:56 | source(...) : Object | LogInjectionTest.java:1067:40:1067:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | -| LogInjectionTest.java:1068:124:1068:131 | source(...) : Object | LogInjectionTest.java:1068:115:1068:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | -| LogInjectionTest.java:1069:109:1069:116 | source(...) : Object | LogInjectionTest.java:1069:100:1069:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | -| LogInjectionTest.java:1070:94:1070:101 | source(...) : Object | LogInjectionTest.java:1070:85:1070:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | -| LogInjectionTest.java:1071:79:1071:86 | source(...) : Object | LogInjectionTest.java:1071:70:1071:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | -| LogInjectionTest.java:1072:64:1072:71 | source(...) : Object | LogInjectionTest.java:1072:55:1072:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | -| LogInjectionTest.java:1073:49:1073:56 | source(...) : Object | LogInjectionTest.java:1073:40:1073:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | -| LogInjectionTest.java:1074:139:1074:146 | source(...) : Object | LogInjectionTest.java:1074:130:1074:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | -| LogInjectionTest.java:1075:124:1075:131 | source(...) : Object | LogInjectionTest.java:1075:115:1075:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | -| LogInjectionTest.java:1076:109:1076:116 | source(...) : Object | LogInjectionTest.java:1076:100:1076:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | -| LogInjectionTest.java:1077:94:1077:101 | source(...) : Object | LogInjectionTest.java:1077:85:1077:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | -| LogInjectionTest.java:1078:79:1078:86 | source(...) : Object | LogInjectionTest.java:1078:70:1078:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | -| LogInjectionTest.java:1079:64:1079:71 | source(...) : Object | LogInjectionTest.java:1079:55:1079:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | -| LogInjectionTest.java:1080:49:1080:56 | source(...) : Object | LogInjectionTest.java:1080:40:1080:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | -| LogInjectionTest.java:1081:154:1081:161 | source(...) : Object | LogInjectionTest.java:1081:145:1081:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1082:139:1082:146 | source(...) : Object | LogInjectionTest.java:1082:130:1082:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1083:124:1083:131 | source(...) : Object | LogInjectionTest.java:1083:115:1083:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1084:109:1084:116 | source(...) : Object | LogInjectionTest.java:1084:100:1084:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1085:94:1085:101 | source(...) : Object | LogInjectionTest.java:1085:85:1085:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1086:79:1086:86 | source(...) : Object | LogInjectionTest.java:1086:70:1086:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1087:64:1087:71 | source(...) : Object | LogInjectionTest.java:1087:55:1087:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1088:49:1088:56 | source(...) : Object | LogInjectionTest.java:1088:40:1088:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1089:169:1089:176 | source(...) : Object | LogInjectionTest.java:1089:160:1089:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1090:154:1090:161 | source(...) : Object | LogInjectionTest.java:1090:145:1090:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1091:139:1091:146 | source(...) : Object | LogInjectionTest.java:1091:130:1091:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1092:124:1092:131 | source(...) : Object | LogInjectionTest.java:1092:115:1092:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1093:109:1093:116 | source(...) : Object | LogInjectionTest.java:1093:100:1093:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1094:94:1094:101 | source(...) : Object | LogInjectionTest.java:1094:85:1094:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1095:79:1095:86 | source(...) : Object | LogInjectionTest.java:1095:70:1095:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1096:64:1096:71 | source(...) : Object | LogInjectionTest.java:1096:55:1096:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1097:49:1097:56 | source(...) : Object | LogInjectionTest.java:1097:40:1097:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1098:184:1098:191 | source(...) : Object | LogInjectionTest.java:1098:175:1098:191 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1099:169:1099:176 | source(...) : Object | LogInjectionTest.java:1099:160:1099:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1100:154:1100:161 | source(...) : Object | LogInjectionTest.java:1100:145:1100:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1101:139:1101:146 | source(...) : Object | LogInjectionTest.java:1101:130:1101:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1102:124:1102:131 | source(...) : Object | LogInjectionTest.java:1102:115:1102:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1103:109:1103:116 | source(...) : Object | LogInjectionTest.java:1103:100:1103:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1104:94:1104:101 | source(...) : Object | LogInjectionTest.java:1104:85:1104:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1105:79:1105:86 | source(...) : Object | LogInjectionTest.java:1105:70:1105:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1106:64:1106:71 | source(...) : Object | LogInjectionTest.java:1106:55:1106:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1107:49:1107:56 | source(...) : Object | LogInjectionTest.java:1107:40:1107:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1108:49:1108:56 | source(...) : Object | LogInjectionTest.java:1108:40:1108:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | -| LogInjectionTest.java:1109:69:1109:76 | source(...) : Object | LogInjectionTest.java:1109:55:1109:76 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | -| LogInjectionTest.java:1110:49:1110:56 | source(...) : Object | LogInjectionTest.java:1110:40:1110:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:339 | -| LogInjectionTest.java:1111:54:1111:61 | source(...) : Object | LogInjectionTest.java:1111:40:1111:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:340 | -| LogInjectionTest.java:1112:54:1112:61 | source(...) : Object | LogInjectionTest.java:1112:40:1112:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:341 | -| LogInjectionTest.java:1113:43:1113:50 | source(...) : Object | LogInjectionTest.java:1113:25:1113:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:344 | -| LogInjectionTest.java:1114:43:1114:50 | source(...) : Object | LogInjectionTest.java:1114:25:1114:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:345 | -| LogInjectionTest.java:1115:35:1115:42 | source(...) : Object | LogInjectionTest.java:1115:25:1115:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:342 | -| LogInjectionTest.java:1116:35:1116:42 | source(...) : Object | LogInjectionTest.java:1116:25:1116:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:343 | -| LogInjectionTest.java:1119:34:1119:41 | source(...) : Object | LogInjectionTest.java:1119:25:1119:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:346 | -| LogInjectionTest.java:1120:34:1120:41 | source(...) : Object | LogInjectionTest.java:1120:25:1120:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:356 | -| LogInjectionTest.java:1121:40:1121:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1121:40:1121:62 | new Object[] | provenance | Sink:MaD:356 | -| LogInjectionTest.java:1121:54:1121:61 | source(...) : Object | LogInjectionTest.java:1121:40:1121:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1122:49:1122:56 | source(...) : Object | LogInjectionTest.java:1122:40:1122:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | -| LogInjectionTest.java:1123:34:1123:41 | source(...) : Object | LogInjectionTest.java:1123:25:1123:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | -| LogInjectionTest.java:1124:64:1124:71 | source(...) : Object | LogInjectionTest.java:1124:55:1124:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:348 | -| LogInjectionTest.java:1125:49:1125:56 | source(...) : Object | LogInjectionTest.java:1125:40:1125:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:348 | -| LogInjectionTest.java:1126:34:1126:41 | source(...) : Object | LogInjectionTest.java:1126:25:1126:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:348 | -| LogInjectionTest.java:1127:79:1127:86 | source(...) : Object | LogInjectionTest.java:1127:70:1127:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | -| LogInjectionTest.java:1128:64:1128:71 | source(...) : Object | LogInjectionTest.java:1128:55:1128:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | -| LogInjectionTest.java:1129:49:1129:56 | source(...) : Object | LogInjectionTest.java:1129:40:1129:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | -| LogInjectionTest.java:1130:34:1130:41 | source(...) : Object | LogInjectionTest.java:1130:25:1130:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | -| LogInjectionTest.java:1131:94:1131:101 | source(...) : Object | LogInjectionTest.java:1131:85:1131:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | -| LogInjectionTest.java:1132:79:1132:86 | source(...) : Object | LogInjectionTest.java:1132:70:1132:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | -| LogInjectionTest.java:1133:64:1133:71 | source(...) : Object | LogInjectionTest.java:1133:55:1133:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | -| LogInjectionTest.java:1134:49:1134:56 | source(...) : Object | LogInjectionTest.java:1134:40:1134:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | -| LogInjectionTest.java:1135:34:1135:41 | source(...) : Object | LogInjectionTest.java:1135:25:1135:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | -| LogInjectionTest.java:1136:109:1136:116 | source(...) : Object | LogInjectionTest.java:1136:100:1136:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | -| LogInjectionTest.java:1137:94:1137:101 | source(...) : Object | LogInjectionTest.java:1137:85:1137:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | -| LogInjectionTest.java:1138:79:1138:86 | source(...) : Object | LogInjectionTest.java:1138:70:1138:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | -| LogInjectionTest.java:1139:64:1139:71 | source(...) : Object | LogInjectionTest.java:1139:55:1139:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | -| LogInjectionTest.java:1140:49:1140:56 | source(...) : Object | LogInjectionTest.java:1140:40:1140:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | -| LogInjectionTest.java:1141:34:1141:41 | source(...) : Object | LogInjectionTest.java:1141:25:1141:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | -| LogInjectionTest.java:1142:124:1142:131 | source(...) : Object | LogInjectionTest.java:1142:115:1142:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | -| LogInjectionTest.java:1143:109:1143:116 | source(...) : Object | LogInjectionTest.java:1143:100:1143:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | -| LogInjectionTest.java:1144:94:1144:101 | source(...) : Object | LogInjectionTest.java:1144:85:1144:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | -| LogInjectionTest.java:1145:79:1145:86 | source(...) : Object | LogInjectionTest.java:1145:70:1145:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | -| LogInjectionTest.java:1146:64:1146:71 | source(...) : Object | LogInjectionTest.java:1146:55:1146:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | -| LogInjectionTest.java:1147:49:1147:56 | source(...) : Object | LogInjectionTest.java:1147:40:1147:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | -| LogInjectionTest.java:1148:34:1148:41 | source(...) : Object | LogInjectionTest.java:1148:25:1148:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | -| LogInjectionTest.java:1149:139:1149:146 | source(...) : Object | LogInjectionTest.java:1149:130:1149:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1150:124:1150:131 | source(...) : Object | LogInjectionTest.java:1150:115:1150:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1151:109:1151:116 | source(...) : Object | LogInjectionTest.java:1151:100:1151:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1152:94:1152:101 | source(...) : Object | LogInjectionTest.java:1152:85:1152:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1153:79:1153:86 | source(...) : Object | LogInjectionTest.java:1153:70:1153:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1154:64:1154:71 | source(...) : Object | LogInjectionTest.java:1154:55:1154:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1155:49:1155:56 | source(...) : Object | LogInjectionTest.java:1155:40:1155:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1156:34:1156:41 | source(...) : Object | LogInjectionTest.java:1156:25:1156:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1157:154:1157:161 | source(...) : Object | LogInjectionTest.java:1157:145:1157:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1158:139:1158:146 | source(...) : Object | LogInjectionTest.java:1158:130:1158:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1159:124:1159:131 | source(...) : Object | LogInjectionTest.java:1159:115:1159:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1160:109:1160:116 | source(...) : Object | LogInjectionTest.java:1160:100:1160:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1161:94:1161:101 | source(...) : Object | LogInjectionTest.java:1161:85:1161:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1162:79:1162:86 | source(...) : Object | LogInjectionTest.java:1162:70:1162:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1163:64:1163:71 | source(...) : Object | LogInjectionTest.java:1163:55:1163:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1164:49:1164:56 | source(...) : Object | LogInjectionTest.java:1164:40:1164:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1165:34:1165:41 | source(...) : Object | LogInjectionTest.java:1165:25:1165:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1166:169:1166:176 | source(...) : Object | LogInjectionTest.java:1166:160:1166:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1167:154:1167:161 | source(...) : Object | LogInjectionTest.java:1167:145:1167:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1168:139:1168:146 | source(...) : Object | LogInjectionTest.java:1168:130:1168:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1169:124:1169:131 | source(...) : Object | LogInjectionTest.java:1169:115:1169:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1170:109:1170:116 | source(...) : Object | LogInjectionTest.java:1170:100:1170:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1171:94:1171:101 | source(...) : Object | LogInjectionTest.java:1171:85:1171:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1172:79:1172:86 | source(...) : Object | LogInjectionTest.java:1172:70:1172:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1173:64:1173:71 | source(...) : Object | LogInjectionTest.java:1173:55:1173:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1174:49:1174:56 | source(...) : Object | LogInjectionTest.java:1174:40:1174:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1175:34:1175:41 | source(...) : Object | LogInjectionTest.java:1175:25:1175:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1176:34:1176:41 | source(...) : Object | LogInjectionTest.java:1176:25:1176:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | -| LogInjectionTest.java:1177:54:1177:61 | source(...) : Object | LogInjectionTest.java:1177:40:1177:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | -| LogInjectionTest.java:1178:34:1178:41 | source(...) : Object | LogInjectionTest.java:1178:25:1178:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:357 | -| LogInjectionTest.java:1179:39:1179:46 | source(...) : Object | LogInjectionTest.java:1179:25:1179:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:358 | -| LogInjectionTest.java:1180:39:1180:46 | source(...) : Object | LogInjectionTest.java:1180:25:1180:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:359 | -| LogInjectionTest.java:1182:65:1182:72 | source(...) : Object | LogInjectionTest.java:1182:55:1182:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:271 | -| LogInjectionTest.java:1183:48:1183:55 | source(...) : Object | LogInjectionTest.java:1183:39:1183:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:272 | -| LogInjectionTest.java:1184:45:1184:67 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1184:45:1184:67 | new Object[] | provenance | Sink:MaD:272 | -| LogInjectionTest.java:1184:59:1184:66 | source(...) : Object | LogInjectionTest.java:1184:45:1184:67 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1185:42:1185:49 | source(...) : Object | LogInjectionTest.java:1185:33:1185:49 | (...)... | provenance | Src:MaD:536 Sink:MaD:273 | -| LogInjectionTest.java:1186:39:1186:61 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1186:39:1186:61 | new Object[] | provenance | Sink:MaD:273 | -| LogInjectionTest.java:1186:53:1186:60 | source(...) : Object | LogInjectionTest.java:1186:39:1186:61 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1187:41:1187:48 | source(...) : Object | LogInjectionTest.java:1187:31:1187:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:313 | -| LogInjectionTest.java:1188:40:1188:47 | source(...) : Object | LogInjectionTest.java:1188:31:1188:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:314 | -| LogInjectionTest.java:1189:46:1189:68 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1189:46:1189:68 | new Object[] | provenance | Sink:MaD:314 | -| LogInjectionTest.java:1189:60:1189:67 | source(...) : Object | LogInjectionTest.java:1189:46:1189:68 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1190:40:1190:47 | source(...) : Object | LogInjectionTest.java:1190:31:1190:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:315 | -| LogInjectionTest.java:1191:46:1191:67 | (...)... : Supplier | LogInjectionTest.java:1191:13:1191:68 | new ..[] { .. } | provenance | Sink:MaD:315 | -| LogInjectionTest.java:1191:60:1191:67 | source(...) : Object | LogInjectionTest.java:1191:46:1191:67 | (...)... : Supplier | provenance | Src:MaD:536 | -| LogInjectionTest.java:1192:31:1192:52 | (...)... : Supplier | LogInjectionTest.java:1192:13:1192:53 | new ..[] { .. } | provenance | Sink:MaD:316 | -| LogInjectionTest.java:1192:45:1192:52 | source(...) : Object | LogInjectionTest.java:1192:31:1192:52 | (...)... : Supplier | provenance | Src:MaD:536 | -| LogInjectionTest.java:1193:45:1193:52 | source(...) : Object | LogInjectionTest.java:1193:30:1193:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:317 | -| LogInjectionTest.java:1194:45:1194:52 | source(...) : Object | LogInjectionTest.java:1194:30:1194:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:318 | -| LogInjectionTest.java:1196:40:1196:47 | source(...) : Object | LogInjectionTest.java:1196:30:1196:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:319 | -| LogInjectionTest.java:1199:39:1199:46 | source(...) : Object | LogInjectionTest.java:1199:30:1199:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:320 | -| LogInjectionTest.java:1204:40:1204:47 | source(...) : Object | LogInjectionTest.java:1204:25:1204:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:62 | -| LogInjectionTest.java:1205:35:1205:42 | source(...) : Object | LogInjectionTest.java:1205:25:1205:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:63 | -| LogInjectionTest.java:1207:34:1207:41 | source(...) : Object | LogInjectionTest.java:1207:25:1207:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:65 | -| LogInjectionTest.java:1208:34:1208:41 | source(...) : Object | LogInjectionTest.java:1208:25:1208:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:75 | -| LogInjectionTest.java:1209:40:1209:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1209:40:1209:62 | new Object[] | provenance | Sink:MaD:75 | -| LogInjectionTest.java:1209:54:1209:61 | source(...) : Object | LogInjectionTest.java:1209:40:1209:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1212:49:1212:56 | source(...) : Object | LogInjectionTest.java:1212:40:1212:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | -| LogInjectionTest.java:1213:34:1213:41 | source(...) : Object | LogInjectionTest.java:1213:25:1213:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | -| LogInjectionTest.java:1214:64:1214:71 | source(...) : Object | LogInjectionTest.java:1214:55:1214:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:67 | -| LogInjectionTest.java:1215:49:1215:56 | source(...) : Object | LogInjectionTest.java:1215:40:1215:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:67 | -| LogInjectionTest.java:1216:34:1216:41 | source(...) : Object | LogInjectionTest.java:1216:25:1216:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:67 | -| LogInjectionTest.java:1217:79:1217:86 | source(...) : Object | LogInjectionTest.java:1217:70:1217:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | -| LogInjectionTest.java:1218:64:1218:71 | source(...) : Object | LogInjectionTest.java:1218:55:1218:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | -| LogInjectionTest.java:1219:49:1219:56 | source(...) : Object | LogInjectionTest.java:1219:40:1219:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | -| LogInjectionTest.java:1220:34:1220:41 | source(...) : Object | LogInjectionTest.java:1220:25:1220:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | -| LogInjectionTest.java:1221:94:1221:101 | source(...) : Object | LogInjectionTest.java:1221:85:1221:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | -| LogInjectionTest.java:1222:79:1222:86 | source(...) : Object | LogInjectionTest.java:1222:70:1222:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | -| LogInjectionTest.java:1223:64:1223:71 | source(...) : Object | LogInjectionTest.java:1223:55:1223:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | -| LogInjectionTest.java:1224:49:1224:56 | source(...) : Object | LogInjectionTest.java:1224:40:1224:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | -| LogInjectionTest.java:1225:34:1225:41 | source(...) : Object | LogInjectionTest.java:1225:25:1225:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | -| LogInjectionTest.java:1226:109:1226:116 | source(...) : Object | LogInjectionTest.java:1226:100:1226:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | -| LogInjectionTest.java:1227:94:1227:101 | source(...) : Object | LogInjectionTest.java:1227:85:1227:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | -| LogInjectionTest.java:1228:79:1228:86 | source(...) : Object | LogInjectionTest.java:1228:70:1228:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | -| LogInjectionTest.java:1229:64:1229:71 | source(...) : Object | LogInjectionTest.java:1229:55:1229:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | -| LogInjectionTest.java:1230:49:1230:56 | source(...) : Object | LogInjectionTest.java:1230:40:1230:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | -| LogInjectionTest.java:1231:34:1231:41 | source(...) : Object | LogInjectionTest.java:1231:25:1231:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | -| LogInjectionTest.java:1232:124:1232:131 | source(...) : Object | LogInjectionTest.java:1232:115:1232:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | -| LogInjectionTest.java:1233:109:1233:116 | source(...) : Object | LogInjectionTest.java:1233:100:1233:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | -| LogInjectionTest.java:1234:94:1234:101 | source(...) : Object | LogInjectionTest.java:1234:85:1234:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | -| LogInjectionTest.java:1235:79:1235:86 | source(...) : Object | LogInjectionTest.java:1235:70:1235:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | -| LogInjectionTest.java:1236:64:1236:71 | source(...) : Object | LogInjectionTest.java:1236:55:1236:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | -| LogInjectionTest.java:1237:49:1237:56 | source(...) : Object | LogInjectionTest.java:1237:40:1237:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | -| LogInjectionTest.java:1238:34:1238:41 | source(...) : Object | LogInjectionTest.java:1238:25:1238:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | -| LogInjectionTest.java:1239:139:1239:146 | source(...) : Object | LogInjectionTest.java:1239:130:1239:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1240:124:1240:131 | source(...) : Object | LogInjectionTest.java:1240:115:1240:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1241:109:1241:116 | source(...) : Object | LogInjectionTest.java:1241:100:1241:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1242:94:1242:101 | source(...) : Object | LogInjectionTest.java:1242:85:1242:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1243:79:1243:86 | source(...) : Object | LogInjectionTest.java:1243:70:1243:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1244:64:1244:71 | source(...) : Object | LogInjectionTest.java:1244:55:1244:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1245:49:1245:56 | source(...) : Object | LogInjectionTest.java:1245:40:1245:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1246:34:1246:41 | source(...) : Object | LogInjectionTest.java:1246:25:1246:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1247:154:1247:161 | source(...) : Object | LogInjectionTest.java:1247:145:1247:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1248:139:1248:146 | source(...) : Object | LogInjectionTest.java:1248:130:1248:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1249:124:1249:131 | source(...) : Object | LogInjectionTest.java:1249:115:1249:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1250:109:1250:116 | source(...) : Object | LogInjectionTest.java:1250:100:1250:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1251:94:1251:101 | source(...) : Object | LogInjectionTest.java:1251:85:1251:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1252:79:1252:86 | source(...) : Object | LogInjectionTest.java:1252:70:1252:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1253:64:1253:71 | source(...) : Object | LogInjectionTest.java:1253:55:1253:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1254:49:1254:56 | source(...) : Object | LogInjectionTest.java:1254:40:1254:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1255:34:1255:41 | source(...) : Object | LogInjectionTest.java:1255:25:1255:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1256:169:1256:176 | source(...) : Object | LogInjectionTest.java:1256:160:1256:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1257:154:1257:161 | source(...) : Object | LogInjectionTest.java:1257:145:1257:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1258:139:1258:146 | source(...) : Object | LogInjectionTest.java:1258:130:1258:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1259:124:1259:131 | source(...) : Object | LogInjectionTest.java:1259:115:1259:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1260:109:1260:116 | source(...) : Object | LogInjectionTest.java:1260:100:1260:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1261:94:1261:101 | source(...) : Object | LogInjectionTest.java:1261:85:1261:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1262:79:1262:86 | source(...) : Object | LogInjectionTest.java:1262:70:1262:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1263:64:1263:71 | source(...) : Object | LogInjectionTest.java:1263:55:1263:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1264:49:1264:56 | source(...) : Object | LogInjectionTest.java:1264:40:1264:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1265:34:1265:41 | source(...) : Object | LogInjectionTest.java:1265:25:1265:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1267:34:1267:41 | source(...) : Object | LogInjectionTest.java:1267:25:1267:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | -| LogInjectionTest.java:1268:54:1268:61 | source(...) : Object | LogInjectionTest.java:1268:40:1268:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | -| LogInjectionTest.java:1269:39:1269:46 | source(...) : Object | LogInjectionTest.java:1269:25:1269:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:64 | -| LogInjectionTest.java:1289:57:1289:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1289:57:1289:79 | new Object[] | provenance | Sink:MaD:360 | -| LogInjectionTest.java:1289:71:1289:78 | source(...) : Object | LogInjectionTest.java:1289:57:1289:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1297:57:1297:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1297:57:1297:79 | new Object[] | provenance | Sink:MaD:369 | -| LogInjectionTest.java:1297:71:1297:78 | source(...) : Object | LogInjectionTest.java:1297:57:1297:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1305:57:1305:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1305:57:1305:79 | new Object[] | provenance | Sink:MaD:378 | -| LogInjectionTest.java:1305:71:1305:78 | source(...) : Object | LogInjectionTest.java:1305:57:1305:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1313:56:1313:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1313:56:1313:78 | new Object[] | provenance | Sink:MaD:387 | -| LogInjectionTest.java:1313:70:1313:77 | source(...) : Object | LogInjectionTest.java:1313:56:1313:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1321:57:1321:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1321:57:1321:79 | new Object[] | provenance | Sink:MaD:405 | -| LogInjectionTest.java:1321:71:1321:78 | source(...) : Object | LogInjectionTest.java:1321:57:1321:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1329:56:1329:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1329:56:1329:78 | new Object[] | provenance | Sink:MaD:414 | -| LogInjectionTest.java:1329:70:1329:77 | source(...) : Object | LogInjectionTest.java:1329:56:1329:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1338:94:1338:116 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1338:94:1338:116 | new Object[] | provenance | Sink:MaD:396 | -| LogInjectionTest.java:1338:108:1338:115 | source(...) : Object | LogInjectionTest.java:1338:94:1338:116 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1339:52:1339:59 | source(...) : Object | LogInjectionTest.java:1339:43:1339:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | -| LogInjectionTest.java:1340:37:1340:44 | source(...) : Object | LogInjectionTest.java:1340:28:1340:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | -| LogInjectionTest.java:1341:52:1341:59 | source(...) : Object | LogInjectionTest.java:1341:43:1341:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | -| LogInjectionTest.java:1342:37:1342:44 | source(...) : Object | LogInjectionTest.java:1342:28:1342:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | -| LogInjectionTest.java:1343:37:1343:44 | source(...) : Object | LogInjectionTest.java:1343:28:1343:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:364 | -| LogInjectionTest.java:1344:37:1344:44 | source(...) : Object | LogInjectionTest.java:1344:28:1344:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:368 | -| LogInjectionTest.java:1345:43:1345:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1345:43:1345:65 | new Object[] | provenance | Sink:MaD:364 | -| LogInjectionTest.java:1345:57:1345:64 | source(...) : Object | LogInjectionTest.java:1345:43:1345:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1346:43:1346:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1346:43:1346:65 | new Object[] | provenance | Sink:MaD:368 | -| LogInjectionTest.java:1346:57:1346:64 | source(...) : Object | LogInjectionTest.java:1346:43:1346:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1347:67:1347:74 | source(...) : Object | LogInjectionTest.java:1347:58:1347:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | -| LogInjectionTest.java:1348:52:1348:59 | source(...) : Object | LogInjectionTest.java:1348:43:1348:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | -| LogInjectionTest.java:1349:37:1349:44 | source(...) : Object | LogInjectionTest.java:1349:28:1349:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | -| LogInjectionTest.java:1350:67:1350:74 | source(...) : Object | LogInjectionTest.java:1350:58:1350:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | -| LogInjectionTest.java:1351:52:1351:59 | source(...) : Object | LogInjectionTest.java:1351:43:1351:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | -| LogInjectionTest.java:1352:37:1352:44 | source(...) : Object | LogInjectionTest.java:1352:28:1352:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | -| LogInjectionTest.java:1353:82:1353:89 | source(...) : Object | LogInjectionTest.java:1353:73:1353:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1354:67:1354:74 | source(...) : Object | LogInjectionTest.java:1354:58:1354:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1355:52:1355:59 | source(...) : Object | LogInjectionTest.java:1355:43:1355:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1356:37:1356:44 | source(...) : Object | LogInjectionTest.java:1356:28:1356:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1357:82:1357:89 | source(...) : Object | LogInjectionTest.java:1357:73:1357:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1358:67:1358:74 | source(...) : Object | LogInjectionTest.java:1358:58:1358:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1359:52:1359:59 | source(...) : Object | LogInjectionTest.java:1359:43:1359:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1360:37:1360:44 | source(...) : Object | LogInjectionTest.java:1360:28:1360:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1361:52:1361:59 | source(...) : Object | LogInjectionTest.java:1361:43:1361:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | -| LogInjectionTest.java:1362:37:1362:44 | source(...) : Object | LogInjectionTest.java:1362:28:1362:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | -| LogInjectionTest.java:1363:52:1363:59 | source(...) : Object | LogInjectionTest.java:1363:43:1363:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | -| LogInjectionTest.java:1364:37:1364:44 | source(...) : Object | LogInjectionTest.java:1364:28:1364:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | -| LogInjectionTest.java:1365:37:1365:44 | source(...) : Object | LogInjectionTest.java:1365:28:1365:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:373 | -| LogInjectionTest.java:1366:37:1366:44 | source(...) : Object | LogInjectionTest.java:1366:28:1366:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:377 | -| LogInjectionTest.java:1367:43:1367:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1367:43:1367:65 | new Object[] | provenance | Sink:MaD:373 | -| LogInjectionTest.java:1367:57:1367:64 | source(...) : Object | LogInjectionTest.java:1367:43:1367:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1368:43:1368:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1368:43:1368:65 | new Object[] | provenance | Sink:MaD:377 | -| LogInjectionTest.java:1368:57:1368:64 | source(...) : Object | LogInjectionTest.java:1368:43:1368:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1369:67:1369:74 | source(...) : Object | LogInjectionTest.java:1369:58:1369:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | -| LogInjectionTest.java:1370:52:1370:59 | source(...) : Object | LogInjectionTest.java:1370:43:1370:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | -| LogInjectionTest.java:1371:37:1371:44 | source(...) : Object | LogInjectionTest.java:1371:28:1371:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | -| LogInjectionTest.java:1372:67:1372:74 | source(...) : Object | LogInjectionTest.java:1372:58:1372:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | -| LogInjectionTest.java:1373:52:1373:59 | source(...) : Object | LogInjectionTest.java:1373:43:1373:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | -| LogInjectionTest.java:1374:37:1374:44 | source(...) : Object | LogInjectionTest.java:1374:28:1374:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | -| LogInjectionTest.java:1375:82:1375:89 | source(...) : Object | LogInjectionTest.java:1375:73:1375:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1376:67:1376:74 | source(...) : Object | LogInjectionTest.java:1376:58:1376:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1377:52:1377:59 | source(...) : Object | LogInjectionTest.java:1377:43:1377:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1378:37:1378:44 | source(...) : Object | LogInjectionTest.java:1378:28:1378:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1379:82:1379:89 | source(...) : Object | LogInjectionTest.java:1379:73:1379:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1380:67:1380:74 | source(...) : Object | LogInjectionTest.java:1380:58:1380:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1381:52:1381:59 | source(...) : Object | LogInjectionTest.java:1381:43:1381:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1382:37:1382:44 | source(...) : Object | LogInjectionTest.java:1382:28:1382:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1383:52:1383:59 | source(...) : Object | LogInjectionTest.java:1383:43:1383:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | -| LogInjectionTest.java:1384:37:1384:44 | source(...) : Object | LogInjectionTest.java:1384:28:1384:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | -| LogInjectionTest.java:1385:52:1385:59 | source(...) : Object | LogInjectionTest.java:1385:43:1385:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | -| LogInjectionTest.java:1386:37:1386:44 | source(...) : Object | LogInjectionTest.java:1386:28:1386:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | -| LogInjectionTest.java:1387:37:1387:44 | source(...) : Object | LogInjectionTest.java:1387:28:1387:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:382 | -| LogInjectionTest.java:1388:37:1388:44 | source(...) : Object | LogInjectionTest.java:1388:28:1388:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:386 | -| LogInjectionTest.java:1389:43:1389:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1389:43:1389:65 | new Object[] | provenance | Sink:MaD:382 | -| LogInjectionTest.java:1389:57:1389:64 | source(...) : Object | LogInjectionTest.java:1389:43:1389:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1390:43:1390:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1390:43:1390:65 | new Object[] | provenance | Sink:MaD:386 | -| LogInjectionTest.java:1390:57:1390:64 | source(...) : Object | LogInjectionTest.java:1390:43:1390:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1391:67:1391:74 | source(...) : Object | LogInjectionTest.java:1391:58:1391:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | -| LogInjectionTest.java:1392:52:1392:59 | source(...) : Object | LogInjectionTest.java:1392:43:1392:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | -| LogInjectionTest.java:1393:37:1393:44 | source(...) : Object | LogInjectionTest.java:1393:28:1393:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | -| LogInjectionTest.java:1394:67:1394:74 | source(...) : Object | LogInjectionTest.java:1394:58:1394:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | -| LogInjectionTest.java:1395:52:1395:59 | source(...) : Object | LogInjectionTest.java:1395:43:1395:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | -| LogInjectionTest.java:1396:37:1396:44 | source(...) : Object | LogInjectionTest.java:1396:28:1396:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | -| LogInjectionTest.java:1397:82:1397:89 | source(...) : Object | LogInjectionTest.java:1397:73:1397:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1398:67:1398:74 | source(...) : Object | LogInjectionTest.java:1398:58:1398:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1399:52:1399:59 | source(...) : Object | LogInjectionTest.java:1399:43:1399:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1400:37:1400:44 | source(...) : Object | LogInjectionTest.java:1400:28:1400:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1401:82:1401:89 | source(...) : Object | LogInjectionTest.java:1401:73:1401:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1402:67:1402:74 | source(...) : Object | LogInjectionTest.java:1402:58:1402:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1403:52:1403:59 | source(...) : Object | LogInjectionTest.java:1403:43:1403:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1404:37:1404:44 | source(...) : Object | LogInjectionTest.java:1404:28:1404:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1405:51:1405:58 | source(...) : Object | LogInjectionTest.java:1405:42:1405:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | -| LogInjectionTest.java:1406:36:1406:43 | source(...) : Object | LogInjectionTest.java:1406:27:1406:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | -| LogInjectionTest.java:1407:51:1407:58 | source(...) : Object | LogInjectionTest.java:1407:42:1407:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | -| LogInjectionTest.java:1408:36:1408:43 | source(...) : Object | LogInjectionTest.java:1408:27:1408:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | -| LogInjectionTest.java:1409:36:1409:43 | source(...) : Object | LogInjectionTest.java:1409:27:1409:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:391 | -| LogInjectionTest.java:1410:36:1410:43 | source(...) : Object | LogInjectionTest.java:1410:27:1410:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:395 | -| LogInjectionTest.java:1411:42:1411:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1411:42:1411:64 | new Object[] | provenance | Sink:MaD:391 | -| LogInjectionTest.java:1411:56:1411:63 | source(...) : Object | LogInjectionTest.java:1411:42:1411:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1412:42:1412:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1412:42:1412:64 | new Object[] | provenance | Sink:MaD:395 | -| LogInjectionTest.java:1412:56:1412:63 | source(...) : Object | LogInjectionTest.java:1412:42:1412:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1413:66:1413:73 | source(...) : Object | LogInjectionTest.java:1413:57:1413:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | -| LogInjectionTest.java:1414:51:1414:58 | source(...) : Object | LogInjectionTest.java:1414:42:1414:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | -| LogInjectionTest.java:1415:36:1415:43 | source(...) : Object | LogInjectionTest.java:1415:27:1415:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | -| LogInjectionTest.java:1416:66:1416:73 | source(...) : Object | LogInjectionTest.java:1416:57:1416:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | -| LogInjectionTest.java:1417:51:1417:58 | source(...) : Object | LogInjectionTest.java:1417:42:1417:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | -| LogInjectionTest.java:1418:36:1418:43 | source(...) : Object | LogInjectionTest.java:1418:27:1418:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | -| LogInjectionTest.java:1419:81:1419:88 | source(...) : Object | LogInjectionTest.java:1419:72:1419:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1420:66:1420:73 | source(...) : Object | LogInjectionTest.java:1420:57:1420:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1421:51:1421:58 | source(...) : Object | LogInjectionTest.java:1421:42:1421:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1422:36:1422:43 | source(...) : Object | LogInjectionTest.java:1422:27:1422:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1423:81:1423:88 | source(...) : Object | LogInjectionTest.java:1423:72:1423:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1424:66:1424:73 | source(...) : Object | LogInjectionTest.java:1424:57:1424:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1425:51:1425:58 | source(...) : Object | LogInjectionTest.java:1425:42:1425:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1426:36:1426:43 | source(...) : Object | LogInjectionTest.java:1426:27:1426:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1427:89:1427:96 | source(...) : Object | LogInjectionTest.java:1427:80:1427:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | -| LogInjectionTest.java:1428:74:1428:81 | source(...) : Object | LogInjectionTest.java:1428:65:1428:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | -| LogInjectionTest.java:1429:89:1429:96 | source(...) : Object | LogInjectionTest.java:1429:80:1429:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | -| LogInjectionTest.java:1430:74:1430:81 | source(...) : Object | LogInjectionTest.java:1430:65:1430:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | -| LogInjectionTest.java:1431:74:1431:81 | source(...) : Object | LogInjectionTest.java:1431:65:1431:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:400 | -| LogInjectionTest.java:1432:74:1432:81 | source(...) : Object | LogInjectionTest.java:1432:65:1432:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:404 | -| LogInjectionTest.java:1433:80:1433:102 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1433:80:1433:102 | new Object[] | provenance | Sink:MaD:400 | -| LogInjectionTest.java:1433:94:1433:101 | source(...) : Object | LogInjectionTest.java:1433:80:1433:102 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1434:80:1434:102 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1434:80:1434:102 | new Object[] | provenance | Sink:MaD:404 | -| LogInjectionTest.java:1434:94:1434:101 | source(...) : Object | LogInjectionTest.java:1434:80:1434:102 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1435:104:1435:111 | source(...) : Object | LogInjectionTest.java:1435:95:1435:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | -| LogInjectionTest.java:1436:89:1436:96 | source(...) : Object | LogInjectionTest.java:1436:80:1436:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | -| LogInjectionTest.java:1437:74:1437:81 | source(...) : Object | LogInjectionTest.java:1437:65:1437:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | -| LogInjectionTest.java:1438:104:1438:111 | source(...) : Object | LogInjectionTest.java:1438:95:1438:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | -| LogInjectionTest.java:1439:89:1439:96 | source(...) : Object | LogInjectionTest.java:1439:80:1439:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | -| LogInjectionTest.java:1440:74:1440:81 | source(...) : Object | LogInjectionTest.java:1440:65:1440:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | -| LogInjectionTest.java:1441:119:1441:126 | source(...) : Object | LogInjectionTest.java:1441:110:1441:126 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1442:104:1442:111 | source(...) : Object | LogInjectionTest.java:1442:95:1442:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1443:89:1443:96 | source(...) : Object | LogInjectionTest.java:1443:80:1443:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1444:74:1444:81 | source(...) : Object | LogInjectionTest.java:1444:65:1444:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1445:119:1445:126 | source(...) : Object | LogInjectionTest.java:1445:110:1445:126 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1446:104:1446:111 | source(...) : Object | LogInjectionTest.java:1446:95:1446:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1447:89:1447:96 | source(...) : Object | LogInjectionTest.java:1447:80:1447:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1448:74:1448:81 | source(...) : Object | LogInjectionTest.java:1448:65:1448:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1449:52:1449:59 | source(...) : Object | LogInjectionTest.java:1449:43:1449:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | -| LogInjectionTest.java:1450:37:1450:44 | source(...) : Object | LogInjectionTest.java:1450:28:1450:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | -| LogInjectionTest.java:1451:52:1451:59 | source(...) : Object | LogInjectionTest.java:1451:43:1451:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | -| LogInjectionTest.java:1452:37:1452:44 | source(...) : Object | LogInjectionTest.java:1452:28:1452:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | -| LogInjectionTest.java:1453:37:1453:44 | source(...) : Object | LogInjectionTest.java:1453:28:1453:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:409 | -| LogInjectionTest.java:1454:37:1454:44 | source(...) : Object | LogInjectionTest.java:1454:28:1454:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:413 | -| LogInjectionTest.java:1455:43:1455:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1455:43:1455:65 | new Object[] | provenance | Sink:MaD:409 | -| LogInjectionTest.java:1455:57:1455:64 | source(...) : Object | LogInjectionTest.java:1455:43:1455:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1456:43:1456:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1456:43:1456:65 | new Object[] | provenance | Sink:MaD:413 | -| LogInjectionTest.java:1456:57:1456:64 | source(...) : Object | LogInjectionTest.java:1456:43:1456:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1457:67:1457:74 | source(...) : Object | LogInjectionTest.java:1457:58:1457:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | -| LogInjectionTest.java:1458:52:1458:59 | source(...) : Object | LogInjectionTest.java:1458:43:1458:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | -| LogInjectionTest.java:1459:37:1459:44 | source(...) : Object | LogInjectionTest.java:1459:28:1459:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | -| LogInjectionTest.java:1460:67:1460:74 | source(...) : Object | LogInjectionTest.java:1460:58:1460:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | -| LogInjectionTest.java:1461:52:1461:59 | source(...) : Object | LogInjectionTest.java:1461:43:1461:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | -| LogInjectionTest.java:1462:37:1462:44 | source(...) : Object | LogInjectionTest.java:1462:28:1462:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | -| LogInjectionTest.java:1463:82:1463:89 | source(...) : Object | LogInjectionTest.java:1463:73:1463:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1464:67:1464:74 | source(...) : Object | LogInjectionTest.java:1464:58:1464:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1465:52:1465:59 | source(...) : Object | LogInjectionTest.java:1465:43:1465:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1466:37:1466:44 | source(...) : Object | LogInjectionTest.java:1466:28:1466:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1467:82:1467:89 | source(...) : Object | LogInjectionTest.java:1467:73:1467:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1468:67:1468:74 | source(...) : Object | LogInjectionTest.java:1468:58:1468:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1469:52:1469:59 | source(...) : Object | LogInjectionTest.java:1469:43:1469:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1470:37:1470:44 | source(...) : Object | LogInjectionTest.java:1470:28:1470:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1471:51:1471:58 | source(...) : Object | LogInjectionTest.java:1471:42:1471:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | -| LogInjectionTest.java:1472:36:1472:43 | source(...) : Object | LogInjectionTest.java:1472:27:1472:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | -| LogInjectionTest.java:1473:51:1473:58 | source(...) : Object | LogInjectionTest.java:1473:42:1473:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | -| LogInjectionTest.java:1474:36:1474:43 | source(...) : Object | LogInjectionTest.java:1474:27:1474:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | -| LogInjectionTest.java:1475:36:1475:43 | source(...) : Object | LogInjectionTest.java:1475:27:1475:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:418 | -| LogInjectionTest.java:1476:36:1476:43 | source(...) : Object | LogInjectionTest.java:1476:27:1476:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:422 | -| LogInjectionTest.java:1477:42:1477:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1477:42:1477:64 | new Object[] | provenance | Sink:MaD:418 | -| LogInjectionTest.java:1477:56:1477:63 | source(...) : Object | LogInjectionTest.java:1477:42:1477:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1478:42:1478:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1478:42:1478:64 | new Object[] | provenance | Sink:MaD:422 | -| LogInjectionTest.java:1478:56:1478:63 | source(...) : Object | LogInjectionTest.java:1478:42:1478:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1479:66:1479:73 | source(...) : Object | LogInjectionTest.java:1479:57:1479:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | -| LogInjectionTest.java:1480:51:1480:58 | source(...) : Object | LogInjectionTest.java:1480:42:1480:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | -| LogInjectionTest.java:1481:36:1481:43 | source(...) : Object | LogInjectionTest.java:1481:27:1481:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | -| LogInjectionTest.java:1482:66:1482:73 | source(...) : Object | LogInjectionTest.java:1482:57:1482:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | -| LogInjectionTest.java:1483:51:1483:58 | source(...) : Object | LogInjectionTest.java:1483:42:1483:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | -| LogInjectionTest.java:1484:36:1484:43 | source(...) : Object | LogInjectionTest.java:1484:27:1484:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | -| LogInjectionTest.java:1485:81:1485:88 | source(...) : Object | LogInjectionTest.java:1485:72:1485:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1486:66:1486:73 | source(...) : Object | LogInjectionTest.java:1486:57:1486:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1487:51:1487:58 | source(...) : Object | LogInjectionTest.java:1487:42:1487:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1488:36:1488:43 | source(...) : Object | LogInjectionTest.java:1488:27:1488:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1489:81:1489:88 | source(...) : Object | LogInjectionTest.java:1489:72:1489:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1490:66:1490:73 | source(...) : Object | LogInjectionTest.java:1490:57:1490:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1491:51:1491:58 | source(...) : Object | LogInjectionTest.java:1491:42:1491:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1492:36:1492:43 | source(...) : Object | LogInjectionTest.java:1492:27:1492:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1504:56:1504:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1504:56:1504:78 | new Object[] | provenance | Sink:MaD:360 | -| LogInjectionTest.java:1504:56:1504:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1504:56:1504:78 | new Object[] | provenance | Sink:MaD:423 | -| LogInjectionTest.java:1504:70:1504:77 | source(...) : Object | LogInjectionTest.java:1504:56:1504:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1512:56:1512:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1512:56:1512:78 | new Object[] | provenance | Sink:MaD:369 | -| LogInjectionTest.java:1512:56:1512:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1512:56:1512:78 | new Object[] | provenance | Sink:MaD:432 | -| LogInjectionTest.java:1512:70:1512:77 | source(...) : Object | LogInjectionTest.java:1512:56:1512:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1520:56:1520:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1520:56:1520:78 | new Object[] | provenance | Sink:MaD:378 | -| LogInjectionTest.java:1520:56:1520:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1520:56:1520:78 | new Object[] | provenance | Sink:MaD:441 | -| LogInjectionTest.java:1520:70:1520:77 | source(...) : Object | LogInjectionTest.java:1520:56:1520:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1528:55:1528:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1528:55:1528:77 | new Object[] | provenance | Sink:MaD:387 | -| LogInjectionTest.java:1528:55:1528:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1528:55:1528:77 | new Object[] | provenance | Sink:MaD:450 | -| LogInjectionTest.java:1528:69:1528:76 | source(...) : Object | LogInjectionTest.java:1528:55:1528:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1536:56:1536:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1536:56:1536:78 | new Object[] | provenance | Sink:MaD:405 | -| LogInjectionTest.java:1536:56:1536:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1536:56:1536:78 | new Object[] | provenance | Sink:MaD:468 | -| LogInjectionTest.java:1536:70:1536:77 | source(...) : Object | LogInjectionTest.java:1536:56:1536:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1544:55:1544:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1544:55:1544:77 | new Object[] | provenance | Sink:MaD:414 | -| LogInjectionTest.java:1544:55:1544:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1544:55:1544:77 | new Object[] | provenance | Sink:MaD:477 | -| LogInjectionTest.java:1544:69:1544:76 | source(...) : Object | LogInjectionTest.java:1544:55:1544:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1553:93:1553:115 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1553:93:1553:115 | new Object[] | provenance | Sink:MaD:396 | -| LogInjectionTest.java:1553:93:1553:115 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1553:93:1553:115 | new Object[] | provenance | Sink:MaD:459 | -| LogInjectionTest.java:1553:107:1553:114 | source(...) : Object | LogInjectionTest.java:1553:93:1553:115 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1554:51:1554:58 | source(...) : Object | LogInjectionTest.java:1554:42:1554:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | -| LogInjectionTest.java:1554:51:1554:58 | source(...) : Object | LogInjectionTest.java:1554:42:1554:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:424 | -| LogInjectionTest.java:1555:36:1555:43 | source(...) : Object | LogInjectionTest.java:1555:27:1555:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | -| LogInjectionTest.java:1555:36:1555:43 | source(...) : Object | LogInjectionTest.java:1555:27:1555:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:424 | -| LogInjectionTest.java:1556:51:1556:58 | source(...) : Object | LogInjectionTest.java:1556:42:1556:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | -| LogInjectionTest.java:1556:51:1556:58 | source(...) : Object | LogInjectionTest.java:1556:42:1556:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:428 | -| LogInjectionTest.java:1557:36:1557:43 | source(...) : Object | LogInjectionTest.java:1557:27:1557:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | -| LogInjectionTest.java:1557:36:1557:43 | source(...) : Object | LogInjectionTest.java:1557:27:1557:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:428 | -| LogInjectionTest.java:1558:36:1558:43 | source(...) : Object | LogInjectionTest.java:1558:27:1558:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:364 | -| LogInjectionTest.java:1558:36:1558:43 | source(...) : Object | LogInjectionTest.java:1558:27:1558:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:427 | -| LogInjectionTest.java:1559:36:1559:43 | source(...) : Object | LogInjectionTest.java:1559:27:1559:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:368 | -| LogInjectionTest.java:1559:36:1559:43 | source(...) : Object | LogInjectionTest.java:1559:27:1559:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:431 | -| LogInjectionTest.java:1560:42:1560:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1560:42:1560:64 | new Object[] | provenance | Sink:MaD:364 | -| LogInjectionTest.java:1560:42:1560:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1560:42:1560:64 | new Object[] | provenance | Sink:MaD:427 | -| LogInjectionTest.java:1560:56:1560:63 | source(...) : Object | LogInjectionTest.java:1560:42:1560:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1561:42:1561:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1561:42:1561:64 | new Object[] | provenance | Sink:MaD:368 | -| LogInjectionTest.java:1561:42:1561:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1561:42:1561:64 | new Object[] | provenance | Sink:MaD:431 | -| LogInjectionTest.java:1561:56:1561:63 | source(...) : Object | LogInjectionTest.java:1561:42:1561:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1562:66:1562:73 | source(...) : Object | LogInjectionTest.java:1562:57:1562:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | -| LogInjectionTest.java:1562:66:1562:73 | source(...) : Object | LogInjectionTest.java:1562:57:1562:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:425 | -| LogInjectionTest.java:1563:51:1563:58 | source(...) : Object | LogInjectionTest.java:1563:42:1563:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | -| LogInjectionTest.java:1563:51:1563:58 | source(...) : Object | LogInjectionTest.java:1563:42:1563:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:425 | -| LogInjectionTest.java:1564:36:1564:43 | source(...) : Object | LogInjectionTest.java:1564:27:1564:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | -| LogInjectionTest.java:1564:36:1564:43 | source(...) : Object | LogInjectionTest.java:1564:27:1564:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:425 | -| LogInjectionTest.java:1565:66:1565:73 | source(...) : Object | LogInjectionTest.java:1565:57:1565:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | -| LogInjectionTest.java:1565:66:1565:73 | source(...) : Object | LogInjectionTest.java:1565:57:1565:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:429 | -| LogInjectionTest.java:1566:51:1566:58 | source(...) : Object | LogInjectionTest.java:1566:42:1566:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | -| LogInjectionTest.java:1566:51:1566:58 | source(...) : Object | LogInjectionTest.java:1566:42:1566:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:429 | -| LogInjectionTest.java:1567:36:1567:43 | source(...) : Object | LogInjectionTest.java:1567:27:1567:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | -| LogInjectionTest.java:1567:36:1567:43 | source(...) : Object | LogInjectionTest.java:1567:27:1567:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:429 | -| LogInjectionTest.java:1568:81:1568:88 | source(...) : Object | LogInjectionTest.java:1568:72:1568:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1568:81:1568:88 | source(...) : Object | LogInjectionTest.java:1568:72:1568:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | -| LogInjectionTest.java:1569:66:1569:73 | source(...) : Object | LogInjectionTest.java:1569:57:1569:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1569:66:1569:73 | source(...) : Object | LogInjectionTest.java:1569:57:1569:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | -| LogInjectionTest.java:1570:51:1570:58 | source(...) : Object | LogInjectionTest.java:1570:42:1570:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1570:51:1570:58 | source(...) : Object | LogInjectionTest.java:1570:42:1570:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | -| LogInjectionTest.java:1571:36:1571:43 | source(...) : Object | LogInjectionTest.java:1571:27:1571:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1571:36:1571:43 | source(...) : Object | LogInjectionTest.java:1571:27:1571:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | -| LogInjectionTest.java:1572:81:1572:88 | source(...) : Object | LogInjectionTest.java:1572:72:1572:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1572:81:1572:88 | source(...) : Object | LogInjectionTest.java:1572:72:1572:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | -| LogInjectionTest.java:1573:66:1573:73 | source(...) : Object | LogInjectionTest.java:1573:57:1573:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1573:66:1573:73 | source(...) : Object | LogInjectionTest.java:1573:57:1573:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | -| LogInjectionTest.java:1574:51:1574:58 | source(...) : Object | LogInjectionTest.java:1574:42:1574:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1574:51:1574:58 | source(...) : Object | LogInjectionTest.java:1574:42:1574:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | -| LogInjectionTest.java:1575:36:1575:43 | source(...) : Object | LogInjectionTest.java:1575:27:1575:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1575:36:1575:43 | source(...) : Object | LogInjectionTest.java:1575:27:1575:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | -| LogInjectionTest.java:1576:51:1576:58 | source(...) : Object | LogInjectionTest.java:1576:42:1576:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | -| LogInjectionTest.java:1576:51:1576:58 | source(...) : Object | LogInjectionTest.java:1576:42:1576:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:433 | -| LogInjectionTest.java:1577:36:1577:43 | source(...) : Object | LogInjectionTest.java:1577:27:1577:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | -| LogInjectionTest.java:1577:36:1577:43 | source(...) : Object | LogInjectionTest.java:1577:27:1577:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:433 | -| LogInjectionTest.java:1578:51:1578:58 | source(...) : Object | LogInjectionTest.java:1578:42:1578:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | -| LogInjectionTest.java:1578:51:1578:58 | source(...) : Object | LogInjectionTest.java:1578:42:1578:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:437 | -| LogInjectionTest.java:1579:36:1579:43 | source(...) : Object | LogInjectionTest.java:1579:27:1579:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | -| LogInjectionTest.java:1579:36:1579:43 | source(...) : Object | LogInjectionTest.java:1579:27:1579:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:437 | -| LogInjectionTest.java:1580:36:1580:43 | source(...) : Object | LogInjectionTest.java:1580:27:1580:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:373 | -| LogInjectionTest.java:1580:36:1580:43 | source(...) : Object | LogInjectionTest.java:1580:27:1580:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:436 | -| LogInjectionTest.java:1581:36:1581:43 | source(...) : Object | LogInjectionTest.java:1581:27:1581:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:377 | -| LogInjectionTest.java:1581:36:1581:43 | source(...) : Object | LogInjectionTest.java:1581:27:1581:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:440 | -| LogInjectionTest.java:1582:42:1582:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1582:42:1582:64 | new Object[] | provenance | Sink:MaD:373 | -| LogInjectionTest.java:1582:42:1582:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1582:42:1582:64 | new Object[] | provenance | Sink:MaD:436 | -| LogInjectionTest.java:1582:56:1582:63 | source(...) : Object | LogInjectionTest.java:1582:42:1582:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1583:42:1583:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1583:42:1583:64 | new Object[] | provenance | Sink:MaD:377 | -| LogInjectionTest.java:1583:42:1583:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1583:42:1583:64 | new Object[] | provenance | Sink:MaD:440 | -| LogInjectionTest.java:1583:56:1583:63 | source(...) : Object | LogInjectionTest.java:1583:42:1583:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1584:66:1584:73 | source(...) : Object | LogInjectionTest.java:1584:57:1584:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | -| LogInjectionTest.java:1584:66:1584:73 | source(...) : Object | LogInjectionTest.java:1584:57:1584:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:434 | -| LogInjectionTest.java:1585:51:1585:58 | source(...) : Object | LogInjectionTest.java:1585:42:1585:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | -| LogInjectionTest.java:1585:51:1585:58 | source(...) : Object | LogInjectionTest.java:1585:42:1585:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:434 | -| LogInjectionTest.java:1586:36:1586:43 | source(...) : Object | LogInjectionTest.java:1586:27:1586:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | -| LogInjectionTest.java:1586:36:1586:43 | source(...) : Object | LogInjectionTest.java:1586:27:1586:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:434 | -| LogInjectionTest.java:1587:66:1587:73 | source(...) : Object | LogInjectionTest.java:1587:57:1587:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | -| LogInjectionTest.java:1587:66:1587:73 | source(...) : Object | LogInjectionTest.java:1587:57:1587:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:438 | -| LogInjectionTest.java:1588:51:1588:58 | source(...) : Object | LogInjectionTest.java:1588:42:1588:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | -| LogInjectionTest.java:1588:51:1588:58 | source(...) : Object | LogInjectionTest.java:1588:42:1588:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:438 | -| LogInjectionTest.java:1589:36:1589:43 | source(...) : Object | LogInjectionTest.java:1589:27:1589:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | -| LogInjectionTest.java:1589:36:1589:43 | source(...) : Object | LogInjectionTest.java:1589:27:1589:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:438 | -| LogInjectionTest.java:1590:81:1590:88 | source(...) : Object | LogInjectionTest.java:1590:72:1590:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1590:81:1590:88 | source(...) : Object | LogInjectionTest.java:1590:72:1590:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | -| LogInjectionTest.java:1591:66:1591:73 | source(...) : Object | LogInjectionTest.java:1591:57:1591:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1591:66:1591:73 | source(...) : Object | LogInjectionTest.java:1591:57:1591:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | -| LogInjectionTest.java:1592:51:1592:58 | source(...) : Object | LogInjectionTest.java:1592:42:1592:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1592:51:1592:58 | source(...) : Object | LogInjectionTest.java:1592:42:1592:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | -| LogInjectionTest.java:1593:36:1593:43 | source(...) : Object | LogInjectionTest.java:1593:27:1593:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1593:36:1593:43 | source(...) : Object | LogInjectionTest.java:1593:27:1593:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | -| LogInjectionTest.java:1594:81:1594:88 | source(...) : Object | LogInjectionTest.java:1594:72:1594:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1594:81:1594:88 | source(...) : Object | LogInjectionTest.java:1594:72:1594:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | -| LogInjectionTest.java:1595:66:1595:73 | source(...) : Object | LogInjectionTest.java:1595:57:1595:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1595:66:1595:73 | source(...) : Object | LogInjectionTest.java:1595:57:1595:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | -| LogInjectionTest.java:1596:51:1596:58 | source(...) : Object | LogInjectionTest.java:1596:42:1596:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1596:51:1596:58 | source(...) : Object | LogInjectionTest.java:1596:42:1596:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | -| LogInjectionTest.java:1597:36:1597:43 | source(...) : Object | LogInjectionTest.java:1597:27:1597:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1597:36:1597:43 | source(...) : Object | LogInjectionTest.java:1597:27:1597:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | -| LogInjectionTest.java:1598:51:1598:58 | source(...) : Object | LogInjectionTest.java:1598:42:1598:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | -| LogInjectionTest.java:1598:51:1598:58 | source(...) : Object | LogInjectionTest.java:1598:42:1598:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:442 | -| LogInjectionTest.java:1599:36:1599:43 | source(...) : Object | LogInjectionTest.java:1599:27:1599:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | -| LogInjectionTest.java:1599:36:1599:43 | source(...) : Object | LogInjectionTest.java:1599:27:1599:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:442 | -| LogInjectionTest.java:1600:51:1600:58 | source(...) : Object | LogInjectionTest.java:1600:42:1600:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | -| LogInjectionTest.java:1600:51:1600:58 | source(...) : Object | LogInjectionTest.java:1600:42:1600:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:446 | -| LogInjectionTest.java:1601:36:1601:43 | source(...) : Object | LogInjectionTest.java:1601:27:1601:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | -| LogInjectionTest.java:1601:36:1601:43 | source(...) : Object | LogInjectionTest.java:1601:27:1601:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:446 | -| LogInjectionTest.java:1602:36:1602:43 | source(...) : Object | LogInjectionTest.java:1602:27:1602:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:382 | -| LogInjectionTest.java:1602:36:1602:43 | source(...) : Object | LogInjectionTest.java:1602:27:1602:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:445 | -| LogInjectionTest.java:1603:36:1603:43 | source(...) : Object | LogInjectionTest.java:1603:27:1603:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:386 | -| LogInjectionTest.java:1603:36:1603:43 | source(...) : Object | LogInjectionTest.java:1603:27:1603:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:449 | -| LogInjectionTest.java:1604:42:1604:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1604:42:1604:64 | new Object[] | provenance | Sink:MaD:382 | -| LogInjectionTest.java:1604:42:1604:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1604:42:1604:64 | new Object[] | provenance | Sink:MaD:445 | -| LogInjectionTest.java:1604:56:1604:63 | source(...) : Object | LogInjectionTest.java:1604:42:1604:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1605:42:1605:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1605:42:1605:64 | new Object[] | provenance | Sink:MaD:386 | -| LogInjectionTest.java:1605:42:1605:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1605:42:1605:64 | new Object[] | provenance | Sink:MaD:449 | -| LogInjectionTest.java:1605:56:1605:63 | source(...) : Object | LogInjectionTest.java:1605:42:1605:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1606:66:1606:73 | source(...) : Object | LogInjectionTest.java:1606:57:1606:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | -| LogInjectionTest.java:1606:66:1606:73 | source(...) : Object | LogInjectionTest.java:1606:57:1606:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:443 | -| LogInjectionTest.java:1607:51:1607:58 | source(...) : Object | LogInjectionTest.java:1607:42:1607:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | -| LogInjectionTest.java:1607:51:1607:58 | source(...) : Object | LogInjectionTest.java:1607:42:1607:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:443 | -| LogInjectionTest.java:1608:36:1608:43 | source(...) : Object | LogInjectionTest.java:1608:27:1608:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | -| LogInjectionTest.java:1608:36:1608:43 | source(...) : Object | LogInjectionTest.java:1608:27:1608:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:443 | -| LogInjectionTest.java:1609:66:1609:73 | source(...) : Object | LogInjectionTest.java:1609:57:1609:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | -| LogInjectionTest.java:1609:66:1609:73 | source(...) : Object | LogInjectionTest.java:1609:57:1609:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:447 | -| LogInjectionTest.java:1610:51:1610:58 | source(...) : Object | LogInjectionTest.java:1610:42:1610:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | -| LogInjectionTest.java:1610:51:1610:58 | source(...) : Object | LogInjectionTest.java:1610:42:1610:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:447 | -| LogInjectionTest.java:1611:36:1611:43 | source(...) : Object | LogInjectionTest.java:1611:27:1611:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | -| LogInjectionTest.java:1611:36:1611:43 | source(...) : Object | LogInjectionTest.java:1611:27:1611:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:447 | -| LogInjectionTest.java:1612:81:1612:88 | source(...) : Object | LogInjectionTest.java:1612:72:1612:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1612:81:1612:88 | source(...) : Object | LogInjectionTest.java:1612:72:1612:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | -| LogInjectionTest.java:1613:66:1613:73 | source(...) : Object | LogInjectionTest.java:1613:57:1613:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1613:66:1613:73 | source(...) : Object | LogInjectionTest.java:1613:57:1613:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | -| LogInjectionTest.java:1614:51:1614:58 | source(...) : Object | LogInjectionTest.java:1614:42:1614:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1614:51:1614:58 | source(...) : Object | LogInjectionTest.java:1614:42:1614:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | -| LogInjectionTest.java:1615:36:1615:43 | source(...) : Object | LogInjectionTest.java:1615:27:1615:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1615:36:1615:43 | source(...) : Object | LogInjectionTest.java:1615:27:1615:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | -| LogInjectionTest.java:1616:81:1616:88 | source(...) : Object | LogInjectionTest.java:1616:72:1616:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1616:81:1616:88 | source(...) : Object | LogInjectionTest.java:1616:72:1616:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | -| LogInjectionTest.java:1617:66:1617:73 | source(...) : Object | LogInjectionTest.java:1617:57:1617:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1617:66:1617:73 | source(...) : Object | LogInjectionTest.java:1617:57:1617:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | -| LogInjectionTest.java:1618:51:1618:58 | source(...) : Object | LogInjectionTest.java:1618:42:1618:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1618:51:1618:58 | source(...) : Object | LogInjectionTest.java:1618:42:1618:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | -| LogInjectionTest.java:1619:36:1619:43 | source(...) : Object | LogInjectionTest.java:1619:27:1619:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1619:36:1619:43 | source(...) : Object | LogInjectionTest.java:1619:27:1619:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | -| LogInjectionTest.java:1620:50:1620:57 | source(...) : Object | LogInjectionTest.java:1620:41:1620:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | -| LogInjectionTest.java:1620:50:1620:57 | source(...) : Object | LogInjectionTest.java:1620:41:1620:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:451 | -| LogInjectionTest.java:1621:35:1621:42 | source(...) : Object | LogInjectionTest.java:1621:26:1621:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | -| LogInjectionTest.java:1621:35:1621:42 | source(...) : Object | LogInjectionTest.java:1621:26:1621:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:451 | -| LogInjectionTest.java:1622:50:1622:57 | source(...) : Object | LogInjectionTest.java:1622:41:1622:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | -| LogInjectionTest.java:1622:50:1622:57 | source(...) : Object | LogInjectionTest.java:1622:41:1622:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:455 | -| LogInjectionTest.java:1623:35:1623:42 | source(...) : Object | LogInjectionTest.java:1623:26:1623:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | -| LogInjectionTest.java:1623:35:1623:42 | source(...) : Object | LogInjectionTest.java:1623:26:1623:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:455 | -| LogInjectionTest.java:1624:35:1624:42 | source(...) : Object | LogInjectionTest.java:1624:26:1624:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:391 | -| LogInjectionTest.java:1624:35:1624:42 | source(...) : Object | LogInjectionTest.java:1624:26:1624:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:454 | -| LogInjectionTest.java:1625:35:1625:42 | source(...) : Object | LogInjectionTest.java:1625:26:1625:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:395 | -| LogInjectionTest.java:1625:35:1625:42 | source(...) : Object | LogInjectionTest.java:1625:26:1625:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:458 | -| LogInjectionTest.java:1626:41:1626:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1626:41:1626:63 | new Object[] | provenance | Sink:MaD:391 | -| LogInjectionTest.java:1626:41:1626:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1626:41:1626:63 | new Object[] | provenance | Sink:MaD:454 | -| LogInjectionTest.java:1626:55:1626:62 | source(...) : Object | LogInjectionTest.java:1626:41:1626:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1627:41:1627:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1627:41:1627:63 | new Object[] | provenance | Sink:MaD:395 | -| LogInjectionTest.java:1627:41:1627:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1627:41:1627:63 | new Object[] | provenance | Sink:MaD:458 | -| LogInjectionTest.java:1627:55:1627:62 | source(...) : Object | LogInjectionTest.java:1627:41:1627:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1628:65:1628:72 | source(...) : Object | LogInjectionTest.java:1628:56:1628:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | -| LogInjectionTest.java:1628:65:1628:72 | source(...) : Object | LogInjectionTest.java:1628:56:1628:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:452 | -| LogInjectionTest.java:1629:50:1629:57 | source(...) : Object | LogInjectionTest.java:1629:41:1629:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | -| LogInjectionTest.java:1629:50:1629:57 | source(...) : Object | LogInjectionTest.java:1629:41:1629:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:452 | -| LogInjectionTest.java:1630:35:1630:42 | source(...) : Object | LogInjectionTest.java:1630:26:1630:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | -| LogInjectionTest.java:1630:35:1630:42 | source(...) : Object | LogInjectionTest.java:1630:26:1630:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:452 | -| LogInjectionTest.java:1631:65:1631:72 | source(...) : Object | LogInjectionTest.java:1631:56:1631:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | -| LogInjectionTest.java:1631:65:1631:72 | source(...) : Object | LogInjectionTest.java:1631:56:1631:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:456 | -| LogInjectionTest.java:1632:50:1632:57 | source(...) : Object | LogInjectionTest.java:1632:41:1632:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | -| LogInjectionTest.java:1632:50:1632:57 | source(...) : Object | LogInjectionTest.java:1632:41:1632:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:456 | -| LogInjectionTest.java:1633:35:1633:42 | source(...) : Object | LogInjectionTest.java:1633:26:1633:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | -| LogInjectionTest.java:1633:35:1633:42 | source(...) : Object | LogInjectionTest.java:1633:26:1633:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:456 | -| LogInjectionTest.java:1634:80:1634:87 | source(...) : Object | LogInjectionTest.java:1634:71:1634:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1634:80:1634:87 | source(...) : Object | LogInjectionTest.java:1634:71:1634:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | -| LogInjectionTest.java:1635:65:1635:72 | source(...) : Object | LogInjectionTest.java:1635:56:1635:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1635:65:1635:72 | source(...) : Object | LogInjectionTest.java:1635:56:1635:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | -| LogInjectionTest.java:1636:50:1636:57 | source(...) : Object | LogInjectionTest.java:1636:41:1636:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1636:50:1636:57 | source(...) : Object | LogInjectionTest.java:1636:41:1636:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | -| LogInjectionTest.java:1637:35:1637:42 | source(...) : Object | LogInjectionTest.java:1637:26:1637:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1637:35:1637:42 | source(...) : Object | LogInjectionTest.java:1637:26:1637:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | -| LogInjectionTest.java:1638:80:1638:87 | source(...) : Object | LogInjectionTest.java:1638:71:1638:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1638:80:1638:87 | source(...) : Object | LogInjectionTest.java:1638:71:1638:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | -| LogInjectionTest.java:1639:65:1639:72 | source(...) : Object | LogInjectionTest.java:1639:56:1639:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1639:65:1639:72 | source(...) : Object | LogInjectionTest.java:1639:56:1639:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | -| LogInjectionTest.java:1640:50:1640:57 | source(...) : Object | LogInjectionTest.java:1640:41:1640:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1640:50:1640:57 | source(...) : Object | LogInjectionTest.java:1640:41:1640:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | -| LogInjectionTest.java:1641:35:1641:42 | source(...) : Object | LogInjectionTest.java:1641:26:1641:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1641:35:1641:42 | source(...) : Object | LogInjectionTest.java:1641:26:1641:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | -| LogInjectionTest.java:1642:88:1642:95 | source(...) : Object | LogInjectionTest.java:1642:79:1642:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | -| LogInjectionTest.java:1642:88:1642:95 | source(...) : Object | LogInjectionTest.java:1642:79:1642:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:460 | -| LogInjectionTest.java:1643:73:1643:80 | source(...) : Object | LogInjectionTest.java:1643:64:1643:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | -| LogInjectionTest.java:1643:73:1643:80 | source(...) : Object | LogInjectionTest.java:1643:64:1643:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:460 | -| LogInjectionTest.java:1644:88:1644:95 | source(...) : Object | LogInjectionTest.java:1644:79:1644:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | -| LogInjectionTest.java:1644:88:1644:95 | source(...) : Object | LogInjectionTest.java:1644:79:1644:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:464 | -| LogInjectionTest.java:1645:73:1645:80 | source(...) : Object | LogInjectionTest.java:1645:64:1645:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | -| LogInjectionTest.java:1645:73:1645:80 | source(...) : Object | LogInjectionTest.java:1645:64:1645:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:464 | -| LogInjectionTest.java:1646:73:1646:80 | source(...) : Object | LogInjectionTest.java:1646:64:1646:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:400 | -| LogInjectionTest.java:1646:73:1646:80 | source(...) : Object | LogInjectionTest.java:1646:64:1646:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:463 | -| LogInjectionTest.java:1647:73:1647:80 | source(...) : Object | LogInjectionTest.java:1647:64:1647:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:404 | -| LogInjectionTest.java:1647:73:1647:80 | source(...) : Object | LogInjectionTest.java:1647:64:1647:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:467 | -| LogInjectionTest.java:1648:79:1648:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1648:79:1648:101 | new Object[] | provenance | Sink:MaD:400 | -| LogInjectionTest.java:1648:79:1648:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1648:79:1648:101 | new Object[] | provenance | Sink:MaD:463 | -| LogInjectionTest.java:1648:93:1648:100 | source(...) : Object | LogInjectionTest.java:1648:79:1648:101 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1649:79:1649:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1649:79:1649:101 | new Object[] | provenance | Sink:MaD:404 | -| LogInjectionTest.java:1649:79:1649:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1649:79:1649:101 | new Object[] | provenance | Sink:MaD:467 | -| LogInjectionTest.java:1649:93:1649:100 | source(...) : Object | LogInjectionTest.java:1649:79:1649:101 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1650:103:1650:110 | source(...) : Object | LogInjectionTest.java:1650:94:1650:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | -| LogInjectionTest.java:1650:103:1650:110 | source(...) : Object | LogInjectionTest.java:1650:94:1650:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:461 | -| LogInjectionTest.java:1651:88:1651:95 | source(...) : Object | LogInjectionTest.java:1651:79:1651:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | -| LogInjectionTest.java:1651:88:1651:95 | source(...) : Object | LogInjectionTest.java:1651:79:1651:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:461 | -| LogInjectionTest.java:1652:73:1652:80 | source(...) : Object | LogInjectionTest.java:1652:64:1652:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | -| LogInjectionTest.java:1652:73:1652:80 | source(...) : Object | LogInjectionTest.java:1652:64:1652:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:461 | -| LogInjectionTest.java:1653:103:1653:110 | source(...) : Object | LogInjectionTest.java:1653:94:1653:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | -| LogInjectionTest.java:1653:103:1653:110 | source(...) : Object | LogInjectionTest.java:1653:94:1653:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:465 | -| LogInjectionTest.java:1654:88:1654:95 | source(...) : Object | LogInjectionTest.java:1654:79:1654:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | -| LogInjectionTest.java:1654:88:1654:95 | source(...) : Object | LogInjectionTest.java:1654:79:1654:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:465 | -| LogInjectionTest.java:1655:73:1655:80 | source(...) : Object | LogInjectionTest.java:1655:64:1655:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | -| LogInjectionTest.java:1655:73:1655:80 | source(...) : Object | LogInjectionTest.java:1655:64:1655:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:465 | -| LogInjectionTest.java:1656:118:1656:125 | source(...) : Object | LogInjectionTest.java:1656:109:1656:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1656:118:1656:125 | source(...) : Object | LogInjectionTest.java:1656:109:1656:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | -| LogInjectionTest.java:1657:103:1657:110 | source(...) : Object | LogInjectionTest.java:1657:94:1657:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1657:103:1657:110 | source(...) : Object | LogInjectionTest.java:1657:94:1657:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | -| LogInjectionTest.java:1658:88:1658:95 | source(...) : Object | LogInjectionTest.java:1658:79:1658:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1658:88:1658:95 | source(...) : Object | LogInjectionTest.java:1658:79:1658:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | -| LogInjectionTest.java:1659:73:1659:80 | source(...) : Object | LogInjectionTest.java:1659:64:1659:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1659:73:1659:80 | source(...) : Object | LogInjectionTest.java:1659:64:1659:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | -| LogInjectionTest.java:1660:118:1660:125 | source(...) : Object | LogInjectionTest.java:1660:109:1660:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1660:118:1660:125 | source(...) : Object | LogInjectionTest.java:1660:109:1660:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | -| LogInjectionTest.java:1661:103:1661:110 | source(...) : Object | LogInjectionTest.java:1661:94:1661:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1661:103:1661:110 | source(...) : Object | LogInjectionTest.java:1661:94:1661:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | -| LogInjectionTest.java:1662:88:1662:95 | source(...) : Object | LogInjectionTest.java:1662:79:1662:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1662:88:1662:95 | source(...) : Object | LogInjectionTest.java:1662:79:1662:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | -| LogInjectionTest.java:1663:73:1663:80 | source(...) : Object | LogInjectionTest.java:1663:64:1663:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1663:73:1663:80 | source(...) : Object | LogInjectionTest.java:1663:64:1663:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | -| LogInjectionTest.java:1664:51:1664:58 | source(...) : Object | LogInjectionTest.java:1664:42:1664:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | -| LogInjectionTest.java:1664:51:1664:58 | source(...) : Object | LogInjectionTest.java:1664:42:1664:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:469 | -| LogInjectionTest.java:1665:36:1665:43 | source(...) : Object | LogInjectionTest.java:1665:27:1665:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | -| LogInjectionTest.java:1665:36:1665:43 | source(...) : Object | LogInjectionTest.java:1665:27:1665:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:469 | -| LogInjectionTest.java:1666:51:1666:58 | source(...) : Object | LogInjectionTest.java:1666:42:1666:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | -| LogInjectionTest.java:1666:51:1666:58 | source(...) : Object | LogInjectionTest.java:1666:42:1666:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:473 | -| LogInjectionTest.java:1667:36:1667:43 | source(...) : Object | LogInjectionTest.java:1667:27:1667:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | -| LogInjectionTest.java:1667:36:1667:43 | source(...) : Object | LogInjectionTest.java:1667:27:1667:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:473 | -| LogInjectionTest.java:1668:36:1668:43 | source(...) : Object | LogInjectionTest.java:1668:27:1668:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:409 | -| LogInjectionTest.java:1668:36:1668:43 | source(...) : Object | LogInjectionTest.java:1668:27:1668:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:472 | -| LogInjectionTest.java:1669:36:1669:43 | source(...) : Object | LogInjectionTest.java:1669:27:1669:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:413 | -| LogInjectionTest.java:1669:36:1669:43 | source(...) : Object | LogInjectionTest.java:1669:27:1669:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:476 | -| LogInjectionTest.java:1670:42:1670:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1670:42:1670:64 | new Object[] | provenance | Sink:MaD:409 | -| LogInjectionTest.java:1670:42:1670:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1670:42:1670:64 | new Object[] | provenance | Sink:MaD:472 | -| LogInjectionTest.java:1670:56:1670:63 | source(...) : Object | LogInjectionTest.java:1670:42:1670:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1671:42:1671:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1671:42:1671:64 | new Object[] | provenance | Sink:MaD:413 | -| LogInjectionTest.java:1671:42:1671:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1671:42:1671:64 | new Object[] | provenance | Sink:MaD:476 | -| LogInjectionTest.java:1671:56:1671:63 | source(...) : Object | LogInjectionTest.java:1671:42:1671:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1672:66:1672:73 | source(...) : Object | LogInjectionTest.java:1672:57:1672:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | -| LogInjectionTest.java:1672:66:1672:73 | source(...) : Object | LogInjectionTest.java:1672:57:1672:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:470 | -| LogInjectionTest.java:1673:51:1673:58 | source(...) : Object | LogInjectionTest.java:1673:42:1673:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | -| LogInjectionTest.java:1673:51:1673:58 | source(...) : Object | LogInjectionTest.java:1673:42:1673:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:470 | -| LogInjectionTest.java:1674:36:1674:43 | source(...) : Object | LogInjectionTest.java:1674:27:1674:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | -| LogInjectionTest.java:1674:36:1674:43 | source(...) : Object | LogInjectionTest.java:1674:27:1674:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:470 | -| LogInjectionTest.java:1675:66:1675:73 | source(...) : Object | LogInjectionTest.java:1675:57:1675:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | -| LogInjectionTest.java:1675:66:1675:73 | source(...) : Object | LogInjectionTest.java:1675:57:1675:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:474 | -| LogInjectionTest.java:1676:51:1676:58 | source(...) : Object | LogInjectionTest.java:1676:42:1676:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | -| LogInjectionTest.java:1676:51:1676:58 | source(...) : Object | LogInjectionTest.java:1676:42:1676:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:474 | -| LogInjectionTest.java:1677:36:1677:43 | source(...) : Object | LogInjectionTest.java:1677:27:1677:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | -| LogInjectionTest.java:1677:36:1677:43 | source(...) : Object | LogInjectionTest.java:1677:27:1677:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:474 | -| LogInjectionTest.java:1678:81:1678:88 | source(...) : Object | LogInjectionTest.java:1678:72:1678:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1678:81:1678:88 | source(...) : Object | LogInjectionTest.java:1678:72:1678:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | -| LogInjectionTest.java:1679:66:1679:73 | source(...) : Object | LogInjectionTest.java:1679:57:1679:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1679:66:1679:73 | source(...) : Object | LogInjectionTest.java:1679:57:1679:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | -| LogInjectionTest.java:1680:51:1680:58 | source(...) : Object | LogInjectionTest.java:1680:42:1680:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1680:51:1680:58 | source(...) : Object | LogInjectionTest.java:1680:42:1680:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | -| LogInjectionTest.java:1681:36:1681:43 | source(...) : Object | LogInjectionTest.java:1681:27:1681:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1681:36:1681:43 | source(...) : Object | LogInjectionTest.java:1681:27:1681:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | -| LogInjectionTest.java:1682:81:1682:88 | source(...) : Object | LogInjectionTest.java:1682:72:1682:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1682:81:1682:88 | source(...) : Object | LogInjectionTest.java:1682:72:1682:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | -| LogInjectionTest.java:1683:66:1683:73 | source(...) : Object | LogInjectionTest.java:1683:57:1683:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1683:66:1683:73 | source(...) : Object | LogInjectionTest.java:1683:57:1683:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | -| LogInjectionTest.java:1684:51:1684:58 | source(...) : Object | LogInjectionTest.java:1684:42:1684:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1684:51:1684:58 | source(...) : Object | LogInjectionTest.java:1684:42:1684:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | -| LogInjectionTest.java:1685:36:1685:43 | source(...) : Object | LogInjectionTest.java:1685:27:1685:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1685:36:1685:43 | source(...) : Object | LogInjectionTest.java:1685:27:1685:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | -| LogInjectionTest.java:1686:50:1686:57 | source(...) : Object | LogInjectionTest.java:1686:41:1686:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | -| LogInjectionTest.java:1686:50:1686:57 | source(...) : Object | LogInjectionTest.java:1686:41:1686:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:478 | -| LogInjectionTest.java:1687:35:1687:42 | source(...) : Object | LogInjectionTest.java:1687:26:1687:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | -| LogInjectionTest.java:1687:35:1687:42 | source(...) : Object | LogInjectionTest.java:1687:26:1687:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:478 | -| LogInjectionTest.java:1688:50:1688:57 | source(...) : Object | LogInjectionTest.java:1688:41:1688:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | -| LogInjectionTest.java:1688:50:1688:57 | source(...) : Object | LogInjectionTest.java:1688:41:1688:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:482 | -| LogInjectionTest.java:1689:35:1689:42 | source(...) : Object | LogInjectionTest.java:1689:26:1689:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | -| LogInjectionTest.java:1689:35:1689:42 | source(...) : Object | LogInjectionTest.java:1689:26:1689:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:482 | -| LogInjectionTest.java:1690:35:1690:42 | source(...) : Object | LogInjectionTest.java:1690:26:1690:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:418 | -| LogInjectionTest.java:1690:35:1690:42 | source(...) : Object | LogInjectionTest.java:1690:26:1690:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:481 | -| LogInjectionTest.java:1691:35:1691:42 | source(...) : Object | LogInjectionTest.java:1691:26:1691:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:422 | -| LogInjectionTest.java:1691:35:1691:42 | source(...) : Object | LogInjectionTest.java:1691:26:1691:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:485 | -| LogInjectionTest.java:1692:41:1692:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1692:41:1692:63 | new Object[] | provenance | Sink:MaD:418 | -| LogInjectionTest.java:1692:41:1692:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1692:41:1692:63 | new Object[] | provenance | Sink:MaD:481 | -| LogInjectionTest.java:1692:55:1692:62 | source(...) : Object | LogInjectionTest.java:1692:41:1692:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1693:41:1693:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1693:41:1693:63 | new Object[] | provenance | Sink:MaD:422 | -| LogInjectionTest.java:1693:41:1693:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1693:41:1693:63 | new Object[] | provenance | Sink:MaD:485 | -| LogInjectionTest.java:1693:55:1693:62 | source(...) : Object | LogInjectionTest.java:1693:41:1693:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1694:65:1694:72 | source(...) : Object | LogInjectionTest.java:1694:56:1694:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | -| LogInjectionTest.java:1694:65:1694:72 | source(...) : Object | LogInjectionTest.java:1694:56:1694:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:479 | -| LogInjectionTest.java:1695:50:1695:57 | source(...) : Object | LogInjectionTest.java:1695:41:1695:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | -| LogInjectionTest.java:1695:50:1695:57 | source(...) : Object | LogInjectionTest.java:1695:41:1695:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:479 | -| LogInjectionTest.java:1696:35:1696:42 | source(...) : Object | LogInjectionTest.java:1696:26:1696:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | -| LogInjectionTest.java:1696:35:1696:42 | source(...) : Object | LogInjectionTest.java:1696:26:1696:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:479 | -| LogInjectionTest.java:1697:65:1697:72 | source(...) : Object | LogInjectionTest.java:1697:56:1697:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | -| LogInjectionTest.java:1697:65:1697:72 | source(...) : Object | LogInjectionTest.java:1697:56:1697:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:483 | -| LogInjectionTest.java:1698:50:1698:57 | source(...) : Object | LogInjectionTest.java:1698:41:1698:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | -| LogInjectionTest.java:1698:50:1698:57 | source(...) : Object | LogInjectionTest.java:1698:41:1698:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:483 | -| LogInjectionTest.java:1699:35:1699:42 | source(...) : Object | LogInjectionTest.java:1699:26:1699:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | -| LogInjectionTest.java:1699:35:1699:42 | source(...) : Object | LogInjectionTest.java:1699:26:1699:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:483 | -| LogInjectionTest.java:1700:80:1700:87 | source(...) : Object | LogInjectionTest.java:1700:71:1700:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1700:80:1700:87 | source(...) : Object | LogInjectionTest.java:1700:71:1700:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | -| LogInjectionTest.java:1701:65:1701:72 | source(...) : Object | LogInjectionTest.java:1701:56:1701:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1701:65:1701:72 | source(...) : Object | LogInjectionTest.java:1701:56:1701:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | -| LogInjectionTest.java:1702:50:1702:57 | source(...) : Object | LogInjectionTest.java:1702:41:1702:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1702:50:1702:57 | source(...) : Object | LogInjectionTest.java:1702:41:1702:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | -| LogInjectionTest.java:1703:35:1703:42 | source(...) : Object | LogInjectionTest.java:1703:26:1703:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1703:35:1703:42 | source(...) : Object | LogInjectionTest.java:1703:26:1703:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | -| LogInjectionTest.java:1704:80:1704:87 | source(...) : Object | LogInjectionTest.java:1704:71:1704:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1704:80:1704:87 | source(...) : Object | LogInjectionTest.java:1704:71:1704:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | -| LogInjectionTest.java:1705:65:1705:72 | source(...) : Object | LogInjectionTest.java:1705:56:1705:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1705:65:1705:72 | source(...) : Object | LogInjectionTest.java:1705:56:1705:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | -| LogInjectionTest.java:1706:50:1706:57 | source(...) : Object | LogInjectionTest.java:1706:41:1706:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1706:50:1706:57 | source(...) : Object | LogInjectionTest.java:1706:41:1706:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | -| LogInjectionTest.java:1707:35:1707:42 | source(...) : Object | LogInjectionTest.java:1707:26:1707:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1707:35:1707:42 | source(...) : Object | LogInjectionTest.java:1707:26:1707:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | -| LogInjectionTest.java:1712:34:1712:41 | source(...) : Object | LogInjectionTest.java:1712:25:1712:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | -| LogInjectionTest.java:1713:34:1713:41 | source(...) : Object | LogInjectionTest.java:1713:25:1713:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | -| LogInjectionTest.java:1713:34:1713:41 | source(...) : Object | LogInjectionTest.java:1713:25:1713:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:486 | -| LogInjectionTest.java:1715:34:1715:41 | source(...) : Object | LogInjectionTest.java:1715:25:1715:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | -| LogInjectionTest.java:1715:34:1715:41 | source(...) : Object | LogInjectionTest.java:1715:25:1715:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:488 | -| LogInjectionTest.java:1716:40:1716:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1716:40:1716:62 | new Object[] | provenance | Sink:MaD:488 | -| LogInjectionTest.java:1716:54:1716:61 | source(...) : Object | LogInjectionTest.java:1716:40:1716:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1717:34:1717:41 | source(...) : Object | LogInjectionTest.java:1717:25:1717:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | -| LogInjectionTest.java:1717:34:1717:41 | source(...) : Object | LogInjectionTest.java:1717:25:1717:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:487 | -| LogInjectionTest.java:1720:55:1720:62 | source(...) : Object | LogInjectionTest.java:1720:25:1720:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | -| LogInjectionTest.java:1720:55:1720:62 | source(...) : Object | LogInjectionTest.java:1720:25:1720:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:489 | -| LogInjectionTest.java:1725:35:1725:42 | source(...) : Object | LogInjectionTest.java:1725:26:1725:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:495 | -| LogInjectionTest.java:1726:35:1726:42 | source(...) : Object | LogInjectionTest.java:1726:26:1726:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:496 | -| LogInjectionTest.java:1728:35:1728:42 | source(...) : Object | LogInjectionTest.java:1728:26:1728:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:498 | -| LogInjectionTest.java:1729:41:1729:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1729:41:1729:63 | new Object[] | provenance | Sink:MaD:498 | -| LogInjectionTest.java:1729:55:1729:62 | source(...) : Object | LogInjectionTest.java:1729:41:1729:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1730:35:1730:42 | source(...) : Object | LogInjectionTest.java:1730:26:1730:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:497 | -| LogInjectionTest.java:1733:35:1733:42 | source(...) : Object | LogInjectionTest.java:1733:26:1733:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:499 | -| LogInjectionTest.java:1734:60:1734:67 | source(...) : Object | LogInjectionTest.java:1734:51:1734:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:491 | -| LogInjectionTest.java:1735:60:1735:67 | source(...) : Object | LogInjectionTest.java:1735:51:1735:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:492 | -| LogInjectionTest.java:1737:60:1737:67 | source(...) : Object | LogInjectionTest.java:1737:51:1737:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:494 | -| LogInjectionTest.java:1738:66:1738:88 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1738:66:1738:88 | new Object[] | provenance | Sink:MaD:494 | -| LogInjectionTest.java:1738:80:1738:87 | source(...) : Object | LogInjectionTest.java:1738:66:1738:88 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1739:60:1739:67 | source(...) : Object | LogInjectionTest.java:1739:51:1739:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:493 | -| LogInjectionTest.java:1742:60:1742:67 | source(...) : Object | LogInjectionTest.java:1742:51:1742:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:494 | -| LogInjectionTest.java:1743:66:1743:73 | source(...) : Object | LogInjectionTest.java:1743:13:1743:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:494 | -| LogInjectionTest.java:1744:81:1744:88 | source(...) : Object | LogInjectionTest.java:1744:13:1744:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:494 | -| LogInjectionTest.java:1745:96:1745:103 | source(...) : Object | LogInjectionTest.java:1745:13:1745:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:494 | -| LogInjectionTest.java:1746:35:1746:42 | source(...) : Object | LogInjectionTest.java:1746:26:1746:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:504 | -| LogInjectionTest.java:1747:35:1747:42 | source(...) : Object | LogInjectionTest.java:1747:26:1747:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:505 | -| LogInjectionTest.java:1749:35:1749:42 | source(...) : Object | LogInjectionTest.java:1749:26:1749:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:507 | -| LogInjectionTest.java:1750:41:1750:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1750:41:1750:63 | new Object[] | provenance | Sink:MaD:507 | -| LogInjectionTest.java:1750:55:1750:62 | source(...) : Object | LogInjectionTest.java:1750:41:1750:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1751:35:1751:42 | source(...) : Object | LogInjectionTest.java:1751:26:1751:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:506 | -| LogInjectionTest.java:1754:35:1754:42 | source(...) : Object | LogInjectionTest.java:1754:26:1754:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:508 | -| LogInjectionTest.java:1755:60:1755:67 | source(...) : Object | LogInjectionTest.java:1755:51:1755:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:500 | -| LogInjectionTest.java:1756:60:1756:67 | source(...) : Object | LogInjectionTest.java:1756:51:1756:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:501 | -| LogInjectionTest.java:1758:60:1758:67 | source(...) : Object | LogInjectionTest.java:1758:51:1758:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:503 | -| LogInjectionTest.java:1759:66:1759:88 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1759:66:1759:88 | new Object[] | provenance | Sink:MaD:503 | -| LogInjectionTest.java:1759:80:1759:87 | source(...) : Object | LogInjectionTest.java:1759:66:1759:88 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1760:60:1760:67 | source(...) : Object | LogInjectionTest.java:1760:51:1760:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:502 | -| LogInjectionTest.java:1763:60:1763:67 | source(...) : Object | LogInjectionTest.java:1763:51:1763:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:503 | -| LogInjectionTest.java:1764:66:1764:73 | source(...) : Object | LogInjectionTest.java:1764:13:1764:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:503 | -| LogInjectionTest.java:1765:81:1765:88 | source(...) : Object | LogInjectionTest.java:1765:13:1765:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:503 | -| LogInjectionTest.java:1766:96:1766:103 | source(...) : Object | LogInjectionTest.java:1766:13:1766:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:503 | -| LogInjectionTest.java:1767:34:1767:41 | source(...) : Object | LogInjectionTest.java:1767:25:1767:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:513 | -| LogInjectionTest.java:1768:34:1768:41 | source(...) : Object | LogInjectionTest.java:1768:25:1768:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:514 | -| LogInjectionTest.java:1770:34:1770:41 | source(...) : Object | LogInjectionTest.java:1770:25:1770:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:516 | -| LogInjectionTest.java:1771:40:1771:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1771:40:1771:62 | new Object[] | provenance | Sink:MaD:516 | -| LogInjectionTest.java:1771:54:1771:61 | source(...) : Object | LogInjectionTest.java:1771:40:1771:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1772:34:1772:41 | source(...) : Object | LogInjectionTest.java:1772:25:1772:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:515 | -| LogInjectionTest.java:1775:34:1775:41 | source(...) : Object | LogInjectionTest.java:1775:25:1775:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:517 | -| LogInjectionTest.java:1776:59:1776:66 | source(...) : Object | LogInjectionTest.java:1776:50:1776:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:509 | -| LogInjectionTest.java:1777:59:1777:66 | source(...) : Object | LogInjectionTest.java:1777:50:1777:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:510 | -| LogInjectionTest.java:1779:59:1779:66 | source(...) : Object | LogInjectionTest.java:1779:50:1779:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:512 | -| LogInjectionTest.java:1780:65:1780:87 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1780:65:1780:87 | new Object[] | provenance | Sink:MaD:512 | -| LogInjectionTest.java:1780:79:1780:86 | source(...) : Object | LogInjectionTest.java:1780:65:1780:87 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1781:59:1781:66 | source(...) : Object | LogInjectionTest.java:1781:50:1781:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:511 | -| LogInjectionTest.java:1784:59:1784:66 | source(...) : Object | LogInjectionTest.java:1784:50:1784:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:512 | -| LogInjectionTest.java:1785:65:1785:72 | source(...) : Object | LogInjectionTest.java:1785:13:1785:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:512 | -| LogInjectionTest.java:1786:80:1786:87 | source(...) : Object | LogInjectionTest.java:1786:13:1786:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:512 | -| LogInjectionTest.java:1787:95:1787:102 | source(...) : Object | LogInjectionTest.java:1787:13:1787:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:512 | -| LogInjectionTest.java:1788:35:1788:42 | source(...) : Object | LogInjectionTest.java:1788:26:1788:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:522 | -| LogInjectionTest.java:1789:35:1789:42 | source(...) : Object | LogInjectionTest.java:1789:26:1789:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:523 | -| LogInjectionTest.java:1791:35:1791:42 | source(...) : Object | LogInjectionTest.java:1791:26:1791:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:525 | -| LogInjectionTest.java:1792:41:1792:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1792:41:1792:63 | new Object[] | provenance | Sink:MaD:525 | -| LogInjectionTest.java:1792:55:1792:62 | source(...) : Object | LogInjectionTest.java:1792:41:1792:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1793:35:1793:42 | source(...) : Object | LogInjectionTest.java:1793:26:1793:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:524 | -| LogInjectionTest.java:1796:35:1796:42 | source(...) : Object | LogInjectionTest.java:1796:26:1796:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:526 | -| LogInjectionTest.java:1797:60:1797:67 | source(...) : Object | LogInjectionTest.java:1797:51:1797:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:518 | -| LogInjectionTest.java:1798:60:1798:67 | source(...) : Object | LogInjectionTest.java:1798:51:1798:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:519 | -| LogInjectionTest.java:1800:60:1800:67 | source(...) : Object | LogInjectionTest.java:1800:51:1800:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:521 | -| LogInjectionTest.java:1801:66:1801:88 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1801:66:1801:88 | new Object[] | provenance | Sink:MaD:521 | -| LogInjectionTest.java:1801:80:1801:87 | source(...) : Object | LogInjectionTest.java:1801:66:1801:88 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1802:60:1802:67 | source(...) : Object | LogInjectionTest.java:1802:51:1802:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:520 | -| LogInjectionTest.java:1805:60:1805:67 | source(...) : Object | LogInjectionTest.java:1805:51:1805:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:521 | -| LogInjectionTest.java:1806:66:1806:73 | source(...) : Object | LogInjectionTest.java:1806:13:1806:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:521 | -| LogInjectionTest.java:1807:81:1807:88 | source(...) : Object | LogInjectionTest.java:1807:13:1807:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:521 | -| LogInjectionTest.java:1808:96:1808:103 | source(...) : Object | LogInjectionTest.java:1808:13:1808:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:521 | -| LogInjectionTest.java:1809:34:1809:41 | source(...) : Object | LogInjectionTest.java:1809:25:1809:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:531 | -| LogInjectionTest.java:1810:34:1810:41 | source(...) : Object | LogInjectionTest.java:1810:25:1810:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:532 | -| LogInjectionTest.java:1812:34:1812:41 | source(...) : Object | LogInjectionTest.java:1812:25:1812:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:534 | -| LogInjectionTest.java:1813:40:1813:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1813:40:1813:62 | new Object[] | provenance | Sink:MaD:534 | -| LogInjectionTest.java:1813:54:1813:61 | source(...) : Object | LogInjectionTest.java:1813:40:1813:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1814:34:1814:41 | source(...) : Object | LogInjectionTest.java:1814:25:1814:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:533 | -| LogInjectionTest.java:1817:34:1817:41 | source(...) : Object | LogInjectionTest.java:1817:25:1817:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:535 | -| LogInjectionTest.java:1818:59:1818:66 | source(...) : Object | LogInjectionTest.java:1818:50:1818:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:527 | -| LogInjectionTest.java:1819:59:1819:66 | source(...) : Object | LogInjectionTest.java:1819:50:1819:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:528 | -| LogInjectionTest.java:1821:59:1821:66 | source(...) : Object | LogInjectionTest.java:1821:50:1821:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:530 | -| LogInjectionTest.java:1822:65:1822:87 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1822:65:1822:87 | new Object[] | provenance | Sink:MaD:530 | -| LogInjectionTest.java:1822:79:1822:86 | source(...) : Object | LogInjectionTest.java:1822:65:1822:87 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1823:59:1823:66 | source(...) : Object | LogInjectionTest.java:1823:50:1823:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:529 | -| LogInjectionTest.java:1826:59:1826:66 | source(...) : Object | LogInjectionTest.java:1826:50:1826:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:530 | -| LogInjectionTest.java:1827:65:1827:72 | source(...) : Object | LogInjectionTest.java:1827:13:1827:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:530 | -| LogInjectionTest.java:1828:80:1828:87 | source(...) : Object | LogInjectionTest.java:1828:13:1828:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:530 | -| LogInjectionTest.java:1829:95:1829:102 | source(...) : Object | LogInjectionTest.java:1829:13:1829:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:530 | -| LogInjectionTest.java:1850:37:1850:44 | source(...) : Object | LogInjectionTest.java:1850:28:1850:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:19 | -| LogInjectionTest.java:1851:43:1851:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1851:43:1851:65 | new Object[] | provenance | Sink:MaD:19 | -| LogInjectionTest.java:1851:57:1851:64 | source(...) : Object | LogInjectionTest.java:1851:43:1851:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1853:30:1853:37 | source(...) : Object | LogInjectionTest.java:1853:21:1853:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1854:45:1854:52 | source(...) : Object | LogInjectionTest.java:1854:36:1854:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:7 | -| LogInjectionTest.java:1855:30:1855:37 | source(...) : Object | LogInjectionTest.java:1855:21:1855:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1856:60:1856:67 | source(...) : Object | LogInjectionTest.java:1856:51:1856:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:8 | -| LogInjectionTest.java:1857:45:1857:52 | source(...) : Object | LogInjectionTest.java:1857:36:1857:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:8 | -| LogInjectionTest.java:1858:30:1858:37 | source(...) : Object | LogInjectionTest.java:1858:21:1858:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1859:75:1859:82 | source(...) : Object | LogInjectionTest.java:1859:66:1859:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:9 | -| LogInjectionTest.java:1860:60:1860:67 | source(...) : Object | LogInjectionTest.java:1860:51:1860:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:9 | -| LogInjectionTest.java:1861:45:1861:52 | source(...) : Object | LogInjectionTest.java:1861:36:1861:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:9 | -| LogInjectionTest.java:1862:30:1862:37 | source(...) : Object | LogInjectionTest.java:1862:21:1862:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1863:90:1863:97 | source(...) : Object | LogInjectionTest.java:1863:81:1863:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | -| LogInjectionTest.java:1864:75:1864:82 | source(...) : Object | LogInjectionTest.java:1864:66:1864:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | -| LogInjectionTest.java:1865:60:1865:67 | source(...) : Object | LogInjectionTest.java:1865:51:1865:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | -| LogInjectionTest.java:1866:45:1866:52 | source(...) : Object | LogInjectionTest.java:1866:36:1866:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | -| LogInjectionTest.java:1867:30:1867:37 | source(...) : Object | LogInjectionTest.java:1867:21:1867:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1868:105:1868:112 | source(...) : Object | LogInjectionTest.java:1868:96:1868:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | -| LogInjectionTest.java:1869:90:1869:97 | source(...) : Object | LogInjectionTest.java:1869:81:1869:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | -| LogInjectionTest.java:1870:75:1870:82 | source(...) : Object | LogInjectionTest.java:1870:66:1870:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | -| LogInjectionTest.java:1871:60:1871:67 | source(...) : Object | LogInjectionTest.java:1871:51:1871:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | -| LogInjectionTest.java:1872:45:1872:52 | source(...) : Object | LogInjectionTest.java:1872:36:1872:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | -| LogInjectionTest.java:1873:30:1873:37 | source(...) : Object | LogInjectionTest.java:1873:21:1873:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1874:120:1874:127 | source(...) : Object | LogInjectionTest.java:1874:111:1874:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | -| LogInjectionTest.java:1875:105:1875:112 | source(...) : Object | LogInjectionTest.java:1875:96:1875:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | -| LogInjectionTest.java:1876:90:1876:97 | source(...) : Object | LogInjectionTest.java:1876:81:1876:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | -| LogInjectionTest.java:1877:75:1877:82 | source(...) : Object | LogInjectionTest.java:1877:66:1877:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | -| LogInjectionTest.java:1878:60:1878:67 | source(...) : Object | LogInjectionTest.java:1878:51:1878:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | -| LogInjectionTest.java:1879:45:1879:52 | source(...) : Object | LogInjectionTest.java:1879:36:1879:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | -| LogInjectionTest.java:1880:30:1880:37 | source(...) : Object | LogInjectionTest.java:1880:21:1880:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1881:135:1881:142 | source(...) : Object | LogInjectionTest.java:1881:126:1881:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | -| LogInjectionTest.java:1882:120:1882:127 | source(...) : Object | LogInjectionTest.java:1882:111:1882:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | -| LogInjectionTest.java:1883:105:1883:112 | source(...) : Object | LogInjectionTest.java:1883:96:1883:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | -| LogInjectionTest.java:1884:90:1884:97 | source(...) : Object | LogInjectionTest.java:1884:81:1884:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | -| LogInjectionTest.java:1885:75:1885:82 | source(...) : Object | LogInjectionTest.java:1885:66:1885:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | -| LogInjectionTest.java:1886:60:1886:67 | source(...) : Object | LogInjectionTest.java:1886:51:1886:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | -| LogInjectionTest.java:1887:45:1887:52 | source(...) : Object | LogInjectionTest.java:1887:36:1887:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | -| LogInjectionTest.java:1888:30:1888:37 | source(...) : Object | LogInjectionTest.java:1888:21:1888:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1889:150:1889:157 | source(...) : Object | LogInjectionTest.java:1889:141:1889:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1890:135:1890:142 | source(...) : Object | LogInjectionTest.java:1890:126:1890:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1891:120:1891:127 | source(...) : Object | LogInjectionTest.java:1891:111:1891:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1892:105:1892:112 | source(...) : Object | LogInjectionTest.java:1892:96:1892:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1893:90:1893:97 | source(...) : Object | LogInjectionTest.java:1893:81:1893:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1894:75:1894:82 | source(...) : Object | LogInjectionTest.java:1894:66:1894:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1895:60:1895:67 | source(...) : Object | LogInjectionTest.java:1895:51:1895:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1896:45:1896:52 | source(...) : Object | LogInjectionTest.java:1896:36:1896:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1897:30:1897:37 | source(...) : Object | LogInjectionTest.java:1897:21:1897:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1898:165:1898:172 | source(...) : Object | LogInjectionTest.java:1898:156:1898:172 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1899:150:1899:157 | source(...) : Object | LogInjectionTest.java:1899:141:1899:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1900:135:1900:142 | source(...) : Object | LogInjectionTest.java:1900:126:1900:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1901:120:1901:127 | source(...) : Object | LogInjectionTest.java:1901:111:1901:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1902:105:1902:112 | source(...) : Object | LogInjectionTest.java:1902:96:1902:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1903:90:1903:97 | source(...) : Object | LogInjectionTest.java:1903:81:1903:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1904:75:1904:82 | source(...) : Object | LogInjectionTest.java:1904:66:1904:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1905:60:1905:67 | source(...) : Object | LogInjectionTest.java:1905:51:1905:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1906:45:1906:52 | source(...) : Object | LogInjectionTest.java:1906:36:1906:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:42:22:42:27 | source : String | LogInjectionTest.java:42:22:42:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:43:22:43:27 | source : String | LogInjectionTest.java:43:22:43:57 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:45:22:45:27 | source : String | LogInjectionTest.java:45:22:45:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:46:22:46:27 | source : String | LogInjectionTest.java:46:22:46:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:48:22:48:27 | source : String | LogInjectionTest.java:48:22:48:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:49:22:49:27 | source : String | LogInjectionTest.java:49:22:49:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:50:22:50:27 | source : String | LogInjectionTest.java:50:22:50:45 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:52:22:52:27 | source : String | LogInjectionTest.java:52:22:52:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:53:22:53:27 | source : String | LogInjectionTest.java:53:22:53:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:55:22:55:27 | source : String | LogInjectionTest.java:55:22:55:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:56:22:56:27 | source : String | LogInjectionTest.java:56:22:56:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:58:22:58:27 | source : String | LogInjectionTest.java:58:22:58:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:59:22:59:27 | source : String | LogInjectionTest.java:59:22:59:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:61:22:61:27 | source : String | LogInjectionTest.java:61:22:61:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:62:22:62:27 | source : String | LogInjectionTest.java:62:22:62:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:64:22:64:27 | source : String | LogInjectionTest.java:64:22:64:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:65:22:65:27 | source : String | LogInjectionTest.java:65:22:65:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:67:22:67:27 | source : String | LogInjectionTest.java:67:22:67:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:68:22:68:27 | source : String | LogInjectionTest.java:68:22:68:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:69:22:69:27 | source : String | LogInjectionTest.java:69:22:69:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:70:22:70:27 | source : String | LogInjectionTest.java:70:22:70:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:71:22:71:27 | source : String | LogInjectionTest.java:71:22:71:58 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:79:26:79:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:85:26:85:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:91:26:91:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:97:26:97:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:103:26:103:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:109:26:109:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:115:26:115:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:121:26:121:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:127:26:127:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:133:26:133:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:141:26:141:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:147:26:147:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:153:26:153:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:159:26:159:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:165:26:165:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:171:26:171:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:175:26:175:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:177:26:177:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:181:26:181:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:183:26:183:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:187:26:187:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:193:26:193:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:75:25:75:41 | (...)... : String | provenance | Src:MaD:536 | +| LogInjectionTest.java:205:48:205:55 | source(...) : Object | LogInjectionTest.java:205:39:205:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:60 | +| LogInjectionTest.java:215:41:215:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:215:41:215:63 | new Object[] | provenance | Sink:MaD:61 | +| LogInjectionTest.java:215:55:215:62 | source(...) : Object | LogInjectionTest.java:215:41:215:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:225:41:225:48 | source(...) : Object | LogInjectionTest.java:225:26:225:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:76 | +| LogInjectionTest.java:226:41:226:48 | source(...) : Object | LogInjectionTest.java:226:26:226:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:77 | +| LogInjectionTest.java:227:56:227:63 | source(...) : Object | LogInjectionTest.java:227:41:227:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:78 | +| LogInjectionTest.java:228:56:228:63 | source(...) : Object | LogInjectionTest.java:228:41:228:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:79 | +| LogInjectionTest.java:229:51:229:58 | source(...) : Object | LogInjectionTest.java:229:41:229:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:80 | +| LogInjectionTest.java:230:59:230:66 | source(...) : Object | LogInjectionTest.java:230:41:230:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:81 | +| LogInjectionTest.java:231:59:231:66 | source(...) : Object | LogInjectionTest.java:231:41:231:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:82 | +| LogInjectionTest.java:233:50:233:57 | source(...) : Object | LogInjectionTest.java:233:41:233:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:83 | +| LogInjectionTest.java:234:50:234:57 | source(...) : Object | LogInjectionTest.java:234:41:234:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:93 | +| LogInjectionTest.java:235:56:235:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:235:56:235:78 | new Object[] | provenance | Sink:MaD:93 | +| LogInjectionTest.java:235:70:235:77 | source(...) : Object | LogInjectionTest.java:235:56:235:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:236:65:236:72 | source(...) : Object | LogInjectionTest.java:236:56:236:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | +| LogInjectionTest.java:237:50:237:57 | source(...) : Object | LogInjectionTest.java:237:41:237:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | +| LogInjectionTest.java:238:80:238:87 | source(...) : Object | LogInjectionTest.java:238:71:238:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:85 | +| LogInjectionTest.java:239:65:239:72 | source(...) : Object | LogInjectionTest.java:239:56:239:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:85 | +| LogInjectionTest.java:240:50:240:57 | source(...) : Object | LogInjectionTest.java:240:41:240:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:85 | +| LogInjectionTest.java:241:95:241:102 | source(...) : Object | LogInjectionTest.java:241:86:241:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | +| LogInjectionTest.java:242:80:242:87 | source(...) : Object | LogInjectionTest.java:242:71:242:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | +| LogInjectionTest.java:243:65:243:72 | source(...) : Object | LogInjectionTest.java:243:56:243:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | +| LogInjectionTest.java:244:50:244:57 | source(...) : Object | LogInjectionTest.java:244:41:244:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | +| LogInjectionTest.java:245:110:245:117 | source(...) : Object | LogInjectionTest.java:245:101:245:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | +| LogInjectionTest.java:246:95:246:102 | source(...) : Object | LogInjectionTest.java:246:86:246:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | +| LogInjectionTest.java:247:80:247:87 | source(...) : Object | LogInjectionTest.java:247:71:247:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | +| LogInjectionTest.java:248:65:248:72 | source(...) : Object | LogInjectionTest.java:248:56:248:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | +| LogInjectionTest.java:249:50:249:57 | source(...) : Object | LogInjectionTest.java:249:41:249:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | +| LogInjectionTest.java:250:125:250:132 | source(...) : Object | LogInjectionTest.java:250:116:250:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | +| LogInjectionTest.java:251:110:251:117 | source(...) : Object | LogInjectionTest.java:251:101:251:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | +| LogInjectionTest.java:252:95:252:102 | source(...) : Object | LogInjectionTest.java:252:86:252:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | +| LogInjectionTest.java:253:80:253:87 | source(...) : Object | LogInjectionTest.java:253:71:253:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | +| LogInjectionTest.java:254:65:254:72 | source(...) : Object | LogInjectionTest.java:254:56:254:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | +| LogInjectionTest.java:255:50:255:57 | source(...) : Object | LogInjectionTest.java:255:41:255:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | +| LogInjectionTest.java:256:140:256:147 | source(...) : Object | LogInjectionTest.java:256:131:256:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | +| LogInjectionTest.java:257:125:257:132 | source(...) : Object | LogInjectionTest.java:257:116:257:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | +| LogInjectionTest.java:258:110:258:117 | source(...) : Object | LogInjectionTest.java:258:101:258:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | +| LogInjectionTest.java:259:95:259:102 | source(...) : Object | LogInjectionTest.java:259:86:259:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | +| LogInjectionTest.java:260:80:260:87 | source(...) : Object | LogInjectionTest.java:260:71:260:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | +| LogInjectionTest.java:261:65:261:72 | source(...) : Object | LogInjectionTest.java:261:56:261:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | +| LogInjectionTest.java:262:50:262:57 | source(...) : Object | LogInjectionTest.java:262:41:262:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | +| LogInjectionTest.java:263:155:263:162 | source(...) : Object | LogInjectionTest.java:263:146:263:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:264:140:264:147 | source(...) : Object | LogInjectionTest.java:264:131:264:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:265:125:265:132 | source(...) : Object | LogInjectionTest.java:265:116:265:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:266:110:266:117 | source(...) : Object | LogInjectionTest.java:266:101:266:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:267:95:267:102 | source(...) : Object | LogInjectionTest.java:267:86:267:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:268:80:268:87 | source(...) : Object | LogInjectionTest.java:268:71:268:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:269:65:269:72 | source(...) : Object | LogInjectionTest.java:269:56:269:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:270:50:270:57 | source(...) : Object | LogInjectionTest.java:270:41:270:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:271:170:271:177 | source(...) : Object | LogInjectionTest.java:271:161:271:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:272:155:272:162 | source(...) : Object | LogInjectionTest.java:272:146:272:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:273:140:273:147 | source(...) : Object | LogInjectionTest.java:273:131:273:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:274:125:274:132 | source(...) : Object | LogInjectionTest.java:274:116:274:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:275:110:275:117 | source(...) : Object | LogInjectionTest.java:275:101:275:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:276:95:276:102 | source(...) : Object | LogInjectionTest.java:276:86:276:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:277:80:277:87 | source(...) : Object | LogInjectionTest.java:277:71:277:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:278:65:278:72 | source(...) : Object | LogInjectionTest.java:278:56:278:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:279:50:279:57 | source(...) : Object | LogInjectionTest.java:279:41:279:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:280:185:280:192 | source(...) : Object | LogInjectionTest.java:280:176:280:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:281:170:281:177 | source(...) : Object | LogInjectionTest.java:281:161:281:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:282:155:282:162 | source(...) : Object | LogInjectionTest.java:282:146:282:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:283:140:283:147 | source(...) : Object | LogInjectionTest.java:283:131:283:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:284:125:284:132 | source(...) : Object | LogInjectionTest.java:284:116:284:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:285:110:285:117 | source(...) : Object | LogInjectionTest.java:285:101:285:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:286:95:286:102 | source(...) : Object | LogInjectionTest.java:286:86:286:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:287:80:287:87 | source(...) : Object | LogInjectionTest.java:287:71:287:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:288:65:288:72 | source(...) : Object | LogInjectionTest.java:288:56:288:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:289:50:289:57 | source(...) : Object | LogInjectionTest.java:289:41:289:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:290:50:290:57 | source(...) : Object | LogInjectionTest.java:290:41:290:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | +| LogInjectionTest.java:291:70:291:77 | source(...) : Object | LogInjectionTest.java:291:56:291:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | +| LogInjectionTest.java:292:50:292:57 | source(...) : Object | LogInjectionTest.java:292:41:292:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:94 | +| LogInjectionTest.java:293:55:293:62 | source(...) : Object | LogInjectionTest.java:293:41:293:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:95 | +| LogInjectionTest.java:294:55:294:62 | source(...) : Object | LogInjectionTest.java:294:41:294:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:96 | +| LogInjectionTest.java:295:44:295:51 | source(...) : Object | LogInjectionTest.java:295:26:295:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:99 | +| LogInjectionTest.java:296:44:296:51 | source(...) : Object | LogInjectionTest.java:296:26:296:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:100 | +| LogInjectionTest.java:297:36:297:43 | source(...) : Object | LogInjectionTest.java:297:26:297:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:97 | +| LogInjectionTest.java:298:36:298:43 | source(...) : Object | LogInjectionTest.java:298:26:298:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:98 | +| LogInjectionTest.java:301:35:301:42 | source(...) : Object | LogInjectionTest.java:301:26:301:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:101 | +| LogInjectionTest.java:302:35:302:42 | source(...) : Object | LogInjectionTest.java:302:26:302:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:111 | +| LogInjectionTest.java:303:41:303:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:303:41:303:63 | new Object[] | provenance | Sink:MaD:111 | +| LogInjectionTest.java:303:55:303:62 | source(...) : Object | LogInjectionTest.java:303:41:303:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:304:50:304:57 | source(...) : Object | LogInjectionTest.java:304:41:304:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | +| LogInjectionTest.java:305:35:305:42 | source(...) : Object | LogInjectionTest.java:305:26:305:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | +| LogInjectionTest.java:306:65:306:72 | source(...) : Object | LogInjectionTest.java:306:56:306:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:103 | +| LogInjectionTest.java:307:50:307:57 | source(...) : Object | LogInjectionTest.java:307:41:307:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:103 | +| LogInjectionTest.java:308:35:308:42 | source(...) : Object | LogInjectionTest.java:308:26:308:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:103 | +| LogInjectionTest.java:309:80:309:87 | source(...) : Object | LogInjectionTest.java:309:71:309:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | +| LogInjectionTest.java:310:65:310:72 | source(...) : Object | LogInjectionTest.java:310:56:310:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | +| LogInjectionTest.java:311:50:311:57 | source(...) : Object | LogInjectionTest.java:311:41:311:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | +| LogInjectionTest.java:312:35:312:42 | source(...) : Object | LogInjectionTest.java:312:26:312:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | +| LogInjectionTest.java:313:95:313:102 | source(...) : Object | LogInjectionTest.java:313:86:313:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | +| LogInjectionTest.java:314:80:314:87 | source(...) : Object | LogInjectionTest.java:314:71:314:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | +| LogInjectionTest.java:315:65:315:72 | source(...) : Object | LogInjectionTest.java:315:56:315:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | +| LogInjectionTest.java:316:50:316:57 | source(...) : Object | LogInjectionTest.java:316:41:316:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | +| LogInjectionTest.java:317:35:317:42 | source(...) : Object | LogInjectionTest.java:317:26:317:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | +| LogInjectionTest.java:318:110:318:117 | source(...) : Object | LogInjectionTest.java:318:101:318:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | +| LogInjectionTest.java:319:95:319:102 | source(...) : Object | LogInjectionTest.java:319:86:319:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | +| LogInjectionTest.java:320:80:320:87 | source(...) : Object | LogInjectionTest.java:320:71:320:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | +| LogInjectionTest.java:321:65:321:72 | source(...) : Object | LogInjectionTest.java:321:56:321:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | +| LogInjectionTest.java:322:50:322:57 | source(...) : Object | LogInjectionTest.java:322:41:322:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | +| LogInjectionTest.java:323:35:323:42 | source(...) : Object | LogInjectionTest.java:323:26:323:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | +| LogInjectionTest.java:324:125:324:132 | source(...) : Object | LogInjectionTest.java:324:116:324:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | +| LogInjectionTest.java:325:110:325:117 | source(...) : Object | LogInjectionTest.java:325:101:325:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | +| LogInjectionTest.java:326:95:326:102 | source(...) : Object | LogInjectionTest.java:326:86:326:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | +| LogInjectionTest.java:327:80:327:87 | source(...) : Object | LogInjectionTest.java:327:71:327:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | +| LogInjectionTest.java:328:65:328:72 | source(...) : Object | LogInjectionTest.java:328:56:328:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | +| LogInjectionTest.java:329:50:329:57 | source(...) : Object | LogInjectionTest.java:329:41:329:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | +| LogInjectionTest.java:330:35:330:42 | source(...) : Object | LogInjectionTest.java:330:26:330:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | +| LogInjectionTest.java:331:140:331:147 | source(...) : Object | LogInjectionTest.java:331:131:331:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:332:125:332:132 | source(...) : Object | LogInjectionTest.java:332:116:332:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:333:110:333:117 | source(...) : Object | LogInjectionTest.java:333:101:333:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:334:95:334:102 | source(...) : Object | LogInjectionTest.java:334:86:334:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:335:80:335:87 | source(...) : Object | LogInjectionTest.java:335:71:335:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:336:65:336:72 | source(...) : Object | LogInjectionTest.java:336:56:336:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:337:50:337:57 | source(...) : Object | LogInjectionTest.java:337:41:337:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:338:35:338:42 | source(...) : Object | LogInjectionTest.java:338:26:338:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:339:155:339:162 | source(...) : Object | LogInjectionTest.java:339:146:339:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:340:140:340:147 | source(...) : Object | LogInjectionTest.java:340:131:340:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:341:125:341:132 | source(...) : Object | LogInjectionTest.java:341:116:341:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:342:110:342:117 | source(...) : Object | LogInjectionTest.java:342:101:342:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:343:95:343:102 | source(...) : Object | LogInjectionTest.java:343:86:343:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:344:80:344:87 | source(...) : Object | LogInjectionTest.java:344:71:344:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:345:65:345:72 | source(...) : Object | LogInjectionTest.java:345:56:345:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:346:50:346:57 | source(...) : Object | LogInjectionTest.java:346:41:346:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:347:35:347:42 | source(...) : Object | LogInjectionTest.java:347:26:347:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:348:170:348:177 | source(...) : Object | LogInjectionTest.java:348:161:348:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:349:155:349:162 | source(...) : Object | LogInjectionTest.java:349:146:349:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:350:140:350:147 | source(...) : Object | LogInjectionTest.java:350:131:350:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:351:125:351:132 | source(...) : Object | LogInjectionTest.java:351:116:351:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:352:110:352:117 | source(...) : Object | LogInjectionTest.java:352:101:352:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:353:95:353:102 | source(...) : Object | LogInjectionTest.java:353:86:353:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:354:80:354:87 | source(...) : Object | LogInjectionTest.java:354:71:354:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:355:65:355:72 | source(...) : Object | LogInjectionTest.java:355:56:355:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:356:50:356:57 | source(...) : Object | LogInjectionTest.java:356:41:356:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:357:35:357:42 | source(...) : Object | LogInjectionTest.java:357:26:357:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:358:35:358:42 | source(...) : Object | LogInjectionTest.java:358:26:358:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | +| LogInjectionTest.java:359:55:359:62 | source(...) : Object | LogInjectionTest.java:359:41:359:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | +| LogInjectionTest.java:360:35:360:42 | source(...) : Object | LogInjectionTest.java:360:26:360:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:112 | +| LogInjectionTest.java:361:40:361:47 | source(...) : Object | LogInjectionTest.java:361:26:361:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:113 | +| LogInjectionTest.java:362:40:362:47 | source(...) : Object | LogInjectionTest.java:362:26:362:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:114 | +| LogInjectionTest.java:363:41:363:48 | source(...) : Object | LogInjectionTest.java:363:26:363:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:115 | +| LogInjectionTest.java:364:41:364:48 | source(...) : Object | LogInjectionTest.java:364:26:364:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:116 | +| LogInjectionTest.java:365:56:365:63 | source(...) : Object | LogInjectionTest.java:365:41:365:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:117 | +| LogInjectionTest.java:366:56:366:63 | source(...) : Object | LogInjectionTest.java:366:41:366:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:118 | +| LogInjectionTest.java:367:51:367:58 | source(...) : Object | LogInjectionTest.java:367:41:367:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:119 | +| LogInjectionTest.java:368:59:368:66 | source(...) : Object | LogInjectionTest.java:368:41:368:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:120 | +| LogInjectionTest.java:369:59:369:66 | source(...) : Object | LogInjectionTest.java:369:41:369:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:121 | +| LogInjectionTest.java:371:50:371:57 | source(...) : Object | LogInjectionTest.java:371:41:371:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:122 | +| LogInjectionTest.java:372:50:372:57 | source(...) : Object | LogInjectionTest.java:372:41:372:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:132 | +| LogInjectionTest.java:373:56:373:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:373:56:373:78 | new Object[] | provenance | Sink:MaD:132 | +| LogInjectionTest.java:373:70:373:77 | source(...) : Object | LogInjectionTest.java:373:56:373:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:374:65:374:72 | source(...) : Object | LogInjectionTest.java:374:56:374:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | +| LogInjectionTest.java:375:50:375:57 | source(...) : Object | LogInjectionTest.java:375:41:375:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | +| LogInjectionTest.java:376:80:376:87 | source(...) : Object | LogInjectionTest.java:376:71:376:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:124 | +| LogInjectionTest.java:377:65:377:72 | source(...) : Object | LogInjectionTest.java:377:56:377:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:124 | +| LogInjectionTest.java:378:50:378:57 | source(...) : Object | LogInjectionTest.java:378:41:378:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:124 | +| LogInjectionTest.java:379:95:379:102 | source(...) : Object | LogInjectionTest.java:379:86:379:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | +| LogInjectionTest.java:380:80:380:87 | source(...) : Object | LogInjectionTest.java:380:71:380:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | +| LogInjectionTest.java:381:65:381:72 | source(...) : Object | LogInjectionTest.java:381:56:381:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | +| LogInjectionTest.java:382:50:382:57 | source(...) : Object | LogInjectionTest.java:382:41:382:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | +| LogInjectionTest.java:383:110:383:117 | source(...) : Object | LogInjectionTest.java:383:101:383:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | +| LogInjectionTest.java:384:95:384:102 | source(...) : Object | LogInjectionTest.java:384:86:384:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | +| LogInjectionTest.java:385:80:385:87 | source(...) : Object | LogInjectionTest.java:385:71:385:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | +| LogInjectionTest.java:386:65:386:72 | source(...) : Object | LogInjectionTest.java:386:56:386:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | +| LogInjectionTest.java:387:50:387:57 | source(...) : Object | LogInjectionTest.java:387:41:387:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | +| LogInjectionTest.java:388:125:388:132 | source(...) : Object | LogInjectionTest.java:388:116:388:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | +| LogInjectionTest.java:389:110:389:117 | source(...) : Object | LogInjectionTest.java:389:101:389:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | +| LogInjectionTest.java:390:95:390:102 | source(...) : Object | LogInjectionTest.java:390:86:390:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | +| LogInjectionTest.java:391:80:391:87 | source(...) : Object | LogInjectionTest.java:391:71:391:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | +| LogInjectionTest.java:392:65:392:72 | source(...) : Object | LogInjectionTest.java:392:56:392:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | +| LogInjectionTest.java:393:50:393:57 | source(...) : Object | LogInjectionTest.java:393:41:393:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | +| LogInjectionTest.java:394:140:394:147 | source(...) : Object | LogInjectionTest.java:394:131:394:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | +| LogInjectionTest.java:395:125:395:132 | source(...) : Object | LogInjectionTest.java:395:116:395:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | +| LogInjectionTest.java:396:110:396:117 | source(...) : Object | LogInjectionTest.java:396:101:396:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | +| LogInjectionTest.java:397:95:397:102 | source(...) : Object | LogInjectionTest.java:397:86:397:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | +| LogInjectionTest.java:398:80:398:87 | source(...) : Object | LogInjectionTest.java:398:71:398:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | +| LogInjectionTest.java:399:65:399:72 | source(...) : Object | LogInjectionTest.java:399:56:399:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | +| LogInjectionTest.java:400:50:400:57 | source(...) : Object | LogInjectionTest.java:400:41:400:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | +| LogInjectionTest.java:401:155:401:162 | source(...) : Object | LogInjectionTest.java:401:146:401:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:402:140:402:147 | source(...) : Object | LogInjectionTest.java:402:131:402:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:403:125:403:132 | source(...) : Object | LogInjectionTest.java:403:116:403:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:404:110:404:117 | source(...) : Object | LogInjectionTest.java:404:101:404:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:405:95:405:102 | source(...) : Object | LogInjectionTest.java:405:86:405:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:406:80:406:87 | source(...) : Object | LogInjectionTest.java:406:71:406:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:407:65:407:72 | source(...) : Object | LogInjectionTest.java:407:56:407:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:408:50:408:57 | source(...) : Object | LogInjectionTest.java:408:41:408:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:409:170:409:177 | source(...) : Object | LogInjectionTest.java:409:161:409:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:410:155:410:162 | source(...) : Object | LogInjectionTest.java:410:146:410:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:411:140:411:147 | source(...) : Object | LogInjectionTest.java:411:131:411:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:412:125:412:132 | source(...) : Object | LogInjectionTest.java:412:116:412:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:413:110:413:117 | source(...) : Object | LogInjectionTest.java:413:101:413:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:414:95:414:102 | source(...) : Object | LogInjectionTest.java:414:86:414:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:415:80:415:87 | source(...) : Object | LogInjectionTest.java:415:71:415:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:416:65:416:72 | source(...) : Object | LogInjectionTest.java:416:56:416:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:417:50:417:57 | source(...) : Object | LogInjectionTest.java:417:41:417:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:418:185:418:192 | source(...) : Object | LogInjectionTest.java:418:176:418:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:419:170:419:177 | source(...) : Object | LogInjectionTest.java:419:161:419:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:420:155:420:162 | source(...) : Object | LogInjectionTest.java:420:146:420:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:421:140:421:147 | source(...) : Object | LogInjectionTest.java:421:131:421:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:422:125:422:132 | source(...) : Object | LogInjectionTest.java:422:116:422:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:423:110:423:117 | source(...) : Object | LogInjectionTest.java:423:101:423:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:424:95:424:102 | source(...) : Object | LogInjectionTest.java:424:86:424:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:425:80:425:87 | source(...) : Object | LogInjectionTest.java:425:71:425:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:426:65:426:72 | source(...) : Object | LogInjectionTest.java:426:56:426:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:427:50:427:57 | source(...) : Object | LogInjectionTest.java:427:41:427:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:428:50:428:57 | source(...) : Object | LogInjectionTest.java:428:41:428:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | +| LogInjectionTest.java:429:70:429:77 | source(...) : Object | LogInjectionTest.java:429:56:429:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | +| LogInjectionTest.java:430:50:430:57 | source(...) : Object | LogInjectionTest.java:430:41:430:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:133 | +| LogInjectionTest.java:431:55:431:62 | source(...) : Object | LogInjectionTest.java:431:41:431:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:134 | +| LogInjectionTest.java:432:55:432:62 | source(...) : Object | LogInjectionTest.java:432:41:432:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:135 | +| LogInjectionTest.java:433:44:433:51 | source(...) : Object | LogInjectionTest.java:433:26:433:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:138 | +| LogInjectionTest.java:434:44:434:51 | source(...) : Object | LogInjectionTest.java:434:26:434:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:139 | +| LogInjectionTest.java:435:36:435:43 | source(...) : Object | LogInjectionTest.java:435:26:435:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:136 | +| LogInjectionTest.java:436:36:436:43 | source(...) : Object | LogInjectionTest.java:436:26:436:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:137 | +| LogInjectionTest.java:439:35:439:42 | source(...) : Object | LogInjectionTest.java:439:26:439:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:140 | +| LogInjectionTest.java:440:35:440:42 | source(...) : Object | LogInjectionTest.java:440:26:440:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:150 | +| LogInjectionTest.java:441:41:441:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:441:41:441:63 | new Object[] | provenance | Sink:MaD:150 | +| LogInjectionTest.java:441:55:441:62 | source(...) : Object | LogInjectionTest.java:441:41:441:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:442:50:442:57 | source(...) : Object | LogInjectionTest.java:442:41:442:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | +| LogInjectionTest.java:443:35:443:42 | source(...) : Object | LogInjectionTest.java:443:26:443:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | +| LogInjectionTest.java:444:65:444:72 | source(...) : Object | LogInjectionTest.java:444:56:444:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:142 | +| LogInjectionTest.java:445:50:445:57 | source(...) : Object | LogInjectionTest.java:445:41:445:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:142 | +| LogInjectionTest.java:446:35:446:42 | source(...) : Object | LogInjectionTest.java:446:26:446:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:142 | +| LogInjectionTest.java:447:80:447:87 | source(...) : Object | LogInjectionTest.java:447:71:447:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | +| LogInjectionTest.java:448:65:448:72 | source(...) : Object | LogInjectionTest.java:448:56:448:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | +| LogInjectionTest.java:449:50:449:57 | source(...) : Object | LogInjectionTest.java:449:41:449:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | +| LogInjectionTest.java:450:35:450:42 | source(...) : Object | LogInjectionTest.java:450:26:450:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | +| LogInjectionTest.java:451:95:451:102 | source(...) : Object | LogInjectionTest.java:451:86:451:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | +| LogInjectionTest.java:452:80:452:87 | source(...) : Object | LogInjectionTest.java:452:71:452:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | +| LogInjectionTest.java:453:65:453:72 | source(...) : Object | LogInjectionTest.java:453:56:453:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | +| LogInjectionTest.java:454:50:454:57 | source(...) : Object | LogInjectionTest.java:454:41:454:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | +| LogInjectionTest.java:455:35:455:42 | source(...) : Object | LogInjectionTest.java:455:26:455:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | +| LogInjectionTest.java:456:110:456:117 | source(...) : Object | LogInjectionTest.java:456:101:456:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | +| LogInjectionTest.java:457:95:457:102 | source(...) : Object | LogInjectionTest.java:457:86:457:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | +| LogInjectionTest.java:458:80:458:87 | source(...) : Object | LogInjectionTest.java:458:71:458:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | +| LogInjectionTest.java:459:65:459:72 | source(...) : Object | LogInjectionTest.java:459:56:459:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | +| LogInjectionTest.java:460:50:460:57 | source(...) : Object | LogInjectionTest.java:460:41:460:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | +| LogInjectionTest.java:461:35:461:42 | source(...) : Object | LogInjectionTest.java:461:26:461:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | +| LogInjectionTest.java:462:125:462:132 | source(...) : Object | LogInjectionTest.java:462:116:462:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | +| LogInjectionTest.java:463:110:463:117 | source(...) : Object | LogInjectionTest.java:463:101:463:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | +| LogInjectionTest.java:464:95:464:102 | source(...) : Object | LogInjectionTest.java:464:86:464:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | +| LogInjectionTest.java:465:80:465:87 | source(...) : Object | LogInjectionTest.java:465:71:465:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | +| LogInjectionTest.java:466:65:466:72 | source(...) : Object | LogInjectionTest.java:466:56:466:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | +| LogInjectionTest.java:467:50:467:57 | source(...) : Object | LogInjectionTest.java:467:41:467:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | +| LogInjectionTest.java:468:35:468:42 | source(...) : Object | LogInjectionTest.java:468:26:468:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | +| LogInjectionTest.java:469:140:469:147 | source(...) : Object | LogInjectionTest.java:469:131:469:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:470:125:470:132 | source(...) : Object | LogInjectionTest.java:470:116:470:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:471:110:471:117 | source(...) : Object | LogInjectionTest.java:471:101:471:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:472:95:472:102 | source(...) : Object | LogInjectionTest.java:472:86:472:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:473:80:473:87 | source(...) : Object | LogInjectionTest.java:473:71:473:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:474:65:474:72 | source(...) : Object | LogInjectionTest.java:474:56:474:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:475:50:475:57 | source(...) : Object | LogInjectionTest.java:475:41:475:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:476:35:476:42 | source(...) : Object | LogInjectionTest.java:476:26:476:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:477:155:477:162 | source(...) : Object | LogInjectionTest.java:477:146:477:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:478:140:478:147 | source(...) : Object | LogInjectionTest.java:478:131:478:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:479:125:479:132 | source(...) : Object | LogInjectionTest.java:479:116:479:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:480:110:480:117 | source(...) : Object | LogInjectionTest.java:480:101:480:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:481:95:481:102 | source(...) : Object | LogInjectionTest.java:481:86:481:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:482:80:482:87 | source(...) : Object | LogInjectionTest.java:482:71:482:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:483:65:483:72 | source(...) : Object | LogInjectionTest.java:483:56:483:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:484:50:484:57 | source(...) : Object | LogInjectionTest.java:484:41:484:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:485:35:485:42 | source(...) : Object | LogInjectionTest.java:485:26:485:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:486:170:486:177 | source(...) : Object | LogInjectionTest.java:486:161:486:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:487:155:487:162 | source(...) : Object | LogInjectionTest.java:487:146:487:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:488:140:488:147 | source(...) : Object | LogInjectionTest.java:488:131:488:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:489:125:489:132 | source(...) : Object | LogInjectionTest.java:489:116:489:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:490:110:490:117 | source(...) : Object | LogInjectionTest.java:490:101:490:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:491:95:491:102 | source(...) : Object | LogInjectionTest.java:491:86:491:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:492:80:492:87 | source(...) : Object | LogInjectionTest.java:492:71:492:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:493:65:493:72 | source(...) : Object | LogInjectionTest.java:493:56:493:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:494:50:494:57 | source(...) : Object | LogInjectionTest.java:494:41:494:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:495:35:495:42 | source(...) : Object | LogInjectionTest.java:495:26:495:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:496:35:496:42 | source(...) : Object | LogInjectionTest.java:496:26:496:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | +| LogInjectionTest.java:497:55:497:62 | source(...) : Object | LogInjectionTest.java:497:41:497:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | +| LogInjectionTest.java:498:35:498:42 | source(...) : Object | LogInjectionTest.java:498:26:498:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:151 | +| LogInjectionTest.java:499:40:499:47 | source(...) : Object | LogInjectionTest.java:499:26:499:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:152 | +| LogInjectionTest.java:500:40:500:47 | source(...) : Object | LogInjectionTest.java:500:26:500:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:153 | +| LogInjectionTest.java:501:41:501:48 | source(...) : Object | LogInjectionTest.java:501:26:501:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:154 | +| LogInjectionTest.java:502:41:502:48 | source(...) : Object | LogInjectionTest.java:502:26:502:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:155 | +| LogInjectionTest.java:503:56:503:63 | source(...) : Object | LogInjectionTest.java:503:41:503:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:156 | +| LogInjectionTest.java:504:56:504:63 | source(...) : Object | LogInjectionTest.java:504:41:504:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:157 | +| LogInjectionTest.java:505:51:505:58 | source(...) : Object | LogInjectionTest.java:505:41:505:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:158 | +| LogInjectionTest.java:506:59:506:66 | source(...) : Object | LogInjectionTest.java:506:41:506:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:159 | +| LogInjectionTest.java:507:59:507:66 | source(...) : Object | LogInjectionTest.java:507:41:507:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:160 | +| LogInjectionTest.java:509:50:509:57 | source(...) : Object | LogInjectionTest.java:509:41:509:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:161 | +| LogInjectionTest.java:510:50:510:57 | source(...) : Object | LogInjectionTest.java:510:41:510:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:171 | +| LogInjectionTest.java:511:56:511:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:511:56:511:78 | new Object[] | provenance | Sink:MaD:171 | +| LogInjectionTest.java:511:70:511:77 | source(...) : Object | LogInjectionTest.java:511:56:511:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:512:65:512:72 | source(...) : Object | LogInjectionTest.java:512:56:512:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | +| LogInjectionTest.java:513:50:513:57 | source(...) : Object | LogInjectionTest.java:513:41:513:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | +| LogInjectionTest.java:514:80:514:87 | source(...) : Object | LogInjectionTest.java:514:71:514:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:163 | +| LogInjectionTest.java:515:65:515:72 | source(...) : Object | LogInjectionTest.java:515:56:515:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:163 | +| LogInjectionTest.java:516:50:516:57 | source(...) : Object | LogInjectionTest.java:516:41:516:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:163 | +| LogInjectionTest.java:517:95:517:102 | source(...) : Object | LogInjectionTest.java:517:86:517:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | +| LogInjectionTest.java:518:80:518:87 | source(...) : Object | LogInjectionTest.java:518:71:518:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | +| LogInjectionTest.java:519:65:519:72 | source(...) : Object | LogInjectionTest.java:519:56:519:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | +| LogInjectionTest.java:520:50:520:57 | source(...) : Object | LogInjectionTest.java:520:41:520:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | +| LogInjectionTest.java:521:110:521:117 | source(...) : Object | LogInjectionTest.java:521:101:521:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | +| LogInjectionTest.java:522:95:522:102 | source(...) : Object | LogInjectionTest.java:522:86:522:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | +| LogInjectionTest.java:523:80:523:87 | source(...) : Object | LogInjectionTest.java:523:71:523:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | +| LogInjectionTest.java:524:65:524:72 | source(...) : Object | LogInjectionTest.java:524:56:524:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | +| LogInjectionTest.java:525:50:525:57 | source(...) : Object | LogInjectionTest.java:525:41:525:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | +| LogInjectionTest.java:526:125:526:132 | source(...) : Object | LogInjectionTest.java:526:116:526:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | +| LogInjectionTest.java:527:110:527:117 | source(...) : Object | LogInjectionTest.java:527:101:527:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | +| LogInjectionTest.java:528:95:528:102 | source(...) : Object | LogInjectionTest.java:528:86:528:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | +| LogInjectionTest.java:529:80:529:87 | source(...) : Object | LogInjectionTest.java:529:71:529:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | +| LogInjectionTest.java:530:65:530:72 | source(...) : Object | LogInjectionTest.java:530:56:530:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | +| LogInjectionTest.java:531:50:531:57 | source(...) : Object | LogInjectionTest.java:531:41:531:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | +| LogInjectionTest.java:532:140:532:147 | source(...) : Object | LogInjectionTest.java:532:131:532:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | +| LogInjectionTest.java:533:125:533:132 | source(...) : Object | LogInjectionTest.java:533:116:533:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | +| LogInjectionTest.java:534:110:534:117 | source(...) : Object | LogInjectionTest.java:534:101:534:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | +| LogInjectionTest.java:535:95:535:102 | source(...) : Object | LogInjectionTest.java:535:86:535:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | +| LogInjectionTest.java:536:80:536:87 | source(...) : Object | LogInjectionTest.java:536:71:536:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | +| LogInjectionTest.java:537:65:537:72 | source(...) : Object | LogInjectionTest.java:537:56:537:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | +| LogInjectionTest.java:538:50:538:57 | source(...) : Object | LogInjectionTest.java:538:41:538:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | +| LogInjectionTest.java:539:155:539:162 | source(...) : Object | LogInjectionTest.java:539:146:539:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:540:140:540:147 | source(...) : Object | LogInjectionTest.java:540:131:540:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:541:125:541:132 | source(...) : Object | LogInjectionTest.java:541:116:541:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:542:110:542:117 | source(...) : Object | LogInjectionTest.java:542:101:542:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:543:95:543:102 | source(...) : Object | LogInjectionTest.java:543:86:543:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:544:80:544:87 | source(...) : Object | LogInjectionTest.java:544:71:544:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:545:65:545:72 | source(...) : Object | LogInjectionTest.java:545:56:545:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:546:50:546:57 | source(...) : Object | LogInjectionTest.java:546:41:546:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:547:170:547:177 | source(...) : Object | LogInjectionTest.java:547:161:547:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:548:155:548:162 | source(...) : Object | LogInjectionTest.java:548:146:548:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:549:140:549:147 | source(...) : Object | LogInjectionTest.java:549:131:549:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:550:125:550:132 | source(...) : Object | LogInjectionTest.java:550:116:550:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:551:110:551:117 | source(...) : Object | LogInjectionTest.java:551:101:551:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:552:95:552:102 | source(...) : Object | LogInjectionTest.java:552:86:552:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:553:80:553:87 | source(...) : Object | LogInjectionTest.java:553:71:553:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:554:65:554:72 | source(...) : Object | LogInjectionTest.java:554:56:554:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:555:50:555:57 | source(...) : Object | LogInjectionTest.java:555:41:555:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:556:185:556:192 | source(...) : Object | LogInjectionTest.java:556:176:556:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:557:170:557:177 | source(...) : Object | LogInjectionTest.java:557:161:557:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:558:155:558:162 | source(...) : Object | LogInjectionTest.java:558:146:558:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:559:140:559:147 | source(...) : Object | LogInjectionTest.java:559:131:559:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:560:125:560:132 | source(...) : Object | LogInjectionTest.java:560:116:560:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:561:110:561:117 | source(...) : Object | LogInjectionTest.java:561:101:561:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:562:95:562:102 | source(...) : Object | LogInjectionTest.java:562:86:562:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:563:80:563:87 | source(...) : Object | LogInjectionTest.java:563:71:563:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:564:65:564:72 | source(...) : Object | LogInjectionTest.java:564:56:564:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:565:50:565:57 | source(...) : Object | LogInjectionTest.java:565:41:565:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:566:50:566:57 | source(...) : Object | LogInjectionTest.java:566:41:566:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | +| LogInjectionTest.java:567:70:567:77 | source(...) : Object | LogInjectionTest.java:567:56:567:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | +| LogInjectionTest.java:568:50:568:57 | source(...) : Object | LogInjectionTest.java:568:41:568:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:172 | +| LogInjectionTest.java:569:55:569:62 | source(...) : Object | LogInjectionTest.java:569:41:569:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:173 | +| LogInjectionTest.java:570:55:570:62 | source(...) : Object | LogInjectionTest.java:570:41:570:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:174 | +| LogInjectionTest.java:571:44:571:51 | source(...) : Object | LogInjectionTest.java:571:26:571:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:177 | +| LogInjectionTest.java:572:44:572:51 | source(...) : Object | LogInjectionTest.java:572:26:572:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:178 | +| LogInjectionTest.java:573:36:573:43 | source(...) : Object | LogInjectionTest.java:573:26:573:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:175 | +| LogInjectionTest.java:574:36:574:43 | source(...) : Object | LogInjectionTest.java:574:26:574:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:176 | +| LogInjectionTest.java:577:35:577:42 | source(...) : Object | LogInjectionTest.java:577:26:577:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:179 | +| LogInjectionTest.java:578:35:578:42 | source(...) : Object | LogInjectionTest.java:578:26:578:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:189 | +| LogInjectionTest.java:579:41:579:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:579:41:579:63 | new Object[] | provenance | Sink:MaD:189 | +| LogInjectionTest.java:579:55:579:62 | source(...) : Object | LogInjectionTest.java:579:41:579:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:580:50:580:57 | source(...) : Object | LogInjectionTest.java:580:41:580:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | +| LogInjectionTest.java:581:35:581:42 | source(...) : Object | LogInjectionTest.java:581:26:581:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | +| LogInjectionTest.java:582:65:582:72 | source(...) : Object | LogInjectionTest.java:582:56:582:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:181 | +| LogInjectionTest.java:583:50:583:57 | source(...) : Object | LogInjectionTest.java:583:41:583:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:181 | +| LogInjectionTest.java:584:35:584:42 | source(...) : Object | LogInjectionTest.java:584:26:584:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:181 | +| LogInjectionTest.java:585:80:585:87 | source(...) : Object | LogInjectionTest.java:585:71:585:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | +| LogInjectionTest.java:586:65:586:72 | source(...) : Object | LogInjectionTest.java:586:56:586:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | +| LogInjectionTest.java:587:50:587:57 | source(...) : Object | LogInjectionTest.java:587:41:587:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | +| LogInjectionTest.java:588:35:588:42 | source(...) : Object | LogInjectionTest.java:588:26:588:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | +| LogInjectionTest.java:589:95:589:102 | source(...) : Object | LogInjectionTest.java:589:86:589:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | +| LogInjectionTest.java:590:80:590:87 | source(...) : Object | LogInjectionTest.java:590:71:590:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | +| LogInjectionTest.java:591:65:591:72 | source(...) : Object | LogInjectionTest.java:591:56:591:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | +| LogInjectionTest.java:592:50:592:57 | source(...) : Object | LogInjectionTest.java:592:41:592:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | +| LogInjectionTest.java:593:35:593:42 | source(...) : Object | LogInjectionTest.java:593:26:593:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | +| LogInjectionTest.java:594:110:594:117 | source(...) : Object | LogInjectionTest.java:594:101:594:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | +| LogInjectionTest.java:595:95:595:102 | source(...) : Object | LogInjectionTest.java:595:86:595:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | +| LogInjectionTest.java:596:80:596:87 | source(...) : Object | LogInjectionTest.java:596:71:596:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | +| LogInjectionTest.java:597:65:597:72 | source(...) : Object | LogInjectionTest.java:597:56:597:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | +| LogInjectionTest.java:598:50:598:57 | source(...) : Object | LogInjectionTest.java:598:41:598:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | +| LogInjectionTest.java:599:35:599:42 | source(...) : Object | LogInjectionTest.java:599:26:599:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | +| LogInjectionTest.java:600:125:600:132 | source(...) : Object | LogInjectionTest.java:600:116:600:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | +| LogInjectionTest.java:601:110:601:117 | source(...) : Object | LogInjectionTest.java:601:101:601:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | +| LogInjectionTest.java:602:95:602:102 | source(...) : Object | LogInjectionTest.java:602:86:602:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | +| LogInjectionTest.java:603:80:603:87 | source(...) : Object | LogInjectionTest.java:603:71:603:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | +| LogInjectionTest.java:604:65:604:72 | source(...) : Object | LogInjectionTest.java:604:56:604:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | +| LogInjectionTest.java:605:50:605:57 | source(...) : Object | LogInjectionTest.java:605:41:605:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | +| LogInjectionTest.java:606:35:606:42 | source(...) : Object | LogInjectionTest.java:606:26:606:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | +| LogInjectionTest.java:607:140:607:147 | source(...) : Object | LogInjectionTest.java:607:131:607:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:608:125:608:132 | source(...) : Object | LogInjectionTest.java:608:116:608:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:609:110:609:117 | source(...) : Object | LogInjectionTest.java:609:101:609:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:610:95:610:102 | source(...) : Object | LogInjectionTest.java:610:86:610:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:611:80:611:87 | source(...) : Object | LogInjectionTest.java:611:71:611:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:612:65:612:72 | source(...) : Object | LogInjectionTest.java:612:56:612:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:613:50:613:57 | source(...) : Object | LogInjectionTest.java:613:41:613:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:614:35:614:42 | source(...) : Object | LogInjectionTest.java:614:26:614:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:615:155:615:162 | source(...) : Object | LogInjectionTest.java:615:146:615:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:616:140:616:147 | source(...) : Object | LogInjectionTest.java:616:131:616:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:617:125:617:132 | source(...) : Object | LogInjectionTest.java:617:116:617:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:618:110:618:117 | source(...) : Object | LogInjectionTest.java:618:101:618:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:619:95:619:102 | source(...) : Object | LogInjectionTest.java:619:86:619:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:620:80:620:87 | source(...) : Object | LogInjectionTest.java:620:71:620:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:621:65:621:72 | source(...) : Object | LogInjectionTest.java:621:56:621:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:622:50:622:57 | source(...) : Object | LogInjectionTest.java:622:41:622:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:623:35:623:42 | source(...) : Object | LogInjectionTest.java:623:26:623:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:624:170:624:177 | source(...) : Object | LogInjectionTest.java:624:161:624:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:625:155:625:162 | source(...) : Object | LogInjectionTest.java:625:146:625:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:626:140:626:147 | source(...) : Object | LogInjectionTest.java:626:131:626:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:627:125:627:132 | source(...) : Object | LogInjectionTest.java:627:116:627:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:628:110:628:117 | source(...) : Object | LogInjectionTest.java:628:101:628:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:629:95:629:102 | source(...) : Object | LogInjectionTest.java:629:86:629:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:630:80:630:87 | source(...) : Object | LogInjectionTest.java:630:71:630:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:631:65:631:72 | source(...) : Object | LogInjectionTest.java:631:56:631:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:632:50:632:57 | source(...) : Object | LogInjectionTest.java:632:41:632:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:633:35:633:42 | source(...) : Object | LogInjectionTest.java:633:26:633:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:634:35:634:42 | source(...) : Object | LogInjectionTest.java:634:26:634:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | +| LogInjectionTest.java:635:55:635:62 | source(...) : Object | LogInjectionTest.java:635:41:635:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | +| LogInjectionTest.java:636:35:636:42 | source(...) : Object | LogInjectionTest.java:636:26:636:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:190 | +| LogInjectionTest.java:637:40:637:47 | source(...) : Object | LogInjectionTest.java:637:26:637:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:191 | +| LogInjectionTest.java:638:40:638:47 | source(...) : Object | LogInjectionTest.java:638:26:638:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:192 | +| LogInjectionTest.java:639:40:639:47 | source(...) : Object | LogInjectionTest.java:639:25:639:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:193 | +| LogInjectionTest.java:640:40:640:47 | source(...) : Object | LogInjectionTest.java:640:25:640:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:194 | +| LogInjectionTest.java:641:55:641:62 | source(...) : Object | LogInjectionTest.java:641:40:641:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:195 | +| LogInjectionTest.java:642:55:642:62 | source(...) : Object | LogInjectionTest.java:642:40:642:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:196 | +| LogInjectionTest.java:643:50:643:57 | source(...) : Object | LogInjectionTest.java:643:40:643:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:197 | +| LogInjectionTest.java:644:58:644:65 | source(...) : Object | LogInjectionTest.java:644:40:644:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:198 | +| LogInjectionTest.java:645:58:645:65 | source(...) : Object | LogInjectionTest.java:645:40:645:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:199 | +| LogInjectionTest.java:647:49:647:56 | source(...) : Object | LogInjectionTest.java:647:40:647:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:200 | +| LogInjectionTest.java:648:49:648:56 | source(...) : Object | LogInjectionTest.java:648:40:648:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:210 | +| LogInjectionTest.java:649:55:649:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:649:55:649:77 | new Object[] | provenance | Sink:MaD:210 | +| LogInjectionTest.java:649:69:649:76 | source(...) : Object | LogInjectionTest.java:649:55:649:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:650:64:650:71 | source(...) : Object | LogInjectionTest.java:650:55:650:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | +| LogInjectionTest.java:651:49:651:56 | source(...) : Object | LogInjectionTest.java:651:40:651:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | +| LogInjectionTest.java:652:79:652:86 | source(...) : Object | LogInjectionTest.java:652:70:652:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:202 | +| LogInjectionTest.java:653:64:653:71 | source(...) : Object | LogInjectionTest.java:653:55:653:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:202 | +| LogInjectionTest.java:654:49:654:56 | source(...) : Object | LogInjectionTest.java:654:40:654:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:202 | +| LogInjectionTest.java:655:94:655:101 | source(...) : Object | LogInjectionTest.java:655:85:655:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | +| LogInjectionTest.java:656:79:656:86 | source(...) : Object | LogInjectionTest.java:656:70:656:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | +| LogInjectionTest.java:657:64:657:71 | source(...) : Object | LogInjectionTest.java:657:55:657:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | +| LogInjectionTest.java:658:49:658:56 | source(...) : Object | LogInjectionTest.java:658:40:658:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | +| LogInjectionTest.java:659:109:659:116 | source(...) : Object | LogInjectionTest.java:659:100:659:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | +| LogInjectionTest.java:660:94:660:101 | source(...) : Object | LogInjectionTest.java:660:85:660:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | +| LogInjectionTest.java:661:79:661:86 | source(...) : Object | LogInjectionTest.java:661:70:661:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | +| LogInjectionTest.java:662:64:662:71 | source(...) : Object | LogInjectionTest.java:662:55:662:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | +| LogInjectionTest.java:663:49:663:56 | source(...) : Object | LogInjectionTest.java:663:40:663:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | +| LogInjectionTest.java:664:124:664:131 | source(...) : Object | LogInjectionTest.java:664:115:664:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | +| LogInjectionTest.java:665:109:665:116 | source(...) : Object | LogInjectionTest.java:665:100:665:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | +| LogInjectionTest.java:666:94:666:101 | source(...) : Object | LogInjectionTest.java:666:85:666:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | +| LogInjectionTest.java:667:79:667:86 | source(...) : Object | LogInjectionTest.java:667:70:667:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | +| LogInjectionTest.java:668:64:668:71 | source(...) : Object | LogInjectionTest.java:668:55:668:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | +| LogInjectionTest.java:669:49:669:56 | source(...) : Object | LogInjectionTest.java:669:40:669:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | +| LogInjectionTest.java:670:139:670:146 | source(...) : Object | LogInjectionTest.java:670:130:670:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | +| LogInjectionTest.java:671:124:671:131 | source(...) : Object | LogInjectionTest.java:671:115:671:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | +| LogInjectionTest.java:672:109:672:116 | source(...) : Object | LogInjectionTest.java:672:100:672:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | +| LogInjectionTest.java:673:94:673:101 | source(...) : Object | LogInjectionTest.java:673:85:673:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | +| LogInjectionTest.java:674:79:674:86 | source(...) : Object | LogInjectionTest.java:674:70:674:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | +| LogInjectionTest.java:675:64:675:71 | source(...) : Object | LogInjectionTest.java:675:55:675:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | +| LogInjectionTest.java:676:49:676:56 | source(...) : Object | LogInjectionTest.java:676:40:676:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | +| LogInjectionTest.java:677:154:677:161 | source(...) : Object | LogInjectionTest.java:677:145:677:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:678:139:678:146 | source(...) : Object | LogInjectionTest.java:678:130:678:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:679:124:679:131 | source(...) : Object | LogInjectionTest.java:679:115:679:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:680:109:680:116 | source(...) : Object | LogInjectionTest.java:680:100:680:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:681:94:681:101 | source(...) : Object | LogInjectionTest.java:681:85:681:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:682:79:682:86 | source(...) : Object | LogInjectionTest.java:682:70:682:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:683:64:683:71 | source(...) : Object | LogInjectionTest.java:683:55:683:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:684:49:684:56 | source(...) : Object | LogInjectionTest.java:684:40:684:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:685:169:685:176 | source(...) : Object | LogInjectionTest.java:685:160:685:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:686:154:686:161 | source(...) : Object | LogInjectionTest.java:686:145:686:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:687:139:687:146 | source(...) : Object | LogInjectionTest.java:687:130:687:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:688:124:688:131 | source(...) : Object | LogInjectionTest.java:688:115:688:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:689:109:689:116 | source(...) : Object | LogInjectionTest.java:689:100:689:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:690:94:690:101 | source(...) : Object | LogInjectionTest.java:690:85:690:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:691:79:691:86 | source(...) : Object | LogInjectionTest.java:691:70:691:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:692:64:692:71 | source(...) : Object | LogInjectionTest.java:692:55:692:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:693:49:693:56 | source(...) : Object | LogInjectionTest.java:693:40:693:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:694:184:694:191 | source(...) : Object | LogInjectionTest.java:694:175:694:191 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:695:169:695:176 | source(...) : Object | LogInjectionTest.java:695:160:695:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:696:154:696:161 | source(...) : Object | LogInjectionTest.java:696:145:696:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:697:139:697:146 | source(...) : Object | LogInjectionTest.java:697:130:697:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:698:124:698:131 | source(...) : Object | LogInjectionTest.java:698:115:698:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:699:109:699:116 | source(...) : Object | LogInjectionTest.java:699:100:699:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:700:94:700:101 | source(...) : Object | LogInjectionTest.java:700:85:700:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:701:79:701:86 | source(...) : Object | LogInjectionTest.java:701:70:701:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:702:64:702:71 | source(...) : Object | LogInjectionTest.java:702:55:702:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:703:49:703:56 | source(...) : Object | LogInjectionTest.java:703:40:703:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:704:49:704:56 | source(...) : Object | LogInjectionTest.java:704:40:704:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | +| LogInjectionTest.java:705:69:705:76 | source(...) : Object | LogInjectionTest.java:705:55:705:76 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | +| LogInjectionTest.java:706:49:706:56 | source(...) : Object | LogInjectionTest.java:706:40:706:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:211 | +| LogInjectionTest.java:707:54:707:61 | source(...) : Object | LogInjectionTest.java:707:40:707:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:212 | +| LogInjectionTest.java:708:54:708:61 | source(...) : Object | LogInjectionTest.java:708:40:708:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:213 | +| LogInjectionTest.java:709:43:709:50 | source(...) : Object | LogInjectionTest.java:709:25:709:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:216 | +| LogInjectionTest.java:710:43:710:50 | source(...) : Object | LogInjectionTest.java:710:25:710:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:217 | +| LogInjectionTest.java:711:35:711:42 | source(...) : Object | LogInjectionTest.java:711:25:711:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:214 | +| LogInjectionTest.java:712:35:712:42 | source(...) : Object | LogInjectionTest.java:712:25:712:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:215 | +| LogInjectionTest.java:715:34:715:41 | source(...) : Object | LogInjectionTest.java:715:25:715:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:218 | +| LogInjectionTest.java:716:34:716:41 | source(...) : Object | LogInjectionTest.java:716:25:716:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:228 | +| LogInjectionTest.java:717:40:717:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:717:40:717:62 | new Object[] | provenance | Sink:MaD:228 | +| LogInjectionTest.java:717:54:717:61 | source(...) : Object | LogInjectionTest.java:717:40:717:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:718:49:718:56 | source(...) : Object | LogInjectionTest.java:718:40:718:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | +| LogInjectionTest.java:719:34:719:41 | source(...) : Object | LogInjectionTest.java:719:25:719:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | +| LogInjectionTest.java:720:64:720:71 | source(...) : Object | LogInjectionTest.java:720:55:720:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:220 | +| LogInjectionTest.java:721:49:721:56 | source(...) : Object | LogInjectionTest.java:721:40:721:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:220 | +| LogInjectionTest.java:722:34:722:41 | source(...) : Object | LogInjectionTest.java:722:25:722:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:220 | +| LogInjectionTest.java:723:79:723:86 | source(...) : Object | LogInjectionTest.java:723:70:723:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | +| LogInjectionTest.java:724:64:724:71 | source(...) : Object | LogInjectionTest.java:724:55:724:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | +| LogInjectionTest.java:725:49:725:56 | source(...) : Object | LogInjectionTest.java:725:40:725:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | +| LogInjectionTest.java:726:34:726:41 | source(...) : Object | LogInjectionTest.java:726:25:726:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | +| LogInjectionTest.java:727:94:727:101 | source(...) : Object | LogInjectionTest.java:727:85:727:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | +| LogInjectionTest.java:728:79:728:86 | source(...) : Object | LogInjectionTest.java:728:70:728:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | +| LogInjectionTest.java:729:64:729:71 | source(...) : Object | LogInjectionTest.java:729:55:729:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | +| LogInjectionTest.java:730:49:730:56 | source(...) : Object | LogInjectionTest.java:730:40:730:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | +| LogInjectionTest.java:731:34:731:41 | source(...) : Object | LogInjectionTest.java:731:25:731:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | +| LogInjectionTest.java:732:109:732:116 | source(...) : Object | LogInjectionTest.java:732:100:732:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | +| LogInjectionTest.java:733:94:733:101 | source(...) : Object | LogInjectionTest.java:733:85:733:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | +| LogInjectionTest.java:734:79:734:86 | source(...) : Object | LogInjectionTest.java:734:70:734:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | +| LogInjectionTest.java:735:64:735:71 | source(...) : Object | LogInjectionTest.java:735:55:735:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | +| LogInjectionTest.java:736:49:736:56 | source(...) : Object | LogInjectionTest.java:736:40:736:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | +| LogInjectionTest.java:737:34:737:41 | source(...) : Object | LogInjectionTest.java:737:25:737:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | +| LogInjectionTest.java:738:124:738:131 | source(...) : Object | LogInjectionTest.java:738:115:738:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | +| LogInjectionTest.java:739:109:739:116 | source(...) : Object | LogInjectionTest.java:739:100:739:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | +| LogInjectionTest.java:740:94:740:101 | source(...) : Object | LogInjectionTest.java:740:85:740:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | +| LogInjectionTest.java:741:79:741:86 | source(...) : Object | LogInjectionTest.java:741:70:741:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | +| LogInjectionTest.java:742:64:742:71 | source(...) : Object | LogInjectionTest.java:742:55:742:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | +| LogInjectionTest.java:743:49:743:56 | source(...) : Object | LogInjectionTest.java:743:40:743:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | +| LogInjectionTest.java:744:34:744:41 | source(...) : Object | LogInjectionTest.java:744:25:744:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | +| LogInjectionTest.java:745:139:745:146 | source(...) : Object | LogInjectionTest.java:745:130:745:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:746:124:746:131 | source(...) : Object | LogInjectionTest.java:746:115:746:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:747:109:747:116 | source(...) : Object | LogInjectionTest.java:747:100:747:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:748:94:748:101 | source(...) : Object | LogInjectionTest.java:748:85:748:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:749:79:749:86 | source(...) : Object | LogInjectionTest.java:749:70:749:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:750:64:750:71 | source(...) : Object | LogInjectionTest.java:750:55:750:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:751:49:751:56 | source(...) : Object | LogInjectionTest.java:751:40:751:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:752:34:752:41 | source(...) : Object | LogInjectionTest.java:752:25:752:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:753:154:753:161 | source(...) : Object | LogInjectionTest.java:753:145:753:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:754:139:754:146 | source(...) : Object | LogInjectionTest.java:754:130:754:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:755:124:755:131 | source(...) : Object | LogInjectionTest.java:755:115:755:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:756:109:756:116 | source(...) : Object | LogInjectionTest.java:756:100:756:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:757:94:757:101 | source(...) : Object | LogInjectionTest.java:757:85:757:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:758:79:758:86 | source(...) : Object | LogInjectionTest.java:758:70:758:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:759:64:759:71 | source(...) : Object | LogInjectionTest.java:759:55:759:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:760:49:760:56 | source(...) : Object | LogInjectionTest.java:760:40:760:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:761:34:761:41 | source(...) : Object | LogInjectionTest.java:761:25:761:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:762:169:762:176 | source(...) : Object | LogInjectionTest.java:762:160:762:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:763:154:763:161 | source(...) : Object | LogInjectionTest.java:763:145:763:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:764:139:764:146 | source(...) : Object | LogInjectionTest.java:764:130:764:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:765:124:765:131 | source(...) : Object | LogInjectionTest.java:765:115:765:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:766:109:766:116 | source(...) : Object | LogInjectionTest.java:766:100:766:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:767:94:767:101 | source(...) : Object | LogInjectionTest.java:767:85:767:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:768:79:768:86 | source(...) : Object | LogInjectionTest.java:768:70:768:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:769:64:769:71 | source(...) : Object | LogInjectionTest.java:769:55:769:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:770:49:770:56 | source(...) : Object | LogInjectionTest.java:770:40:770:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:771:34:771:41 | source(...) : Object | LogInjectionTest.java:771:25:771:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:772:34:772:41 | source(...) : Object | LogInjectionTest.java:772:25:772:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | +| LogInjectionTest.java:773:54:773:61 | source(...) : Object | LogInjectionTest.java:773:40:773:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | +| LogInjectionTest.java:774:34:774:41 | source(...) : Object | LogInjectionTest.java:774:25:774:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:229 | +| LogInjectionTest.java:775:39:775:46 | source(...) : Object | LogInjectionTest.java:775:25:775:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:230 | +| LogInjectionTest.java:776:39:776:46 | source(...) : Object | LogInjectionTest.java:776:25:776:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:231 | +| LogInjectionTest.java:777:53:777:60 | source(...) : Object | LogInjectionTest.java:777:38:777:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:232 | +| LogInjectionTest.java:778:53:778:60 | source(...) : Object | LogInjectionTest.java:778:38:778:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:233 | +| LogInjectionTest.java:779:68:779:75 | source(...) : Object | LogInjectionTest.java:779:53:779:75 | (...)... | provenance | Src:MaD:536 Sink:MaD:234 | +| LogInjectionTest.java:780:68:780:75 | source(...) : Object | LogInjectionTest.java:780:53:780:75 | (...)... | provenance | Src:MaD:536 Sink:MaD:235 | +| LogInjectionTest.java:781:63:781:70 | source(...) : Object | LogInjectionTest.java:781:53:781:70 | (...)... | provenance | Src:MaD:536 Sink:MaD:236 | +| LogInjectionTest.java:782:71:782:78 | source(...) : Object | LogInjectionTest.java:782:53:782:78 | (...)... | provenance | Src:MaD:536 Sink:MaD:237 | +| LogInjectionTest.java:783:71:783:78 | source(...) : Object | LogInjectionTest.java:783:53:783:78 | (...)... | provenance | Src:MaD:536 Sink:MaD:238 | +| LogInjectionTest.java:785:62:785:69 | source(...) : Object | LogInjectionTest.java:785:53:785:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:239 | +| LogInjectionTest.java:786:62:786:69 | source(...) : Object | LogInjectionTest.java:786:53:786:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:249 | +| LogInjectionTest.java:787:68:787:90 | {...} : Object[] [[]] : Object | LogInjectionTest.java:787:68:787:90 | new Object[] | provenance | Sink:MaD:249 | +| LogInjectionTest.java:787:82:787:89 | source(...) : Object | LogInjectionTest.java:787:68:787:90 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:788:77:788:84 | source(...) : Object | LogInjectionTest.java:788:68:788:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | +| LogInjectionTest.java:789:62:789:69 | source(...) : Object | LogInjectionTest.java:789:53:789:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | +| LogInjectionTest.java:790:92:790:99 | source(...) : Object | LogInjectionTest.java:790:83:790:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:241 | +| LogInjectionTest.java:791:77:791:84 | source(...) : Object | LogInjectionTest.java:791:68:791:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:241 | +| LogInjectionTest.java:792:62:792:69 | source(...) : Object | LogInjectionTest.java:792:53:792:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:241 | +| LogInjectionTest.java:793:107:793:114 | source(...) : Object | LogInjectionTest.java:793:98:793:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | +| LogInjectionTest.java:794:92:794:99 | source(...) : Object | LogInjectionTest.java:794:83:794:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | +| LogInjectionTest.java:795:77:795:84 | source(...) : Object | LogInjectionTest.java:795:68:795:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | +| LogInjectionTest.java:796:62:796:69 | source(...) : Object | LogInjectionTest.java:796:53:796:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | +| LogInjectionTest.java:797:122:797:129 | source(...) : Object | LogInjectionTest.java:797:113:797:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | +| LogInjectionTest.java:798:107:798:114 | source(...) : Object | LogInjectionTest.java:798:98:798:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | +| LogInjectionTest.java:799:92:799:99 | source(...) : Object | LogInjectionTest.java:799:83:799:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | +| LogInjectionTest.java:800:77:800:84 | source(...) : Object | LogInjectionTest.java:800:68:800:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | +| LogInjectionTest.java:801:62:801:69 | source(...) : Object | LogInjectionTest.java:801:53:801:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | +| LogInjectionTest.java:802:137:802:144 | source(...) : Object | LogInjectionTest.java:802:128:802:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | +| LogInjectionTest.java:803:122:803:129 | source(...) : Object | LogInjectionTest.java:803:113:803:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | +| LogInjectionTest.java:804:107:804:114 | source(...) : Object | LogInjectionTest.java:804:98:804:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | +| LogInjectionTest.java:805:92:805:99 | source(...) : Object | LogInjectionTest.java:805:83:805:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | +| LogInjectionTest.java:806:77:806:84 | source(...) : Object | LogInjectionTest.java:806:68:806:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | +| LogInjectionTest.java:807:62:807:69 | source(...) : Object | LogInjectionTest.java:807:53:807:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | +| LogInjectionTest.java:808:152:808:159 | source(...) : Object | LogInjectionTest.java:808:143:808:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | +| LogInjectionTest.java:809:137:809:144 | source(...) : Object | LogInjectionTest.java:809:128:809:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | +| LogInjectionTest.java:810:122:810:129 | source(...) : Object | LogInjectionTest.java:810:113:810:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | +| LogInjectionTest.java:811:107:811:114 | source(...) : Object | LogInjectionTest.java:811:98:811:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | +| LogInjectionTest.java:812:92:812:99 | source(...) : Object | LogInjectionTest.java:812:83:812:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | +| LogInjectionTest.java:813:77:813:84 | source(...) : Object | LogInjectionTest.java:813:68:813:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | +| LogInjectionTest.java:814:62:814:69 | source(...) : Object | LogInjectionTest.java:814:53:814:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | +| LogInjectionTest.java:815:167:815:174 | source(...) : Object | LogInjectionTest.java:815:158:815:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:816:152:816:159 | source(...) : Object | LogInjectionTest.java:816:143:816:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:817:137:817:144 | source(...) : Object | LogInjectionTest.java:817:128:817:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:818:122:818:129 | source(...) : Object | LogInjectionTest.java:818:113:818:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:819:107:819:114 | source(...) : Object | LogInjectionTest.java:819:98:819:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:820:92:820:99 | source(...) : Object | LogInjectionTest.java:820:83:820:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:821:77:821:84 | source(...) : Object | LogInjectionTest.java:821:68:821:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:822:62:822:69 | source(...) : Object | LogInjectionTest.java:822:53:822:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:823:182:823:189 | source(...) : Object | LogInjectionTest.java:823:173:823:189 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:824:167:824:174 | source(...) : Object | LogInjectionTest.java:824:158:824:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:825:152:825:159 | source(...) : Object | LogInjectionTest.java:825:143:825:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:826:137:826:144 | source(...) : Object | LogInjectionTest.java:826:128:826:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:827:122:827:129 | source(...) : Object | LogInjectionTest.java:827:113:827:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:828:107:828:114 | source(...) : Object | LogInjectionTest.java:828:98:828:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:829:92:829:99 | source(...) : Object | LogInjectionTest.java:829:83:829:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:830:77:830:84 | source(...) : Object | LogInjectionTest.java:830:68:830:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:831:62:831:69 | source(...) : Object | LogInjectionTest.java:831:53:831:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:832:197:832:204 | source(...) : Object | LogInjectionTest.java:832:188:832:204 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:833:182:833:189 | source(...) : Object | LogInjectionTest.java:833:173:833:189 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:834:167:834:174 | source(...) : Object | LogInjectionTest.java:834:158:834:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:835:152:835:159 | source(...) : Object | LogInjectionTest.java:835:143:835:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:836:137:836:144 | source(...) : Object | LogInjectionTest.java:836:128:836:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:837:122:837:129 | source(...) : Object | LogInjectionTest.java:837:113:837:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:838:107:838:114 | source(...) : Object | LogInjectionTest.java:838:98:838:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:839:92:839:99 | source(...) : Object | LogInjectionTest.java:839:83:839:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:840:77:840:84 | source(...) : Object | LogInjectionTest.java:840:68:840:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:841:62:841:69 | source(...) : Object | LogInjectionTest.java:841:53:841:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:842:62:842:69 | source(...) : Object | LogInjectionTest.java:842:53:842:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | +| LogInjectionTest.java:843:82:843:89 | source(...) : Object | LogInjectionTest.java:843:68:843:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | +| LogInjectionTest.java:844:62:844:69 | source(...) : Object | LogInjectionTest.java:844:53:844:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:250 | +| LogInjectionTest.java:845:67:845:74 | source(...) : Object | LogInjectionTest.java:845:53:845:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:251 | +| LogInjectionTest.java:846:67:846:74 | source(...) : Object | LogInjectionTest.java:846:53:846:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:252 | +| LogInjectionTest.java:847:56:847:63 | source(...) : Object | LogInjectionTest.java:847:38:847:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:255 | +| LogInjectionTest.java:848:56:848:63 | source(...) : Object | LogInjectionTest.java:848:38:848:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:256 | +| LogInjectionTest.java:849:48:849:55 | source(...) : Object | LogInjectionTest.java:849:38:849:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:253 | +| LogInjectionTest.java:850:48:850:55 | source(...) : Object | LogInjectionTest.java:850:38:850:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:254 | +| LogInjectionTest.java:853:47:853:54 | source(...) : Object | LogInjectionTest.java:853:38:853:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:257 | +| LogInjectionTest.java:854:47:854:54 | source(...) : Object | LogInjectionTest.java:854:38:854:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:267 | +| LogInjectionTest.java:855:53:855:75 | {...} : Object[] [[]] : Object | LogInjectionTest.java:855:53:855:75 | new Object[] | provenance | Sink:MaD:267 | +| LogInjectionTest.java:855:67:855:74 | source(...) : Object | LogInjectionTest.java:855:53:855:75 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:856:62:856:69 | source(...) : Object | LogInjectionTest.java:856:53:856:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | +| LogInjectionTest.java:857:47:857:54 | source(...) : Object | LogInjectionTest.java:857:38:857:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | +| LogInjectionTest.java:858:77:858:84 | source(...) : Object | LogInjectionTest.java:858:68:858:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:259 | +| LogInjectionTest.java:859:62:859:69 | source(...) : Object | LogInjectionTest.java:859:53:859:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:259 | +| LogInjectionTest.java:860:47:860:54 | source(...) : Object | LogInjectionTest.java:860:38:860:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:259 | +| LogInjectionTest.java:861:92:861:99 | source(...) : Object | LogInjectionTest.java:861:83:861:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | +| LogInjectionTest.java:862:77:862:84 | source(...) : Object | LogInjectionTest.java:862:68:862:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | +| LogInjectionTest.java:863:62:863:69 | source(...) : Object | LogInjectionTest.java:863:53:863:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | +| LogInjectionTest.java:864:47:864:54 | source(...) : Object | LogInjectionTest.java:864:38:864:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | +| LogInjectionTest.java:865:107:865:114 | source(...) : Object | LogInjectionTest.java:865:98:865:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | +| LogInjectionTest.java:866:92:866:99 | source(...) : Object | LogInjectionTest.java:866:83:866:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | +| LogInjectionTest.java:867:77:867:84 | source(...) : Object | LogInjectionTest.java:867:68:867:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | +| LogInjectionTest.java:868:62:868:69 | source(...) : Object | LogInjectionTest.java:868:53:868:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | +| LogInjectionTest.java:869:47:869:54 | source(...) : Object | LogInjectionTest.java:869:38:869:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | +| LogInjectionTest.java:870:122:870:129 | source(...) : Object | LogInjectionTest.java:870:113:870:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | +| LogInjectionTest.java:871:107:871:114 | source(...) : Object | LogInjectionTest.java:871:98:871:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | +| LogInjectionTest.java:872:92:872:99 | source(...) : Object | LogInjectionTest.java:872:83:872:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | +| LogInjectionTest.java:873:77:873:84 | source(...) : Object | LogInjectionTest.java:873:68:873:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | +| LogInjectionTest.java:874:62:874:69 | source(...) : Object | LogInjectionTest.java:874:53:874:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | +| LogInjectionTest.java:875:47:875:54 | source(...) : Object | LogInjectionTest.java:875:38:875:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | +| LogInjectionTest.java:876:137:876:144 | source(...) : Object | LogInjectionTest.java:876:128:876:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | +| LogInjectionTest.java:877:122:877:129 | source(...) : Object | LogInjectionTest.java:877:113:877:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | +| LogInjectionTest.java:878:107:878:114 | source(...) : Object | LogInjectionTest.java:878:98:878:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | +| LogInjectionTest.java:879:92:879:99 | source(...) : Object | LogInjectionTest.java:879:83:879:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | +| LogInjectionTest.java:880:77:880:84 | source(...) : Object | LogInjectionTest.java:880:68:880:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | +| LogInjectionTest.java:881:62:881:69 | source(...) : Object | LogInjectionTest.java:881:53:881:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | +| LogInjectionTest.java:882:47:882:54 | source(...) : Object | LogInjectionTest.java:882:38:882:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | +| LogInjectionTest.java:883:152:883:159 | source(...) : Object | LogInjectionTest.java:883:143:883:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:884:137:884:144 | source(...) : Object | LogInjectionTest.java:884:128:884:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:885:122:885:129 | source(...) : Object | LogInjectionTest.java:885:113:885:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:886:107:886:114 | source(...) : Object | LogInjectionTest.java:886:98:886:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:887:92:887:99 | source(...) : Object | LogInjectionTest.java:887:83:887:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:888:77:888:84 | source(...) : Object | LogInjectionTest.java:888:68:888:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:889:62:889:69 | source(...) : Object | LogInjectionTest.java:889:53:889:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:890:47:890:54 | source(...) : Object | LogInjectionTest.java:890:38:890:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:891:167:891:174 | source(...) : Object | LogInjectionTest.java:891:158:891:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:892:152:892:159 | source(...) : Object | LogInjectionTest.java:892:143:892:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:893:137:893:144 | source(...) : Object | LogInjectionTest.java:893:128:893:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:894:122:894:129 | source(...) : Object | LogInjectionTest.java:894:113:894:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:895:107:895:114 | source(...) : Object | LogInjectionTest.java:895:98:895:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:896:92:896:99 | source(...) : Object | LogInjectionTest.java:896:83:896:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:897:77:897:84 | source(...) : Object | LogInjectionTest.java:897:68:897:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:898:62:898:69 | source(...) : Object | LogInjectionTest.java:898:53:898:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:899:47:899:54 | source(...) : Object | LogInjectionTest.java:899:38:899:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:900:182:900:189 | source(...) : Object | LogInjectionTest.java:900:173:900:189 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:901:167:901:174 | source(...) : Object | LogInjectionTest.java:901:158:901:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:902:152:902:159 | source(...) : Object | LogInjectionTest.java:902:143:902:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:903:137:903:144 | source(...) : Object | LogInjectionTest.java:903:128:903:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:904:122:904:129 | source(...) : Object | LogInjectionTest.java:904:113:904:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:905:107:905:114 | source(...) : Object | LogInjectionTest.java:905:98:905:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:906:92:906:99 | source(...) : Object | LogInjectionTest.java:906:83:906:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:907:77:907:84 | source(...) : Object | LogInjectionTest.java:907:68:907:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:908:62:908:69 | source(...) : Object | LogInjectionTest.java:908:53:908:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:909:47:909:54 | source(...) : Object | LogInjectionTest.java:909:38:909:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:910:47:910:54 | source(...) : Object | LogInjectionTest.java:910:38:910:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | +| LogInjectionTest.java:911:67:911:74 | source(...) : Object | LogInjectionTest.java:911:53:911:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | +| LogInjectionTest.java:912:47:912:54 | source(...) : Object | LogInjectionTest.java:912:38:912:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:268 | +| LogInjectionTest.java:913:52:913:59 | source(...) : Object | LogInjectionTest.java:913:38:913:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:269 | +| LogInjectionTest.java:914:52:914:59 | source(...) : Object | LogInjectionTest.java:914:38:914:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:270 | +| LogInjectionTest.java:915:41:915:48 | source(...) : Object | LogInjectionTest.java:915:26:915:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:274 | +| LogInjectionTest.java:916:41:916:48 | source(...) : Object | LogInjectionTest.java:916:26:916:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:275 | +| LogInjectionTest.java:917:56:917:63 | source(...) : Object | LogInjectionTest.java:917:41:917:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:276 | +| LogInjectionTest.java:918:56:918:63 | source(...) : Object | LogInjectionTest.java:918:41:918:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:277 | +| LogInjectionTest.java:919:51:919:58 | source(...) : Object | LogInjectionTest.java:919:41:919:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:278 | +| LogInjectionTest.java:920:59:920:66 | source(...) : Object | LogInjectionTest.java:920:41:920:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:279 | +| LogInjectionTest.java:921:59:921:66 | source(...) : Object | LogInjectionTest.java:921:41:921:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:280 | +| LogInjectionTest.java:923:50:923:57 | source(...) : Object | LogInjectionTest.java:923:41:923:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:281 | +| LogInjectionTest.java:924:50:924:57 | source(...) : Object | LogInjectionTest.java:924:41:924:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:291 | +| LogInjectionTest.java:925:56:925:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:925:56:925:78 | new Object[] | provenance | Sink:MaD:291 | +| LogInjectionTest.java:925:70:925:77 | source(...) : Object | LogInjectionTest.java:925:56:925:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:926:65:926:72 | source(...) : Object | LogInjectionTest.java:926:56:926:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | +| LogInjectionTest.java:927:50:927:57 | source(...) : Object | LogInjectionTest.java:927:41:927:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | +| LogInjectionTest.java:928:80:928:87 | source(...) : Object | LogInjectionTest.java:928:71:928:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:283 | +| LogInjectionTest.java:929:65:929:72 | source(...) : Object | LogInjectionTest.java:929:56:929:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:283 | +| LogInjectionTest.java:930:50:930:57 | source(...) : Object | LogInjectionTest.java:930:41:930:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:283 | +| LogInjectionTest.java:931:95:931:102 | source(...) : Object | LogInjectionTest.java:931:86:931:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | +| LogInjectionTest.java:932:80:932:87 | source(...) : Object | LogInjectionTest.java:932:71:932:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | +| LogInjectionTest.java:933:65:933:72 | source(...) : Object | LogInjectionTest.java:933:56:933:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | +| LogInjectionTest.java:934:50:934:57 | source(...) : Object | LogInjectionTest.java:934:41:934:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | +| LogInjectionTest.java:935:110:935:117 | source(...) : Object | LogInjectionTest.java:935:101:935:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | +| LogInjectionTest.java:936:95:936:102 | source(...) : Object | LogInjectionTest.java:936:86:936:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | +| LogInjectionTest.java:937:80:937:87 | source(...) : Object | LogInjectionTest.java:937:71:937:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | +| LogInjectionTest.java:938:65:938:72 | source(...) : Object | LogInjectionTest.java:938:56:938:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | +| LogInjectionTest.java:939:50:939:57 | source(...) : Object | LogInjectionTest.java:939:41:939:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | +| LogInjectionTest.java:940:125:940:132 | source(...) : Object | LogInjectionTest.java:940:116:940:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | +| LogInjectionTest.java:941:110:941:117 | source(...) : Object | LogInjectionTest.java:941:101:941:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | +| LogInjectionTest.java:942:95:942:102 | source(...) : Object | LogInjectionTest.java:942:86:942:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | +| LogInjectionTest.java:943:80:943:87 | source(...) : Object | LogInjectionTest.java:943:71:943:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | +| LogInjectionTest.java:944:65:944:72 | source(...) : Object | LogInjectionTest.java:944:56:944:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | +| LogInjectionTest.java:945:50:945:57 | source(...) : Object | LogInjectionTest.java:945:41:945:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | +| LogInjectionTest.java:946:140:946:147 | source(...) : Object | LogInjectionTest.java:946:131:946:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | +| LogInjectionTest.java:947:125:947:132 | source(...) : Object | LogInjectionTest.java:947:116:947:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | +| LogInjectionTest.java:948:110:948:117 | source(...) : Object | LogInjectionTest.java:948:101:948:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | +| LogInjectionTest.java:949:95:949:102 | source(...) : Object | LogInjectionTest.java:949:86:949:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | +| LogInjectionTest.java:950:80:950:87 | source(...) : Object | LogInjectionTest.java:950:71:950:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | +| LogInjectionTest.java:951:65:951:72 | source(...) : Object | LogInjectionTest.java:951:56:951:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | +| LogInjectionTest.java:952:50:952:57 | source(...) : Object | LogInjectionTest.java:952:41:952:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | +| LogInjectionTest.java:953:155:953:162 | source(...) : Object | LogInjectionTest.java:953:146:953:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:954:140:954:147 | source(...) : Object | LogInjectionTest.java:954:131:954:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:955:125:955:132 | source(...) : Object | LogInjectionTest.java:955:116:955:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:956:110:956:117 | source(...) : Object | LogInjectionTest.java:956:101:956:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:957:95:957:102 | source(...) : Object | LogInjectionTest.java:957:86:957:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:958:80:958:87 | source(...) : Object | LogInjectionTest.java:958:71:958:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:959:65:959:72 | source(...) : Object | LogInjectionTest.java:959:56:959:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:960:50:960:57 | source(...) : Object | LogInjectionTest.java:960:41:960:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:961:170:961:177 | source(...) : Object | LogInjectionTest.java:961:161:961:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:962:155:962:162 | source(...) : Object | LogInjectionTest.java:962:146:962:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:963:140:963:147 | source(...) : Object | LogInjectionTest.java:963:131:963:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:964:125:964:132 | source(...) : Object | LogInjectionTest.java:964:116:964:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:965:110:965:117 | source(...) : Object | LogInjectionTest.java:965:101:965:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:966:95:966:102 | source(...) : Object | LogInjectionTest.java:966:86:966:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:967:80:967:87 | source(...) : Object | LogInjectionTest.java:967:71:967:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:968:65:968:72 | source(...) : Object | LogInjectionTest.java:968:56:968:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:969:50:969:57 | source(...) : Object | LogInjectionTest.java:969:41:969:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:970:185:970:192 | source(...) : Object | LogInjectionTest.java:970:176:970:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:971:170:971:177 | source(...) : Object | LogInjectionTest.java:971:161:971:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:972:155:972:162 | source(...) : Object | LogInjectionTest.java:972:146:972:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:973:140:973:147 | source(...) : Object | LogInjectionTest.java:973:131:973:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:974:125:974:132 | source(...) : Object | LogInjectionTest.java:974:116:974:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:975:110:975:117 | source(...) : Object | LogInjectionTest.java:975:101:975:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:976:95:976:102 | source(...) : Object | LogInjectionTest.java:976:86:976:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:977:80:977:87 | source(...) : Object | LogInjectionTest.java:977:71:977:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:978:65:978:72 | source(...) : Object | LogInjectionTest.java:978:56:978:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:979:50:979:57 | source(...) : Object | LogInjectionTest.java:979:41:979:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:980:50:980:57 | source(...) : Object | LogInjectionTest.java:980:41:980:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | +| LogInjectionTest.java:981:70:981:77 | source(...) : Object | LogInjectionTest.java:981:56:981:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | +| LogInjectionTest.java:982:50:982:57 | source(...) : Object | LogInjectionTest.java:982:41:982:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:292 | +| LogInjectionTest.java:983:55:983:62 | source(...) : Object | LogInjectionTest.java:983:41:983:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:293 | +| LogInjectionTest.java:984:55:984:62 | source(...) : Object | LogInjectionTest.java:984:41:984:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:294 | +| LogInjectionTest.java:985:44:985:51 | source(...) : Object | LogInjectionTest.java:985:26:985:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:297 | +| LogInjectionTest.java:986:44:986:51 | source(...) : Object | LogInjectionTest.java:986:26:986:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:298 | +| LogInjectionTest.java:987:36:987:43 | source(...) : Object | LogInjectionTest.java:987:26:987:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:295 | +| LogInjectionTest.java:988:36:988:43 | source(...) : Object | LogInjectionTest.java:988:26:988:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:296 | +| LogInjectionTest.java:991:35:991:42 | source(...) : Object | LogInjectionTest.java:991:26:991:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:299 | +| LogInjectionTest.java:992:35:992:42 | source(...) : Object | LogInjectionTest.java:992:26:992:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:309 | +| LogInjectionTest.java:993:41:993:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:993:41:993:63 | new Object[] | provenance | Sink:MaD:309 | +| LogInjectionTest.java:993:55:993:62 | source(...) : Object | LogInjectionTest.java:993:41:993:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:994:50:994:57 | source(...) : Object | LogInjectionTest.java:994:41:994:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | +| LogInjectionTest.java:995:35:995:42 | source(...) : Object | LogInjectionTest.java:995:26:995:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | +| LogInjectionTest.java:996:65:996:72 | source(...) : Object | LogInjectionTest.java:996:56:996:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:301 | +| LogInjectionTest.java:997:50:997:57 | source(...) : Object | LogInjectionTest.java:997:41:997:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:301 | +| LogInjectionTest.java:998:35:998:42 | source(...) : Object | LogInjectionTest.java:998:26:998:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:301 | +| LogInjectionTest.java:999:80:999:87 | source(...) : Object | LogInjectionTest.java:999:71:999:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | +| LogInjectionTest.java:1000:65:1000:72 | source(...) : Object | LogInjectionTest.java:1000:56:1000:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | +| LogInjectionTest.java:1001:50:1001:57 | source(...) : Object | LogInjectionTest.java:1001:41:1001:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | +| LogInjectionTest.java:1002:35:1002:42 | source(...) : Object | LogInjectionTest.java:1002:26:1002:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | +| LogInjectionTest.java:1003:95:1003:102 | source(...) : Object | LogInjectionTest.java:1003:86:1003:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | +| LogInjectionTest.java:1004:80:1004:87 | source(...) : Object | LogInjectionTest.java:1004:71:1004:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | +| LogInjectionTest.java:1005:65:1005:72 | source(...) : Object | LogInjectionTest.java:1005:56:1005:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | +| LogInjectionTest.java:1006:50:1006:57 | source(...) : Object | LogInjectionTest.java:1006:41:1006:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | +| LogInjectionTest.java:1007:35:1007:42 | source(...) : Object | LogInjectionTest.java:1007:26:1007:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | +| LogInjectionTest.java:1008:110:1008:117 | source(...) : Object | LogInjectionTest.java:1008:101:1008:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | +| LogInjectionTest.java:1009:95:1009:102 | source(...) : Object | LogInjectionTest.java:1009:86:1009:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | +| LogInjectionTest.java:1010:80:1010:87 | source(...) : Object | LogInjectionTest.java:1010:71:1010:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | +| LogInjectionTest.java:1011:65:1011:72 | source(...) : Object | LogInjectionTest.java:1011:56:1011:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | +| LogInjectionTest.java:1012:50:1012:57 | source(...) : Object | LogInjectionTest.java:1012:41:1012:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | +| LogInjectionTest.java:1013:35:1013:42 | source(...) : Object | LogInjectionTest.java:1013:26:1013:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | +| LogInjectionTest.java:1014:125:1014:132 | source(...) : Object | LogInjectionTest.java:1014:116:1014:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | +| LogInjectionTest.java:1015:110:1015:117 | source(...) : Object | LogInjectionTest.java:1015:101:1015:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | +| LogInjectionTest.java:1016:95:1016:102 | source(...) : Object | LogInjectionTest.java:1016:86:1016:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | +| LogInjectionTest.java:1017:80:1017:87 | source(...) : Object | LogInjectionTest.java:1017:71:1017:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | +| LogInjectionTest.java:1018:65:1018:72 | source(...) : Object | LogInjectionTest.java:1018:56:1018:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | +| LogInjectionTest.java:1019:50:1019:57 | source(...) : Object | LogInjectionTest.java:1019:41:1019:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | +| LogInjectionTest.java:1020:35:1020:42 | source(...) : Object | LogInjectionTest.java:1020:26:1020:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | +| LogInjectionTest.java:1021:140:1021:147 | source(...) : Object | LogInjectionTest.java:1021:131:1021:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1022:125:1022:132 | source(...) : Object | LogInjectionTest.java:1022:116:1022:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1023:110:1023:117 | source(...) : Object | LogInjectionTest.java:1023:101:1023:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1024:95:1024:102 | source(...) : Object | LogInjectionTest.java:1024:86:1024:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1025:80:1025:87 | source(...) : Object | LogInjectionTest.java:1025:71:1025:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1026:65:1026:72 | source(...) : Object | LogInjectionTest.java:1026:56:1026:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1027:50:1027:57 | source(...) : Object | LogInjectionTest.java:1027:41:1027:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1028:35:1028:42 | source(...) : Object | LogInjectionTest.java:1028:26:1028:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1029:155:1029:162 | source(...) : Object | LogInjectionTest.java:1029:146:1029:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1030:140:1030:147 | source(...) : Object | LogInjectionTest.java:1030:131:1030:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1031:125:1031:132 | source(...) : Object | LogInjectionTest.java:1031:116:1031:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1032:110:1032:117 | source(...) : Object | LogInjectionTest.java:1032:101:1032:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1033:95:1033:102 | source(...) : Object | LogInjectionTest.java:1033:86:1033:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1034:80:1034:87 | source(...) : Object | LogInjectionTest.java:1034:71:1034:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1035:65:1035:72 | source(...) : Object | LogInjectionTest.java:1035:56:1035:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1036:50:1036:57 | source(...) : Object | LogInjectionTest.java:1036:41:1036:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1037:35:1037:42 | source(...) : Object | LogInjectionTest.java:1037:26:1037:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1038:170:1038:177 | source(...) : Object | LogInjectionTest.java:1038:161:1038:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1039:155:1039:162 | source(...) : Object | LogInjectionTest.java:1039:146:1039:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1040:140:1040:147 | source(...) : Object | LogInjectionTest.java:1040:131:1040:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1041:125:1041:132 | source(...) : Object | LogInjectionTest.java:1041:116:1041:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1042:110:1042:117 | source(...) : Object | LogInjectionTest.java:1042:101:1042:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1043:95:1043:102 | source(...) : Object | LogInjectionTest.java:1043:86:1043:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1044:80:1044:87 | source(...) : Object | LogInjectionTest.java:1044:71:1044:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1045:65:1045:72 | source(...) : Object | LogInjectionTest.java:1045:56:1045:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1046:50:1046:57 | source(...) : Object | LogInjectionTest.java:1046:41:1046:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1047:35:1047:42 | source(...) : Object | LogInjectionTest.java:1047:26:1047:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1048:35:1048:42 | source(...) : Object | LogInjectionTest.java:1048:26:1048:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | +| LogInjectionTest.java:1049:55:1049:62 | source(...) : Object | LogInjectionTest.java:1049:41:1049:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | +| LogInjectionTest.java:1050:35:1050:42 | source(...) : Object | LogInjectionTest.java:1050:26:1050:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:310 | +| LogInjectionTest.java:1051:40:1051:47 | source(...) : Object | LogInjectionTest.java:1051:26:1051:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:311 | +| LogInjectionTest.java:1052:40:1052:47 | source(...) : Object | LogInjectionTest.java:1052:26:1052:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:312 | +| LogInjectionTest.java:1053:40:1053:47 | source(...) : Object | LogInjectionTest.java:1053:25:1053:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:321 | +| LogInjectionTest.java:1054:40:1054:47 | source(...) : Object | LogInjectionTest.java:1054:25:1054:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:322 | +| LogInjectionTest.java:1055:55:1055:62 | source(...) : Object | LogInjectionTest.java:1055:40:1055:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:323 | +| LogInjectionTest.java:1056:55:1056:62 | source(...) : Object | LogInjectionTest.java:1056:40:1056:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:324 | +| LogInjectionTest.java:1057:50:1057:57 | source(...) : Object | LogInjectionTest.java:1057:40:1057:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:325 | +| LogInjectionTest.java:1058:58:1058:65 | source(...) : Object | LogInjectionTest.java:1058:40:1058:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:326 | +| LogInjectionTest.java:1059:58:1059:65 | source(...) : Object | LogInjectionTest.java:1059:40:1059:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:327 | +| LogInjectionTest.java:1061:49:1061:56 | source(...) : Object | LogInjectionTest.java:1061:40:1061:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:328 | +| LogInjectionTest.java:1062:49:1062:56 | source(...) : Object | LogInjectionTest.java:1062:40:1062:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:338 | +| LogInjectionTest.java:1063:55:1063:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1063:55:1063:77 | new Object[] | provenance | Sink:MaD:338 | +| LogInjectionTest.java:1063:69:1063:76 | source(...) : Object | LogInjectionTest.java:1063:55:1063:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1064:64:1064:71 | source(...) : Object | LogInjectionTest.java:1064:55:1064:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | +| LogInjectionTest.java:1065:49:1065:56 | source(...) : Object | LogInjectionTest.java:1065:40:1065:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | +| LogInjectionTest.java:1066:79:1066:86 | source(...) : Object | LogInjectionTest.java:1066:70:1066:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:330 | +| LogInjectionTest.java:1067:64:1067:71 | source(...) : Object | LogInjectionTest.java:1067:55:1067:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:330 | +| LogInjectionTest.java:1068:49:1068:56 | source(...) : Object | LogInjectionTest.java:1068:40:1068:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:330 | +| LogInjectionTest.java:1069:94:1069:101 | source(...) : Object | LogInjectionTest.java:1069:85:1069:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | +| LogInjectionTest.java:1070:79:1070:86 | source(...) : Object | LogInjectionTest.java:1070:70:1070:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | +| LogInjectionTest.java:1071:64:1071:71 | source(...) : Object | LogInjectionTest.java:1071:55:1071:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | +| LogInjectionTest.java:1072:49:1072:56 | source(...) : Object | LogInjectionTest.java:1072:40:1072:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | +| LogInjectionTest.java:1073:109:1073:116 | source(...) : Object | LogInjectionTest.java:1073:100:1073:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | +| LogInjectionTest.java:1074:94:1074:101 | source(...) : Object | LogInjectionTest.java:1074:85:1074:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | +| LogInjectionTest.java:1075:79:1075:86 | source(...) : Object | LogInjectionTest.java:1075:70:1075:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | +| LogInjectionTest.java:1076:64:1076:71 | source(...) : Object | LogInjectionTest.java:1076:55:1076:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | +| LogInjectionTest.java:1077:49:1077:56 | source(...) : Object | LogInjectionTest.java:1077:40:1077:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | +| LogInjectionTest.java:1078:124:1078:131 | source(...) : Object | LogInjectionTest.java:1078:115:1078:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | +| LogInjectionTest.java:1079:109:1079:116 | source(...) : Object | LogInjectionTest.java:1079:100:1079:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | +| LogInjectionTest.java:1080:94:1080:101 | source(...) : Object | LogInjectionTest.java:1080:85:1080:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | +| LogInjectionTest.java:1081:79:1081:86 | source(...) : Object | LogInjectionTest.java:1081:70:1081:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | +| LogInjectionTest.java:1082:64:1082:71 | source(...) : Object | LogInjectionTest.java:1082:55:1082:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | +| LogInjectionTest.java:1083:49:1083:56 | source(...) : Object | LogInjectionTest.java:1083:40:1083:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | +| LogInjectionTest.java:1084:139:1084:146 | source(...) : Object | LogInjectionTest.java:1084:130:1084:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | +| LogInjectionTest.java:1085:124:1085:131 | source(...) : Object | LogInjectionTest.java:1085:115:1085:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | +| LogInjectionTest.java:1086:109:1086:116 | source(...) : Object | LogInjectionTest.java:1086:100:1086:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | +| LogInjectionTest.java:1087:94:1087:101 | source(...) : Object | LogInjectionTest.java:1087:85:1087:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | +| LogInjectionTest.java:1088:79:1088:86 | source(...) : Object | LogInjectionTest.java:1088:70:1088:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | +| LogInjectionTest.java:1089:64:1089:71 | source(...) : Object | LogInjectionTest.java:1089:55:1089:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | +| LogInjectionTest.java:1090:49:1090:56 | source(...) : Object | LogInjectionTest.java:1090:40:1090:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | +| LogInjectionTest.java:1091:154:1091:161 | source(...) : Object | LogInjectionTest.java:1091:145:1091:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1092:139:1092:146 | source(...) : Object | LogInjectionTest.java:1092:130:1092:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1093:124:1093:131 | source(...) : Object | LogInjectionTest.java:1093:115:1093:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1094:109:1094:116 | source(...) : Object | LogInjectionTest.java:1094:100:1094:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1095:94:1095:101 | source(...) : Object | LogInjectionTest.java:1095:85:1095:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1096:79:1096:86 | source(...) : Object | LogInjectionTest.java:1096:70:1096:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1097:64:1097:71 | source(...) : Object | LogInjectionTest.java:1097:55:1097:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1098:49:1098:56 | source(...) : Object | LogInjectionTest.java:1098:40:1098:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1099:169:1099:176 | source(...) : Object | LogInjectionTest.java:1099:160:1099:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1100:154:1100:161 | source(...) : Object | LogInjectionTest.java:1100:145:1100:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1101:139:1101:146 | source(...) : Object | LogInjectionTest.java:1101:130:1101:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1102:124:1102:131 | source(...) : Object | LogInjectionTest.java:1102:115:1102:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1103:109:1103:116 | source(...) : Object | LogInjectionTest.java:1103:100:1103:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1104:94:1104:101 | source(...) : Object | LogInjectionTest.java:1104:85:1104:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1105:79:1105:86 | source(...) : Object | LogInjectionTest.java:1105:70:1105:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1106:64:1106:71 | source(...) : Object | LogInjectionTest.java:1106:55:1106:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1107:49:1107:56 | source(...) : Object | LogInjectionTest.java:1107:40:1107:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1108:184:1108:191 | source(...) : Object | LogInjectionTest.java:1108:175:1108:191 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1109:169:1109:176 | source(...) : Object | LogInjectionTest.java:1109:160:1109:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1110:154:1110:161 | source(...) : Object | LogInjectionTest.java:1110:145:1110:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1111:139:1111:146 | source(...) : Object | LogInjectionTest.java:1111:130:1111:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1112:124:1112:131 | source(...) : Object | LogInjectionTest.java:1112:115:1112:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1113:109:1113:116 | source(...) : Object | LogInjectionTest.java:1113:100:1113:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1114:94:1114:101 | source(...) : Object | LogInjectionTest.java:1114:85:1114:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1115:79:1115:86 | source(...) : Object | LogInjectionTest.java:1115:70:1115:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1116:64:1116:71 | source(...) : Object | LogInjectionTest.java:1116:55:1116:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1117:49:1117:56 | source(...) : Object | LogInjectionTest.java:1117:40:1117:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1118:49:1118:56 | source(...) : Object | LogInjectionTest.java:1118:40:1118:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | +| LogInjectionTest.java:1119:69:1119:76 | source(...) : Object | LogInjectionTest.java:1119:55:1119:76 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | +| LogInjectionTest.java:1120:49:1120:56 | source(...) : Object | LogInjectionTest.java:1120:40:1120:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:339 | +| LogInjectionTest.java:1121:54:1121:61 | source(...) : Object | LogInjectionTest.java:1121:40:1121:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:340 | +| LogInjectionTest.java:1122:54:1122:61 | source(...) : Object | LogInjectionTest.java:1122:40:1122:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:341 | +| LogInjectionTest.java:1123:43:1123:50 | source(...) : Object | LogInjectionTest.java:1123:25:1123:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:344 | +| LogInjectionTest.java:1124:43:1124:50 | source(...) : Object | LogInjectionTest.java:1124:25:1124:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:345 | +| LogInjectionTest.java:1125:35:1125:42 | source(...) : Object | LogInjectionTest.java:1125:25:1125:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:342 | +| LogInjectionTest.java:1126:35:1126:42 | source(...) : Object | LogInjectionTest.java:1126:25:1126:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:343 | +| LogInjectionTest.java:1129:34:1129:41 | source(...) : Object | LogInjectionTest.java:1129:25:1129:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:346 | +| LogInjectionTest.java:1130:34:1130:41 | source(...) : Object | LogInjectionTest.java:1130:25:1130:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:356 | +| LogInjectionTest.java:1131:40:1131:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1131:40:1131:62 | new Object[] | provenance | Sink:MaD:356 | +| LogInjectionTest.java:1131:54:1131:61 | source(...) : Object | LogInjectionTest.java:1131:40:1131:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1132:49:1132:56 | source(...) : Object | LogInjectionTest.java:1132:40:1132:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | +| LogInjectionTest.java:1133:34:1133:41 | source(...) : Object | LogInjectionTest.java:1133:25:1133:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | +| LogInjectionTest.java:1134:64:1134:71 | source(...) : Object | LogInjectionTest.java:1134:55:1134:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:348 | +| LogInjectionTest.java:1135:49:1135:56 | source(...) : Object | LogInjectionTest.java:1135:40:1135:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:348 | +| LogInjectionTest.java:1136:34:1136:41 | source(...) : Object | LogInjectionTest.java:1136:25:1136:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:348 | +| LogInjectionTest.java:1137:79:1137:86 | source(...) : Object | LogInjectionTest.java:1137:70:1137:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | +| LogInjectionTest.java:1138:64:1138:71 | source(...) : Object | LogInjectionTest.java:1138:55:1138:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | +| LogInjectionTest.java:1139:49:1139:56 | source(...) : Object | LogInjectionTest.java:1139:40:1139:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | +| LogInjectionTest.java:1140:34:1140:41 | source(...) : Object | LogInjectionTest.java:1140:25:1140:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | +| LogInjectionTest.java:1141:94:1141:101 | source(...) : Object | LogInjectionTest.java:1141:85:1141:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | +| LogInjectionTest.java:1142:79:1142:86 | source(...) : Object | LogInjectionTest.java:1142:70:1142:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | +| LogInjectionTest.java:1143:64:1143:71 | source(...) : Object | LogInjectionTest.java:1143:55:1143:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | +| LogInjectionTest.java:1144:49:1144:56 | source(...) : Object | LogInjectionTest.java:1144:40:1144:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | +| LogInjectionTest.java:1145:34:1145:41 | source(...) : Object | LogInjectionTest.java:1145:25:1145:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | +| LogInjectionTest.java:1146:109:1146:116 | source(...) : Object | LogInjectionTest.java:1146:100:1146:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | +| LogInjectionTest.java:1147:94:1147:101 | source(...) : Object | LogInjectionTest.java:1147:85:1147:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | +| LogInjectionTest.java:1148:79:1148:86 | source(...) : Object | LogInjectionTest.java:1148:70:1148:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | +| LogInjectionTest.java:1149:64:1149:71 | source(...) : Object | LogInjectionTest.java:1149:55:1149:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | +| LogInjectionTest.java:1150:49:1150:56 | source(...) : Object | LogInjectionTest.java:1150:40:1150:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | +| LogInjectionTest.java:1151:34:1151:41 | source(...) : Object | LogInjectionTest.java:1151:25:1151:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | +| LogInjectionTest.java:1152:124:1152:131 | source(...) : Object | LogInjectionTest.java:1152:115:1152:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | +| LogInjectionTest.java:1153:109:1153:116 | source(...) : Object | LogInjectionTest.java:1153:100:1153:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | +| LogInjectionTest.java:1154:94:1154:101 | source(...) : Object | LogInjectionTest.java:1154:85:1154:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | +| LogInjectionTest.java:1155:79:1155:86 | source(...) : Object | LogInjectionTest.java:1155:70:1155:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | +| LogInjectionTest.java:1156:64:1156:71 | source(...) : Object | LogInjectionTest.java:1156:55:1156:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | +| LogInjectionTest.java:1157:49:1157:56 | source(...) : Object | LogInjectionTest.java:1157:40:1157:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | +| LogInjectionTest.java:1158:34:1158:41 | source(...) : Object | LogInjectionTest.java:1158:25:1158:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | +| LogInjectionTest.java:1159:139:1159:146 | source(...) : Object | LogInjectionTest.java:1159:130:1159:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1160:124:1160:131 | source(...) : Object | LogInjectionTest.java:1160:115:1160:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1161:109:1161:116 | source(...) : Object | LogInjectionTest.java:1161:100:1161:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1162:94:1162:101 | source(...) : Object | LogInjectionTest.java:1162:85:1162:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1163:79:1163:86 | source(...) : Object | LogInjectionTest.java:1163:70:1163:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1164:64:1164:71 | source(...) : Object | LogInjectionTest.java:1164:55:1164:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1165:49:1165:56 | source(...) : Object | LogInjectionTest.java:1165:40:1165:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1166:34:1166:41 | source(...) : Object | LogInjectionTest.java:1166:25:1166:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1167:154:1167:161 | source(...) : Object | LogInjectionTest.java:1167:145:1167:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1168:139:1168:146 | source(...) : Object | LogInjectionTest.java:1168:130:1168:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1169:124:1169:131 | source(...) : Object | LogInjectionTest.java:1169:115:1169:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1170:109:1170:116 | source(...) : Object | LogInjectionTest.java:1170:100:1170:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1171:94:1171:101 | source(...) : Object | LogInjectionTest.java:1171:85:1171:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1172:79:1172:86 | source(...) : Object | LogInjectionTest.java:1172:70:1172:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1173:64:1173:71 | source(...) : Object | LogInjectionTest.java:1173:55:1173:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1174:49:1174:56 | source(...) : Object | LogInjectionTest.java:1174:40:1174:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1175:34:1175:41 | source(...) : Object | LogInjectionTest.java:1175:25:1175:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1176:169:1176:176 | source(...) : Object | LogInjectionTest.java:1176:160:1176:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1177:154:1177:161 | source(...) : Object | LogInjectionTest.java:1177:145:1177:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1178:139:1178:146 | source(...) : Object | LogInjectionTest.java:1178:130:1178:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1179:124:1179:131 | source(...) : Object | LogInjectionTest.java:1179:115:1179:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1180:109:1180:116 | source(...) : Object | LogInjectionTest.java:1180:100:1180:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1181:94:1181:101 | source(...) : Object | LogInjectionTest.java:1181:85:1181:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1182:79:1182:86 | source(...) : Object | LogInjectionTest.java:1182:70:1182:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1183:64:1183:71 | source(...) : Object | LogInjectionTest.java:1183:55:1183:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1184:49:1184:56 | source(...) : Object | LogInjectionTest.java:1184:40:1184:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1185:34:1185:41 | source(...) : Object | LogInjectionTest.java:1185:25:1185:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1186:34:1186:41 | source(...) : Object | LogInjectionTest.java:1186:25:1186:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | +| LogInjectionTest.java:1187:54:1187:61 | source(...) : Object | LogInjectionTest.java:1187:40:1187:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | +| LogInjectionTest.java:1188:34:1188:41 | source(...) : Object | LogInjectionTest.java:1188:25:1188:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:357 | +| LogInjectionTest.java:1189:39:1189:46 | source(...) : Object | LogInjectionTest.java:1189:25:1189:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:358 | +| LogInjectionTest.java:1190:39:1190:46 | source(...) : Object | LogInjectionTest.java:1190:25:1190:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:359 | +| LogInjectionTest.java:1192:65:1192:72 | source(...) : Object | LogInjectionTest.java:1192:55:1192:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:271 | +| LogInjectionTest.java:1193:48:1193:55 | source(...) : Object | LogInjectionTest.java:1193:39:1193:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:272 | +| LogInjectionTest.java:1194:45:1194:67 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1194:45:1194:67 | new Object[] | provenance | Sink:MaD:272 | +| LogInjectionTest.java:1194:59:1194:66 | source(...) : Object | LogInjectionTest.java:1194:45:1194:67 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1195:42:1195:49 | source(...) : Object | LogInjectionTest.java:1195:33:1195:49 | (...)... | provenance | Src:MaD:536 Sink:MaD:273 | +| LogInjectionTest.java:1196:39:1196:61 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1196:39:1196:61 | new Object[] | provenance | Sink:MaD:273 | +| LogInjectionTest.java:1196:53:1196:60 | source(...) : Object | LogInjectionTest.java:1196:39:1196:61 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1197:41:1197:48 | source(...) : Object | LogInjectionTest.java:1197:31:1197:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:313 | +| LogInjectionTest.java:1198:40:1198:47 | source(...) : Object | LogInjectionTest.java:1198:31:1198:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:314 | +| LogInjectionTest.java:1199:46:1199:68 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1199:46:1199:68 | new Object[] | provenance | Sink:MaD:314 | +| LogInjectionTest.java:1199:60:1199:67 | source(...) : Object | LogInjectionTest.java:1199:46:1199:68 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1200:40:1200:47 | source(...) : Object | LogInjectionTest.java:1200:31:1200:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:315 | +| LogInjectionTest.java:1201:46:1201:67 | (...)... : Supplier | LogInjectionTest.java:1201:13:1201:68 | new ..[] { .. } | provenance | Sink:MaD:315 | +| LogInjectionTest.java:1201:60:1201:67 | source(...) : Object | LogInjectionTest.java:1201:46:1201:67 | (...)... : Supplier | provenance | Src:MaD:536 | +| LogInjectionTest.java:1202:31:1202:52 | (...)... : Supplier | LogInjectionTest.java:1202:13:1202:53 | new ..[] { .. } | provenance | Sink:MaD:316 | +| LogInjectionTest.java:1202:45:1202:52 | source(...) : Object | LogInjectionTest.java:1202:31:1202:52 | (...)... : Supplier | provenance | Src:MaD:536 | +| LogInjectionTest.java:1203:45:1203:52 | source(...) : Object | LogInjectionTest.java:1203:30:1203:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:317 | +| LogInjectionTest.java:1204:45:1204:52 | source(...) : Object | LogInjectionTest.java:1204:30:1204:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:318 | +| LogInjectionTest.java:1206:40:1206:47 | source(...) : Object | LogInjectionTest.java:1206:30:1206:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:319 | +| LogInjectionTest.java:1209:39:1209:46 | source(...) : Object | LogInjectionTest.java:1209:30:1209:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:320 | +| LogInjectionTest.java:1214:40:1214:47 | source(...) : Object | LogInjectionTest.java:1214:25:1214:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:62 | +| LogInjectionTest.java:1215:35:1215:42 | source(...) : Object | LogInjectionTest.java:1215:25:1215:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:63 | +| LogInjectionTest.java:1217:34:1217:41 | source(...) : Object | LogInjectionTest.java:1217:25:1217:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:65 | +| LogInjectionTest.java:1218:34:1218:41 | source(...) : Object | LogInjectionTest.java:1218:25:1218:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:75 | +| LogInjectionTest.java:1219:40:1219:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1219:40:1219:62 | new Object[] | provenance | Sink:MaD:75 | +| LogInjectionTest.java:1219:54:1219:61 | source(...) : Object | LogInjectionTest.java:1219:40:1219:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1222:49:1222:56 | source(...) : Object | LogInjectionTest.java:1222:40:1222:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | +| LogInjectionTest.java:1223:34:1223:41 | source(...) : Object | LogInjectionTest.java:1223:25:1223:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | +| LogInjectionTest.java:1224:64:1224:71 | source(...) : Object | LogInjectionTest.java:1224:55:1224:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:67 | +| LogInjectionTest.java:1225:49:1225:56 | source(...) : Object | LogInjectionTest.java:1225:40:1225:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:67 | +| LogInjectionTest.java:1226:34:1226:41 | source(...) : Object | LogInjectionTest.java:1226:25:1226:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:67 | +| LogInjectionTest.java:1227:79:1227:86 | source(...) : Object | LogInjectionTest.java:1227:70:1227:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | +| LogInjectionTest.java:1228:64:1228:71 | source(...) : Object | LogInjectionTest.java:1228:55:1228:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | +| LogInjectionTest.java:1229:49:1229:56 | source(...) : Object | LogInjectionTest.java:1229:40:1229:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | +| LogInjectionTest.java:1230:34:1230:41 | source(...) : Object | LogInjectionTest.java:1230:25:1230:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | +| LogInjectionTest.java:1231:94:1231:101 | source(...) : Object | LogInjectionTest.java:1231:85:1231:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | +| LogInjectionTest.java:1232:79:1232:86 | source(...) : Object | LogInjectionTest.java:1232:70:1232:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | +| LogInjectionTest.java:1233:64:1233:71 | source(...) : Object | LogInjectionTest.java:1233:55:1233:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | +| LogInjectionTest.java:1234:49:1234:56 | source(...) : Object | LogInjectionTest.java:1234:40:1234:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | +| LogInjectionTest.java:1235:34:1235:41 | source(...) : Object | LogInjectionTest.java:1235:25:1235:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | +| LogInjectionTest.java:1236:109:1236:116 | source(...) : Object | LogInjectionTest.java:1236:100:1236:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | +| LogInjectionTest.java:1237:94:1237:101 | source(...) : Object | LogInjectionTest.java:1237:85:1237:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | +| LogInjectionTest.java:1238:79:1238:86 | source(...) : Object | LogInjectionTest.java:1238:70:1238:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | +| LogInjectionTest.java:1239:64:1239:71 | source(...) : Object | LogInjectionTest.java:1239:55:1239:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | +| LogInjectionTest.java:1240:49:1240:56 | source(...) : Object | LogInjectionTest.java:1240:40:1240:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | +| LogInjectionTest.java:1241:34:1241:41 | source(...) : Object | LogInjectionTest.java:1241:25:1241:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | +| LogInjectionTest.java:1242:124:1242:131 | source(...) : Object | LogInjectionTest.java:1242:115:1242:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | +| LogInjectionTest.java:1243:109:1243:116 | source(...) : Object | LogInjectionTest.java:1243:100:1243:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | +| LogInjectionTest.java:1244:94:1244:101 | source(...) : Object | LogInjectionTest.java:1244:85:1244:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | +| LogInjectionTest.java:1245:79:1245:86 | source(...) : Object | LogInjectionTest.java:1245:70:1245:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | +| LogInjectionTest.java:1246:64:1246:71 | source(...) : Object | LogInjectionTest.java:1246:55:1246:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | +| LogInjectionTest.java:1247:49:1247:56 | source(...) : Object | LogInjectionTest.java:1247:40:1247:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | +| LogInjectionTest.java:1248:34:1248:41 | source(...) : Object | LogInjectionTest.java:1248:25:1248:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | +| LogInjectionTest.java:1249:139:1249:146 | source(...) : Object | LogInjectionTest.java:1249:130:1249:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1250:124:1250:131 | source(...) : Object | LogInjectionTest.java:1250:115:1250:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1251:109:1251:116 | source(...) : Object | LogInjectionTest.java:1251:100:1251:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1252:94:1252:101 | source(...) : Object | LogInjectionTest.java:1252:85:1252:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1253:79:1253:86 | source(...) : Object | LogInjectionTest.java:1253:70:1253:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1254:64:1254:71 | source(...) : Object | LogInjectionTest.java:1254:55:1254:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1255:49:1255:56 | source(...) : Object | LogInjectionTest.java:1255:40:1255:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1256:34:1256:41 | source(...) : Object | LogInjectionTest.java:1256:25:1256:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1257:154:1257:161 | source(...) : Object | LogInjectionTest.java:1257:145:1257:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1258:139:1258:146 | source(...) : Object | LogInjectionTest.java:1258:130:1258:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1259:124:1259:131 | source(...) : Object | LogInjectionTest.java:1259:115:1259:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1260:109:1260:116 | source(...) : Object | LogInjectionTest.java:1260:100:1260:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1261:94:1261:101 | source(...) : Object | LogInjectionTest.java:1261:85:1261:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1262:79:1262:86 | source(...) : Object | LogInjectionTest.java:1262:70:1262:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1263:64:1263:71 | source(...) : Object | LogInjectionTest.java:1263:55:1263:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1264:49:1264:56 | source(...) : Object | LogInjectionTest.java:1264:40:1264:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1265:34:1265:41 | source(...) : Object | LogInjectionTest.java:1265:25:1265:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1266:169:1266:176 | source(...) : Object | LogInjectionTest.java:1266:160:1266:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1267:154:1267:161 | source(...) : Object | LogInjectionTest.java:1267:145:1267:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1268:139:1268:146 | source(...) : Object | LogInjectionTest.java:1268:130:1268:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1269:124:1269:131 | source(...) : Object | LogInjectionTest.java:1269:115:1269:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1270:109:1270:116 | source(...) : Object | LogInjectionTest.java:1270:100:1270:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1271:94:1271:101 | source(...) : Object | LogInjectionTest.java:1271:85:1271:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1272:79:1272:86 | source(...) : Object | LogInjectionTest.java:1272:70:1272:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1273:64:1273:71 | source(...) : Object | LogInjectionTest.java:1273:55:1273:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1274:49:1274:56 | source(...) : Object | LogInjectionTest.java:1274:40:1274:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1275:34:1275:41 | source(...) : Object | LogInjectionTest.java:1275:25:1275:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1277:34:1277:41 | source(...) : Object | LogInjectionTest.java:1277:25:1277:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | +| LogInjectionTest.java:1278:54:1278:61 | source(...) : Object | LogInjectionTest.java:1278:40:1278:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | +| LogInjectionTest.java:1279:39:1279:46 | source(...) : Object | LogInjectionTest.java:1279:25:1279:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:64 | +| LogInjectionTest.java:1299:57:1299:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1299:57:1299:79 | new Object[] | provenance | Sink:MaD:360 | +| LogInjectionTest.java:1299:71:1299:78 | source(...) : Object | LogInjectionTest.java:1299:57:1299:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1307:57:1307:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1307:57:1307:79 | new Object[] | provenance | Sink:MaD:369 | +| LogInjectionTest.java:1307:71:1307:78 | source(...) : Object | LogInjectionTest.java:1307:57:1307:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1315:57:1315:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1315:57:1315:79 | new Object[] | provenance | Sink:MaD:378 | +| LogInjectionTest.java:1315:71:1315:78 | source(...) : Object | LogInjectionTest.java:1315:57:1315:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1323:56:1323:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1323:56:1323:78 | new Object[] | provenance | Sink:MaD:387 | +| LogInjectionTest.java:1323:70:1323:77 | source(...) : Object | LogInjectionTest.java:1323:56:1323:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1331:57:1331:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1331:57:1331:79 | new Object[] | provenance | Sink:MaD:405 | +| LogInjectionTest.java:1331:71:1331:78 | source(...) : Object | LogInjectionTest.java:1331:57:1331:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1339:56:1339:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1339:56:1339:78 | new Object[] | provenance | Sink:MaD:414 | +| LogInjectionTest.java:1339:70:1339:77 | source(...) : Object | LogInjectionTest.java:1339:56:1339:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1348:94:1348:116 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1348:94:1348:116 | new Object[] | provenance | Sink:MaD:396 | +| LogInjectionTest.java:1348:108:1348:115 | source(...) : Object | LogInjectionTest.java:1348:94:1348:116 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1349:52:1349:59 | source(...) : Object | LogInjectionTest.java:1349:43:1349:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | +| LogInjectionTest.java:1350:37:1350:44 | source(...) : Object | LogInjectionTest.java:1350:28:1350:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | +| LogInjectionTest.java:1351:52:1351:59 | source(...) : Object | LogInjectionTest.java:1351:43:1351:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | +| LogInjectionTest.java:1352:37:1352:44 | source(...) : Object | LogInjectionTest.java:1352:28:1352:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | +| LogInjectionTest.java:1353:37:1353:44 | source(...) : Object | LogInjectionTest.java:1353:28:1353:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:364 | +| LogInjectionTest.java:1354:37:1354:44 | source(...) : Object | LogInjectionTest.java:1354:28:1354:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:368 | +| LogInjectionTest.java:1355:43:1355:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1355:43:1355:65 | new Object[] | provenance | Sink:MaD:364 | +| LogInjectionTest.java:1355:57:1355:64 | source(...) : Object | LogInjectionTest.java:1355:43:1355:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1356:43:1356:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1356:43:1356:65 | new Object[] | provenance | Sink:MaD:368 | +| LogInjectionTest.java:1356:57:1356:64 | source(...) : Object | LogInjectionTest.java:1356:43:1356:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1357:67:1357:74 | source(...) : Object | LogInjectionTest.java:1357:58:1357:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | +| LogInjectionTest.java:1358:52:1358:59 | source(...) : Object | LogInjectionTest.java:1358:43:1358:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | +| LogInjectionTest.java:1359:37:1359:44 | source(...) : Object | LogInjectionTest.java:1359:28:1359:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | +| LogInjectionTest.java:1360:67:1360:74 | source(...) : Object | LogInjectionTest.java:1360:58:1360:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | +| LogInjectionTest.java:1361:52:1361:59 | source(...) : Object | LogInjectionTest.java:1361:43:1361:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | +| LogInjectionTest.java:1362:37:1362:44 | source(...) : Object | LogInjectionTest.java:1362:28:1362:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | +| LogInjectionTest.java:1363:82:1363:89 | source(...) : Object | LogInjectionTest.java:1363:73:1363:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1364:67:1364:74 | source(...) : Object | LogInjectionTest.java:1364:58:1364:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1365:52:1365:59 | source(...) : Object | LogInjectionTest.java:1365:43:1365:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1366:37:1366:44 | source(...) : Object | LogInjectionTest.java:1366:28:1366:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1367:82:1367:89 | source(...) : Object | LogInjectionTest.java:1367:73:1367:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1368:67:1368:74 | source(...) : Object | LogInjectionTest.java:1368:58:1368:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1369:52:1369:59 | source(...) : Object | LogInjectionTest.java:1369:43:1369:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1370:37:1370:44 | source(...) : Object | LogInjectionTest.java:1370:28:1370:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1371:52:1371:59 | source(...) : Object | LogInjectionTest.java:1371:43:1371:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | +| LogInjectionTest.java:1372:37:1372:44 | source(...) : Object | LogInjectionTest.java:1372:28:1372:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | +| LogInjectionTest.java:1373:52:1373:59 | source(...) : Object | LogInjectionTest.java:1373:43:1373:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | +| LogInjectionTest.java:1374:37:1374:44 | source(...) : Object | LogInjectionTest.java:1374:28:1374:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | +| LogInjectionTest.java:1375:37:1375:44 | source(...) : Object | LogInjectionTest.java:1375:28:1375:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:373 | +| LogInjectionTest.java:1376:37:1376:44 | source(...) : Object | LogInjectionTest.java:1376:28:1376:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:377 | +| LogInjectionTest.java:1377:43:1377:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1377:43:1377:65 | new Object[] | provenance | Sink:MaD:373 | +| LogInjectionTest.java:1377:57:1377:64 | source(...) : Object | LogInjectionTest.java:1377:43:1377:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1378:43:1378:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1378:43:1378:65 | new Object[] | provenance | Sink:MaD:377 | +| LogInjectionTest.java:1378:57:1378:64 | source(...) : Object | LogInjectionTest.java:1378:43:1378:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1379:67:1379:74 | source(...) : Object | LogInjectionTest.java:1379:58:1379:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | +| LogInjectionTest.java:1380:52:1380:59 | source(...) : Object | LogInjectionTest.java:1380:43:1380:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | +| LogInjectionTest.java:1381:37:1381:44 | source(...) : Object | LogInjectionTest.java:1381:28:1381:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | +| LogInjectionTest.java:1382:67:1382:74 | source(...) : Object | LogInjectionTest.java:1382:58:1382:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | +| LogInjectionTest.java:1383:52:1383:59 | source(...) : Object | LogInjectionTest.java:1383:43:1383:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | +| LogInjectionTest.java:1384:37:1384:44 | source(...) : Object | LogInjectionTest.java:1384:28:1384:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | +| LogInjectionTest.java:1385:82:1385:89 | source(...) : Object | LogInjectionTest.java:1385:73:1385:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1386:67:1386:74 | source(...) : Object | LogInjectionTest.java:1386:58:1386:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1387:52:1387:59 | source(...) : Object | LogInjectionTest.java:1387:43:1387:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1388:37:1388:44 | source(...) : Object | LogInjectionTest.java:1388:28:1388:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1389:82:1389:89 | source(...) : Object | LogInjectionTest.java:1389:73:1389:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1390:67:1390:74 | source(...) : Object | LogInjectionTest.java:1390:58:1390:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1391:52:1391:59 | source(...) : Object | LogInjectionTest.java:1391:43:1391:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1392:37:1392:44 | source(...) : Object | LogInjectionTest.java:1392:28:1392:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1393:52:1393:59 | source(...) : Object | LogInjectionTest.java:1393:43:1393:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | +| LogInjectionTest.java:1394:37:1394:44 | source(...) : Object | LogInjectionTest.java:1394:28:1394:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | +| LogInjectionTest.java:1395:52:1395:59 | source(...) : Object | LogInjectionTest.java:1395:43:1395:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | +| LogInjectionTest.java:1396:37:1396:44 | source(...) : Object | LogInjectionTest.java:1396:28:1396:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | +| LogInjectionTest.java:1397:37:1397:44 | source(...) : Object | LogInjectionTest.java:1397:28:1397:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:382 | +| LogInjectionTest.java:1398:37:1398:44 | source(...) : Object | LogInjectionTest.java:1398:28:1398:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:386 | +| LogInjectionTest.java:1399:43:1399:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1399:43:1399:65 | new Object[] | provenance | Sink:MaD:382 | +| LogInjectionTest.java:1399:57:1399:64 | source(...) : Object | LogInjectionTest.java:1399:43:1399:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1400:43:1400:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1400:43:1400:65 | new Object[] | provenance | Sink:MaD:386 | +| LogInjectionTest.java:1400:57:1400:64 | source(...) : Object | LogInjectionTest.java:1400:43:1400:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1401:67:1401:74 | source(...) : Object | LogInjectionTest.java:1401:58:1401:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | +| LogInjectionTest.java:1402:52:1402:59 | source(...) : Object | LogInjectionTest.java:1402:43:1402:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | +| LogInjectionTest.java:1403:37:1403:44 | source(...) : Object | LogInjectionTest.java:1403:28:1403:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | +| LogInjectionTest.java:1404:67:1404:74 | source(...) : Object | LogInjectionTest.java:1404:58:1404:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | +| LogInjectionTest.java:1405:52:1405:59 | source(...) : Object | LogInjectionTest.java:1405:43:1405:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | +| LogInjectionTest.java:1406:37:1406:44 | source(...) : Object | LogInjectionTest.java:1406:28:1406:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | +| LogInjectionTest.java:1407:82:1407:89 | source(...) : Object | LogInjectionTest.java:1407:73:1407:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1408:67:1408:74 | source(...) : Object | LogInjectionTest.java:1408:58:1408:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1409:52:1409:59 | source(...) : Object | LogInjectionTest.java:1409:43:1409:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1410:37:1410:44 | source(...) : Object | LogInjectionTest.java:1410:28:1410:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1411:82:1411:89 | source(...) : Object | LogInjectionTest.java:1411:73:1411:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1412:67:1412:74 | source(...) : Object | LogInjectionTest.java:1412:58:1412:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1413:52:1413:59 | source(...) : Object | LogInjectionTest.java:1413:43:1413:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1414:37:1414:44 | source(...) : Object | LogInjectionTest.java:1414:28:1414:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1415:51:1415:58 | source(...) : Object | LogInjectionTest.java:1415:42:1415:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | +| LogInjectionTest.java:1416:36:1416:43 | source(...) : Object | LogInjectionTest.java:1416:27:1416:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | +| LogInjectionTest.java:1417:51:1417:58 | source(...) : Object | LogInjectionTest.java:1417:42:1417:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | +| LogInjectionTest.java:1418:36:1418:43 | source(...) : Object | LogInjectionTest.java:1418:27:1418:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | +| LogInjectionTest.java:1419:36:1419:43 | source(...) : Object | LogInjectionTest.java:1419:27:1419:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:391 | +| LogInjectionTest.java:1420:36:1420:43 | source(...) : Object | LogInjectionTest.java:1420:27:1420:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:395 | +| LogInjectionTest.java:1421:42:1421:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1421:42:1421:64 | new Object[] | provenance | Sink:MaD:391 | +| LogInjectionTest.java:1421:56:1421:63 | source(...) : Object | LogInjectionTest.java:1421:42:1421:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1422:42:1422:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1422:42:1422:64 | new Object[] | provenance | Sink:MaD:395 | +| LogInjectionTest.java:1422:56:1422:63 | source(...) : Object | LogInjectionTest.java:1422:42:1422:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1423:66:1423:73 | source(...) : Object | LogInjectionTest.java:1423:57:1423:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | +| LogInjectionTest.java:1424:51:1424:58 | source(...) : Object | LogInjectionTest.java:1424:42:1424:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | +| LogInjectionTest.java:1425:36:1425:43 | source(...) : Object | LogInjectionTest.java:1425:27:1425:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | +| LogInjectionTest.java:1426:66:1426:73 | source(...) : Object | LogInjectionTest.java:1426:57:1426:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | +| LogInjectionTest.java:1427:51:1427:58 | source(...) : Object | LogInjectionTest.java:1427:42:1427:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | +| LogInjectionTest.java:1428:36:1428:43 | source(...) : Object | LogInjectionTest.java:1428:27:1428:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | +| LogInjectionTest.java:1429:81:1429:88 | source(...) : Object | LogInjectionTest.java:1429:72:1429:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1430:66:1430:73 | source(...) : Object | LogInjectionTest.java:1430:57:1430:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1431:51:1431:58 | source(...) : Object | LogInjectionTest.java:1431:42:1431:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1432:36:1432:43 | source(...) : Object | LogInjectionTest.java:1432:27:1432:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1433:81:1433:88 | source(...) : Object | LogInjectionTest.java:1433:72:1433:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1434:66:1434:73 | source(...) : Object | LogInjectionTest.java:1434:57:1434:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1435:51:1435:58 | source(...) : Object | LogInjectionTest.java:1435:42:1435:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1436:36:1436:43 | source(...) : Object | LogInjectionTest.java:1436:27:1436:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1437:89:1437:96 | source(...) : Object | LogInjectionTest.java:1437:80:1437:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | +| LogInjectionTest.java:1438:74:1438:81 | source(...) : Object | LogInjectionTest.java:1438:65:1438:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | +| LogInjectionTest.java:1439:89:1439:96 | source(...) : Object | LogInjectionTest.java:1439:80:1439:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | +| LogInjectionTest.java:1440:74:1440:81 | source(...) : Object | LogInjectionTest.java:1440:65:1440:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | +| LogInjectionTest.java:1441:74:1441:81 | source(...) : Object | LogInjectionTest.java:1441:65:1441:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:400 | +| LogInjectionTest.java:1442:74:1442:81 | source(...) : Object | LogInjectionTest.java:1442:65:1442:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:404 | +| LogInjectionTest.java:1443:80:1443:102 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1443:80:1443:102 | new Object[] | provenance | Sink:MaD:400 | +| LogInjectionTest.java:1443:94:1443:101 | source(...) : Object | LogInjectionTest.java:1443:80:1443:102 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1444:80:1444:102 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1444:80:1444:102 | new Object[] | provenance | Sink:MaD:404 | +| LogInjectionTest.java:1444:94:1444:101 | source(...) : Object | LogInjectionTest.java:1444:80:1444:102 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1445:104:1445:111 | source(...) : Object | LogInjectionTest.java:1445:95:1445:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | +| LogInjectionTest.java:1446:89:1446:96 | source(...) : Object | LogInjectionTest.java:1446:80:1446:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | +| LogInjectionTest.java:1447:74:1447:81 | source(...) : Object | LogInjectionTest.java:1447:65:1447:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | +| LogInjectionTest.java:1448:104:1448:111 | source(...) : Object | LogInjectionTest.java:1448:95:1448:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | +| LogInjectionTest.java:1449:89:1449:96 | source(...) : Object | LogInjectionTest.java:1449:80:1449:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | +| LogInjectionTest.java:1450:74:1450:81 | source(...) : Object | LogInjectionTest.java:1450:65:1450:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | +| LogInjectionTest.java:1451:119:1451:126 | source(...) : Object | LogInjectionTest.java:1451:110:1451:126 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1452:104:1452:111 | source(...) : Object | LogInjectionTest.java:1452:95:1452:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1453:89:1453:96 | source(...) : Object | LogInjectionTest.java:1453:80:1453:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1454:74:1454:81 | source(...) : Object | LogInjectionTest.java:1454:65:1454:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1455:119:1455:126 | source(...) : Object | LogInjectionTest.java:1455:110:1455:126 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1456:104:1456:111 | source(...) : Object | LogInjectionTest.java:1456:95:1456:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1457:89:1457:96 | source(...) : Object | LogInjectionTest.java:1457:80:1457:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1458:74:1458:81 | source(...) : Object | LogInjectionTest.java:1458:65:1458:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1459:52:1459:59 | source(...) : Object | LogInjectionTest.java:1459:43:1459:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | +| LogInjectionTest.java:1460:37:1460:44 | source(...) : Object | LogInjectionTest.java:1460:28:1460:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | +| LogInjectionTest.java:1461:52:1461:59 | source(...) : Object | LogInjectionTest.java:1461:43:1461:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | +| LogInjectionTest.java:1462:37:1462:44 | source(...) : Object | LogInjectionTest.java:1462:28:1462:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | +| LogInjectionTest.java:1463:37:1463:44 | source(...) : Object | LogInjectionTest.java:1463:28:1463:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:409 | +| LogInjectionTest.java:1464:37:1464:44 | source(...) : Object | LogInjectionTest.java:1464:28:1464:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:413 | +| LogInjectionTest.java:1465:43:1465:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1465:43:1465:65 | new Object[] | provenance | Sink:MaD:409 | +| LogInjectionTest.java:1465:57:1465:64 | source(...) : Object | LogInjectionTest.java:1465:43:1465:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1466:43:1466:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1466:43:1466:65 | new Object[] | provenance | Sink:MaD:413 | +| LogInjectionTest.java:1466:57:1466:64 | source(...) : Object | LogInjectionTest.java:1466:43:1466:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1467:67:1467:74 | source(...) : Object | LogInjectionTest.java:1467:58:1467:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | +| LogInjectionTest.java:1468:52:1468:59 | source(...) : Object | LogInjectionTest.java:1468:43:1468:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | +| LogInjectionTest.java:1469:37:1469:44 | source(...) : Object | LogInjectionTest.java:1469:28:1469:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | +| LogInjectionTest.java:1470:67:1470:74 | source(...) : Object | LogInjectionTest.java:1470:58:1470:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | +| LogInjectionTest.java:1471:52:1471:59 | source(...) : Object | LogInjectionTest.java:1471:43:1471:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | +| LogInjectionTest.java:1472:37:1472:44 | source(...) : Object | LogInjectionTest.java:1472:28:1472:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | +| LogInjectionTest.java:1473:82:1473:89 | source(...) : Object | LogInjectionTest.java:1473:73:1473:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1474:67:1474:74 | source(...) : Object | LogInjectionTest.java:1474:58:1474:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1475:52:1475:59 | source(...) : Object | LogInjectionTest.java:1475:43:1475:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1476:37:1476:44 | source(...) : Object | LogInjectionTest.java:1476:28:1476:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1477:82:1477:89 | source(...) : Object | LogInjectionTest.java:1477:73:1477:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1478:67:1478:74 | source(...) : Object | LogInjectionTest.java:1478:58:1478:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1479:52:1479:59 | source(...) : Object | LogInjectionTest.java:1479:43:1479:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1480:37:1480:44 | source(...) : Object | LogInjectionTest.java:1480:28:1480:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1481:51:1481:58 | source(...) : Object | LogInjectionTest.java:1481:42:1481:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | +| LogInjectionTest.java:1482:36:1482:43 | source(...) : Object | LogInjectionTest.java:1482:27:1482:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | +| LogInjectionTest.java:1483:51:1483:58 | source(...) : Object | LogInjectionTest.java:1483:42:1483:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | +| LogInjectionTest.java:1484:36:1484:43 | source(...) : Object | LogInjectionTest.java:1484:27:1484:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | +| LogInjectionTest.java:1485:36:1485:43 | source(...) : Object | LogInjectionTest.java:1485:27:1485:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:418 | +| LogInjectionTest.java:1486:36:1486:43 | source(...) : Object | LogInjectionTest.java:1486:27:1486:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:422 | +| LogInjectionTest.java:1487:42:1487:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1487:42:1487:64 | new Object[] | provenance | Sink:MaD:418 | +| LogInjectionTest.java:1487:56:1487:63 | source(...) : Object | LogInjectionTest.java:1487:42:1487:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1488:42:1488:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1488:42:1488:64 | new Object[] | provenance | Sink:MaD:422 | +| LogInjectionTest.java:1488:56:1488:63 | source(...) : Object | LogInjectionTest.java:1488:42:1488:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1489:66:1489:73 | source(...) : Object | LogInjectionTest.java:1489:57:1489:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | +| LogInjectionTest.java:1490:51:1490:58 | source(...) : Object | LogInjectionTest.java:1490:42:1490:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | +| LogInjectionTest.java:1491:36:1491:43 | source(...) : Object | LogInjectionTest.java:1491:27:1491:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | +| LogInjectionTest.java:1492:66:1492:73 | source(...) : Object | LogInjectionTest.java:1492:57:1492:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | +| LogInjectionTest.java:1493:51:1493:58 | source(...) : Object | LogInjectionTest.java:1493:42:1493:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | +| LogInjectionTest.java:1494:36:1494:43 | source(...) : Object | LogInjectionTest.java:1494:27:1494:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | +| LogInjectionTest.java:1495:81:1495:88 | source(...) : Object | LogInjectionTest.java:1495:72:1495:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1496:66:1496:73 | source(...) : Object | LogInjectionTest.java:1496:57:1496:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1497:51:1497:58 | source(...) : Object | LogInjectionTest.java:1497:42:1497:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1498:36:1498:43 | source(...) : Object | LogInjectionTest.java:1498:27:1498:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1499:81:1499:88 | source(...) : Object | LogInjectionTest.java:1499:72:1499:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1500:66:1500:73 | source(...) : Object | LogInjectionTest.java:1500:57:1500:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1501:51:1501:58 | source(...) : Object | LogInjectionTest.java:1501:42:1501:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1502:36:1502:43 | source(...) : Object | LogInjectionTest.java:1502:27:1502:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1514:56:1514:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1514:56:1514:78 | new Object[] | provenance | Sink:MaD:360 | +| LogInjectionTest.java:1514:56:1514:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1514:56:1514:78 | new Object[] | provenance | Sink:MaD:423 | +| LogInjectionTest.java:1514:70:1514:77 | source(...) : Object | LogInjectionTest.java:1514:56:1514:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1522:56:1522:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1522:56:1522:78 | new Object[] | provenance | Sink:MaD:369 | +| LogInjectionTest.java:1522:56:1522:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1522:56:1522:78 | new Object[] | provenance | Sink:MaD:432 | +| LogInjectionTest.java:1522:70:1522:77 | source(...) : Object | LogInjectionTest.java:1522:56:1522:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1530:56:1530:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1530:56:1530:78 | new Object[] | provenance | Sink:MaD:378 | +| LogInjectionTest.java:1530:56:1530:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1530:56:1530:78 | new Object[] | provenance | Sink:MaD:441 | +| LogInjectionTest.java:1530:70:1530:77 | source(...) : Object | LogInjectionTest.java:1530:56:1530:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1538:55:1538:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1538:55:1538:77 | new Object[] | provenance | Sink:MaD:387 | +| LogInjectionTest.java:1538:55:1538:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1538:55:1538:77 | new Object[] | provenance | Sink:MaD:450 | +| LogInjectionTest.java:1538:69:1538:76 | source(...) : Object | LogInjectionTest.java:1538:55:1538:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1546:56:1546:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1546:56:1546:78 | new Object[] | provenance | Sink:MaD:405 | +| LogInjectionTest.java:1546:56:1546:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1546:56:1546:78 | new Object[] | provenance | Sink:MaD:468 | +| LogInjectionTest.java:1546:70:1546:77 | source(...) : Object | LogInjectionTest.java:1546:56:1546:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1554:55:1554:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1554:55:1554:77 | new Object[] | provenance | Sink:MaD:414 | +| LogInjectionTest.java:1554:55:1554:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1554:55:1554:77 | new Object[] | provenance | Sink:MaD:477 | +| LogInjectionTest.java:1554:69:1554:76 | source(...) : Object | LogInjectionTest.java:1554:55:1554:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1563:93:1563:115 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1563:93:1563:115 | new Object[] | provenance | Sink:MaD:396 | +| LogInjectionTest.java:1563:93:1563:115 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1563:93:1563:115 | new Object[] | provenance | Sink:MaD:459 | +| LogInjectionTest.java:1563:107:1563:114 | source(...) : Object | LogInjectionTest.java:1563:93:1563:115 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1564:51:1564:58 | source(...) : Object | LogInjectionTest.java:1564:42:1564:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | +| LogInjectionTest.java:1564:51:1564:58 | source(...) : Object | LogInjectionTest.java:1564:42:1564:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:424 | +| LogInjectionTest.java:1565:36:1565:43 | source(...) : Object | LogInjectionTest.java:1565:27:1565:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | +| LogInjectionTest.java:1565:36:1565:43 | source(...) : Object | LogInjectionTest.java:1565:27:1565:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:424 | +| LogInjectionTest.java:1566:51:1566:58 | source(...) : Object | LogInjectionTest.java:1566:42:1566:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | +| LogInjectionTest.java:1566:51:1566:58 | source(...) : Object | LogInjectionTest.java:1566:42:1566:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:428 | +| LogInjectionTest.java:1567:36:1567:43 | source(...) : Object | LogInjectionTest.java:1567:27:1567:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | +| LogInjectionTest.java:1567:36:1567:43 | source(...) : Object | LogInjectionTest.java:1567:27:1567:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:428 | +| LogInjectionTest.java:1568:36:1568:43 | source(...) : Object | LogInjectionTest.java:1568:27:1568:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:364 | +| LogInjectionTest.java:1568:36:1568:43 | source(...) : Object | LogInjectionTest.java:1568:27:1568:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:427 | +| LogInjectionTest.java:1569:36:1569:43 | source(...) : Object | LogInjectionTest.java:1569:27:1569:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:368 | +| LogInjectionTest.java:1569:36:1569:43 | source(...) : Object | LogInjectionTest.java:1569:27:1569:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:431 | +| LogInjectionTest.java:1570:42:1570:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1570:42:1570:64 | new Object[] | provenance | Sink:MaD:364 | +| LogInjectionTest.java:1570:42:1570:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1570:42:1570:64 | new Object[] | provenance | Sink:MaD:427 | +| LogInjectionTest.java:1570:56:1570:63 | source(...) : Object | LogInjectionTest.java:1570:42:1570:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1571:42:1571:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1571:42:1571:64 | new Object[] | provenance | Sink:MaD:368 | +| LogInjectionTest.java:1571:42:1571:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1571:42:1571:64 | new Object[] | provenance | Sink:MaD:431 | +| LogInjectionTest.java:1571:56:1571:63 | source(...) : Object | LogInjectionTest.java:1571:42:1571:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1572:66:1572:73 | source(...) : Object | LogInjectionTest.java:1572:57:1572:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | +| LogInjectionTest.java:1572:66:1572:73 | source(...) : Object | LogInjectionTest.java:1572:57:1572:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:425 | +| LogInjectionTest.java:1573:51:1573:58 | source(...) : Object | LogInjectionTest.java:1573:42:1573:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | +| LogInjectionTest.java:1573:51:1573:58 | source(...) : Object | LogInjectionTest.java:1573:42:1573:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:425 | +| LogInjectionTest.java:1574:36:1574:43 | source(...) : Object | LogInjectionTest.java:1574:27:1574:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | +| LogInjectionTest.java:1574:36:1574:43 | source(...) : Object | LogInjectionTest.java:1574:27:1574:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:425 | +| LogInjectionTest.java:1575:66:1575:73 | source(...) : Object | LogInjectionTest.java:1575:57:1575:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | +| LogInjectionTest.java:1575:66:1575:73 | source(...) : Object | LogInjectionTest.java:1575:57:1575:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:429 | +| LogInjectionTest.java:1576:51:1576:58 | source(...) : Object | LogInjectionTest.java:1576:42:1576:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | +| LogInjectionTest.java:1576:51:1576:58 | source(...) : Object | LogInjectionTest.java:1576:42:1576:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:429 | +| LogInjectionTest.java:1577:36:1577:43 | source(...) : Object | LogInjectionTest.java:1577:27:1577:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | +| LogInjectionTest.java:1577:36:1577:43 | source(...) : Object | LogInjectionTest.java:1577:27:1577:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:429 | +| LogInjectionTest.java:1578:81:1578:88 | source(...) : Object | LogInjectionTest.java:1578:72:1578:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1578:81:1578:88 | source(...) : Object | LogInjectionTest.java:1578:72:1578:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | +| LogInjectionTest.java:1579:66:1579:73 | source(...) : Object | LogInjectionTest.java:1579:57:1579:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1579:66:1579:73 | source(...) : Object | LogInjectionTest.java:1579:57:1579:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | +| LogInjectionTest.java:1580:51:1580:58 | source(...) : Object | LogInjectionTest.java:1580:42:1580:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1580:51:1580:58 | source(...) : Object | LogInjectionTest.java:1580:42:1580:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | +| LogInjectionTest.java:1581:36:1581:43 | source(...) : Object | LogInjectionTest.java:1581:27:1581:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1581:36:1581:43 | source(...) : Object | LogInjectionTest.java:1581:27:1581:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | +| LogInjectionTest.java:1582:81:1582:88 | source(...) : Object | LogInjectionTest.java:1582:72:1582:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1582:81:1582:88 | source(...) : Object | LogInjectionTest.java:1582:72:1582:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | +| LogInjectionTest.java:1583:66:1583:73 | source(...) : Object | LogInjectionTest.java:1583:57:1583:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1583:66:1583:73 | source(...) : Object | LogInjectionTest.java:1583:57:1583:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | +| LogInjectionTest.java:1584:51:1584:58 | source(...) : Object | LogInjectionTest.java:1584:42:1584:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1584:51:1584:58 | source(...) : Object | LogInjectionTest.java:1584:42:1584:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | +| LogInjectionTest.java:1585:36:1585:43 | source(...) : Object | LogInjectionTest.java:1585:27:1585:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1585:36:1585:43 | source(...) : Object | LogInjectionTest.java:1585:27:1585:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | +| LogInjectionTest.java:1586:51:1586:58 | source(...) : Object | LogInjectionTest.java:1586:42:1586:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | +| LogInjectionTest.java:1586:51:1586:58 | source(...) : Object | LogInjectionTest.java:1586:42:1586:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:433 | +| LogInjectionTest.java:1587:36:1587:43 | source(...) : Object | LogInjectionTest.java:1587:27:1587:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | +| LogInjectionTest.java:1587:36:1587:43 | source(...) : Object | LogInjectionTest.java:1587:27:1587:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:433 | +| LogInjectionTest.java:1588:51:1588:58 | source(...) : Object | LogInjectionTest.java:1588:42:1588:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | +| LogInjectionTest.java:1588:51:1588:58 | source(...) : Object | LogInjectionTest.java:1588:42:1588:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:437 | +| LogInjectionTest.java:1589:36:1589:43 | source(...) : Object | LogInjectionTest.java:1589:27:1589:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | +| LogInjectionTest.java:1589:36:1589:43 | source(...) : Object | LogInjectionTest.java:1589:27:1589:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:437 | +| LogInjectionTest.java:1590:36:1590:43 | source(...) : Object | LogInjectionTest.java:1590:27:1590:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:373 | +| LogInjectionTest.java:1590:36:1590:43 | source(...) : Object | LogInjectionTest.java:1590:27:1590:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:436 | +| LogInjectionTest.java:1591:36:1591:43 | source(...) : Object | LogInjectionTest.java:1591:27:1591:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:377 | +| LogInjectionTest.java:1591:36:1591:43 | source(...) : Object | LogInjectionTest.java:1591:27:1591:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:440 | +| LogInjectionTest.java:1592:42:1592:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1592:42:1592:64 | new Object[] | provenance | Sink:MaD:373 | +| LogInjectionTest.java:1592:42:1592:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1592:42:1592:64 | new Object[] | provenance | Sink:MaD:436 | +| LogInjectionTest.java:1592:56:1592:63 | source(...) : Object | LogInjectionTest.java:1592:42:1592:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1593:42:1593:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1593:42:1593:64 | new Object[] | provenance | Sink:MaD:377 | +| LogInjectionTest.java:1593:42:1593:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1593:42:1593:64 | new Object[] | provenance | Sink:MaD:440 | +| LogInjectionTest.java:1593:56:1593:63 | source(...) : Object | LogInjectionTest.java:1593:42:1593:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1594:66:1594:73 | source(...) : Object | LogInjectionTest.java:1594:57:1594:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | +| LogInjectionTest.java:1594:66:1594:73 | source(...) : Object | LogInjectionTest.java:1594:57:1594:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:434 | +| LogInjectionTest.java:1595:51:1595:58 | source(...) : Object | LogInjectionTest.java:1595:42:1595:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | +| LogInjectionTest.java:1595:51:1595:58 | source(...) : Object | LogInjectionTest.java:1595:42:1595:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:434 | +| LogInjectionTest.java:1596:36:1596:43 | source(...) : Object | LogInjectionTest.java:1596:27:1596:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | +| LogInjectionTest.java:1596:36:1596:43 | source(...) : Object | LogInjectionTest.java:1596:27:1596:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:434 | +| LogInjectionTest.java:1597:66:1597:73 | source(...) : Object | LogInjectionTest.java:1597:57:1597:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | +| LogInjectionTest.java:1597:66:1597:73 | source(...) : Object | LogInjectionTest.java:1597:57:1597:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:438 | +| LogInjectionTest.java:1598:51:1598:58 | source(...) : Object | LogInjectionTest.java:1598:42:1598:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | +| LogInjectionTest.java:1598:51:1598:58 | source(...) : Object | LogInjectionTest.java:1598:42:1598:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:438 | +| LogInjectionTest.java:1599:36:1599:43 | source(...) : Object | LogInjectionTest.java:1599:27:1599:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | +| LogInjectionTest.java:1599:36:1599:43 | source(...) : Object | LogInjectionTest.java:1599:27:1599:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:438 | +| LogInjectionTest.java:1600:81:1600:88 | source(...) : Object | LogInjectionTest.java:1600:72:1600:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1600:81:1600:88 | source(...) : Object | LogInjectionTest.java:1600:72:1600:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | +| LogInjectionTest.java:1601:66:1601:73 | source(...) : Object | LogInjectionTest.java:1601:57:1601:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1601:66:1601:73 | source(...) : Object | LogInjectionTest.java:1601:57:1601:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | +| LogInjectionTest.java:1602:51:1602:58 | source(...) : Object | LogInjectionTest.java:1602:42:1602:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1602:51:1602:58 | source(...) : Object | LogInjectionTest.java:1602:42:1602:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | +| LogInjectionTest.java:1603:36:1603:43 | source(...) : Object | LogInjectionTest.java:1603:27:1603:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1603:36:1603:43 | source(...) : Object | LogInjectionTest.java:1603:27:1603:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | +| LogInjectionTest.java:1604:81:1604:88 | source(...) : Object | LogInjectionTest.java:1604:72:1604:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1604:81:1604:88 | source(...) : Object | LogInjectionTest.java:1604:72:1604:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | +| LogInjectionTest.java:1605:66:1605:73 | source(...) : Object | LogInjectionTest.java:1605:57:1605:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1605:66:1605:73 | source(...) : Object | LogInjectionTest.java:1605:57:1605:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | +| LogInjectionTest.java:1606:51:1606:58 | source(...) : Object | LogInjectionTest.java:1606:42:1606:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1606:51:1606:58 | source(...) : Object | LogInjectionTest.java:1606:42:1606:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | +| LogInjectionTest.java:1607:36:1607:43 | source(...) : Object | LogInjectionTest.java:1607:27:1607:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1607:36:1607:43 | source(...) : Object | LogInjectionTest.java:1607:27:1607:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | +| LogInjectionTest.java:1608:51:1608:58 | source(...) : Object | LogInjectionTest.java:1608:42:1608:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | +| LogInjectionTest.java:1608:51:1608:58 | source(...) : Object | LogInjectionTest.java:1608:42:1608:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:442 | +| LogInjectionTest.java:1609:36:1609:43 | source(...) : Object | LogInjectionTest.java:1609:27:1609:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | +| LogInjectionTest.java:1609:36:1609:43 | source(...) : Object | LogInjectionTest.java:1609:27:1609:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:442 | +| LogInjectionTest.java:1610:51:1610:58 | source(...) : Object | LogInjectionTest.java:1610:42:1610:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | +| LogInjectionTest.java:1610:51:1610:58 | source(...) : Object | LogInjectionTest.java:1610:42:1610:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:446 | +| LogInjectionTest.java:1611:36:1611:43 | source(...) : Object | LogInjectionTest.java:1611:27:1611:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | +| LogInjectionTest.java:1611:36:1611:43 | source(...) : Object | LogInjectionTest.java:1611:27:1611:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:446 | +| LogInjectionTest.java:1612:36:1612:43 | source(...) : Object | LogInjectionTest.java:1612:27:1612:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:382 | +| LogInjectionTest.java:1612:36:1612:43 | source(...) : Object | LogInjectionTest.java:1612:27:1612:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:445 | +| LogInjectionTest.java:1613:36:1613:43 | source(...) : Object | LogInjectionTest.java:1613:27:1613:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:386 | +| LogInjectionTest.java:1613:36:1613:43 | source(...) : Object | LogInjectionTest.java:1613:27:1613:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:449 | +| LogInjectionTest.java:1614:42:1614:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1614:42:1614:64 | new Object[] | provenance | Sink:MaD:382 | +| LogInjectionTest.java:1614:42:1614:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1614:42:1614:64 | new Object[] | provenance | Sink:MaD:445 | +| LogInjectionTest.java:1614:56:1614:63 | source(...) : Object | LogInjectionTest.java:1614:42:1614:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1615:42:1615:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1615:42:1615:64 | new Object[] | provenance | Sink:MaD:386 | +| LogInjectionTest.java:1615:42:1615:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1615:42:1615:64 | new Object[] | provenance | Sink:MaD:449 | +| LogInjectionTest.java:1615:56:1615:63 | source(...) : Object | LogInjectionTest.java:1615:42:1615:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1616:66:1616:73 | source(...) : Object | LogInjectionTest.java:1616:57:1616:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | +| LogInjectionTest.java:1616:66:1616:73 | source(...) : Object | LogInjectionTest.java:1616:57:1616:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:443 | +| LogInjectionTest.java:1617:51:1617:58 | source(...) : Object | LogInjectionTest.java:1617:42:1617:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | +| LogInjectionTest.java:1617:51:1617:58 | source(...) : Object | LogInjectionTest.java:1617:42:1617:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:443 | +| LogInjectionTest.java:1618:36:1618:43 | source(...) : Object | LogInjectionTest.java:1618:27:1618:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | +| LogInjectionTest.java:1618:36:1618:43 | source(...) : Object | LogInjectionTest.java:1618:27:1618:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:443 | +| LogInjectionTest.java:1619:66:1619:73 | source(...) : Object | LogInjectionTest.java:1619:57:1619:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | +| LogInjectionTest.java:1619:66:1619:73 | source(...) : Object | LogInjectionTest.java:1619:57:1619:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:447 | +| LogInjectionTest.java:1620:51:1620:58 | source(...) : Object | LogInjectionTest.java:1620:42:1620:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | +| LogInjectionTest.java:1620:51:1620:58 | source(...) : Object | LogInjectionTest.java:1620:42:1620:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:447 | +| LogInjectionTest.java:1621:36:1621:43 | source(...) : Object | LogInjectionTest.java:1621:27:1621:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | +| LogInjectionTest.java:1621:36:1621:43 | source(...) : Object | LogInjectionTest.java:1621:27:1621:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:447 | +| LogInjectionTest.java:1622:81:1622:88 | source(...) : Object | LogInjectionTest.java:1622:72:1622:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1622:81:1622:88 | source(...) : Object | LogInjectionTest.java:1622:72:1622:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | +| LogInjectionTest.java:1623:66:1623:73 | source(...) : Object | LogInjectionTest.java:1623:57:1623:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1623:66:1623:73 | source(...) : Object | LogInjectionTest.java:1623:57:1623:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | +| LogInjectionTest.java:1624:51:1624:58 | source(...) : Object | LogInjectionTest.java:1624:42:1624:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1624:51:1624:58 | source(...) : Object | LogInjectionTest.java:1624:42:1624:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | +| LogInjectionTest.java:1625:36:1625:43 | source(...) : Object | LogInjectionTest.java:1625:27:1625:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1625:36:1625:43 | source(...) : Object | LogInjectionTest.java:1625:27:1625:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | +| LogInjectionTest.java:1626:81:1626:88 | source(...) : Object | LogInjectionTest.java:1626:72:1626:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1626:81:1626:88 | source(...) : Object | LogInjectionTest.java:1626:72:1626:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | +| LogInjectionTest.java:1627:66:1627:73 | source(...) : Object | LogInjectionTest.java:1627:57:1627:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1627:66:1627:73 | source(...) : Object | LogInjectionTest.java:1627:57:1627:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | +| LogInjectionTest.java:1628:51:1628:58 | source(...) : Object | LogInjectionTest.java:1628:42:1628:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1628:51:1628:58 | source(...) : Object | LogInjectionTest.java:1628:42:1628:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | +| LogInjectionTest.java:1629:36:1629:43 | source(...) : Object | LogInjectionTest.java:1629:27:1629:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1629:36:1629:43 | source(...) : Object | LogInjectionTest.java:1629:27:1629:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | +| LogInjectionTest.java:1630:50:1630:57 | source(...) : Object | LogInjectionTest.java:1630:41:1630:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | +| LogInjectionTest.java:1630:50:1630:57 | source(...) : Object | LogInjectionTest.java:1630:41:1630:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:451 | +| LogInjectionTest.java:1631:35:1631:42 | source(...) : Object | LogInjectionTest.java:1631:26:1631:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | +| LogInjectionTest.java:1631:35:1631:42 | source(...) : Object | LogInjectionTest.java:1631:26:1631:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:451 | +| LogInjectionTest.java:1632:50:1632:57 | source(...) : Object | LogInjectionTest.java:1632:41:1632:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | +| LogInjectionTest.java:1632:50:1632:57 | source(...) : Object | LogInjectionTest.java:1632:41:1632:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:455 | +| LogInjectionTest.java:1633:35:1633:42 | source(...) : Object | LogInjectionTest.java:1633:26:1633:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | +| LogInjectionTest.java:1633:35:1633:42 | source(...) : Object | LogInjectionTest.java:1633:26:1633:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:455 | +| LogInjectionTest.java:1634:35:1634:42 | source(...) : Object | LogInjectionTest.java:1634:26:1634:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:391 | +| LogInjectionTest.java:1634:35:1634:42 | source(...) : Object | LogInjectionTest.java:1634:26:1634:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:454 | +| LogInjectionTest.java:1635:35:1635:42 | source(...) : Object | LogInjectionTest.java:1635:26:1635:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:395 | +| LogInjectionTest.java:1635:35:1635:42 | source(...) : Object | LogInjectionTest.java:1635:26:1635:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:458 | +| LogInjectionTest.java:1636:41:1636:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1636:41:1636:63 | new Object[] | provenance | Sink:MaD:391 | +| LogInjectionTest.java:1636:41:1636:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1636:41:1636:63 | new Object[] | provenance | Sink:MaD:454 | +| LogInjectionTest.java:1636:55:1636:62 | source(...) : Object | LogInjectionTest.java:1636:41:1636:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1637:41:1637:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1637:41:1637:63 | new Object[] | provenance | Sink:MaD:395 | +| LogInjectionTest.java:1637:41:1637:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1637:41:1637:63 | new Object[] | provenance | Sink:MaD:458 | +| LogInjectionTest.java:1637:55:1637:62 | source(...) : Object | LogInjectionTest.java:1637:41:1637:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1638:65:1638:72 | source(...) : Object | LogInjectionTest.java:1638:56:1638:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | +| LogInjectionTest.java:1638:65:1638:72 | source(...) : Object | LogInjectionTest.java:1638:56:1638:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:452 | +| LogInjectionTest.java:1639:50:1639:57 | source(...) : Object | LogInjectionTest.java:1639:41:1639:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | +| LogInjectionTest.java:1639:50:1639:57 | source(...) : Object | LogInjectionTest.java:1639:41:1639:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:452 | +| LogInjectionTest.java:1640:35:1640:42 | source(...) : Object | LogInjectionTest.java:1640:26:1640:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | +| LogInjectionTest.java:1640:35:1640:42 | source(...) : Object | LogInjectionTest.java:1640:26:1640:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:452 | +| LogInjectionTest.java:1641:65:1641:72 | source(...) : Object | LogInjectionTest.java:1641:56:1641:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | +| LogInjectionTest.java:1641:65:1641:72 | source(...) : Object | LogInjectionTest.java:1641:56:1641:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:456 | +| LogInjectionTest.java:1642:50:1642:57 | source(...) : Object | LogInjectionTest.java:1642:41:1642:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | +| LogInjectionTest.java:1642:50:1642:57 | source(...) : Object | LogInjectionTest.java:1642:41:1642:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:456 | +| LogInjectionTest.java:1643:35:1643:42 | source(...) : Object | LogInjectionTest.java:1643:26:1643:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | +| LogInjectionTest.java:1643:35:1643:42 | source(...) : Object | LogInjectionTest.java:1643:26:1643:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:456 | +| LogInjectionTest.java:1644:80:1644:87 | source(...) : Object | LogInjectionTest.java:1644:71:1644:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1644:80:1644:87 | source(...) : Object | LogInjectionTest.java:1644:71:1644:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | +| LogInjectionTest.java:1645:65:1645:72 | source(...) : Object | LogInjectionTest.java:1645:56:1645:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1645:65:1645:72 | source(...) : Object | LogInjectionTest.java:1645:56:1645:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | +| LogInjectionTest.java:1646:50:1646:57 | source(...) : Object | LogInjectionTest.java:1646:41:1646:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1646:50:1646:57 | source(...) : Object | LogInjectionTest.java:1646:41:1646:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | +| LogInjectionTest.java:1647:35:1647:42 | source(...) : Object | LogInjectionTest.java:1647:26:1647:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1647:35:1647:42 | source(...) : Object | LogInjectionTest.java:1647:26:1647:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | +| LogInjectionTest.java:1648:80:1648:87 | source(...) : Object | LogInjectionTest.java:1648:71:1648:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1648:80:1648:87 | source(...) : Object | LogInjectionTest.java:1648:71:1648:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | +| LogInjectionTest.java:1649:65:1649:72 | source(...) : Object | LogInjectionTest.java:1649:56:1649:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1649:65:1649:72 | source(...) : Object | LogInjectionTest.java:1649:56:1649:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | +| LogInjectionTest.java:1650:50:1650:57 | source(...) : Object | LogInjectionTest.java:1650:41:1650:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1650:50:1650:57 | source(...) : Object | LogInjectionTest.java:1650:41:1650:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | +| LogInjectionTest.java:1651:35:1651:42 | source(...) : Object | LogInjectionTest.java:1651:26:1651:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1651:35:1651:42 | source(...) : Object | LogInjectionTest.java:1651:26:1651:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | +| LogInjectionTest.java:1652:88:1652:95 | source(...) : Object | LogInjectionTest.java:1652:79:1652:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | +| LogInjectionTest.java:1652:88:1652:95 | source(...) : Object | LogInjectionTest.java:1652:79:1652:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:460 | +| LogInjectionTest.java:1653:73:1653:80 | source(...) : Object | LogInjectionTest.java:1653:64:1653:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | +| LogInjectionTest.java:1653:73:1653:80 | source(...) : Object | LogInjectionTest.java:1653:64:1653:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:460 | +| LogInjectionTest.java:1654:88:1654:95 | source(...) : Object | LogInjectionTest.java:1654:79:1654:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | +| LogInjectionTest.java:1654:88:1654:95 | source(...) : Object | LogInjectionTest.java:1654:79:1654:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:464 | +| LogInjectionTest.java:1655:73:1655:80 | source(...) : Object | LogInjectionTest.java:1655:64:1655:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | +| LogInjectionTest.java:1655:73:1655:80 | source(...) : Object | LogInjectionTest.java:1655:64:1655:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:464 | +| LogInjectionTest.java:1656:73:1656:80 | source(...) : Object | LogInjectionTest.java:1656:64:1656:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:400 | +| LogInjectionTest.java:1656:73:1656:80 | source(...) : Object | LogInjectionTest.java:1656:64:1656:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:463 | +| LogInjectionTest.java:1657:73:1657:80 | source(...) : Object | LogInjectionTest.java:1657:64:1657:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:404 | +| LogInjectionTest.java:1657:73:1657:80 | source(...) : Object | LogInjectionTest.java:1657:64:1657:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:467 | +| LogInjectionTest.java:1658:79:1658:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1658:79:1658:101 | new Object[] | provenance | Sink:MaD:400 | +| LogInjectionTest.java:1658:79:1658:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1658:79:1658:101 | new Object[] | provenance | Sink:MaD:463 | +| LogInjectionTest.java:1658:93:1658:100 | source(...) : Object | LogInjectionTest.java:1658:79:1658:101 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1659:79:1659:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1659:79:1659:101 | new Object[] | provenance | Sink:MaD:404 | +| LogInjectionTest.java:1659:79:1659:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1659:79:1659:101 | new Object[] | provenance | Sink:MaD:467 | +| LogInjectionTest.java:1659:93:1659:100 | source(...) : Object | LogInjectionTest.java:1659:79:1659:101 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1660:103:1660:110 | source(...) : Object | LogInjectionTest.java:1660:94:1660:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | +| LogInjectionTest.java:1660:103:1660:110 | source(...) : Object | LogInjectionTest.java:1660:94:1660:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:461 | +| LogInjectionTest.java:1661:88:1661:95 | source(...) : Object | LogInjectionTest.java:1661:79:1661:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | +| LogInjectionTest.java:1661:88:1661:95 | source(...) : Object | LogInjectionTest.java:1661:79:1661:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:461 | +| LogInjectionTest.java:1662:73:1662:80 | source(...) : Object | LogInjectionTest.java:1662:64:1662:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | +| LogInjectionTest.java:1662:73:1662:80 | source(...) : Object | LogInjectionTest.java:1662:64:1662:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:461 | +| LogInjectionTest.java:1663:103:1663:110 | source(...) : Object | LogInjectionTest.java:1663:94:1663:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | +| LogInjectionTest.java:1663:103:1663:110 | source(...) : Object | LogInjectionTest.java:1663:94:1663:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:465 | +| LogInjectionTest.java:1664:88:1664:95 | source(...) : Object | LogInjectionTest.java:1664:79:1664:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | +| LogInjectionTest.java:1664:88:1664:95 | source(...) : Object | LogInjectionTest.java:1664:79:1664:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:465 | +| LogInjectionTest.java:1665:73:1665:80 | source(...) : Object | LogInjectionTest.java:1665:64:1665:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | +| LogInjectionTest.java:1665:73:1665:80 | source(...) : Object | LogInjectionTest.java:1665:64:1665:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:465 | +| LogInjectionTest.java:1666:118:1666:125 | source(...) : Object | LogInjectionTest.java:1666:109:1666:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1666:118:1666:125 | source(...) : Object | LogInjectionTest.java:1666:109:1666:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | +| LogInjectionTest.java:1667:103:1667:110 | source(...) : Object | LogInjectionTest.java:1667:94:1667:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1667:103:1667:110 | source(...) : Object | LogInjectionTest.java:1667:94:1667:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | +| LogInjectionTest.java:1668:88:1668:95 | source(...) : Object | LogInjectionTest.java:1668:79:1668:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1668:88:1668:95 | source(...) : Object | LogInjectionTest.java:1668:79:1668:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | +| LogInjectionTest.java:1669:73:1669:80 | source(...) : Object | LogInjectionTest.java:1669:64:1669:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1669:73:1669:80 | source(...) : Object | LogInjectionTest.java:1669:64:1669:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | +| LogInjectionTest.java:1670:118:1670:125 | source(...) : Object | LogInjectionTest.java:1670:109:1670:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1670:118:1670:125 | source(...) : Object | LogInjectionTest.java:1670:109:1670:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | +| LogInjectionTest.java:1671:103:1671:110 | source(...) : Object | LogInjectionTest.java:1671:94:1671:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1671:103:1671:110 | source(...) : Object | LogInjectionTest.java:1671:94:1671:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | +| LogInjectionTest.java:1672:88:1672:95 | source(...) : Object | LogInjectionTest.java:1672:79:1672:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1672:88:1672:95 | source(...) : Object | LogInjectionTest.java:1672:79:1672:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | +| LogInjectionTest.java:1673:73:1673:80 | source(...) : Object | LogInjectionTest.java:1673:64:1673:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1673:73:1673:80 | source(...) : Object | LogInjectionTest.java:1673:64:1673:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | +| LogInjectionTest.java:1674:51:1674:58 | source(...) : Object | LogInjectionTest.java:1674:42:1674:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | +| LogInjectionTest.java:1674:51:1674:58 | source(...) : Object | LogInjectionTest.java:1674:42:1674:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:469 | +| LogInjectionTest.java:1675:36:1675:43 | source(...) : Object | LogInjectionTest.java:1675:27:1675:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | +| LogInjectionTest.java:1675:36:1675:43 | source(...) : Object | LogInjectionTest.java:1675:27:1675:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:469 | +| LogInjectionTest.java:1676:51:1676:58 | source(...) : Object | LogInjectionTest.java:1676:42:1676:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | +| LogInjectionTest.java:1676:51:1676:58 | source(...) : Object | LogInjectionTest.java:1676:42:1676:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:473 | +| LogInjectionTest.java:1677:36:1677:43 | source(...) : Object | LogInjectionTest.java:1677:27:1677:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | +| LogInjectionTest.java:1677:36:1677:43 | source(...) : Object | LogInjectionTest.java:1677:27:1677:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:473 | +| LogInjectionTest.java:1678:36:1678:43 | source(...) : Object | LogInjectionTest.java:1678:27:1678:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:409 | +| LogInjectionTest.java:1678:36:1678:43 | source(...) : Object | LogInjectionTest.java:1678:27:1678:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:472 | +| LogInjectionTest.java:1679:36:1679:43 | source(...) : Object | LogInjectionTest.java:1679:27:1679:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:413 | +| LogInjectionTest.java:1679:36:1679:43 | source(...) : Object | LogInjectionTest.java:1679:27:1679:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:476 | +| LogInjectionTest.java:1680:42:1680:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1680:42:1680:64 | new Object[] | provenance | Sink:MaD:409 | +| LogInjectionTest.java:1680:42:1680:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1680:42:1680:64 | new Object[] | provenance | Sink:MaD:472 | +| LogInjectionTest.java:1680:56:1680:63 | source(...) : Object | LogInjectionTest.java:1680:42:1680:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1681:42:1681:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1681:42:1681:64 | new Object[] | provenance | Sink:MaD:413 | +| LogInjectionTest.java:1681:42:1681:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1681:42:1681:64 | new Object[] | provenance | Sink:MaD:476 | +| LogInjectionTest.java:1681:56:1681:63 | source(...) : Object | LogInjectionTest.java:1681:42:1681:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1682:66:1682:73 | source(...) : Object | LogInjectionTest.java:1682:57:1682:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | +| LogInjectionTest.java:1682:66:1682:73 | source(...) : Object | LogInjectionTest.java:1682:57:1682:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:470 | +| LogInjectionTest.java:1683:51:1683:58 | source(...) : Object | LogInjectionTest.java:1683:42:1683:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | +| LogInjectionTest.java:1683:51:1683:58 | source(...) : Object | LogInjectionTest.java:1683:42:1683:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:470 | +| LogInjectionTest.java:1684:36:1684:43 | source(...) : Object | LogInjectionTest.java:1684:27:1684:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | +| LogInjectionTest.java:1684:36:1684:43 | source(...) : Object | LogInjectionTest.java:1684:27:1684:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:470 | +| LogInjectionTest.java:1685:66:1685:73 | source(...) : Object | LogInjectionTest.java:1685:57:1685:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | +| LogInjectionTest.java:1685:66:1685:73 | source(...) : Object | LogInjectionTest.java:1685:57:1685:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:474 | +| LogInjectionTest.java:1686:51:1686:58 | source(...) : Object | LogInjectionTest.java:1686:42:1686:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | +| LogInjectionTest.java:1686:51:1686:58 | source(...) : Object | LogInjectionTest.java:1686:42:1686:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:474 | +| LogInjectionTest.java:1687:36:1687:43 | source(...) : Object | LogInjectionTest.java:1687:27:1687:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | +| LogInjectionTest.java:1687:36:1687:43 | source(...) : Object | LogInjectionTest.java:1687:27:1687:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:474 | +| LogInjectionTest.java:1688:81:1688:88 | source(...) : Object | LogInjectionTest.java:1688:72:1688:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1688:81:1688:88 | source(...) : Object | LogInjectionTest.java:1688:72:1688:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | +| LogInjectionTest.java:1689:66:1689:73 | source(...) : Object | LogInjectionTest.java:1689:57:1689:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1689:66:1689:73 | source(...) : Object | LogInjectionTest.java:1689:57:1689:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | +| LogInjectionTest.java:1690:51:1690:58 | source(...) : Object | LogInjectionTest.java:1690:42:1690:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1690:51:1690:58 | source(...) : Object | LogInjectionTest.java:1690:42:1690:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | +| LogInjectionTest.java:1691:36:1691:43 | source(...) : Object | LogInjectionTest.java:1691:27:1691:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1691:36:1691:43 | source(...) : Object | LogInjectionTest.java:1691:27:1691:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | +| LogInjectionTest.java:1692:81:1692:88 | source(...) : Object | LogInjectionTest.java:1692:72:1692:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1692:81:1692:88 | source(...) : Object | LogInjectionTest.java:1692:72:1692:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | +| LogInjectionTest.java:1693:66:1693:73 | source(...) : Object | LogInjectionTest.java:1693:57:1693:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1693:66:1693:73 | source(...) : Object | LogInjectionTest.java:1693:57:1693:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | +| LogInjectionTest.java:1694:51:1694:58 | source(...) : Object | LogInjectionTest.java:1694:42:1694:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1694:51:1694:58 | source(...) : Object | LogInjectionTest.java:1694:42:1694:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | +| LogInjectionTest.java:1695:36:1695:43 | source(...) : Object | LogInjectionTest.java:1695:27:1695:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1695:36:1695:43 | source(...) : Object | LogInjectionTest.java:1695:27:1695:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | +| LogInjectionTest.java:1696:50:1696:57 | source(...) : Object | LogInjectionTest.java:1696:41:1696:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | +| LogInjectionTest.java:1696:50:1696:57 | source(...) : Object | LogInjectionTest.java:1696:41:1696:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:478 | +| LogInjectionTest.java:1697:35:1697:42 | source(...) : Object | LogInjectionTest.java:1697:26:1697:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | +| LogInjectionTest.java:1697:35:1697:42 | source(...) : Object | LogInjectionTest.java:1697:26:1697:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:478 | +| LogInjectionTest.java:1698:50:1698:57 | source(...) : Object | LogInjectionTest.java:1698:41:1698:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | +| LogInjectionTest.java:1698:50:1698:57 | source(...) : Object | LogInjectionTest.java:1698:41:1698:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:482 | +| LogInjectionTest.java:1699:35:1699:42 | source(...) : Object | LogInjectionTest.java:1699:26:1699:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | +| LogInjectionTest.java:1699:35:1699:42 | source(...) : Object | LogInjectionTest.java:1699:26:1699:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:482 | +| LogInjectionTest.java:1700:35:1700:42 | source(...) : Object | LogInjectionTest.java:1700:26:1700:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:418 | +| LogInjectionTest.java:1700:35:1700:42 | source(...) : Object | LogInjectionTest.java:1700:26:1700:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:481 | +| LogInjectionTest.java:1701:35:1701:42 | source(...) : Object | LogInjectionTest.java:1701:26:1701:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:422 | +| LogInjectionTest.java:1701:35:1701:42 | source(...) : Object | LogInjectionTest.java:1701:26:1701:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:485 | +| LogInjectionTest.java:1702:41:1702:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1702:41:1702:63 | new Object[] | provenance | Sink:MaD:418 | +| LogInjectionTest.java:1702:41:1702:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1702:41:1702:63 | new Object[] | provenance | Sink:MaD:481 | +| LogInjectionTest.java:1702:55:1702:62 | source(...) : Object | LogInjectionTest.java:1702:41:1702:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1703:41:1703:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1703:41:1703:63 | new Object[] | provenance | Sink:MaD:422 | +| LogInjectionTest.java:1703:41:1703:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1703:41:1703:63 | new Object[] | provenance | Sink:MaD:485 | +| LogInjectionTest.java:1703:55:1703:62 | source(...) : Object | LogInjectionTest.java:1703:41:1703:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1704:65:1704:72 | source(...) : Object | LogInjectionTest.java:1704:56:1704:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | +| LogInjectionTest.java:1704:65:1704:72 | source(...) : Object | LogInjectionTest.java:1704:56:1704:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:479 | +| LogInjectionTest.java:1705:50:1705:57 | source(...) : Object | LogInjectionTest.java:1705:41:1705:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | +| LogInjectionTest.java:1705:50:1705:57 | source(...) : Object | LogInjectionTest.java:1705:41:1705:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:479 | +| LogInjectionTest.java:1706:35:1706:42 | source(...) : Object | LogInjectionTest.java:1706:26:1706:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | +| LogInjectionTest.java:1706:35:1706:42 | source(...) : Object | LogInjectionTest.java:1706:26:1706:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:479 | +| LogInjectionTest.java:1707:65:1707:72 | source(...) : Object | LogInjectionTest.java:1707:56:1707:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | +| LogInjectionTest.java:1707:65:1707:72 | source(...) : Object | LogInjectionTest.java:1707:56:1707:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:483 | +| LogInjectionTest.java:1708:50:1708:57 | source(...) : Object | LogInjectionTest.java:1708:41:1708:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | +| LogInjectionTest.java:1708:50:1708:57 | source(...) : Object | LogInjectionTest.java:1708:41:1708:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:483 | +| LogInjectionTest.java:1709:35:1709:42 | source(...) : Object | LogInjectionTest.java:1709:26:1709:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | +| LogInjectionTest.java:1709:35:1709:42 | source(...) : Object | LogInjectionTest.java:1709:26:1709:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:483 | +| LogInjectionTest.java:1710:80:1710:87 | source(...) : Object | LogInjectionTest.java:1710:71:1710:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1710:80:1710:87 | source(...) : Object | LogInjectionTest.java:1710:71:1710:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | +| LogInjectionTest.java:1711:65:1711:72 | source(...) : Object | LogInjectionTest.java:1711:56:1711:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1711:65:1711:72 | source(...) : Object | LogInjectionTest.java:1711:56:1711:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | +| LogInjectionTest.java:1712:50:1712:57 | source(...) : Object | LogInjectionTest.java:1712:41:1712:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1712:50:1712:57 | source(...) : Object | LogInjectionTest.java:1712:41:1712:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | +| LogInjectionTest.java:1713:35:1713:42 | source(...) : Object | LogInjectionTest.java:1713:26:1713:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1713:35:1713:42 | source(...) : Object | LogInjectionTest.java:1713:26:1713:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | +| LogInjectionTest.java:1714:80:1714:87 | source(...) : Object | LogInjectionTest.java:1714:71:1714:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1714:80:1714:87 | source(...) : Object | LogInjectionTest.java:1714:71:1714:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | +| LogInjectionTest.java:1715:65:1715:72 | source(...) : Object | LogInjectionTest.java:1715:56:1715:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1715:65:1715:72 | source(...) : Object | LogInjectionTest.java:1715:56:1715:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | +| LogInjectionTest.java:1716:50:1716:57 | source(...) : Object | LogInjectionTest.java:1716:41:1716:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1716:50:1716:57 | source(...) : Object | LogInjectionTest.java:1716:41:1716:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | +| LogInjectionTest.java:1717:35:1717:42 | source(...) : Object | LogInjectionTest.java:1717:26:1717:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1717:35:1717:42 | source(...) : Object | LogInjectionTest.java:1717:26:1717:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | +| LogInjectionTest.java:1722:34:1722:41 | source(...) : Object | LogInjectionTest.java:1722:25:1722:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | +| LogInjectionTest.java:1723:34:1723:41 | source(...) : Object | LogInjectionTest.java:1723:25:1723:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | +| LogInjectionTest.java:1723:34:1723:41 | source(...) : Object | LogInjectionTest.java:1723:25:1723:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:486 | +| LogInjectionTest.java:1725:34:1725:41 | source(...) : Object | LogInjectionTest.java:1725:25:1725:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | +| LogInjectionTest.java:1725:34:1725:41 | source(...) : Object | LogInjectionTest.java:1725:25:1725:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:488 | +| LogInjectionTest.java:1726:40:1726:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1726:40:1726:62 | new Object[] | provenance | Sink:MaD:488 | +| LogInjectionTest.java:1726:54:1726:61 | source(...) : Object | LogInjectionTest.java:1726:40:1726:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1727:34:1727:41 | source(...) : Object | LogInjectionTest.java:1727:25:1727:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | +| LogInjectionTest.java:1727:34:1727:41 | source(...) : Object | LogInjectionTest.java:1727:25:1727:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:487 | +| LogInjectionTest.java:1730:55:1730:62 | source(...) : Object | LogInjectionTest.java:1730:25:1730:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | +| LogInjectionTest.java:1730:55:1730:62 | source(...) : Object | LogInjectionTest.java:1730:25:1730:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:489 | +| LogInjectionTest.java:1735:35:1735:42 | source(...) : Object | LogInjectionTest.java:1735:26:1735:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:495 | +| LogInjectionTest.java:1736:35:1736:42 | source(...) : Object | LogInjectionTest.java:1736:26:1736:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:496 | +| LogInjectionTest.java:1738:35:1738:42 | source(...) : Object | LogInjectionTest.java:1738:26:1738:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:498 | +| LogInjectionTest.java:1739:41:1739:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1739:41:1739:63 | new Object[] | provenance | Sink:MaD:498 | +| LogInjectionTest.java:1739:55:1739:62 | source(...) : Object | LogInjectionTest.java:1739:41:1739:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1740:35:1740:42 | source(...) : Object | LogInjectionTest.java:1740:26:1740:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:497 | +| LogInjectionTest.java:1743:35:1743:42 | source(...) : Object | LogInjectionTest.java:1743:26:1743:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:499 | +| LogInjectionTest.java:1744:60:1744:67 | source(...) : Object | LogInjectionTest.java:1744:51:1744:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:491 | +| LogInjectionTest.java:1745:60:1745:67 | source(...) : Object | LogInjectionTest.java:1745:51:1745:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:492 | +| LogInjectionTest.java:1747:60:1747:67 | source(...) : Object | LogInjectionTest.java:1747:51:1747:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:494 | +| LogInjectionTest.java:1748:66:1748:88 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1748:66:1748:88 | new Object[] | provenance | Sink:MaD:494 | +| LogInjectionTest.java:1748:80:1748:87 | source(...) : Object | LogInjectionTest.java:1748:66:1748:88 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1749:60:1749:67 | source(...) : Object | LogInjectionTest.java:1749:51:1749:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:493 | +| LogInjectionTest.java:1752:60:1752:67 | source(...) : Object | LogInjectionTest.java:1752:51:1752:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:494 | +| LogInjectionTest.java:1753:66:1753:73 | source(...) : Object | LogInjectionTest.java:1753:13:1753:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:494 | +| LogInjectionTest.java:1754:81:1754:88 | source(...) : Object | LogInjectionTest.java:1754:13:1754:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:494 | +| LogInjectionTest.java:1755:96:1755:103 | source(...) : Object | LogInjectionTest.java:1755:13:1755:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:494 | +| LogInjectionTest.java:1756:35:1756:42 | source(...) : Object | LogInjectionTest.java:1756:26:1756:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:504 | +| LogInjectionTest.java:1757:35:1757:42 | source(...) : Object | LogInjectionTest.java:1757:26:1757:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:505 | +| LogInjectionTest.java:1759:35:1759:42 | source(...) : Object | LogInjectionTest.java:1759:26:1759:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:507 | +| LogInjectionTest.java:1760:41:1760:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1760:41:1760:63 | new Object[] | provenance | Sink:MaD:507 | +| LogInjectionTest.java:1760:55:1760:62 | source(...) : Object | LogInjectionTest.java:1760:41:1760:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1761:35:1761:42 | source(...) : Object | LogInjectionTest.java:1761:26:1761:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:506 | +| LogInjectionTest.java:1764:35:1764:42 | source(...) : Object | LogInjectionTest.java:1764:26:1764:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:508 | +| LogInjectionTest.java:1765:60:1765:67 | source(...) : Object | LogInjectionTest.java:1765:51:1765:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:500 | +| LogInjectionTest.java:1766:60:1766:67 | source(...) : Object | LogInjectionTest.java:1766:51:1766:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:501 | +| LogInjectionTest.java:1768:60:1768:67 | source(...) : Object | LogInjectionTest.java:1768:51:1768:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:503 | +| LogInjectionTest.java:1769:66:1769:88 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1769:66:1769:88 | new Object[] | provenance | Sink:MaD:503 | +| LogInjectionTest.java:1769:80:1769:87 | source(...) : Object | LogInjectionTest.java:1769:66:1769:88 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1770:60:1770:67 | source(...) : Object | LogInjectionTest.java:1770:51:1770:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:502 | +| LogInjectionTest.java:1773:60:1773:67 | source(...) : Object | LogInjectionTest.java:1773:51:1773:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:503 | +| LogInjectionTest.java:1774:66:1774:73 | source(...) : Object | LogInjectionTest.java:1774:13:1774:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:503 | +| LogInjectionTest.java:1775:81:1775:88 | source(...) : Object | LogInjectionTest.java:1775:13:1775:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:503 | +| LogInjectionTest.java:1776:96:1776:103 | source(...) : Object | LogInjectionTest.java:1776:13:1776:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:503 | +| LogInjectionTest.java:1777:34:1777:41 | source(...) : Object | LogInjectionTest.java:1777:25:1777:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:513 | +| LogInjectionTest.java:1778:34:1778:41 | source(...) : Object | LogInjectionTest.java:1778:25:1778:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:514 | +| LogInjectionTest.java:1780:34:1780:41 | source(...) : Object | LogInjectionTest.java:1780:25:1780:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:516 | +| LogInjectionTest.java:1781:40:1781:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1781:40:1781:62 | new Object[] | provenance | Sink:MaD:516 | +| LogInjectionTest.java:1781:54:1781:61 | source(...) : Object | LogInjectionTest.java:1781:40:1781:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1782:34:1782:41 | source(...) : Object | LogInjectionTest.java:1782:25:1782:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:515 | +| LogInjectionTest.java:1785:34:1785:41 | source(...) : Object | LogInjectionTest.java:1785:25:1785:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:517 | +| LogInjectionTest.java:1786:59:1786:66 | source(...) : Object | LogInjectionTest.java:1786:50:1786:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:509 | +| LogInjectionTest.java:1787:59:1787:66 | source(...) : Object | LogInjectionTest.java:1787:50:1787:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:510 | +| LogInjectionTest.java:1789:59:1789:66 | source(...) : Object | LogInjectionTest.java:1789:50:1789:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:512 | +| LogInjectionTest.java:1790:65:1790:87 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1790:65:1790:87 | new Object[] | provenance | Sink:MaD:512 | +| LogInjectionTest.java:1790:79:1790:86 | source(...) : Object | LogInjectionTest.java:1790:65:1790:87 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1791:59:1791:66 | source(...) : Object | LogInjectionTest.java:1791:50:1791:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:511 | +| LogInjectionTest.java:1794:59:1794:66 | source(...) : Object | LogInjectionTest.java:1794:50:1794:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:512 | +| LogInjectionTest.java:1795:65:1795:72 | source(...) : Object | LogInjectionTest.java:1795:13:1795:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:512 | +| LogInjectionTest.java:1796:80:1796:87 | source(...) : Object | LogInjectionTest.java:1796:13:1796:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:512 | +| LogInjectionTest.java:1797:95:1797:102 | source(...) : Object | LogInjectionTest.java:1797:13:1797:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:512 | +| LogInjectionTest.java:1798:35:1798:42 | source(...) : Object | LogInjectionTest.java:1798:26:1798:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:522 | +| LogInjectionTest.java:1799:35:1799:42 | source(...) : Object | LogInjectionTest.java:1799:26:1799:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:523 | +| LogInjectionTest.java:1801:35:1801:42 | source(...) : Object | LogInjectionTest.java:1801:26:1801:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:525 | +| LogInjectionTest.java:1802:41:1802:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1802:41:1802:63 | new Object[] | provenance | Sink:MaD:525 | +| LogInjectionTest.java:1802:55:1802:62 | source(...) : Object | LogInjectionTest.java:1802:41:1802:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1803:35:1803:42 | source(...) : Object | LogInjectionTest.java:1803:26:1803:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:524 | +| LogInjectionTest.java:1806:35:1806:42 | source(...) : Object | LogInjectionTest.java:1806:26:1806:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:526 | +| LogInjectionTest.java:1807:60:1807:67 | source(...) : Object | LogInjectionTest.java:1807:51:1807:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:518 | +| LogInjectionTest.java:1808:60:1808:67 | source(...) : Object | LogInjectionTest.java:1808:51:1808:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:519 | +| LogInjectionTest.java:1810:60:1810:67 | source(...) : Object | LogInjectionTest.java:1810:51:1810:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:521 | +| LogInjectionTest.java:1811:66:1811:88 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1811:66:1811:88 | new Object[] | provenance | Sink:MaD:521 | +| LogInjectionTest.java:1811:80:1811:87 | source(...) : Object | LogInjectionTest.java:1811:66:1811:88 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1812:60:1812:67 | source(...) : Object | LogInjectionTest.java:1812:51:1812:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:520 | +| LogInjectionTest.java:1815:60:1815:67 | source(...) : Object | LogInjectionTest.java:1815:51:1815:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:521 | +| LogInjectionTest.java:1816:66:1816:73 | source(...) : Object | LogInjectionTest.java:1816:13:1816:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:521 | +| LogInjectionTest.java:1817:81:1817:88 | source(...) : Object | LogInjectionTest.java:1817:13:1817:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:521 | +| LogInjectionTest.java:1818:96:1818:103 | source(...) : Object | LogInjectionTest.java:1818:13:1818:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:521 | +| LogInjectionTest.java:1819:34:1819:41 | source(...) : Object | LogInjectionTest.java:1819:25:1819:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:531 | +| LogInjectionTest.java:1820:34:1820:41 | source(...) : Object | LogInjectionTest.java:1820:25:1820:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:532 | +| LogInjectionTest.java:1822:34:1822:41 | source(...) : Object | LogInjectionTest.java:1822:25:1822:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:534 | +| LogInjectionTest.java:1823:40:1823:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1823:40:1823:62 | new Object[] | provenance | Sink:MaD:534 | +| LogInjectionTest.java:1823:54:1823:61 | source(...) : Object | LogInjectionTest.java:1823:40:1823:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1824:34:1824:41 | source(...) : Object | LogInjectionTest.java:1824:25:1824:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:533 | +| LogInjectionTest.java:1827:34:1827:41 | source(...) : Object | LogInjectionTest.java:1827:25:1827:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:535 | +| LogInjectionTest.java:1828:59:1828:66 | source(...) : Object | LogInjectionTest.java:1828:50:1828:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:527 | +| LogInjectionTest.java:1829:59:1829:66 | source(...) : Object | LogInjectionTest.java:1829:50:1829:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:528 | +| LogInjectionTest.java:1831:59:1831:66 | source(...) : Object | LogInjectionTest.java:1831:50:1831:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:530 | +| LogInjectionTest.java:1832:65:1832:87 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1832:65:1832:87 | new Object[] | provenance | Sink:MaD:530 | +| LogInjectionTest.java:1832:79:1832:86 | source(...) : Object | LogInjectionTest.java:1832:65:1832:87 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1833:59:1833:66 | source(...) : Object | LogInjectionTest.java:1833:50:1833:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:529 | +| LogInjectionTest.java:1836:59:1836:66 | source(...) : Object | LogInjectionTest.java:1836:50:1836:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:530 | +| LogInjectionTest.java:1837:65:1837:72 | source(...) : Object | LogInjectionTest.java:1837:13:1837:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:530 | +| LogInjectionTest.java:1838:80:1838:87 | source(...) : Object | LogInjectionTest.java:1838:13:1838:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:530 | +| LogInjectionTest.java:1839:95:1839:102 | source(...) : Object | LogInjectionTest.java:1839:13:1839:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:530 | +| LogInjectionTest.java:1860:37:1860:44 | source(...) : Object | LogInjectionTest.java:1860:28:1860:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:19 | +| LogInjectionTest.java:1861:43:1861:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1861:43:1861:65 | new Object[] | provenance | Sink:MaD:19 | +| LogInjectionTest.java:1861:57:1861:64 | source(...) : Object | LogInjectionTest.java:1861:43:1861:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1863:30:1863:37 | source(...) : Object | LogInjectionTest.java:1863:21:1863:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1864:45:1864:52 | source(...) : Object | LogInjectionTest.java:1864:36:1864:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:7 | +| LogInjectionTest.java:1865:30:1865:37 | source(...) : Object | LogInjectionTest.java:1865:21:1865:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1866:60:1866:67 | source(...) : Object | LogInjectionTest.java:1866:51:1866:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:8 | +| LogInjectionTest.java:1867:45:1867:52 | source(...) : Object | LogInjectionTest.java:1867:36:1867:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:8 | +| LogInjectionTest.java:1868:30:1868:37 | source(...) : Object | LogInjectionTest.java:1868:21:1868:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1869:75:1869:82 | source(...) : Object | LogInjectionTest.java:1869:66:1869:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:9 | +| LogInjectionTest.java:1870:60:1870:67 | source(...) : Object | LogInjectionTest.java:1870:51:1870:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:9 | +| LogInjectionTest.java:1871:45:1871:52 | source(...) : Object | LogInjectionTest.java:1871:36:1871:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:9 | +| LogInjectionTest.java:1872:30:1872:37 | source(...) : Object | LogInjectionTest.java:1872:21:1872:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1873:90:1873:97 | source(...) : Object | LogInjectionTest.java:1873:81:1873:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | +| LogInjectionTest.java:1874:75:1874:82 | source(...) : Object | LogInjectionTest.java:1874:66:1874:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | +| LogInjectionTest.java:1875:60:1875:67 | source(...) : Object | LogInjectionTest.java:1875:51:1875:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | +| LogInjectionTest.java:1876:45:1876:52 | source(...) : Object | LogInjectionTest.java:1876:36:1876:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | +| LogInjectionTest.java:1877:30:1877:37 | source(...) : Object | LogInjectionTest.java:1877:21:1877:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1878:105:1878:112 | source(...) : Object | LogInjectionTest.java:1878:96:1878:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | +| LogInjectionTest.java:1879:90:1879:97 | source(...) : Object | LogInjectionTest.java:1879:81:1879:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | +| LogInjectionTest.java:1880:75:1880:82 | source(...) : Object | LogInjectionTest.java:1880:66:1880:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | +| LogInjectionTest.java:1881:60:1881:67 | source(...) : Object | LogInjectionTest.java:1881:51:1881:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | +| LogInjectionTest.java:1882:45:1882:52 | source(...) : Object | LogInjectionTest.java:1882:36:1882:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | +| LogInjectionTest.java:1883:30:1883:37 | source(...) : Object | LogInjectionTest.java:1883:21:1883:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1884:120:1884:127 | source(...) : Object | LogInjectionTest.java:1884:111:1884:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | +| LogInjectionTest.java:1885:105:1885:112 | source(...) : Object | LogInjectionTest.java:1885:96:1885:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | +| LogInjectionTest.java:1886:90:1886:97 | source(...) : Object | LogInjectionTest.java:1886:81:1886:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | +| LogInjectionTest.java:1887:75:1887:82 | source(...) : Object | LogInjectionTest.java:1887:66:1887:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | +| LogInjectionTest.java:1888:60:1888:67 | source(...) : Object | LogInjectionTest.java:1888:51:1888:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | +| LogInjectionTest.java:1889:45:1889:52 | source(...) : Object | LogInjectionTest.java:1889:36:1889:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | +| LogInjectionTest.java:1890:30:1890:37 | source(...) : Object | LogInjectionTest.java:1890:21:1890:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1891:135:1891:142 | source(...) : Object | LogInjectionTest.java:1891:126:1891:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | +| LogInjectionTest.java:1892:120:1892:127 | source(...) : Object | LogInjectionTest.java:1892:111:1892:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | +| LogInjectionTest.java:1893:105:1893:112 | source(...) : Object | LogInjectionTest.java:1893:96:1893:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | +| LogInjectionTest.java:1894:90:1894:97 | source(...) : Object | LogInjectionTest.java:1894:81:1894:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | +| LogInjectionTest.java:1895:75:1895:82 | source(...) : Object | LogInjectionTest.java:1895:66:1895:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | +| LogInjectionTest.java:1896:60:1896:67 | source(...) : Object | LogInjectionTest.java:1896:51:1896:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | +| LogInjectionTest.java:1897:45:1897:52 | source(...) : Object | LogInjectionTest.java:1897:36:1897:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | +| LogInjectionTest.java:1898:30:1898:37 | source(...) : Object | LogInjectionTest.java:1898:21:1898:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1899:150:1899:157 | source(...) : Object | LogInjectionTest.java:1899:141:1899:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | +| LogInjectionTest.java:1900:135:1900:142 | source(...) : Object | LogInjectionTest.java:1900:126:1900:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | +| LogInjectionTest.java:1901:120:1901:127 | source(...) : Object | LogInjectionTest.java:1901:111:1901:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | +| LogInjectionTest.java:1902:105:1902:112 | source(...) : Object | LogInjectionTest.java:1902:96:1902:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | +| LogInjectionTest.java:1903:90:1903:97 | source(...) : Object | LogInjectionTest.java:1903:81:1903:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | +| LogInjectionTest.java:1904:75:1904:82 | source(...) : Object | LogInjectionTest.java:1904:66:1904:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | +| LogInjectionTest.java:1905:60:1905:67 | source(...) : Object | LogInjectionTest.java:1905:51:1905:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | +| LogInjectionTest.java:1906:45:1906:52 | source(...) : Object | LogInjectionTest.java:1906:36:1906:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | | LogInjectionTest.java:1907:30:1907:37 | source(...) : Object | LogInjectionTest.java:1907:21:1907:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1908:180:1908:187 | source(...) : Object | LogInjectionTest.java:1908:171:1908:187 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1909:165:1909:172 | source(...) : Object | LogInjectionTest.java:1909:156:1909:172 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1910:150:1910:157 | source(...) : Object | LogInjectionTest.java:1910:141:1910:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1911:135:1911:142 | source(...) : Object | LogInjectionTest.java:1911:126:1911:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1912:120:1912:127 | source(...) : Object | LogInjectionTest.java:1912:111:1912:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1913:105:1913:112 | source(...) : Object | LogInjectionTest.java:1913:96:1913:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1914:90:1914:97 | source(...) : Object | LogInjectionTest.java:1914:81:1914:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1915:75:1915:82 | source(...) : Object | LogInjectionTest.java:1915:66:1915:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1916:60:1916:67 | source(...) : Object | LogInjectionTest.java:1916:51:1916:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1917:45:1917:52 | source(...) : Object | LogInjectionTest.java:1917:36:1917:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1918:30:1918:37 | source(...) : Object | LogInjectionTest.java:1918:21:1918:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1919:186:1919:207 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1919:186:1919:207 | new Object[] | provenance | Sink:MaD:17 | -| LogInjectionTest.java:1919:199:1919:206 | source(...) : Object | LogInjectionTest.java:1919:186:1919:207 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1920:180:1920:187 | source(...) : Object | LogInjectionTest.java:1920:171:1920:187 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1921:165:1921:172 | source(...) : Object | LogInjectionTest.java:1921:156:1921:172 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1922:150:1922:157 | source(...) : Object | LogInjectionTest.java:1922:141:1922:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1923:135:1923:142 | source(...) : Object | LogInjectionTest.java:1923:126:1923:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1924:120:1924:127 | source(...) : Object | LogInjectionTest.java:1924:111:1924:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1925:105:1925:112 | source(...) : Object | LogInjectionTest.java:1925:96:1925:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1926:90:1926:97 | source(...) : Object | LogInjectionTest.java:1926:81:1926:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1927:75:1927:82 | source(...) : Object | LogInjectionTest.java:1927:66:1927:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1928:60:1928:67 | source(...) : Object | LogInjectionTest.java:1928:51:1928:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1929:45:1929:52 | source(...) : Object | LogInjectionTest.java:1929:36:1929:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1930:30:1930:37 | source(...) : Object | LogInjectionTest.java:1930:21:1930:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1932:30:1932:37 | source(...) : Object | LogInjectionTest.java:1932:21:1932:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1933:30:1933:37 | source(...) : Object | LogInjectionTest.java:1933:21:1933:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1934:30:1934:37 | source(...) : Object | LogInjectionTest.java:1934:21:1934:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1935:30:1935:37 | source(...) : Object | LogInjectionTest.java:1935:21:1935:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1936:30:1936:37 | source(...) : Object | LogInjectionTest.java:1936:21:1936:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1937:30:1937:37 | source(...) : Object | LogInjectionTest.java:1937:21:1937:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1939:30:1939:37 | source(...) : Object | LogInjectionTest.java:1939:21:1939:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1941:30:1941:37 | source(...) : Object | LogInjectionTest.java:1941:21:1941:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1908:165:1908:172 | source(...) : Object | LogInjectionTest.java:1908:156:1908:172 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1909:150:1909:157 | source(...) : Object | LogInjectionTest.java:1909:141:1909:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1910:135:1910:142 | source(...) : Object | LogInjectionTest.java:1910:126:1910:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1911:120:1911:127 | source(...) : Object | LogInjectionTest.java:1911:111:1911:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1912:105:1912:112 | source(...) : Object | LogInjectionTest.java:1912:96:1912:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1913:90:1913:97 | source(...) : Object | LogInjectionTest.java:1913:81:1913:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1914:75:1914:82 | source(...) : Object | LogInjectionTest.java:1914:66:1914:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1915:60:1915:67 | source(...) : Object | LogInjectionTest.java:1915:51:1915:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1916:45:1916:52 | source(...) : Object | LogInjectionTest.java:1916:36:1916:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1917:30:1917:37 | source(...) : Object | LogInjectionTest.java:1917:21:1917:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1918:180:1918:187 | source(...) : Object | LogInjectionTest.java:1918:171:1918:187 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1919:165:1919:172 | source(...) : Object | LogInjectionTest.java:1919:156:1919:172 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1920:150:1920:157 | source(...) : Object | LogInjectionTest.java:1920:141:1920:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1921:135:1921:142 | source(...) : Object | LogInjectionTest.java:1921:126:1921:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1922:120:1922:127 | source(...) : Object | LogInjectionTest.java:1922:111:1922:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1923:105:1923:112 | source(...) : Object | LogInjectionTest.java:1923:96:1923:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1924:90:1924:97 | source(...) : Object | LogInjectionTest.java:1924:81:1924:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1925:75:1925:82 | source(...) : Object | LogInjectionTest.java:1925:66:1925:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1926:60:1926:67 | source(...) : Object | LogInjectionTest.java:1926:51:1926:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1927:45:1927:52 | source(...) : Object | LogInjectionTest.java:1927:36:1927:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1928:30:1928:37 | source(...) : Object | LogInjectionTest.java:1928:21:1928:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1929:186:1929:207 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1929:186:1929:207 | new Object[] | provenance | Sink:MaD:17 | +| LogInjectionTest.java:1929:199:1929:206 | source(...) : Object | LogInjectionTest.java:1929:186:1929:207 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1930:180:1930:187 | source(...) : Object | LogInjectionTest.java:1930:171:1930:187 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1931:165:1931:172 | source(...) : Object | LogInjectionTest.java:1931:156:1931:172 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1932:150:1932:157 | source(...) : Object | LogInjectionTest.java:1932:141:1932:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1933:135:1933:142 | source(...) : Object | LogInjectionTest.java:1933:126:1933:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1934:120:1934:127 | source(...) : Object | LogInjectionTest.java:1934:111:1934:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1935:105:1935:112 | source(...) : Object | LogInjectionTest.java:1935:96:1935:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1936:90:1936:97 | source(...) : Object | LogInjectionTest.java:1936:81:1936:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1937:75:1937:82 | source(...) : Object | LogInjectionTest.java:1937:66:1937:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1938:60:1938:67 | source(...) : Object | LogInjectionTest.java:1938:51:1938:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1939:45:1939:52 | source(...) : Object | LogInjectionTest.java:1939:36:1939:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1940:30:1940:37 | source(...) : Object | LogInjectionTest.java:1940:21:1940:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1942:30:1942:37 | source(...) : Object | LogInjectionTest.java:1942:21:1942:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1943:30:1943:37 | source(...) : Object | LogInjectionTest.java:1943:21:1943:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1944:30:1944:37 | source(...) : Object | LogInjectionTest.java:1944:21:1944:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1945:30:1945:37 | source(...) : Object | LogInjectionTest.java:1945:21:1945:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1946:30:1946:37 | source(...) : Object | LogInjectionTest.java:1946:21:1946:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1947:30:1947:37 | source(...) : Object | LogInjectionTest.java:1947:21:1947:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1949:30:1949:37 | source(...) : Object | LogInjectionTest.java:1949:21:1949:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1951:30:1951:37 | source(...) : Object | LogInjectionTest.java:1951:21:1951:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | @@ -3741,15 +3736,10 @@ edges | LogInjectionTest.java:1965:30:1965:37 | source(...) : Object | LogInjectionTest.java:1965:21:1965:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1967:30:1967:37 | source(...) : Object | LogInjectionTest.java:1967:21:1967:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1969:30:1969:37 | source(...) : Object | LogInjectionTest.java:1969:21:1969:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1970:30:1970:37 | source(...) : Object | LogInjectionTest.java:1970:21:1970:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1971:30:1971:37 | source(...) : Object | LogInjectionTest.java:1971:21:1971:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1972:30:1972:37 | source(...) : Object | LogInjectionTest.java:1972:21:1972:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1973:30:1973:37 | source(...) : Object | LogInjectionTest.java:1973:21:1973:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1974:30:1974:37 | source(...) : Object | LogInjectionTest.java:1974:21:1974:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1975:30:1975:37 | source(...) : Object | LogInjectionTest.java:1975:21:1975:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1976:30:1976:37 | source(...) : Object | LogInjectionTest.java:1976:21:1976:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1977:30:1977:37 | source(...) : Object | LogInjectionTest.java:1977:21:1977:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1978:30:1978:37 | source(...) : Object | LogInjectionTest.java:1978:21:1978:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1979:30:1979:37 | source(...) : Object | LogInjectionTest.java:1979:21:1979:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1980:30:1980:37 | source(...) : Object | LogInjectionTest.java:1980:21:1980:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1981:30:1981:37 | source(...) : Object | LogInjectionTest.java:1981:21:1981:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | @@ -3804,101 +3794,111 @@ edges | LogInjectionTest.java:2030:30:2030:37 | source(...) : Object | LogInjectionTest.java:2030:21:2030:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:2031:30:2031:37 | source(...) : Object | LogInjectionTest.java:2031:21:2031:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:2032:30:2032:37 | source(...) : Object | LogInjectionTest.java:2032:21:2032:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:2037:36:2037:43 | source(...) : Object | LogInjectionTest.java:2037:27:2037:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:20 | -| LogInjectionTest.java:2038:57:2038:64 | source(...) : Object | LogInjectionTest.java:2038:27:2038:64 | (...)... | provenance | Src:MaD:536 Sink:MaD:20 | -| LogInjectionTest.java:2039:34:2039:41 | source(...) : Object | LogInjectionTest.java:2039:25:2039:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:26 | -| LogInjectionTest.java:2040:55:2040:62 | source(...) : Object | LogInjectionTest.java:2040:25:2040:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:26 | -| LogInjectionTest.java:2041:35:2041:42 | source(...) : Object | LogInjectionTest.java:2041:26:2041:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:27 | -| LogInjectionTest.java:2042:56:2042:63 | source(...) : Object | LogInjectionTest.java:2042:26:2042:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:27 | -| LogInjectionTest.java:2043:36:2043:43 | source(...) : Object | LogInjectionTest.java:2043:27:2043:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:28 | -| LogInjectionTest.java:2044:57:2044:64 | source(...) : Object | LogInjectionTest.java:2044:27:2044:64 | (...)... | provenance | Src:MaD:536 Sink:MaD:28 | -| LogInjectionTest.java:2045:34:2045:41 | source(...) : Object | LogInjectionTest.java:2045:25:2045:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:29 | -| LogInjectionTest.java:2046:55:2046:62 | source(...) : Object | LogInjectionTest.java:2046:25:2046:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:29 | -| LogInjectionTest.java:2047:36:2047:43 | source(...) : Object | LogInjectionTest.java:2047:27:2047:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:52 | -| LogInjectionTest.java:2048:57:2048:64 | source(...) : Object | LogInjectionTest.java:2048:27:2048:64 | (...)... | provenance | Src:MaD:536 Sink:MaD:52 | -| LogInjectionTest.java:2049:37:2049:44 | source(...) : Object | LogInjectionTest.java:2049:28:2049:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:53 | -| LogInjectionTest.java:2050:58:2050:65 | source(...) : Object | LogInjectionTest.java:2050:28:2050:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:53 | -| LogInjectionTest.java:2051:38:2051:45 | source(...) : Object | LogInjectionTest.java:2051:29:2051:45 | (...)... | provenance | Src:MaD:536 Sink:MaD:21 | -| LogInjectionTest.java:2052:53:2052:60 | source(...) : Object | LogInjectionTest.java:2052:44:2052:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:21 | -| LogInjectionTest.java:2053:38:2053:45 | source(...) : Object | LogInjectionTest.java:2053:29:2053:45 | (...)... | provenance | Src:MaD:536 Sink:MaD:22 | -| LogInjectionTest.java:2054:53:2054:60 | source(...) : Object | LogInjectionTest.java:2054:44:2054:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:22 | -| LogInjectionTest.java:2055:68:2055:75 | source(...) : Object | LogInjectionTest.java:2055:59:2055:75 | (...)... | provenance | Src:MaD:536 Sink:MaD:22 | -| LogInjectionTest.java:2056:38:2056:45 | source(...) : Object | LogInjectionTest.java:2056:29:2056:45 | (...)... | provenance | Src:MaD:536 Sink:MaD:23 | -| LogInjectionTest.java:2057:53:2057:60 | source(...) : Object | LogInjectionTest.java:2057:44:2057:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:23 | -| LogInjectionTest.java:2058:59:2058:81 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2058:59:2058:81 | new Object[] | provenance | Sink:MaD:23 | -| LogInjectionTest.java:2058:73:2058:80 | source(...) : Object | LogInjectionTest.java:2058:59:2058:81 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:2059:37:2059:44 | source(...) : Object | LogInjectionTest.java:2059:28:2059:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:24 | -| LogInjectionTest.java:2060:52:2060:59 | source(...) : Object | LogInjectionTest.java:2060:43:2060:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:24 | -| LogInjectionTest.java:2061:37:2061:44 | source(...) : Object | LogInjectionTest.java:2061:28:2061:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:25 | -| LogInjectionTest.java:2062:52:2062:59 | source(...) : Object | LogInjectionTest.java:2062:43:2062:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:25 | -| LogInjectionTest.java:2063:67:2063:74 | source(...) : Object | LogInjectionTest.java:2063:58:2063:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:25 | -| LogInjectionTest.java:2064:65:2064:72 | source(...) : Object | LogInjectionTest.java:2064:56:2064:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:30 | -| LogInjectionTest.java:2065:65:2065:72 | source(...) : Object | LogInjectionTest.java:2065:56:2065:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:31 | -| LogInjectionTest.java:2067:65:2067:72 | source(...) : Object | LogInjectionTest.java:2067:56:2067:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:32 | -| LogInjectionTest.java:2068:71:2068:92 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2068:71:2068:92 | new Object[] | provenance | Sink:MaD:32 | -| LogInjectionTest.java:2068:84:2068:91 | source(...) : Object | LogInjectionTest.java:2068:71:2068:92 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:2069:65:2069:72 | source(...) : Object | LogInjectionTest.java:2069:56:2069:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:33 | -| LogInjectionTest.java:2070:86:2070:93 | source(...) : Object | LogInjectionTest.java:2070:56:2070:93 | (...)... | provenance | Src:MaD:536 Sink:MaD:34 | -| LogInjectionTest.java:2071:104:2071:111 | source(...) : Object | LogInjectionTest.java:2071:74:2071:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:35 | -| LogInjectionTest.java:2072:36:2072:43 | source(...) : Object | LogInjectionTest.java:2072:24:2072:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:36 | -| LogInjectionTest.java:2073:66:2073:73 | source(...) : Object | LogInjectionTest.java:2073:57:2073:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:37 | -| LogInjectionTest.java:2074:81:2074:88 | source(...) : Object | LogInjectionTest.java:2074:72:2074:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:37 | -| LogInjectionTest.java:2075:96:2075:103 | source(...) : Object | LogInjectionTest.java:2075:87:2075:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:37 | -| LogInjectionTest.java:2076:66:2076:73 | source(...) : Object | LogInjectionTest.java:2076:57:2076:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:38 | -| LogInjectionTest.java:2077:81:2077:88 | source(...) : Object | LogInjectionTest.java:2077:72:2077:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:38 | -| LogInjectionTest.java:2078:96:2078:103 | source(...) : Object | LogInjectionTest.java:2078:87:2078:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:38 | -| LogInjectionTest.java:2080:66:2080:73 | source(...) : Object | LogInjectionTest.java:2080:57:2080:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:39 | -| LogInjectionTest.java:2081:81:2081:88 | source(...) : Object | LogInjectionTest.java:2081:72:2081:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:39 | -| LogInjectionTest.java:2082:96:2082:103 | source(...) : Object | LogInjectionTest.java:2082:87:2082:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:39 | -| LogInjectionTest.java:2083:102:2083:124 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2083:102:2083:124 | new Object[] | provenance | Sink:MaD:39 | -| LogInjectionTest.java:2083:116:2083:123 | source(...) : Object | LogInjectionTest.java:2083:102:2083:124 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:2084:66:2084:73 | source(...) : Object | LogInjectionTest.java:2084:57:2084:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:40 | -| LogInjectionTest.java:2085:81:2085:88 | source(...) : Object | LogInjectionTest.java:2085:72:2085:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:40 | -| LogInjectionTest.java:2086:96:2086:103 | source(...) : Object | LogInjectionTest.java:2086:87:2086:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:40 | -| LogInjectionTest.java:2087:66:2087:73 | source(...) : Object | LogInjectionTest.java:2087:57:2087:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:41 | -| LogInjectionTest.java:2088:81:2088:88 | source(...) : Object | LogInjectionTest.java:2088:72:2088:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:41 | -| LogInjectionTest.java:2089:117:2089:124 | source(...) : Object | LogInjectionTest.java:2089:87:2089:124 | (...)... | provenance | Src:MaD:536 Sink:MaD:41 | -| LogInjectionTest.java:2090:66:2090:73 | source(...) : Object | LogInjectionTest.java:2090:57:2090:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:42 | -| LogInjectionTest.java:2091:81:2091:88 | source(...) : Object | LogInjectionTest.java:2091:72:2091:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:42 | -| LogInjectionTest.java:2092:135:2092:142 | source(...) : Object | LogInjectionTest.java:2092:105:2092:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:43 | -| LogInjectionTest.java:2093:67:2093:74 | source(...) : Object | LogInjectionTest.java:2093:58:2093:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:44 | -| LogInjectionTest.java:2094:82:2094:89 | source(...) : Object | LogInjectionTest.java:2094:73:2094:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:44 | -| LogInjectionTest.java:2095:120:2095:127 | source(...) : Object | LogInjectionTest.java:2095:111:2095:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:45 | -| LogInjectionTest.java:2096:126:2096:148 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2096:126:2096:148 | new Object[] | provenance | Sink:MaD:45 | -| LogInjectionTest.java:2096:140:2096:147 | source(...) : Object | LogInjectionTest.java:2096:126:2096:148 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:2097:67:2097:74 | source(...) : Object | LogInjectionTest.java:2097:58:2097:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:46 | -| LogInjectionTest.java:2098:82:2098:89 | source(...) : Object | LogInjectionTest.java:2098:73:2098:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:46 | -| LogInjectionTest.java:2099:120:2099:127 | source(...) : Object | LogInjectionTest.java:2099:111:2099:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:47 | -| LogInjectionTest.java:2100:67:2100:74 | source(...) : Object | LogInjectionTest.java:2100:58:2100:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | -| LogInjectionTest.java:2101:82:2101:89 | source(...) : Object | LogInjectionTest.java:2101:73:2101:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | -| LogInjectionTest.java:2102:97:2102:104 | source(...) : Object | LogInjectionTest.java:2102:88:2102:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | -| LogInjectionTest.java:2103:112:2103:119 | source(...) : Object | LogInjectionTest.java:2103:103:2103:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | -| LogInjectionTest.java:2104:67:2104:74 | source(...) : Object | LogInjectionTest.java:2104:58:2104:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | -| LogInjectionTest.java:2105:82:2105:89 | source(...) : Object | LogInjectionTest.java:2105:73:2105:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | -| LogInjectionTest.java:2106:97:2106:104 | source(...) : Object | LogInjectionTest.java:2106:88:2106:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | -| LogInjectionTest.java:2107:112:2107:119 | source(...) : Object | LogInjectionTest.java:2107:103:2107:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | -| LogInjectionTest.java:2109:67:2109:74 | source(...) : Object | LogInjectionTest.java:2109:58:2109:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | -| LogInjectionTest.java:2110:82:2110:89 | source(...) : Object | LogInjectionTest.java:2110:73:2110:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | -| LogInjectionTest.java:2111:97:2111:104 | source(...) : Object | LogInjectionTest.java:2111:88:2111:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | -| LogInjectionTest.java:2112:112:2112:119 | source(...) : Object | LogInjectionTest.java:2112:103:2112:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | -| LogInjectionTest.java:2113:118:2113:140 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2113:118:2113:140 | new Object[] | provenance | Sink:MaD:50 | -| LogInjectionTest.java:2113:132:2113:139 | source(...) : Object | LogInjectionTest.java:2113:118:2113:140 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:2114:67:2114:74 | source(...) : Object | LogInjectionTest.java:2114:58:2114:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | -| LogInjectionTest.java:2115:82:2115:89 | source(...) : Object | LogInjectionTest.java:2115:73:2115:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | -| LogInjectionTest.java:2116:97:2116:104 | source(...) : Object | LogInjectionTest.java:2116:88:2116:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | -| LogInjectionTest.java:2117:112:2117:119 | source(...) : Object | LogInjectionTest.java:2117:103:2117:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | -| LogInjectionTest.java:2121:45:2121:52 | source(...) : Object | LogInjectionTest.java:2121:36:2121:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:1 | -| LogInjectionTest.java:2122:45:2122:52 | source(...) : Object | LogInjectionTest.java:2122:36:2122:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:4 | -| LogInjectionTest.java:2123:45:2123:52 | source(...) : Object | LogInjectionTest.java:2123:36:2123:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:3 | -| LogInjectionTest.java:2124:45:2124:52 | source(...) : Object | LogInjectionTest.java:2124:36:2124:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:5 | -| LogInjectionTest.java:2125:45:2125:52 | source(...) : Object | LogInjectionTest.java:2125:36:2125:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:2 | -| LogInjectionTest.java:2126:47:2126:54 | source(...) : Object | LogInjectionTest.java:2126:38:2126:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:6 | -| LogInjectionTest.java:2131:47:2131:54 | source(...) : Object | LogInjectionTest.java:2131:38:2131:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:54 | -| LogInjectionTest.java:2133:47:2133:54 | source(...) : Object | LogInjectionTest.java:2133:38:2133:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:55 | -| LogInjectionTest.java:2135:47:2135:54 | source(...) : Object | LogInjectionTest.java:2135:38:2135:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:56 | -| LogInjectionTest.java:2137:47:2137:54 | source(...) : Object | LogInjectionTest.java:2137:38:2137:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:57 | -| LogInjectionTest.java:2139:47:2139:54 | source(...) : Object | LogInjectionTest.java:2139:38:2139:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:58 | -| LogInjectionTest.java:2141:47:2141:54 | source(...) : Object | LogInjectionTest.java:2141:38:2141:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:59 | +| LogInjectionTest.java:2033:30:2033:37 | source(...) : Object | LogInjectionTest.java:2033:21:2033:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2034:30:2034:37 | source(...) : Object | LogInjectionTest.java:2034:21:2034:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2035:30:2035:37 | source(...) : Object | LogInjectionTest.java:2035:21:2035:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2036:30:2036:37 | source(...) : Object | LogInjectionTest.java:2036:21:2036:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2037:30:2037:37 | source(...) : Object | LogInjectionTest.java:2037:21:2037:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2038:30:2038:37 | source(...) : Object | LogInjectionTest.java:2038:21:2038:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2039:30:2039:37 | source(...) : Object | LogInjectionTest.java:2039:21:2039:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2040:30:2040:37 | source(...) : Object | LogInjectionTest.java:2040:21:2040:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2041:30:2041:37 | source(...) : Object | LogInjectionTest.java:2041:21:2041:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2042:30:2042:37 | source(...) : Object | LogInjectionTest.java:2042:21:2042:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2047:36:2047:43 | source(...) : Object | LogInjectionTest.java:2047:27:2047:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:20 | +| LogInjectionTest.java:2048:57:2048:64 | source(...) : Object | LogInjectionTest.java:2048:27:2048:64 | (...)... | provenance | Src:MaD:536 Sink:MaD:20 | +| LogInjectionTest.java:2049:34:2049:41 | source(...) : Object | LogInjectionTest.java:2049:25:2049:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:26 | +| LogInjectionTest.java:2050:55:2050:62 | source(...) : Object | LogInjectionTest.java:2050:25:2050:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:26 | +| LogInjectionTest.java:2051:35:2051:42 | source(...) : Object | LogInjectionTest.java:2051:26:2051:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:27 | +| LogInjectionTest.java:2052:56:2052:63 | source(...) : Object | LogInjectionTest.java:2052:26:2052:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:27 | +| LogInjectionTest.java:2053:36:2053:43 | source(...) : Object | LogInjectionTest.java:2053:27:2053:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:28 | +| LogInjectionTest.java:2054:57:2054:64 | source(...) : Object | LogInjectionTest.java:2054:27:2054:64 | (...)... | provenance | Src:MaD:536 Sink:MaD:28 | +| LogInjectionTest.java:2055:34:2055:41 | source(...) : Object | LogInjectionTest.java:2055:25:2055:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:29 | +| LogInjectionTest.java:2056:55:2056:62 | source(...) : Object | LogInjectionTest.java:2056:25:2056:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:29 | +| LogInjectionTest.java:2057:36:2057:43 | source(...) : Object | LogInjectionTest.java:2057:27:2057:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:52 | +| LogInjectionTest.java:2058:57:2058:64 | source(...) : Object | LogInjectionTest.java:2058:27:2058:64 | (...)... | provenance | Src:MaD:536 Sink:MaD:52 | +| LogInjectionTest.java:2059:37:2059:44 | source(...) : Object | LogInjectionTest.java:2059:28:2059:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:53 | +| LogInjectionTest.java:2060:58:2060:65 | source(...) : Object | LogInjectionTest.java:2060:28:2060:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:53 | +| LogInjectionTest.java:2061:38:2061:45 | source(...) : Object | LogInjectionTest.java:2061:29:2061:45 | (...)... | provenance | Src:MaD:536 Sink:MaD:21 | +| LogInjectionTest.java:2062:53:2062:60 | source(...) : Object | LogInjectionTest.java:2062:44:2062:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:21 | +| LogInjectionTest.java:2063:38:2063:45 | source(...) : Object | LogInjectionTest.java:2063:29:2063:45 | (...)... | provenance | Src:MaD:536 Sink:MaD:22 | +| LogInjectionTest.java:2064:53:2064:60 | source(...) : Object | LogInjectionTest.java:2064:44:2064:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:22 | +| LogInjectionTest.java:2065:68:2065:75 | source(...) : Object | LogInjectionTest.java:2065:59:2065:75 | (...)... | provenance | Src:MaD:536 Sink:MaD:22 | +| LogInjectionTest.java:2066:38:2066:45 | source(...) : Object | LogInjectionTest.java:2066:29:2066:45 | (...)... | provenance | Src:MaD:536 Sink:MaD:23 | +| LogInjectionTest.java:2067:53:2067:60 | source(...) : Object | LogInjectionTest.java:2067:44:2067:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:23 | +| LogInjectionTest.java:2068:59:2068:81 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2068:59:2068:81 | new Object[] | provenance | Sink:MaD:23 | +| LogInjectionTest.java:2068:73:2068:80 | source(...) : Object | LogInjectionTest.java:2068:59:2068:81 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:2069:37:2069:44 | source(...) : Object | LogInjectionTest.java:2069:28:2069:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:24 | +| LogInjectionTest.java:2070:52:2070:59 | source(...) : Object | LogInjectionTest.java:2070:43:2070:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:24 | +| LogInjectionTest.java:2071:37:2071:44 | source(...) : Object | LogInjectionTest.java:2071:28:2071:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:25 | +| LogInjectionTest.java:2072:52:2072:59 | source(...) : Object | LogInjectionTest.java:2072:43:2072:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:25 | +| LogInjectionTest.java:2073:67:2073:74 | source(...) : Object | LogInjectionTest.java:2073:58:2073:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:25 | +| LogInjectionTest.java:2074:65:2074:72 | source(...) : Object | LogInjectionTest.java:2074:56:2074:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:30 | +| LogInjectionTest.java:2075:65:2075:72 | source(...) : Object | LogInjectionTest.java:2075:56:2075:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:31 | +| LogInjectionTest.java:2077:65:2077:72 | source(...) : Object | LogInjectionTest.java:2077:56:2077:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:32 | +| LogInjectionTest.java:2078:71:2078:92 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2078:71:2078:92 | new Object[] | provenance | Sink:MaD:32 | +| LogInjectionTest.java:2078:84:2078:91 | source(...) : Object | LogInjectionTest.java:2078:71:2078:92 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:2079:65:2079:72 | source(...) : Object | LogInjectionTest.java:2079:56:2079:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:33 | +| LogInjectionTest.java:2080:86:2080:93 | source(...) : Object | LogInjectionTest.java:2080:56:2080:93 | (...)... | provenance | Src:MaD:536 Sink:MaD:34 | +| LogInjectionTest.java:2081:104:2081:111 | source(...) : Object | LogInjectionTest.java:2081:74:2081:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:35 | +| LogInjectionTest.java:2082:36:2082:43 | source(...) : Object | LogInjectionTest.java:2082:24:2082:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:36 | +| LogInjectionTest.java:2083:66:2083:73 | source(...) : Object | LogInjectionTest.java:2083:57:2083:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:37 | +| LogInjectionTest.java:2084:81:2084:88 | source(...) : Object | LogInjectionTest.java:2084:72:2084:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:37 | +| LogInjectionTest.java:2085:96:2085:103 | source(...) : Object | LogInjectionTest.java:2085:87:2085:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:37 | +| LogInjectionTest.java:2086:66:2086:73 | source(...) : Object | LogInjectionTest.java:2086:57:2086:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:38 | +| LogInjectionTest.java:2087:81:2087:88 | source(...) : Object | LogInjectionTest.java:2087:72:2087:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:38 | +| LogInjectionTest.java:2088:96:2088:103 | source(...) : Object | LogInjectionTest.java:2088:87:2088:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:38 | +| LogInjectionTest.java:2090:66:2090:73 | source(...) : Object | LogInjectionTest.java:2090:57:2090:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:39 | +| LogInjectionTest.java:2091:81:2091:88 | source(...) : Object | LogInjectionTest.java:2091:72:2091:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:39 | +| LogInjectionTest.java:2092:96:2092:103 | source(...) : Object | LogInjectionTest.java:2092:87:2092:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:39 | +| LogInjectionTest.java:2093:102:2093:124 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2093:102:2093:124 | new Object[] | provenance | Sink:MaD:39 | +| LogInjectionTest.java:2093:116:2093:123 | source(...) : Object | LogInjectionTest.java:2093:102:2093:124 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:2094:66:2094:73 | source(...) : Object | LogInjectionTest.java:2094:57:2094:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:40 | +| LogInjectionTest.java:2095:81:2095:88 | source(...) : Object | LogInjectionTest.java:2095:72:2095:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:40 | +| LogInjectionTest.java:2096:96:2096:103 | source(...) : Object | LogInjectionTest.java:2096:87:2096:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:40 | +| LogInjectionTest.java:2097:66:2097:73 | source(...) : Object | LogInjectionTest.java:2097:57:2097:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:41 | +| LogInjectionTest.java:2098:81:2098:88 | source(...) : Object | LogInjectionTest.java:2098:72:2098:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:41 | +| LogInjectionTest.java:2099:117:2099:124 | source(...) : Object | LogInjectionTest.java:2099:87:2099:124 | (...)... | provenance | Src:MaD:536 Sink:MaD:41 | +| LogInjectionTest.java:2100:66:2100:73 | source(...) : Object | LogInjectionTest.java:2100:57:2100:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:42 | +| LogInjectionTest.java:2101:81:2101:88 | source(...) : Object | LogInjectionTest.java:2101:72:2101:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:42 | +| LogInjectionTest.java:2102:135:2102:142 | source(...) : Object | LogInjectionTest.java:2102:105:2102:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:43 | +| LogInjectionTest.java:2103:67:2103:74 | source(...) : Object | LogInjectionTest.java:2103:58:2103:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:44 | +| LogInjectionTest.java:2104:82:2104:89 | source(...) : Object | LogInjectionTest.java:2104:73:2104:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:44 | +| LogInjectionTest.java:2105:120:2105:127 | source(...) : Object | LogInjectionTest.java:2105:111:2105:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:45 | +| LogInjectionTest.java:2106:126:2106:148 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2106:126:2106:148 | new Object[] | provenance | Sink:MaD:45 | +| LogInjectionTest.java:2106:140:2106:147 | source(...) : Object | LogInjectionTest.java:2106:126:2106:148 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:2107:67:2107:74 | source(...) : Object | LogInjectionTest.java:2107:58:2107:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:46 | +| LogInjectionTest.java:2108:82:2108:89 | source(...) : Object | LogInjectionTest.java:2108:73:2108:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:46 | +| LogInjectionTest.java:2109:120:2109:127 | source(...) : Object | LogInjectionTest.java:2109:111:2109:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:47 | +| LogInjectionTest.java:2110:67:2110:74 | source(...) : Object | LogInjectionTest.java:2110:58:2110:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | +| LogInjectionTest.java:2111:82:2111:89 | source(...) : Object | LogInjectionTest.java:2111:73:2111:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | +| LogInjectionTest.java:2112:97:2112:104 | source(...) : Object | LogInjectionTest.java:2112:88:2112:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | +| LogInjectionTest.java:2113:112:2113:119 | source(...) : Object | LogInjectionTest.java:2113:103:2113:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | +| LogInjectionTest.java:2114:67:2114:74 | source(...) : Object | LogInjectionTest.java:2114:58:2114:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | +| LogInjectionTest.java:2115:82:2115:89 | source(...) : Object | LogInjectionTest.java:2115:73:2115:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | +| LogInjectionTest.java:2116:97:2116:104 | source(...) : Object | LogInjectionTest.java:2116:88:2116:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | +| LogInjectionTest.java:2117:112:2117:119 | source(...) : Object | LogInjectionTest.java:2117:103:2117:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | +| LogInjectionTest.java:2119:67:2119:74 | source(...) : Object | LogInjectionTest.java:2119:58:2119:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | +| LogInjectionTest.java:2120:82:2120:89 | source(...) : Object | LogInjectionTest.java:2120:73:2120:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | +| LogInjectionTest.java:2121:97:2121:104 | source(...) : Object | LogInjectionTest.java:2121:88:2121:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | +| LogInjectionTest.java:2122:112:2122:119 | source(...) : Object | LogInjectionTest.java:2122:103:2122:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | +| LogInjectionTest.java:2123:118:2123:140 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2123:118:2123:140 | new Object[] | provenance | Sink:MaD:50 | +| LogInjectionTest.java:2123:132:2123:139 | source(...) : Object | LogInjectionTest.java:2123:118:2123:140 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:2124:67:2124:74 | source(...) : Object | LogInjectionTest.java:2124:58:2124:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | +| LogInjectionTest.java:2125:82:2125:89 | source(...) : Object | LogInjectionTest.java:2125:73:2125:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | +| LogInjectionTest.java:2126:97:2126:104 | source(...) : Object | LogInjectionTest.java:2126:88:2126:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | +| LogInjectionTest.java:2127:112:2127:119 | source(...) : Object | LogInjectionTest.java:2127:103:2127:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | +| LogInjectionTest.java:2131:45:2131:52 | source(...) : Object | LogInjectionTest.java:2131:36:2131:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:1 | +| LogInjectionTest.java:2132:45:2132:52 | source(...) : Object | LogInjectionTest.java:2132:36:2132:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:4 | +| LogInjectionTest.java:2133:45:2133:52 | source(...) : Object | LogInjectionTest.java:2133:36:2133:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:3 | +| LogInjectionTest.java:2134:45:2134:52 | source(...) : Object | LogInjectionTest.java:2134:36:2134:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:5 | +| LogInjectionTest.java:2135:45:2135:52 | source(...) : Object | LogInjectionTest.java:2135:36:2135:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:2 | +| LogInjectionTest.java:2136:47:2136:54 | source(...) : Object | LogInjectionTest.java:2136:38:2136:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:6 | +| LogInjectionTest.java:2141:47:2141:54 | source(...) : Object | LogInjectionTest.java:2141:38:2141:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:54 | +| LogInjectionTest.java:2143:47:2143:54 | source(...) : Object | LogInjectionTest.java:2143:38:2143:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:55 | +| LogInjectionTest.java:2145:47:2145:54 | source(...) : Object | LogInjectionTest.java:2145:38:2145:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:56 | +| LogInjectionTest.java:2147:47:2147:54 | source(...) : Object | LogInjectionTest.java:2147:38:2147:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:57 | +| LogInjectionTest.java:2149:47:2149:54 | source(...) : Object | LogInjectionTest.java:2149:38:2149:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:58 | +| LogInjectionTest.java:2151:47:2151:54 | source(...) : Object | LogInjectionTest.java:2151:38:2151:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:59 | models | 1 | Sink: android.util; Log; true; d; ; ; Argument[1]; log-injection; manual | | 2 | Sink: android.util; Log; true; e; ; ; Argument[1]; log-injection; manual | @@ -4439,213 +4439,193 @@ models | 537 | Summary: java.lang; String; false; replace; ; ; Argument[this]; ReturnValue; taint; manual | | 538 | Summary: java.lang; String; false; replaceAll; ; ; Argument[this]; ReturnValue; taint; manual | nodes -| LogInjectionTest.java:27:25:27:41 | (...)... : String | semmle.label | (...)... : String | -| LogInjectionTest.java:27:34:27:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:30:22:30:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:30:22:30:47 | replace(...) | semmle.label | replace(...) | -| LogInjectionTest.java:31:22:31:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:31:22:31:47 | replace(...) | semmle.label | replace(...) | -| LogInjectionTest.java:33:22:33:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:33:22:33:47 | replace(...) | semmle.label | replace(...) | -| LogInjectionTest.java:34:22:34:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:34:22:34:47 | replace(...) | semmle.label | replace(...) | -| LogInjectionTest.java:35:22:35:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:35:22:35:57 | replace(...) | semmle.label | replace(...) | -| LogInjectionTest.java:37:22:37:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:37:22:37:47 | replace(...) | semmle.label | replace(...) | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | semmle.label | (...)... : String | +| LogInjectionTest.java:35:34:35:41 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:38:22:38:27 | source : String | semmle.label | source : String | | LogInjectionTest.java:38:22:38:47 | replace(...) | semmle.label | replace(...) | -| LogInjectionTest.java:40:22:40:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:40:22:40:47 | replace(...) | semmle.label | replace(...) | +| LogInjectionTest.java:39:22:39:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:39:22:39:47 | replace(...) | semmle.label | replace(...) | | LogInjectionTest.java:41:22:41:27 | source : String | semmle.label | source : String | | LogInjectionTest.java:41:22:41:47 | replace(...) | semmle.label | replace(...) | | LogInjectionTest.java:42:22:42:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:42:22:42:45 | replace(...) | semmle.label | replace(...) | -| LogInjectionTest.java:44:22:44:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:44:22:44:50 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:42:22:42:47 | replace(...) | semmle.label | replace(...) | +| LogInjectionTest.java:43:22:43:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:43:22:43:57 | replace(...) | semmle.label | replace(...) | | LogInjectionTest.java:45:22:45:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:45:22:45:50 | replaceAll(...) | semmle.label | replaceAll(...) | -| LogInjectionTest.java:47:22:47:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:47:22:47:50 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:45:22:45:47 | replace(...) | semmle.label | replace(...) | +| LogInjectionTest.java:46:22:46:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:46:22:46:47 | replace(...) | semmle.label | replace(...) | | LogInjectionTest.java:48:22:48:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:48:22:48:50 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:48:22:48:47 | replace(...) | semmle.label | replace(...) | +| LogInjectionTest.java:49:22:49:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:49:22:49:47 | replace(...) | semmle.label | replace(...) | | LogInjectionTest.java:50:22:50:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:50:22:50:51 | replaceAll(...) | semmle.label | replaceAll(...) | -| LogInjectionTest.java:51:22:51:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:51:22:51:51 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:50:22:50:45 | replace(...) | semmle.label | replace(...) | +| LogInjectionTest.java:52:22:52:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:52:22:52:50 | replaceAll(...) | semmle.label | replaceAll(...) | | LogInjectionTest.java:53:22:53:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:53:22:53:51 | replaceAll(...) | semmle.label | replaceAll(...) | -| LogInjectionTest.java:54:22:54:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:54:22:54:51 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:53:22:53:50 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:55:22:55:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:55:22:55:50 | replaceAll(...) | semmle.label | replaceAll(...) | | LogInjectionTest.java:56:22:56:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:56:22:56:51 | replaceAll(...) | semmle.label | replaceAll(...) | -| LogInjectionTest.java:57:22:57:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:57:22:57:51 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:56:22:56:50 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:58:22:58:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:58:22:58:51 | replaceAll(...) | semmle.label | replaceAll(...) | | LogInjectionTest.java:59:22:59:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:59:22:59:57 | replaceAll(...) | semmle.label | replaceAll(...) | -| LogInjectionTest.java:60:22:60:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:60:22:60:57 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:59:22:59:51 | replaceAll(...) | semmle.label | replaceAll(...) | | LogInjectionTest.java:61:22:61:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:61:22:61:57 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:61:22:61:51 | replaceAll(...) | semmle.label | replaceAll(...) | | LogInjectionTest.java:62:22:62:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:62:22:62:57 | replaceAll(...) | semmle.label | replaceAll(...) | -| LogInjectionTest.java:63:22:63:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:63:22:63:58 | replaceAll(...) | semmle.label | replaceAll(...) | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | semmle.label | (...)... : String | -| LogInjectionTest.java:67:34:67:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:71:26:71:31 | source | semmle.label | source | -| LogInjectionTest.java:77:26:77:31 | source | semmle.label | source | -| LogInjectionTest.java:83:26:83:31 | source | semmle.label | source | -| LogInjectionTest.java:89:26:89:31 | source | semmle.label | source | -| LogInjectionTest.java:95:26:95:31 | source | semmle.label | source | -| LogInjectionTest.java:101:26:101:31 | source | semmle.label | source | -| LogInjectionTest.java:107:26:107:31 | source | semmle.label | source | -| LogInjectionTest.java:113:26:113:31 | source | semmle.label | source | -| LogInjectionTest.java:119:26:119:31 | source | semmle.label | source | -| LogInjectionTest.java:125:26:125:31 | source | semmle.label | source | +| LogInjectionTest.java:62:22:62:51 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:64:22:64:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:64:22:64:51 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:65:22:65:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:65:22:65:51 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:67:22:67:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:67:22:67:57 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:68:22:68:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:68:22:68:57 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:69:22:69:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:69:22:69:57 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:70:22:70:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:70:22:70:57 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:71:22:71:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:71:22:71:58 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | semmle.label | (...)... : String | +| LogInjectionTest.java:75:34:75:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:79:26:79:31 | source | semmle.label | source | +| LogInjectionTest.java:85:26:85:31 | source | semmle.label | source | +| LogInjectionTest.java:91:26:91:31 | source | semmle.label | source | +| LogInjectionTest.java:97:26:97:31 | source | semmle.label | source | +| LogInjectionTest.java:103:26:103:31 | source | semmle.label | source | +| LogInjectionTest.java:109:26:109:31 | source | semmle.label | source | +| LogInjectionTest.java:115:26:115:31 | source | semmle.label | source | +| LogInjectionTest.java:121:26:121:31 | source | semmle.label | source | +| LogInjectionTest.java:127:26:127:31 | source | semmle.label | source | | LogInjectionTest.java:133:26:133:31 | source | semmle.label | source | -| LogInjectionTest.java:139:26:139:31 | source | semmle.label | source | -| LogInjectionTest.java:145:26:145:31 | source | semmle.label | source | -| LogInjectionTest.java:151:26:151:31 | source | semmle.label | source | -| LogInjectionTest.java:157:26:157:31 | source | semmle.label | source | -| LogInjectionTest.java:163:26:163:31 | source | semmle.label | source | -| LogInjectionTest.java:167:26:167:31 | source | semmle.label | source | -| LogInjectionTest.java:169:26:169:31 | source | semmle.label | source | -| LogInjectionTest.java:173:26:173:31 | source | semmle.label | source | +| LogInjectionTest.java:141:26:141:31 | source | semmle.label | source | +| LogInjectionTest.java:147:26:147:31 | source | semmle.label | source | +| LogInjectionTest.java:153:26:153:31 | source | semmle.label | source | +| LogInjectionTest.java:159:26:159:31 | source | semmle.label | source | +| LogInjectionTest.java:165:26:165:31 | source | semmle.label | source | +| LogInjectionTest.java:171:26:171:31 | source | semmle.label | source | | LogInjectionTest.java:175:26:175:31 | source | semmle.label | source | -| LogInjectionTest.java:179:26:179:31 | source | semmle.label | source | -| LogInjectionTest.java:185:26:185:31 | source | semmle.label | source | -| LogInjectionTest.java:195:39:195:55 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:195:48:195:55 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:196:28:196:35 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:197:28:197:35 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:198:28:198:35 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:199:28:199:35 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:200:28:200:35 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:201:28:201:35 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:202:44:202:51 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:203:27:203:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:204:27:204:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:205:41:205:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:205:41:205:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:205:55:205:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:206:32:206:39 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:207:32:207:39 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:208:38:208:45 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:209:27:209:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:210:27:210:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:215:26:215:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:215:41:215:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:216:26:216:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:216:41:216:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:217:41:217:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:217:56:217:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:218:41:218:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:218:56:218:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:219:41:219:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:219:51:219:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:220:41:220:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:220:59:220:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:221:41:221:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:221:59:221:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:222:41:222:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:223:41:223:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:223:50:223:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:224:41:224:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:224:50:224:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:225:56:225:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:225:56:225:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:225:70:225:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:226:56:226:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:226:65:226:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:227:41:227:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:227:50:227:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:228:71:228:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:228:80:228:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:229:56:229:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:229:65:229:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:230:41:230:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:230:50:230:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:231:86:231:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:231:95:231:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:232:71:232:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:232:80:232:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:233:56:233:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:233:65:233:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:177:26:177:31 | source | semmle.label | source | +| LogInjectionTest.java:181:26:181:31 | source | semmle.label | source | +| LogInjectionTest.java:183:26:183:31 | source | semmle.label | source | +| LogInjectionTest.java:187:26:187:31 | source | semmle.label | source | +| LogInjectionTest.java:193:26:193:31 | source | semmle.label | source | +| LogInjectionTest.java:205:39:205:55 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:205:48:205:55 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:206:28:206:35 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:207:28:207:35 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:208:28:208:35 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:209:28:209:35 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:210:28:210:35 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:211:28:211:35 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:212:44:212:51 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:213:27:213:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:214:27:214:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:215:41:215:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:215:41:215:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:215:55:215:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:216:32:216:39 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:217:32:217:39 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:218:38:218:45 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:219:27:219:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:220:27:220:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:225:26:225:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:225:41:225:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:226:26:226:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:226:41:226:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:227:41:227:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:227:56:227:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:228:41:228:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:228:56:228:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:229:41:229:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:229:51:229:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:230:41:230:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:230:59:230:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:231:41:231:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:231:59:231:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:232:41:232:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:233:41:233:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:233:50:233:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:234:41:234:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:234:50:234:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:235:101:235:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:235:110:235:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:236:86:236:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:236:95:236:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:237:71:237:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:237:80:237:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:238:56:238:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:238:65:238:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:239:41:239:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:239:50:239:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:240:116:240:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:240:125:240:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:241:101:241:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:241:110:241:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:242:86:242:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:242:95:242:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:243:71:243:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:243:80:243:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:244:56:244:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:244:65:244:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:245:41:245:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:245:50:245:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:246:131:246:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:246:140:246:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:247:116:247:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:247:125:247:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:248:101:248:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:248:110:248:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:249:86:249:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:249:95:249:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:250:71:250:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:250:80:250:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:251:56:251:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:251:65:251:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:252:41:252:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:252:50:252:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:253:146:253:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:253:155:253:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:254:131:254:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:254:140:254:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:255:116:255:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:255:125:255:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:256:101:256:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:256:110:256:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:257:86:257:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:257:95:257:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:258:71:258:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:258:80:258:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:259:56:259:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:259:65:259:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:260:41:260:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:260:50:260:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:261:161:261:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:261:170:261:177 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:262:146:262:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:262:155:262:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:263:131:263:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:263:140:263:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:264:116:264:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:264:125:264:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:265:101:265:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:265:110:265:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:266:86:266:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:266:95:266:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:267:71:267:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:267:80:267:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:268:56:268:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:268:65:268:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:269:41:269:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:269:50:269:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:270:176:270:192 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:270:185:270:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:235:56:235:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:235:56:235:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:235:70:235:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:236:56:236:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:236:65:236:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:237:41:237:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:237:50:237:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:238:71:238:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:238:80:238:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:239:56:239:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:239:65:239:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:240:41:240:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:240:50:240:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:241:86:241:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:241:95:241:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:242:71:242:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:242:80:242:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:243:56:243:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:243:65:243:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:244:41:244:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:244:50:244:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:245:101:245:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:245:110:245:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:246:86:246:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:246:95:246:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:247:71:247:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:247:80:247:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:248:56:248:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:248:65:248:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:249:41:249:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:249:50:249:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:250:116:250:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:250:125:250:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:251:101:251:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:251:110:251:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:252:86:252:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:252:95:252:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:253:71:253:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:253:80:253:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:254:56:254:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:254:65:254:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:255:41:255:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:255:50:255:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:256:131:256:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:256:140:256:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:257:116:257:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:257:125:257:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:258:101:258:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:258:110:258:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:259:86:259:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:259:95:259:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:260:71:260:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:260:80:260:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:261:56:261:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:261:65:261:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:262:41:262:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:262:50:262:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:263:146:263:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:263:155:263:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:264:131:264:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:264:140:264:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:265:116:265:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:265:125:265:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:266:101:266:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:266:110:266:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:267:86:267:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:267:95:267:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:268:71:268:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:268:80:268:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:269:56:269:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:269:65:269:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:270:41:270:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:270:50:270:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:271:161:271:177 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:271:170:271:177 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:272:146:272:162 | (...)... | semmle.label | (...)... | @@ -4664,123 +4644,123 @@ nodes | LogInjectionTest.java:278:65:278:72 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:279:41:279:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:279:50:279:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:280:41:280:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:280:50:280:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:281:56:281:77 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:281:70:281:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:282:41:282:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:282:50:282:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:283:41:283:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:283:55:283:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:284:41:284:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:284:55:284:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:285:26:285:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:285:44:285:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:286:26:286:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:286:44:286:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:287:26:287:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:287:36:287:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:288:26:288:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:288:36:288:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:289:26:289:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:290:26:290:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:291:26:291:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:291:35:291:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:292:26:292:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:292:35:292:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:293:41:293:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:293:41:293:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:280:176:280:192 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:280:185:280:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:281:161:281:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:281:170:281:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:282:146:282:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:282:155:282:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:283:131:283:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:283:140:283:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:284:116:284:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:284:125:284:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:285:101:285:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:285:110:285:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:286:86:286:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:286:95:286:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:287:71:287:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:287:80:287:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:288:56:288:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:288:65:288:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:289:41:289:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:289:50:289:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:290:41:290:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:290:50:290:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:291:56:291:77 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:291:70:291:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:292:41:292:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:292:50:292:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:293:41:293:62 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:293:55:293:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:294:41:294:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:294:50:294:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:295:26:295:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:295:35:295:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:296:56:296:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:296:65:296:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:297:41:297:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:297:50:297:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:298:26:298:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:298:35:298:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:299:71:299:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:299:80:299:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:300:56:300:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:300:65:300:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:301:41:301:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:301:50:301:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:294:41:294:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:294:55:294:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:295:26:295:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:295:44:295:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:296:26:296:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:296:44:296:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:297:26:297:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:297:36:297:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:298:26:298:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:298:36:298:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:299:26:299:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:300:26:300:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:301:26:301:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:301:35:301:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:302:26:302:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:302:35:302:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:303:86:303:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:303:95:303:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:304:71:304:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:304:80:304:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:305:56:305:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:305:65:305:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:306:41:306:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:306:50:306:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:307:26:307:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:307:35:307:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:308:101:308:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:308:110:308:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:309:86:309:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:309:95:309:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:310:71:310:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:310:80:310:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:311:56:311:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:311:65:311:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:312:41:312:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:312:50:312:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:313:26:313:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:313:35:313:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:314:116:314:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:314:125:314:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:315:101:315:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:315:110:315:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:316:86:316:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:316:95:316:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:317:71:317:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:317:80:317:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:318:56:318:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:318:65:318:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:319:41:319:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:319:50:319:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:320:26:320:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:320:35:320:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:321:131:321:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:321:140:321:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:322:116:322:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:322:125:322:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:323:101:323:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:323:110:323:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:324:86:324:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:324:95:324:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:325:71:325:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:325:80:325:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:326:56:326:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:326:65:326:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:327:41:327:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:327:50:327:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:328:26:328:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:328:35:328:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:329:146:329:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:329:155:329:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:330:131:330:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:330:140:330:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:331:116:331:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:331:125:331:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:332:101:332:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:332:110:332:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:333:86:333:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:333:95:333:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:334:71:334:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:334:80:334:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:335:56:335:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:335:65:335:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:336:41:336:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:336:50:336:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:337:26:337:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:337:35:337:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:338:161:338:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:338:170:338:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:303:41:303:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:303:41:303:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:303:55:303:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:304:41:304:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:304:50:304:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:305:26:305:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:305:35:305:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:306:56:306:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:306:65:306:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:307:41:307:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:307:50:307:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:308:26:308:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:308:35:308:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:309:71:309:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:309:80:309:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:310:56:310:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:310:65:310:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:311:41:311:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:311:50:311:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:312:26:312:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:312:35:312:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:313:86:313:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:313:95:313:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:314:71:314:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:314:80:314:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:315:56:315:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:315:65:315:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:316:41:316:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:316:50:316:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:317:26:317:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:317:35:317:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:318:101:318:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:318:110:318:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:319:86:319:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:319:95:319:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:320:71:320:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:320:80:320:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:321:56:321:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:321:65:321:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:322:41:322:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:322:50:322:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:323:26:323:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:323:35:323:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:324:116:324:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:324:125:324:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:325:101:325:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:325:110:325:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:326:86:326:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:326:95:326:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:327:71:327:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:327:80:327:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:328:56:328:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:328:65:328:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:329:41:329:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:329:50:329:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:330:26:330:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:330:35:330:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:331:131:331:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:331:140:331:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:332:116:332:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:332:125:332:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:333:101:333:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:333:110:333:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:334:86:334:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:334:95:334:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:335:71:335:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:335:80:335:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:336:56:336:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:336:65:336:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:337:41:337:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:337:50:337:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:338:26:338:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:338:35:338:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:339:146:339:162 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:339:155:339:162 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:340:131:340:147 | (...)... | semmle.label | (...)... | @@ -4799,128 +4779,128 @@ nodes | LogInjectionTest.java:346:50:346:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:347:26:347:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:347:35:347:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:348:26:348:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:348:35:348:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:349:41:349:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:349:55:349:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:350:26:350:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:350:35:350:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:351:26:351:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:351:40:351:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:352:26:352:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:352:40:352:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:353:26:353:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:353:41:353:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:354:26:354:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:354:41:354:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:355:41:355:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:355:56:355:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:356:41:356:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:356:56:356:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:357:41:357:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:357:51:357:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:358:41:358:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:358:59:358:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:359:41:359:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:359:59:359:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:360:41:360:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:361:41:361:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:361:50:361:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:362:41:362:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:362:50:362:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:363:56:363:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:363:56:363:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:363:70:363:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:364:56:364:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:364:65:364:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:365:41:365:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:365:50:365:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:366:71:366:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:366:80:366:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:367:56:367:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:367:65:367:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:368:41:368:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:368:50:368:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:369:86:369:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:369:95:369:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:370:71:370:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:370:80:370:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:371:56:371:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:371:65:371:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:348:161:348:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:348:170:348:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:349:146:349:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:349:155:349:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:350:131:350:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:350:140:350:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:351:116:351:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:351:125:351:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:352:101:352:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:352:110:352:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:353:86:353:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:353:95:353:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:354:71:354:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:354:80:354:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:355:56:355:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:355:65:355:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:356:41:356:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:356:50:356:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:357:26:357:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:357:35:357:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:358:26:358:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:358:35:358:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:359:41:359:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:359:55:359:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:360:26:360:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:360:35:360:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:361:26:361:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:361:40:361:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:362:26:362:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:362:40:362:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:363:26:363:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:363:41:363:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:364:26:364:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:364:41:364:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:365:41:365:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:365:56:365:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:366:41:366:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:366:56:366:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:367:41:367:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:367:51:367:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:368:41:368:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:368:59:368:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:369:41:369:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:369:59:369:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:370:41:370:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:371:41:371:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:371:50:371:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:372:41:372:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:372:50:372:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:373:101:373:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:373:110:373:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:374:86:374:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:374:95:374:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:375:71:375:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:375:80:375:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:376:56:376:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:376:65:376:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:377:41:377:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:377:50:377:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:378:116:378:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:378:125:378:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:379:101:379:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:379:110:379:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:380:86:380:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:380:95:380:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:381:71:381:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:381:80:381:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:382:56:382:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:382:65:382:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:383:41:383:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:383:50:383:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:384:131:384:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:384:140:384:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:385:116:385:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:385:125:385:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:386:101:386:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:386:110:386:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:387:86:387:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:387:95:387:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:388:71:388:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:388:80:388:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:389:56:389:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:389:65:389:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:390:41:390:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:390:50:390:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:391:146:391:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:391:155:391:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:392:131:392:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:392:140:392:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:393:116:393:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:393:125:393:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:394:101:394:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:394:110:394:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:395:86:395:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:395:95:395:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:396:71:396:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:396:80:396:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:397:56:397:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:397:65:397:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:398:41:398:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:398:50:398:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:399:161:399:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:399:170:399:177 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:400:146:400:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:400:155:400:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:401:131:401:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:401:140:401:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:402:116:402:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:402:125:402:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:403:101:403:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:403:110:403:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:404:86:404:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:404:95:404:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:405:71:405:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:405:80:405:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:406:56:406:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:406:65:406:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:407:41:407:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:407:50:407:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:408:176:408:192 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:408:185:408:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:373:56:373:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:373:56:373:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:373:70:373:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:374:56:374:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:374:65:374:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:375:41:375:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:375:50:375:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:376:71:376:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:376:80:376:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:377:56:377:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:377:65:377:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:378:41:378:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:378:50:378:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:379:86:379:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:379:95:379:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:380:71:380:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:380:80:380:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:381:56:381:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:381:65:381:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:382:41:382:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:382:50:382:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:383:101:383:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:383:110:383:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:384:86:384:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:384:95:384:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:385:71:385:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:385:80:385:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:386:56:386:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:386:65:386:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:387:41:387:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:387:50:387:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:388:116:388:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:388:125:388:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:389:101:389:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:389:110:389:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:390:86:390:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:390:95:390:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:391:71:391:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:391:80:391:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:392:56:392:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:392:65:392:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:393:41:393:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:393:50:393:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:394:131:394:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:394:140:394:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:395:116:395:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:395:125:395:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:396:101:396:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:396:110:396:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:397:86:397:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:397:95:397:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:398:71:398:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:398:80:398:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:399:56:399:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:399:65:399:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:400:41:400:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:400:50:400:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:401:146:401:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:401:155:401:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:402:131:402:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:402:140:402:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:403:116:403:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:403:125:403:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:404:101:404:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:404:110:404:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:405:86:405:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:405:95:405:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:406:71:406:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:406:80:406:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:407:56:407:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:407:65:407:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:408:41:408:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:408:50:408:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:409:161:409:177 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:409:170:409:177 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:410:146:410:162 | (...)... | semmle.label | (...)... | @@ -4939,123 +4919,123 @@ nodes | LogInjectionTest.java:416:65:416:72 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:417:41:417:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:417:50:417:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:418:41:418:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:418:50:418:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:419:56:419:77 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:419:70:419:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:420:41:420:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:420:50:420:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:421:41:421:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:421:55:421:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:422:41:422:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:422:55:422:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:423:26:423:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:423:44:423:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:424:26:424:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:424:44:424:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:425:26:425:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:425:36:425:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:426:26:426:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:426:36:426:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:427:26:427:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:428:26:428:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:429:26:429:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:429:35:429:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:430:26:430:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:430:35:430:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:431:41:431:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:431:41:431:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:418:176:418:192 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:418:185:418:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:419:161:419:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:419:170:419:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:420:146:420:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:420:155:420:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:421:131:421:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:421:140:421:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:422:116:422:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:422:125:422:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:423:101:423:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:423:110:423:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:424:86:424:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:424:95:424:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:425:71:425:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:425:80:425:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:426:56:426:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:426:65:426:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:427:41:427:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:427:50:427:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:428:41:428:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:428:50:428:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:429:56:429:77 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:429:70:429:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:430:41:430:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:430:50:430:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:431:41:431:62 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:431:55:431:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:432:41:432:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:432:50:432:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:433:26:433:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:433:35:433:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:434:56:434:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:434:65:434:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:435:41:435:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:435:50:435:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:436:26:436:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:436:35:436:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:437:71:437:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:437:80:437:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:438:56:438:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:438:65:438:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:439:41:439:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:439:50:439:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:432:41:432:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:432:55:432:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:433:26:433:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:433:44:433:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:434:26:434:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:434:44:434:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:435:26:435:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:435:36:435:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:436:26:436:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:436:36:436:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:437:26:437:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:438:26:438:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:439:26:439:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:439:35:439:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:440:26:440:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:440:35:440:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:441:86:441:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:441:95:441:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:442:71:442:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:442:80:442:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:443:56:443:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:443:65:443:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:444:41:444:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:444:50:444:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:445:26:445:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:445:35:445:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:446:101:446:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:446:110:446:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:447:86:447:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:447:95:447:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:448:71:448:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:448:80:448:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:449:56:449:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:449:65:449:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:450:41:450:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:450:50:450:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:451:26:451:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:451:35:451:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:452:116:452:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:452:125:452:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:453:101:453:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:453:110:453:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:454:86:454:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:454:95:454:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:455:71:455:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:455:80:455:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:456:56:456:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:456:65:456:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:457:41:457:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:457:50:457:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:458:26:458:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:458:35:458:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:459:131:459:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:459:140:459:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:460:116:460:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:460:125:460:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:461:101:461:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:461:110:461:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:462:86:462:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:462:95:462:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:463:71:463:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:463:80:463:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:464:56:464:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:464:65:464:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:465:41:465:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:465:50:465:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:466:26:466:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:466:35:466:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:467:146:467:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:467:155:467:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:468:131:468:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:468:140:468:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:469:116:469:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:469:125:469:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:470:101:470:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:470:110:470:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:471:86:471:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:471:95:471:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:472:71:472:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:472:80:472:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:473:56:473:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:473:65:473:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:474:41:474:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:474:50:474:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:475:26:475:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:475:35:475:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:476:161:476:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:476:170:476:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:441:41:441:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:441:41:441:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:441:55:441:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:442:41:442:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:442:50:442:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:443:26:443:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:443:35:443:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:444:56:444:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:444:65:444:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:445:41:445:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:445:50:445:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:446:26:446:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:446:35:446:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:447:71:447:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:447:80:447:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:448:56:448:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:448:65:448:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:449:41:449:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:449:50:449:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:450:26:450:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:450:35:450:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:451:86:451:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:451:95:451:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:452:71:452:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:452:80:452:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:453:56:453:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:453:65:453:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:454:41:454:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:454:50:454:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:455:26:455:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:455:35:455:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:456:101:456:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:456:110:456:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:457:86:457:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:457:95:457:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:458:71:458:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:458:80:458:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:459:56:459:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:459:65:459:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:460:41:460:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:460:50:460:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:461:26:461:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:461:35:461:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:462:116:462:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:462:125:462:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:463:101:463:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:463:110:463:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:464:86:464:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:464:95:464:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:465:71:465:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:465:80:465:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:466:56:466:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:466:65:466:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:467:41:467:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:467:50:467:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:468:26:468:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:468:35:468:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:469:131:469:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:469:140:469:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:470:116:470:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:470:125:470:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:471:101:471:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:471:110:471:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:472:86:472:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:472:95:472:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:473:71:473:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:473:80:473:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:474:56:474:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:474:65:474:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:475:41:475:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:475:50:475:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:476:26:476:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:476:35:476:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:477:146:477:162 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:477:155:477:162 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:478:131:478:147 | (...)... | semmle.label | (...)... | @@ -5074,128 +5054,128 @@ nodes | LogInjectionTest.java:484:50:484:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:485:26:485:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:485:35:485:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:486:26:486:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:486:35:486:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:487:41:487:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:487:55:487:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:488:26:488:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:488:35:488:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:489:26:489:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:489:40:489:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:490:26:490:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:490:40:490:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:491:26:491:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:491:41:491:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:492:26:492:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:492:41:492:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:493:41:493:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:493:56:493:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:494:41:494:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:494:56:494:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:495:41:495:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:495:51:495:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:496:41:496:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:496:59:496:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:497:41:497:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:497:59:497:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:498:41:498:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:499:41:499:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:499:50:499:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:500:41:500:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:500:50:500:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:501:56:501:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:501:56:501:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:501:70:501:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:502:56:502:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:502:65:502:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:503:41:503:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:503:50:503:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:504:71:504:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:504:80:504:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:505:56:505:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:505:65:505:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:506:41:506:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:506:50:506:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:507:86:507:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:507:95:507:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:508:71:508:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:508:80:508:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:509:56:509:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:509:65:509:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:486:161:486:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:486:170:486:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:487:146:487:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:487:155:487:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:488:131:488:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:488:140:488:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:489:116:489:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:489:125:489:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:490:101:490:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:490:110:490:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:491:86:491:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:491:95:491:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:492:71:492:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:492:80:492:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:493:56:493:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:493:65:493:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:494:41:494:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:494:50:494:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:495:26:495:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:495:35:495:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:496:26:496:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:496:35:496:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:497:41:497:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:497:55:497:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:498:26:498:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:498:35:498:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:499:26:499:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:499:40:499:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:500:26:500:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:500:40:500:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:501:26:501:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:501:41:501:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:502:26:502:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:502:41:502:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:503:41:503:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:503:56:503:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:504:41:504:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:504:56:504:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:505:41:505:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:505:51:505:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:506:41:506:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:506:59:506:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:507:41:507:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:507:59:507:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:508:41:508:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:509:41:509:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:509:50:509:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:510:41:510:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:510:50:510:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:511:101:511:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:511:110:511:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:512:86:512:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:512:95:512:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:513:71:513:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:513:80:513:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:514:56:514:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:514:65:514:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:515:41:515:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:515:50:515:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:516:116:516:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:516:125:516:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:517:101:517:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:517:110:517:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:518:86:518:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:518:95:518:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:519:71:519:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:519:80:519:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:520:56:520:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:520:65:520:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:521:41:521:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:521:50:521:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:522:131:522:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:522:140:522:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:523:116:523:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:523:125:523:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:524:101:524:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:524:110:524:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:525:86:525:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:525:95:525:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:526:71:526:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:526:80:526:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:527:56:527:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:527:65:527:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:528:41:528:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:528:50:528:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:529:146:529:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:529:155:529:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:530:131:530:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:530:140:530:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:531:116:531:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:531:125:531:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:532:101:532:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:532:110:532:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:533:86:533:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:533:95:533:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:534:71:534:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:534:80:534:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:535:56:535:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:535:65:535:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:536:41:536:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:536:50:536:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:537:161:537:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:537:170:537:177 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:538:146:538:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:538:155:538:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:539:131:539:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:539:140:539:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:540:116:540:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:540:125:540:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:541:101:541:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:541:110:541:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:542:86:542:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:542:95:542:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:543:71:543:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:543:80:543:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:544:56:544:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:544:65:544:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:545:41:545:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:545:50:545:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:546:176:546:192 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:546:185:546:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:511:56:511:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:511:56:511:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:511:70:511:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:512:56:512:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:512:65:512:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:513:41:513:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:513:50:513:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:514:71:514:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:514:80:514:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:515:56:515:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:515:65:515:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:516:41:516:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:516:50:516:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:517:86:517:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:517:95:517:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:518:71:518:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:518:80:518:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:519:56:519:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:519:65:519:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:520:41:520:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:520:50:520:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:521:101:521:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:521:110:521:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:522:86:522:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:522:95:522:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:523:71:523:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:523:80:523:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:524:56:524:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:524:65:524:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:525:41:525:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:525:50:525:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:526:116:526:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:526:125:526:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:527:101:527:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:527:110:527:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:528:86:528:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:528:95:528:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:529:71:529:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:529:80:529:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:530:56:530:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:530:65:530:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:531:41:531:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:531:50:531:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:532:131:532:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:532:140:532:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:533:116:533:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:533:125:533:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:534:101:534:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:534:110:534:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:535:86:535:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:535:95:535:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:536:71:536:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:536:80:536:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:537:56:537:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:537:65:537:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:538:41:538:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:538:50:538:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:539:146:539:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:539:155:539:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:540:131:540:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:540:140:540:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:541:116:541:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:541:125:541:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:542:101:542:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:542:110:542:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:543:86:543:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:543:95:543:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:544:71:544:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:544:80:544:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:545:56:545:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:545:65:545:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:546:41:546:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:546:50:546:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:547:161:547:177 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:547:170:547:177 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:548:146:548:162 | (...)... | semmle.label | (...)... | @@ -5214,123 +5194,123 @@ nodes | LogInjectionTest.java:554:65:554:72 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:555:41:555:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:555:50:555:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:556:41:556:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:556:50:556:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:557:56:557:77 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:557:70:557:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:558:41:558:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:558:50:558:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:559:41:559:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:559:55:559:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:560:41:560:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:560:55:560:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:561:26:561:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:561:44:561:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:562:26:562:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:562:44:562:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:563:26:563:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:563:36:563:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:564:26:564:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:564:36:564:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:565:26:565:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:566:26:566:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:567:26:567:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:567:35:567:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:568:26:568:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:568:35:568:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:569:41:569:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:569:41:569:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:556:176:556:192 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:556:185:556:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:557:161:557:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:557:170:557:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:558:146:558:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:558:155:558:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:559:131:559:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:559:140:559:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:560:116:560:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:560:125:560:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:561:101:561:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:561:110:561:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:562:86:562:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:562:95:562:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:563:71:563:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:563:80:563:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:564:56:564:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:564:65:564:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:565:41:565:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:565:50:565:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:566:41:566:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:566:50:566:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:567:56:567:77 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:567:70:567:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:568:41:568:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:568:50:568:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:569:41:569:62 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:569:55:569:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:570:41:570:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:570:50:570:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:571:26:571:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:571:35:571:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:572:56:572:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:572:65:572:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:573:41:573:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:573:50:573:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:574:26:574:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:574:35:574:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:575:71:575:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:575:80:575:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:576:56:576:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:576:65:576:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:577:41:577:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:577:50:577:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:570:41:570:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:570:55:570:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:571:26:571:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:571:44:571:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:572:26:572:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:572:44:572:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:573:26:573:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:573:36:573:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:574:26:574:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:574:36:574:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:575:26:575:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:576:26:576:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:577:26:577:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:577:35:577:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:578:26:578:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:578:35:578:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:579:86:579:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:579:95:579:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:580:71:580:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:580:80:580:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:581:56:581:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:581:65:581:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:582:41:582:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:582:50:582:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:583:26:583:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:583:35:583:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:584:101:584:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:584:110:584:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:585:86:585:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:585:95:585:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:586:71:586:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:586:80:586:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:587:56:587:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:587:65:587:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:588:41:588:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:588:50:588:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:589:26:589:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:589:35:589:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:590:116:590:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:590:125:590:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:591:101:591:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:591:110:591:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:592:86:592:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:592:95:592:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:593:71:593:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:593:80:593:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:594:56:594:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:594:65:594:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:595:41:595:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:595:50:595:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:596:26:596:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:596:35:596:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:597:131:597:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:597:140:597:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:598:116:598:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:598:125:598:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:599:101:599:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:599:110:599:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:600:86:600:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:600:95:600:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:601:71:601:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:601:80:601:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:602:56:602:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:602:65:602:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:603:41:603:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:603:50:603:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:604:26:604:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:604:35:604:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:605:146:605:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:605:155:605:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:606:131:606:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:606:140:606:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:607:116:607:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:607:125:607:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:608:101:608:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:608:110:608:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:609:86:609:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:609:95:609:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:610:71:610:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:610:80:610:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:611:56:611:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:611:65:611:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:612:41:612:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:612:50:612:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:613:26:613:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:613:35:613:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:614:161:614:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:614:170:614:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:579:41:579:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:579:41:579:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:579:55:579:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:580:41:580:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:580:50:580:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:581:26:581:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:581:35:581:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:582:56:582:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:582:65:582:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:583:41:583:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:583:50:583:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:584:26:584:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:584:35:584:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:585:71:585:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:585:80:585:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:586:56:586:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:586:65:586:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:587:41:587:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:587:50:587:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:588:26:588:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:588:35:588:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:589:86:589:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:589:95:589:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:590:71:590:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:590:80:590:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:591:56:591:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:591:65:591:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:592:41:592:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:592:50:592:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:593:26:593:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:593:35:593:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:594:101:594:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:594:110:594:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:595:86:595:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:595:95:595:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:596:71:596:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:596:80:596:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:597:56:597:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:597:65:597:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:598:41:598:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:598:50:598:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:599:26:599:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:599:35:599:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:600:116:600:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:600:125:600:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:601:101:601:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:601:110:601:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:602:86:602:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:602:95:602:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:603:71:603:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:603:80:603:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:604:56:604:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:604:65:604:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:605:41:605:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:605:50:605:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:606:26:606:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:606:35:606:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:607:131:607:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:607:140:607:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:608:116:608:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:608:125:608:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:609:101:609:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:609:110:609:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:610:86:610:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:610:95:610:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:611:71:611:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:611:80:611:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:612:56:612:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:612:65:612:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:613:41:613:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:613:50:613:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:614:26:614:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:614:35:614:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:615:146:615:162 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:615:155:615:162 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:616:131:616:147 | (...)... | semmle.label | (...)... | @@ -5349,128 +5329,128 @@ nodes | LogInjectionTest.java:622:50:622:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:623:26:623:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:623:35:623:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:624:26:624:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:624:35:624:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:625:41:625:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:625:55:625:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:626:26:626:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:626:35:626:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:627:26:627:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:627:40:627:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:628:26:628:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:628:40:628:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:629:25:629:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:629:40:629:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:630:25:630:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:630:40:630:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:631:40:631:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:631:55:631:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:632:40:632:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:632:55:632:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:633:40:633:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:633:50:633:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:634:40:634:65 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:634:58:634:65 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:635:40:635:65 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:635:58:635:65 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:636:40:636:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:637:40:637:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:637:49:637:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:638:40:638:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:638:49:638:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:639:55:639:77 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:639:55:639:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:639:69:639:76 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:640:55:640:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:640:64:640:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:641:40:641:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:641:49:641:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:642:70:642:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:642:79:642:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:643:55:643:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:643:64:643:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:644:40:644:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:644:49:644:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:645:85:645:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:645:94:645:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:646:70:646:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:646:79:646:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:647:55:647:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:647:64:647:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:624:161:624:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:624:170:624:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:625:146:625:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:625:155:625:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:626:131:626:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:626:140:626:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:627:116:627:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:627:125:627:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:628:101:628:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:628:110:628:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:629:86:629:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:629:95:629:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:630:71:630:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:630:80:630:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:631:56:631:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:631:65:631:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:632:41:632:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:632:50:632:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:633:26:633:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:633:35:633:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:634:26:634:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:634:35:634:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:635:41:635:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:635:55:635:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:636:26:636:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:636:35:636:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:637:26:637:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:637:40:637:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:638:26:638:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:638:40:638:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:639:25:639:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:639:40:639:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:640:25:640:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:640:40:640:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:641:40:641:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:641:55:641:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:642:40:642:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:642:55:642:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:643:40:643:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:643:50:643:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:644:40:644:65 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:644:58:644:65 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:645:40:645:65 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:645:58:645:65 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:646:40:646:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:647:40:647:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:647:49:647:56 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:648:40:648:56 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:648:49:648:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:649:100:649:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:649:109:649:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:650:85:650:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:650:94:650:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:651:70:651:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:651:79:651:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:652:55:652:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:652:64:652:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:653:40:653:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:653:49:653:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:654:115:654:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:654:124:654:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:655:100:655:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:655:109:655:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:656:85:656:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:656:94:656:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:657:70:657:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:657:79:657:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:658:55:658:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:658:64:658:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:659:40:659:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:659:49:659:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:660:130:660:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:660:139:660:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:661:115:661:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:661:124:661:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:662:100:662:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:662:109:662:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:663:85:663:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:663:94:663:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:664:70:664:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:664:79:664:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:665:55:665:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:665:64:665:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:666:40:666:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:666:49:666:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:667:145:667:161 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:667:154:667:161 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:668:130:668:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:668:139:668:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:669:115:669:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:669:124:669:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:670:100:670:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:670:109:670:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:671:85:671:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:671:94:671:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:672:70:672:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:672:79:672:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:673:55:673:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:673:64:673:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:674:40:674:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:674:49:674:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:675:160:675:176 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:675:169:675:176 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:676:145:676:161 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:676:154:676:161 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:677:130:677:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:677:139:677:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:678:115:678:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:678:124:678:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:679:100:679:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:679:109:679:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:680:85:680:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:680:94:680:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:681:70:681:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:681:79:681:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:682:55:682:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:682:64:682:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:683:40:683:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:683:49:683:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:684:175:684:191 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:684:184:684:191 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:649:55:649:77 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:649:55:649:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:649:69:649:76 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:650:55:650:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:650:64:650:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:651:40:651:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:651:49:651:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:652:70:652:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:652:79:652:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:653:55:653:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:653:64:653:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:654:40:654:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:654:49:654:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:655:85:655:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:655:94:655:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:656:70:656:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:656:79:656:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:657:55:657:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:657:64:657:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:658:40:658:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:658:49:658:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:659:100:659:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:659:109:659:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:660:85:660:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:660:94:660:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:661:70:661:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:661:79:661:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:662:55:662:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:662:64:662:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:663:40:663:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:663:49:663:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:664:115:664:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:664:124:664:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:665:100:665:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:665:109:665:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:666:85:666:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:666:94:666:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:667:70:667:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:667:79:667:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:668:55:668:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:668:64:668:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:669:40:669:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:669:49:669:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:670:130:670:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:670:139:670:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:671:115:671:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:671:124:671:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:672:100:672:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:672:109:672:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:673:85:673:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:673:94:673:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:674:70:674:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:674:79:674:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:675:55:675:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:675:64:675:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:676:40:676:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:676:49:676:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:677:145:677:161 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:677:154:677:161 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:678:130:678:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:678:139:678:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:679:115:679:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:679:124:679:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:680:100:680:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:680:109:680:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:681:85:681:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:681:94:681:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:682:70:682:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:682:79:682:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:683:55:683:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:683:64:683:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:684:40:684:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:684:49:684:56 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:685:160:685:176 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:685:169:685:176 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:686:145:686:161 | (...)... | semmle.label | (...)... | @@ -5489,123 +5469,123 @@ nodes | LogInjectionTest.java:692:64:692:71 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:693:40:693:56 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:693:49:693:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:694:40:694:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:694:49:694:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:695:55:695:76 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:695:69:695:76 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:696:40:696:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:696:49:696:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:697:40:697:61 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:697:54:697:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:698:40:698:61 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:698:54:698:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:699:25:699:50 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:699:43:699:50 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:700:25:700:50 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:700:43:700:50 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:701:25:701:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:701:35:701:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:702:25:702:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:702:35:702:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:703:25:703:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:704:25:704:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:705:25:705:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:705:34:705:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:706:25:706:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:706:34:706:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:707:40:707:62 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:707:40:707:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:694:175:694:191 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:694:184:694:191 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:695:160:695:176 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:695:169:695:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:696:145:696:161 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:696:154:696:161 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:697:130:697:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:697:139:697:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:698:115:698:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:698:124:698:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:699:100:699:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:699:109:699:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:700:85:700:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:700:94:700:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:701:70:701:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:701:79:701:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:702:55:702:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:702:64:702:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:703:40:703:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:703:49:703:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:704:40:704:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:704:49:704:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:705:55:705:76 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:705:69:705:76 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:706:40:706:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:706:49:706:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:707:40:707:61 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:707:54:707:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:708:40:708:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:708:49:708:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:709:25:709:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:709:34:709:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:710:55:710:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:710:64:710:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:711:40:711:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:711:49:711:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:712:25:712:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:712:34:712:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:713:70:713:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:713:79:713:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:714:55:714:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:714:64:714:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:715:40:715:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:715:49:715:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:708:40:708:61 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:708:54:708:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:709:25:709:50 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:709:43:709:50 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:710:25:710:50 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:710:43:710:50 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:711:25:711:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:711:35:711:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:712:25:712:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:712:35:712:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:713:25:713:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:714:25:714:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:715:25:715:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:715:34:715:41 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:716:25:716:41 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:716:34:716:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:717:85:717:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:717:94:717:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:718:70:718:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:718:79:718:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:719:55:719:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:719:64:719:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:720:40:720:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:720:49:720:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:721:25:721:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:721:34:721:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:722:100:722:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:722:109:722:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:723:85:723:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:723:94:723:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:724:70:724:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:724:79:724:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:725:55:725:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:725:64:725:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:726:40:726:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:726:49:726:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:727:25:727:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:727:34:727:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:728:115:728:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:728:124:728:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:729:100:729:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:729:109:729:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:730:85:730:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:730:94:730:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:731:70:731:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:731:79:731:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:732:55:732:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:732:64:732:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:733:40:733:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:733:49:733:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:734:25:734:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:734:34:734:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:735:130:735:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:735:139:735:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:736:115:736:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:736:124:736:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:737:100:737:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:737:109:737:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:738:85:738:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:738:94:738:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:739:70:739:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:739:79:739:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:740:55:740:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:740:64:740:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:741:40:741:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:741:49:741:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:742:25:742:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:742:34:742:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:743:145:743:161 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:743:154:743:161 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:744:130:744:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:744:139:744:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:745:115:745:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:745:124:745:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:746:100:746:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:746:109:746:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:747:85:747:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:747:94:747:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:748:70:748:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:748:79:748:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:749:55:749:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:749:64:749:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:750:40:750:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:750:49:750:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:751:25:751:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:751:34:751:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:752:160:752:176 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:752:169:752:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:717:40:717:62 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:717:40:717:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:717:54:717:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:718:40:718:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:718:49:718:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:719:25:719:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:719:34:719:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:720:55:720:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:720:64:720:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:721:40:721:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:721:49:721:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:722:25:722:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:722:34:722:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:723:70:723:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:723:79:723:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:724:55:724:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:724:64:724:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:725:40:725:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:725:49:725:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:726:25:726:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:726:34:726:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:727:85:727:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:727:94:727:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:728:70:728:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:728:79:728:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:729:55:729:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:729:64:729:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:730:40:730:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:730:49:730:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:731:25:731:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:731:34:731:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:732:100:732:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:732:109:732:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:733:85:733:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:733:94:733:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:734:70:734:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:734:79:734:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:735:55:735:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:735:64:735:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:736:40:736:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:736:49:736:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:737:25:737:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:737:34:737:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:738:115:738:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:738:124:738:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:739:100:739:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:739:109:739:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:740:85:740:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:740:94:740:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:741:70:741:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:741:79:741:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:742:55:742:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:742:64:742:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:743:40:743:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:743:49:743:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:744:25:744:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:744:34:744:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:745:130:745:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:745:139:745:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:746:115:746:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:746:124:746:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:747:100:747:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:747:109:747:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:748:85:748:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:748:94:748:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:749:70:749:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:749:79:749:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:750:55:750:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:750:64:750:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:751:40:751:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:751:49:751:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:752:25:752:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:752:34:752:41 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:753:145:753:161 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:753:154:753:161 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:754:130:754:146 | (...)... | semmle.label | (...)... | @@ -5624,128 +5604,128 @@ nodes | LogInjectionTest.java:760:49:760:56 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:761:25:761:41 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:761:34:761:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:762:25:762:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:762:34:762:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:763:40:763:61 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:763:54:763:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:764:25:764:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:764:34:764:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:765:25:765:46 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:765:39:765:46 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:766:25:766:46 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:766:39:766:46 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:767:38:767:60 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:767:53:767:60 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:768:38:768:60 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:768:53:768:60 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:769:53:769:75 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:769:68:769:75 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:770:53:770:75 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:770:68:770:75 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:771:53:771:70 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:771:63:771:70 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:772:53:772:78 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:772:71:772:78 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:773:53:773:78 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:773:71:773:78 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:774:53:774:60 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:775:53:775:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:775:62:775:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:776:53:776:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:776:62:776:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:777:68:777:90 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:777:68:777:90 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:777:82:777:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:778:68:778:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:778:77:778:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:779:53:779:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:779:62:779:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:780:83:780:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:780:92:780:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:781:68:781:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:781:77:781:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:782:53:782:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:782:62:782:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:783:98:783:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:783:107:783:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:784:83:784:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:784:92:784:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:785:68:785:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:785:77:785:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:762:160:762:176 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:762:169:762:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:763:145:763:161 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:763:154:763:161 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:764:130:764:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:764:139:764:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:765:115:765:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:765:124:765:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:766:100:766:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:766:109:766:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:767:85:767:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:767:94:767:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:768:70:768:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:768:79:768:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:769:55:769:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:769:64:769:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:770:40:770:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:770:49:770:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:771:25:771:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:771:34:771:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:772:25:772:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:772:34:772:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:773:40:773:61 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:773:54:773:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:774:25:774:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:774:34:774:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:775:25:775:46 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:775:39:775:46 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:776:25:776:46 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:776:39:776:46 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:777:38:777:60 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:777:53:777:60 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:778:38:778:60 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:778:53:778:60 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:779:53:779:75 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:779:68:779:75 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:780:53:780:75 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:780:68:780:75 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:781:53:781:70 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:781:63:781:70 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:782:53:782:78 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:782:71:782:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:783:53:783:78 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:783:71:783:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:784:53:784:60 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:785:53:785:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:785:62:785:69 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:786:53:786:69 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:786:62:786:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:787:113:787:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:787:122:787:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:788:98:788:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:788:107:788:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:789:83:789:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:789:92:789:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:790:68:790:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:790:77:790:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:791:53:791:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:791:62:791:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:792:128:792:144 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:792:137:792:144 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:793:113:793:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:793:122:793:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:794:98:794:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:794:107:794:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:795:83:795:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:795:92:795:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:796:68:796:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:796:77:796:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:797:53:797:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:797:62:797:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:798:143:798:159 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:798:152:798:159 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:799:128:799:144 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:799:137:799:144 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:800:113:800:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:800:122:800:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:801:98:801:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:801:107:801:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:802:83:802:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:802:92:802:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:803:68:803:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:803:77:803:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:804:53:804:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:804:62:804:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:805:158:805:174 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:805:167:805:174 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:806:143:806:159 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:806:152:806:159 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:807:128:807:144 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:807:137:807:144 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:808:113:808:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:808:122:808:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:809:98:809:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:809:107:809:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:810:83:810:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:810:92:810:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:811:68:811:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:811:77:811:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:812:53:812:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:812:62:812:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:813:173:813:189 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:813:182:813:189 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:814:158:814:174 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:814:167:814:174 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:815:143:815:159 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:815:152:815:159 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:816:128:816:144 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:816:137:816:144 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:817:113:817:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:817:122:817:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:818:98:818:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:818:107:818:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:819:83:819:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:819:92:819:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:820:68:820:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:820:77:820:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:821:53:821:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:821:62:821:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:822:188:822:204 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:822:197:822:204 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:787:68:787:90 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:787:68:787:90 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:787:82:787:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:788:68:788:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:788:77:788:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:789:53:789:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:789:62:789:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:790:83:790:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:790:92:790:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:791:68:791:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:791:77:791:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:792:53:792:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:792:62:792:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:793:98:793:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:793:107:793:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:794:83:794:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:794:92:794:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:795:68:795:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:795:77:795:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:796:53:796:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:796:62:796:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:797:113:797:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:797:122:797:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:798:98:798:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:798:107:798:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:799:83:799:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:799:92:799:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:800:68:800:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:800:77:800:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:801:53:801:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:801:62:801:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:802:128:802:144 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:802:137:802:144 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:803:113:803:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:803:122:803:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:804:98:804:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:804:107:804:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:805:83:805:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:805:92:805:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:806:68:806:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:806:77:806:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:807:53:807:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:807:62:807:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:808:143:808:159 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:808:152:808:159 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:809:128:809:144 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:809:137:809:144 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:810:113:810:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:810:122:810:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:811:98:811:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:811:107:811:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:812:83:812:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:812:92:812:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:813:68:813:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:813:77:813:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:814:53:814:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:814:62:814:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:815:158:815:174 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:815:167:815:174 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:816:143:816:159 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:816:152:816:159 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:817:128:817:144 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:817:137:817:144 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:818:113:818:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:818:122:818:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:819:98:819:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:819:107:819:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:820:83:820:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:820:92:820:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:821:68:821:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:821:77:821:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:822:53:822:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:822:62:822:69 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:823:173:823:189 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:823:182:823:189 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:824:158:824:174 | (...)... | semmle.label | (...)... | @@ -5764,123 +5744,123 @@ nodes | LogInjectionTest.java:830:77:830:84 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:831:53:831:69 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:831:62:831:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:832:53:832:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:832:62:832:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:833:68:833:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:833:82:833:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:834:53:834:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:834:62:834:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:835:53:835:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:835:67:835:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:836:53:836:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:836:67:836:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:837:38:837:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:837:56:837:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:838:38:838:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:838:56:838:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:839:38:839:55 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:839:48:839:55 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:840:38:840:55 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:840:48:840:55 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:841:38:841:45 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:842:38:842:45 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:843:38:843:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:843:47:843:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:844:38:844:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:844:47:844:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:845:53:845:75 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:845:53:845:75 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:832:188:832:204 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:832:197:832:204 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:833:173:833:189 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:833:182:833:189 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:834:158:834:174 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:834:167:834:174 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:835:143:835:159 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:835:152:835:159 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:836:128:836:144 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:836:137:836:144 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:837:113:837:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:837:122:837:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:838:98:838:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:838:107:838:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:839:83:839:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:839:92:839:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:840:68:840:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:840:77:840:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:841:53:841:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:841:62:841:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:842:53:842:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:842:62:842:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:843:68:843:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:843:82:843:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:844:53:844:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:844:62:844:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:845:53:845:74 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:845:67:845:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:846:53:846:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:846:62:846:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:847:38:847:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:847:47:847:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:848:68:848:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:848:77:848:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:849:53:849:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:849:62:849:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:850:38:850:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:850:47:850:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:851:83:851:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:851:92:851:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:852:68:852:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:852:77:852:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:853:53:853:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:853:62:853:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:846:53:846:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:846:67:846:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:847:38:847:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:847:56:847:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:848:38:848:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:848:56:848:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:849:38:849:55 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:849:48:849:55 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:850:38:850:55 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:850:48:850:55 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:851:38:851:45 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:852:38:852:45 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:853:38:853:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:853:47:853:54 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:854:38:854:54 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:854:47:854:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:855:98:855:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:855:107:855:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:856:83:856:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:856:92:856:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:857:68:857:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:857:77:857:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:858:53:858:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:858:62:858:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:859:38:859:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:859:47:859:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:860:113:860:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:860:122:860:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:861:98:861:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:861:107:861:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:862:83:862:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:862:92:862:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:863:68:863:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:863:77:863:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:864:53:864:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:864:62:864:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:865:38:865:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:865:47:865:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:866:128:866:144 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:866:137:866:144 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:867:113:867:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:867:122:867:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:868:98:868:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:868:107:868:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:869:83:869:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:869:92:869:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:870:68:870:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:870:77:870:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:871:53:871:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:871:62:871:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:872:38:872:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:872:47:872:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:873:143:873:159 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:873:152:873:159 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:874:128:874:144 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:874:137:874:144 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:875:113:875:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:875:122:875:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:876:98:876:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:876:107:876:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:877:83:877:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:877:92:877:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:878:68:878:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:878:77:878:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:879:53:879:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:879:62:879:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:880:38:880:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:880:47:880:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:881:158:881:174 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:881:167:881:174 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:882:143:882:159 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:882:152:882:159 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:883:128:883:144 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:883:137:883:144 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:884:113:884:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:884:122:884:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:885:98:885:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:885:107:885:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:886:83:886:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:886:92:886:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:887:68:887:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:887:77:887:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:888:53:888:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:888:62:888:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:889:38:889:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:889:47:889:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:890:173:890:189 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:890:182:890:189 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:855:53:855:75 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:855:53:855:75 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:855:67:855:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:856:53:856:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:856:62:856:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:857:38:857:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:857:47:857:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:858:68:858:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:858:77:858:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:859:53:859:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:859:62:859:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:860:38:860:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:860:47:860:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:861:83:861:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:861:92:861:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:862:68:862:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:862:77:862:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:863:53:863:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:863:62:863:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:864:38:864:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:864:47:864:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:865:98:865:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:865:107:865:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:866:83:866:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:866:92:866:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:867:68:867:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:867:77:867:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:868:53:868:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:868:62:868:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:869:38:869:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:869:47:869:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:870:113:870:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:870:122:870:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:871:98:871:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:871:107:871:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:872:83:872:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:872:92:872:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:873:68:873:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:873:77:873:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:874:53:874:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:874:62:874:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:875:38:875:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:875:47:875:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:876:128:876:144 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:876:137:876:144 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:877:113:877:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:877:122:877:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:878:98:878:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:878:107:878:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:879:83:879:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:879:92:879:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:880:68:880:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:880:77:880:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:881:53:881:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:881:62:881:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:882:38:882:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:882:47:882:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:883:143:883:159 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:883:152:883:159 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:884:128:884:144 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:884:137:884:144 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:885:113:885:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:885:122:885:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:886:98:886:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:886:107:886:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:887:83:887:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:887:92:887:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:888:68:888:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:888:77:888:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:889:53:889:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:889:62:889:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:890:38:890:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:890:47:890:54 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:891:158:891:174 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:891:167:891:174 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:892:143:892:159 | (...)... | semmle.label | (...)... | @@ -5899,128 +5879,128 @@ nodes | LogInjectionTest.java:898:62:898:69 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:899:38:899:54 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:899:47:899:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:900:38:900:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:900:47:900:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:901:53:901:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:901:67:901:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:902:38:902:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:902:47:902:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:903:38:903:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:903:52:903:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:904:38:904:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:904:52:904:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:905:26:905:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:905:41:905:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:906:26:906:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:906:41:906:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:907:41:907:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:907:56:907:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:908:41:908:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:908:56:908:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:909:41:909:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:909:51:909:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:910:41:910:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:910:59:910:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:911:41:911:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:911:59:911:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:912:41:912:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:913:41:913:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:913:50:913:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:914:41:914:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:914:50:914:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:915:56:915:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:915:56:915:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:915:70:915:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:916:56:916:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:916:65:916:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:917:41:917:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:917:50:917:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:918:71:918:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:918:80:918:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:919:56:919:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:919:65:919:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:920:41:920:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:920:50:920:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:921:86:921:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:921:95:921:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:922:71:922:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:922:80:922:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:923:56:923:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:923:65:923:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:900:173:900:189 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:900:182:900:189 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:901:158:901:174 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:901:167:901:174 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:902:143:902:159 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:902:152:902:159 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:903:128:903:144 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:903:137:903:144 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:904:113:904:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:904:122:904:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:905:98:905:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:905:107:905:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:906:83:906:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:906:92:906:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:907:68:907:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:907:77:907:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:908:53:908:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:908:62:908:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:909:38:909:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:909:47:909:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:910:38:910:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:910:47:910:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:911:53:911:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:911:67:911:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:912:38:912:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:912:47:912:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:913:38:913:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:913:52:913:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:914:38:914:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:914:52:914:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:915:26:915:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:915:41:915:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:916:26:916:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:916:41:916:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:917:41:917:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:917:56:917:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:918:41:918:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:918:56:918:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:919:41:919:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:919:51:919:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:920:41:920:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:920:59:920:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:921:41:921:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:921:59:921:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:922:41:922:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:923:41:923:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:923:50:923:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:924:41:924:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:924:50:924:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:925:101:925:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:925:110:925:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:926:86:926:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:926:95:926:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:927:71:927:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:927:80:927:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:928:56:928:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:928:65:928:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:929:41:929:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:929:50:929:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:930:116:930:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:930:125:930:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:931:101:931:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:931:110:931:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:932:86:932:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:932:95:932:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:933:71:933:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:933:80:933:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:934:56:934:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:934:65:934:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:935:41:935:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:935:50:935:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:936:131:936:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:936:140:936:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:937:116:937:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:937:125:937:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:938:101:938:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:938:110:938:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:939:86:939:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:939:95:939:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:940:71:940:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:940:80:940:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:941:56:941:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:941:65:941:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:942:41:942:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:942:50:942:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:943:146:943:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:943:155:943:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:944:131:944:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:944:140:944:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:945:116:945:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:945:125:945:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:946:101:946:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:946:110:946:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:947:86:947:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:947:95:947:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:948:71:948:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:948:80:948:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:949:56:949:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:949:65:949:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:950:41:950:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:950:50:950:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:951:161:951:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:951:170:951:177 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:952:146:952:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:952:155:952:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:953:131:953:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:953:140:953:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:954:116:954:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:954:125:954:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:955:101:955:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:955:110:955:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:956:86:956:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:956:95:956:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:957:71:957:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:957:80:957:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:958:56:958:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:958:65:958:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:959:41:959:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:959:50:959:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:960:176:960:192 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:960:185:960:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:925:56:925:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:925:56:925:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:925:70:925:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:926:56:926:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:926:65:926:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:927:41:927:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:927:50:927:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:928:71:928:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:928:80:928:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:929:56:929:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:929:65:929:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:930:41:930:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:930:50:930:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:931:86:931:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:931:95:931:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:932:71:932:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:932:80:932:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:933:56:933:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:933:65:933:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:934:41:934:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:934:50:934:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:935:101:935:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:935:110:935:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:936:86:936:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:936:95:936:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:937:71:937:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:937:80:937:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:938:56:938:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:938:65:938:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:939:41:939:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:939:50:939:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:940:116:940:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:940:125:940:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:941:101:941:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:941:110:941:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:942:86:942:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:942:95:942:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:943:71:943:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:943:80:943:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:944:56:944:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:944:65:944:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:945:41:945:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:945:50:945:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:946:131:946:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:946:140:946:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:947:116:947:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:947:125:947:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:948:101:948:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:948:110:948:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:949:86:949:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:949:95:949:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:950:71:950:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:950:80:950:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:951:56:951:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:951:65:951:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:952:41:952:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:952:50:952:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:953:146:953:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:953:155:953:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:954:131:954:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:954:140:954:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:955:116:955:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:955:125:955:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:956:101:956:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:956:110:956:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:957:86:957:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:957:95:957:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:958:71:958:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:958:80:958:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:959:56:959:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:959:65:959:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:960:41:960:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:960:50:960:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:961:161:961:177 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:961:170:961:177 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:962:146:962:162 | (...)... | semmle.label | (...)... | @@ -6039,123 +6019,123 @@ nodes | LogInjectionTest.java:968:65:968:72 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:969:41:969:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:969:50:969:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:970:41:970:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:970:50:970:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:971:56:971:77 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:971:70:971:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:972:41:972:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:972:50:972:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:973:41:973:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:973:55:973:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:974:41:974:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:974:55:974:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:975:26:975:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:975:44:975:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:976:26:976:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:976:44:976:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:977:26:977:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:977:36:977:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:978:26:978:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:978:36:978:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:979:26:979:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:980:26:980:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:981:26:981:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:981:35:981:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:982:26:982:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:982:35:982:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:983:41:983:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:983:41:983:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:970:176:970:192 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:970:185:970:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:971:161:971:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:971:170:971:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:972:146:972:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:972:155:972:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:973:131:973:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:973:140:973:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:974:116:974:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:974:125:974:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:975:101:975:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:975:110:975:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:976:86:976:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:976:95:976:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:977:71:977:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:977:80:977:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:978:56:978:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:978:65:978:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:979:41:979:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:979:50:979:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:980:41:980:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:980:50:980:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:981:56:981:77 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:981:70:981:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:982:41:982:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:982:50:982:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:983:41:983:62 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:983:55:983:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:984:41:984:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:984:50:984:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:985:26:985:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:985:35:985:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:986:56:986:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:986:65:986:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:987:41:987:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:987:50:987:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:988:26:988:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:988:35:988:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:989:71:989:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:989:80:989:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:990:56:990:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:990:65:990:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:991:41:991:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:991:50:991:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:984:41:984:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:984:55:984:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:985:26:985:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:985:44:985:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:986:26:986:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:986:44:986:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:987:26:987:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:987:36:987:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:988:26:988:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:988:36:988:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:989:26:989:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:990:26:990:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:991:26:991:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:991:35:991:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:992:26:992:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:992:35:992:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:993:86:993:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:993:95:993:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:994:71:994:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:994:80:994:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:995:56:995:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:995:65:995:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:996:41:996:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:996:50:996:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:997:26:997:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:997:35:997:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:998:101:998:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:998:110:998:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:999:86:999:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:999:95:999:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1000:71:1000:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1000:80:1000:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1001:56:1001:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1001:65:1001:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1002:41:1002:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1002:50:1002:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1003:26:1003:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1003:35:1003:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1004:116:1004:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1004:125:1004:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1005:101:1005:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1005:110:1005:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1006:86:1006:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1006:95:1006:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1007:71:1007:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1007:80:1007:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1008:56:1008:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1008:65:1008:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1009:41:1009:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1009:50:1009:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1010:26:1010:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1010:35:1010:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1011:131:1011:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1011:140:1011:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1012:116:1012:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1012:125:1012:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1013:101:1013:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1013:110:1013:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1014:86:1014:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1014:95:1014:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1015:71:1015:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1015:80:1015:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1016:56:1016:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1016:65:1016:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1017:41:1017:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1017:50:1017:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1018:26:1018:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1018:35:1018:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1019:146:1019:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1019:155:1019:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1020:131:1020:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1020:140:1020:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1021:116:1021:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1021:125:1021:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1022:101:1022:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1022:110:1022:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1023:86:1023:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1023:95:1023:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1024:71:1024:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1024:80:1024:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1025:56:1025:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1025:65:1025:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1026:41:1026:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1026:50:1026:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1027:26:1027:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1027:35:1027:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1028:161:1028:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1028:170:1028:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:993:41:993:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:993:41:993:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:993:55:993:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:994:41:994:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:994:50:994:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:995:26:995:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:995:35:995:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:996:56:996:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:996:65:996:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:997:41:997:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:997:50:997:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:998:26:998:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:998:35:998:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:999:71:999:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:999:80:999:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1000:56:1000:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1000:65:1000:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1001:41:1001:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1001:50:1001:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1002:26:1002:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1002:35:1002:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1003:86:1003:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1003:95:1003:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1004:71:1004:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1004:80:1004:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1005:56:1005:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1005:65:1005:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1006:41:1006:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1006:50:1006:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1007:26:1007:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1007:35:1007:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1008:101:1008:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1008:110:1008:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1009:86:1009:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1009:95:1009:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1010:71:1010:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1010:80:1010:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1011:56:1011:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1011:65:1011:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1012:41:1012:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1012:50:1012:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1013:26:1013:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1013:35:1013:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1014:116:1014:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1014:125:1014:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1015:101:1015:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1015:110:1015:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1016:86:1016:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1016:95:1016:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1017:71:1017:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1017:80:1017:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1018:56:1018:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1018:65:1018:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1019:41:1019:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1019:50:1019:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1020:26:1020:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1020:35:1020:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1021:131:1021:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1021:140:1021:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1022:116:1022:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1022:125:1022:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1023:101:1023:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1023:110:1023:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1024:86:1024:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1024:95:1024:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1025:71:1025:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1025:80:1025:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1026:56:1026:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1026:65:1026:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1027:41:1027:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1027:50:1027:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1028:26:1028:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1028:35:1028:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1029:146:1029:162 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1029:155:1029:162 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1030:131:1030:147 | (...)... | semmle.label | (...)... | @@ -6174,128 +6154,128 @@ nodes | LogInjectionTest.java:1036:50:1036:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1037:26:1037:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1037:35:1037:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1038:26:1038:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1038:35:1038:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1039:41:1039:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1039:55:1039:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1040:26:1040:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1040:35:1040:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1041:26:1041:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1041:40:1041:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1042:26:1042:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1042:40:1042:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1043:25:1043:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1043:40:1043:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1044:25:1044:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1044:40:1044:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1045:40:1045:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1045:55:1045:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1046:40:1046:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1046:55:1046:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1047:40:1047:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1047:50:1047:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1048:40:1048:65 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1048:58:1048:65 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1049:40:1049:65 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1049:58:1049:65 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1050:40:1050:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1051:40:1051:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1051:49:1051:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1052:40:1052:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1052:49:1052:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1053:55:1053:77 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1053:55:1053:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1053:69:1053:76 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1054:55:1054:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1054:64:1054:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1055:40:1055:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1055:49:1055:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1056:70:1056:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1056:79:1056:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1057:55:1057:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1057:64:1057:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1058:40:1058:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1058:49:1058:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1059:85:1059:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1059:94:1059:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1060:70:1060:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1060:79:1060:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1061:55:1061:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1061:64:1061:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1038:161:1038:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1038:170:1038:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1039:146:1039:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1039:155:1039:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1040:131:1040:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1040:140:1040:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1041:116:1041:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1041:125:1041:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1042:101:1042:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1042:110:1042:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1043:86:1043:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1043:95:1043:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1044:71:1044:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1044:80:1044:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1045:56:1045:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1045:65:1045:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1046:41:1046:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1046:50:1046:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1047:26:1047:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1047:35:1047:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1048:26:1048:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1048:35:1048:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1049:41:1049:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1049:55:1049:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1050:26:1050:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1050:35:1050:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1051:26:1051:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1051:40:1051:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1052:26:1052:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1052:40:1052:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1053:25:1053:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1053:40:1053:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1054:25:1054:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1054:40:1054:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1055:40:1055:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1055:55:1055:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1056:40:1056:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1056:55:1056:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1057:40:1057:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1057:50:1057:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1058:40:1058:65 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1058:58:1058:65 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1059:40:1059:65 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1059:58:1059:65 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1060:40:1060:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1061:40:1061:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1061:49:1061:56 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1062:40:1062:56 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1062:49:1062:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1063:100:1063:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1063:109:1063:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1064:85:1064:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1064:94:1064:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1065:70:1065:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1065:79:1065:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1066:55:1066:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1066:64:1066:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1067:40:1067:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1067:49:1067:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1068:115:1068:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1068:124:1068:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1069:100:1069:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1069:109:1069:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1070:85:1070:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1070:94:1070:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1071:70:1071:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1071:79:1071:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1072:55:1072:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1072:64:1072:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1073:40:1073:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1073:49:1073:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1074:130:1074:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1074:139:1074:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1075:115:1075:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1075:124:1075:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1076:100:1076:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1076:109:1076:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1077:85:1077:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1077:94:1077:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1078:70:1078:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1078:79:1078:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1079:55:1079:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1079:64:1079:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1080:40:1080:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1080:49:1080:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1081:145:1081:161 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1081:154:1081:161 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1082:130:1082:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1082:139:1082:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1083:115:1083:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1083:124:1083:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1084:100:1084:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1084:109:1084:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1085:85:1085:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1085:94:1085:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1086:70:1086:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1086:79:1086:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1087:55:1087:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1087:64:1087:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1088:40:1088:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1088:49:1088:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1089:160:1089:176 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1089:169:1089:176 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1090:145:1090:161 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1090:154:1090:161 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1091:130:1091:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1091:139:1091:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1092:115:1092:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1092:124:1092:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1093:100:1093:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1093:109:1093:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1094:85:1094:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1094:94:1094:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1095:70:1095:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1095:79:1095:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1096:55:1096:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1096:64:1096:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1097:40:1097:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1097:49:1097:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1098:175:1098:191 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1098:184:1098:191 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1063:55:1063:77 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1063:55:1063:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1063:69:1063:76 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1064:55:1064:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1064:64:1064:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1065:40:1065:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1065:49:1065:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1066:70:1066:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1066:79:1066:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1067:55:1067:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1067:64:1067:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1068:40:1068:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1068:49:1068:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1069:85:1069:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1069:94:1069:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1070:70:1070:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1070:79:1070:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1071:55:1071:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1071:64:1071:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1072:40:1072:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1072:49:1072:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1073:100:1073:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1073:109:1073:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1074:85:1074:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1074:94:1074:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1075:70:1075:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1075:79:1075:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1076:55:1076:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1076:64:1076:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1077:40:1077:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1077:49:1077:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1078:115:1078:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1078:124:1078:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1079:100:1079:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1079:109:1079:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1080:85:1080:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1080:94:1080:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1081:70:1081:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1081:79:1081:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1082:55:1082:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1082:64:1082:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1083:40:1083:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1083:49:1083:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1084:130:1084:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1084:139:1084:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1085:115:1085:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1085:124:1085:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1086:100:1086:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1086:109:1086:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1087:85:1087:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1087:94:1087:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1088:70:1088:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1088:79:1088:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1089:55:1089:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1089:64:1089:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1090:40:1090:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1090:49:1090:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1091:145:1091:161 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1091:154:1091:161 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1092:130:1092:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1092:139:1092:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1093:115:1093:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1093:124:1093:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1094:100:1094:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1094:109:1094:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1095:85:1095:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1095:94:1095:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1096:70:1096:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1096:79:1096:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1097:55:1097:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1097:64:1097:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1098:40:1098:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1098:49:1098:56 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1099:160:1099:176 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1099:169:1099:176 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1100:145:1100:161 | (...)... | semmle.label | (...)... | @@ -6314,123 +6294,123 @@ nodes | LogInjectionTest.java:1106:64:1106:71 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1107:40:1107:56 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1107:49:1107:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1108:40:1108:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1108:49:1108:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1109:55:1109:76 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1109:69:1109:76 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1110:40:1110:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1110:49:1110:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1111:40:1111:61 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1111:54:1111:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1112:40:1112:61 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1112:54:1112:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1113:25:1113:50 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1113:43:1113:50 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1114:25:1114:50 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1114:43:1114:50 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1115:25:1115:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1115:35:1115:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1116:25:1116:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1116:35:1116:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1117:25:1117:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1118:25:1118:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1119:25:1119:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1119:34:1119:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1120:25:1120:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1120:34:1120:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1121:40:1121:62 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1121:40:1121:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1108:175:1108:191 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1108:184:1108:191 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1109:160:1109:176 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1109:169:1109:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1110:145:1110:161 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1110:154:1110:161 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1111:130:1111:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1111:139:1111:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1112:115:1112:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1112:124:1112:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1113:100:1113:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1113:109:1113:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1114:85:1114:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1114:94:1114:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1115:70:1115:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1115:79:1115:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1116:55:1116:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1116:64:1116:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1117:40:1117:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1117:49:1117:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1118:40:1118:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1118:49:1118:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1119:55:1119:76 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1119:69:1119:76 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1120:40:1120:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1120:49:1120:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1121:40:1121:61 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1121:54:1121:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1122:40:1122:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1122:49:1122:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1123:25:1123:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1123:34:1123:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1124:55:1124:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1124:64:1124:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1125:40:1125:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1125:49:1125:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1126:25:1126:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1126:34:1126:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1127:70:1127:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1127:79:1127:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1128:55:1128:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1128:64:1128:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1129:40:1129:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1129:49:1129:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1122:40:1122:61 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1122:54:1122:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1123:25:1123:50 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1123:43:1123:50 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1124:25:1124:50 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1124:43:1124:50 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1125:25:1125:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1125:35:1125:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1126:25:1126:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1126:35:1126:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1127:25:1127:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1128:25:1128:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1129:25:1129:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1129:34:1129:41 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1130:25:1130:41 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1130:34:1130:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1131:85:1131:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1131:94:1131:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1132:70:1132:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1132:79:1132:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1133:55:1133:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1133:64:1133:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1134:40:1134:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1134:49:1134:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1135:25:1135:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1135:34:1135:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1136:100:1136:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1136:109:1136:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1137:85:1137:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1137:94:1137:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1138:70:1138:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1138:79:1138:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1139:55:1139:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1139:64:1139:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1140:40:1140:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1140:49:1140:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1141:25:1141:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1141:34:1141:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1142:115:1142:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1142:124:1142:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1143:100:1143:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1143:109:1143:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1144:85:1144:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1144:94:1144:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1145:70:1145:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1145:79:1145:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1146:55:1146:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1146:64:1146:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1147:40:1147:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1147:49:1147:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1148:25:1148:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1148:34:1148:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1149:130:1149:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1149:139:1149:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1150:115:1150:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1150:124:1150:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1151:100:1151:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1151:109:1151:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1152:85:1152:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1152:94:1152:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1153:70:1153:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1153:79:1153:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1154:55:1154:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1154:64:1154:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1155:40:1155:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1155:49:1155:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1156:25:1156:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1156:34:1156:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1157:145:1157:161 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1157:154:1157:161 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1158:130:1158:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1158:139:1158:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1159:115:1159:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1159:124:1159:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1160:100:1160:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1160:109:1160:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1161:85:1161:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1161:94:1161:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1162:70:1162:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1162:79:1162:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1163:55:1163:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1163:64:1163:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1164:40:1164:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1164:49:1164:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1165:25:1165:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1165:34:1165:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1166:160:1166:176 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1166:169:1166:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1131:40:1131:62 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1131:40:1131:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1131:54:1131:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1132:40:1132:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1132:49:1132:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1133:25:1133:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1133:34:1133:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1134:55:1134:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1134:64:1134:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1135:40:1135:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1135:49:1135:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1136:25:1136:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1136:34:1136:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1137:70:1137:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1137:79:1137:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1138:55:1138:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1138:64:1138:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1139:40:1139:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1139:49:1139:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1140:25:1140:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1140:34:1140:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1141:85:1141:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1141:94:1141:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1142:70:1142:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1142:79:1142:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1143:55:1143:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1143:64:1143:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1144:40:1144:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1144:49:1144:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1145:25:1145:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1145:34:1145:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1146:100:1146:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1146:109:1146:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1147:85:1147:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1147:94:1147:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1148:70:1148:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1148:79:1148:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1149:55:1149:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1149:64:1149:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1150:40:1150:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1150:49:1150:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1151:25:1151:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1151:34:1151:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1152:115:1152:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1152:124:1152:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1153:100:1153:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1153:109:1153:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1154:85:1154:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1154:94:1154:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1155:70:1155:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1155:79:1155:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1156:55:1156:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1156:64:1156:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1157:40:1157:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1157:49:1157:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1158:25:1158:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1158:34:1158:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1159:130:1159:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1159:139:1159:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1160:115:1160:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1160:124:1160:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1161:100:1161:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1161:109:1161:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1162:85:1162:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1162:94:1162:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1163:70:1163:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1163:79:1163:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1164:55:1164:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1164:64:1164:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1165:40:1165:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1165:49:1165:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1166:25:1166:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1166:34:1166:41 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1167:145:1167:161 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1167:154:1167:161 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1168:130:1168:146 | (...)... | semmle.label | (...)... | @@ -6449,158 +6429,158 @@ nodes | LogInjectionTest.java:1174:49:1174:56 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1175:25:1175:41 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1175:34:1175:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1176:25:1176:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1176:34:1176:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1177:40:1177:61 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1177:54:1177:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1178:25:1178:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1178:34:1178:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1179:25:1179:46 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1179:39:1179:46 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1180:25:1180:46 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1180:39:1180:46 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1182:55:1182:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1182:65:1182:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1183:39:1183:55 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1183:48:1183:55 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1184:45:1184:67 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1184:45:1184:67 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1184:59:1184:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1185:33:1185:49 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1185:42:1185:49 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1186:39:1186:61 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1186:39:1186:61 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1186:53:1186:60 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1187:31:1187:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1187:41:1187:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1188:31:1188:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1188:40:1188:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1189:46:1189:68 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1189:46:1189:68 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1189:60:1189:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1190:31:1190:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1190:40:1190:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1191:13:1191:68 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1191:46:1191:67 | (...)... : Supplier | semmle.label | (...)... : Supplier | -| LogInjectionTest.java:1191:60:1191:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1192:13:1192:53 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1192:31:1192:52 | (...)... : Supplier | semmle.label | (...)... : Supplier | -| LogInjectionTest.java:1192:45:1192:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1193:30:1193:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1193:45:1193:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1194:30:1194:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1194:45:1194:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1195:51:1195:58 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1196:30:1196:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1196:40:1196:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1197:46:1197:53 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1198:30:1198:37 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1199:30:1199:46 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1199:39:1199:46 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1200:45:1200:52 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1204:25:1204:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1204:40:1204:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1205:25:1205:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1205:35:1205:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1206:25:1206:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1207:25:1207:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1207:34:1207:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1208:25:1208:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1208:34:1208:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1209:40:1209:62 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1209:40:1209:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1209:54:1209:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1210:40:1210:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1212:40:1212:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1212:49:1212:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1213:25:1213:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1213:34:1213:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1214:55:1214:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1214:64:1214:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1215:40:1215:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1215:49:1215:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1216:25:1216:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1216:34:1216:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1217:70:1217:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1217:79:1217:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1218:55:1218:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1218:64:1218:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1219:40:1219:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1219:49:1219:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1220:25:1220:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1220:34:1220:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1221:85:1221:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1221:94:1221:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1222:70:1222:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1222:79:1222:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1223:55:1223:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1223:64:1223:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1224:40:1224:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1224:49:1224:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1225:25:1225:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1225:34:1225:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1226:100:1226:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1226:109:1226:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1227:85:1227:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1227:94:1227:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1228:70:1228:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1228:79:1228:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1229:55:1229:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1229:64:1229:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1230:40:1230:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1230:49:1230:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1231:25:1231:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1231:34:1231:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1232:115:1232:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1232:124:1232:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1233:100:1233:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1233:109:1233:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1234:85:1234:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1234:94:1234:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1235:70:1235:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1235:79:1235:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1236:55:1236:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1236:64:1236:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1237:40:1237:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1237:49:1237:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1238:25:1238:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1238:34:1238:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1239:130:1239:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1239:139:1239:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1240:115:1240:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1240:124:1240:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1241:100:1241:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1241:109:1241:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1242:85:1242:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1242:94:1242:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1243:70:1243:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1243:79:1243:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1244:55:1244:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1244:64:1244:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1245:40:1245:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1245:49:1245:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1246:25:1246:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1246:34:1246:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1247:145:1247:161 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1247:154:1247:161 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1248:130:1248:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1248:139:1248:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1249:115:1249:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1249:124:1249:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1250:100:1250:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1250:109:1250:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1251:85:1251:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1251:94:1251:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1252:70:1252:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1252:79:1252:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1253:55:1253:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1253:64:1253:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1254:40:1254:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1254:49:1254:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1255:25:1255:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1255:34:1255:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1256:160:1256:176 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1256:169:1256:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1176:160:1176:176 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1176:169:1176:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1177:145:1177:161 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1177:154:1177:161 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1178:130:1178:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1178:139:1178:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1179:115:1179:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1179:124:1179:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1180:100:1180:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1180:109:1180:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1181:85:1181:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1181:94:1181:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1182:70:1182:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1182:79:1182:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1183:55:1183:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1183:64:1183:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1184:40:1184:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1184:49:1184:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1185:25:1185:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1185:34:1185:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1186:25:1186:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1186:34:1186:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1187:40:1187:61 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1187:54:1187:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1188:25:1188:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1188:34:1188:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1189:25:1189:46 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1189:39:1189:46 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1190:25:1190:46 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1190:39:1190:46 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1192:55:1192:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1192:65:1192:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1193:39:1193:55 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1193:48:1193:55 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1194:45:1194:67 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1194:45:1194:67 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1194:59:1194:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1195:33:1195:49 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1195:42:1195:49 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1196:39:1196:61 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1196:39:1196:61 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1196:53:1196:60 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1197:31:1197:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1197:41:1197:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1198:31:1198:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1198:40:1198:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1199:46:1199:68 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1199:46:1199:68 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1199:60:1199:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1200:31:1200:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1200:40:1200:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1201:13:1201:68 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1201:46:1201:67 | (...)... : Supplier | semmle.label | (...)... : Supplier | +| LogInjectionTest.java:1201:60:1201:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1202:13:1202:53 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1202:31:1202:52 | (...)... : Supplier | semmle.label | (...)... : Supplier | +| LogInjectionTest.java:1202:45:1202:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1203:30:1203:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1203:45:1203:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1204:30:1204:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1204:45:1204:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1205:51:1205:58 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1206:30:1206:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1206:40:1206:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1207:46:1207:53 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1208:30:1208:37 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1209:30:1209:46 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1209:39:1209:46 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1210:45:1210:52 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1214:25:1214:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1214:40:1214:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1215:25:1215:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1215:35:1215:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1216:25:1216:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1217:25:1217:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1217:34:1217:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1218:25:1218:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1218:34:1218:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1219:40:1219:62 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1219:40:1219:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1219:54:1219:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1220:40:1220:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1222:40:1222:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1222:49:1222:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1223:25:1223:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1223:34:1223:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1224:55:1224:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1224:64:1224:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1225:40:1225:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1225:49:1225:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1226:25:1226:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1226:34:1226:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1227:70:1227:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1227:79:1227:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1228:55:1228:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1228:64:1228:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1229:40:1229:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1229:49:1229:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1230:25:1230:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1230:34:1230:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1231:85:1231:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1231:94:1231:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1232:70:1232:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1232:79:1232:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1233:55:1233:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1233:64:1233:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1234:40:1234:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1234:49:1234:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1235:25:1235:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1235:34:1235:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1236:100:1236:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1236:109:1236:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1237:85:1237:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1237:94:1237:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1238:70:1238:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1238:79:1238:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1239:55:1239:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1239:64:1239:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1240:40:1240:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1240:49:1240:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1241:25:1241:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1241:34:1241:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1242:115:1242:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1242:124:1242:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1243:100:1243:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1243:109:1243:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1244:85:1244:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1244:94:1244:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1245:70:1245:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1245:79:1245:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1246:55:1246:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1246:64:1246:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1247:40:1247:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1247:49:1247:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1248:25:1248:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1248:34:1248:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1249:130:1249:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1249:139:1249:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1250:115:1250:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1250:124:1250:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1251:100:1251:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1251:109:1251:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1252:85:1252:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1252:94:1252:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1253:70:1253:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1253:79:1253:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1254:55:1254:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1254:64:1254:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1255:40:1255:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1255:49:1255:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1256:25:1256:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1256:34:1256:41 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1257:145:1257:161 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1257:154:1257:161 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1258:130:1258:146 | (...)... | semmle.label | (...)... | @@ -6619,1076 +6599,1076 @@ nodes | LogInjectionTest.java:1264:49:1264:56 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1265:25:1265:41 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1265:34:1265:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1267:25:1267:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1267:34:1267:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1268:40:1268:61 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1268:54:1268:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1269:25:1269:46 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1269:39:1269:46 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1273:23:1273:30 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1274:23:1274:30 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1275:23:1275:30 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1276:22:1276:29 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1277:23:1277:30 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1278:22:1278:29 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1283:27:1283:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1284:27:1284:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1288:42:1288:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1289:57:1289:79 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1289:57:1289:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1289:71:1289:78 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1290:42:1290:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1291:27:1291:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1292:27:1292:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1296:42:1296:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1297:57:1297:79 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1297:57:1297:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1297:71:1297:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1266:160:1266:176 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1266:169:1266:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1267:145:1267:161 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1267:154:1267:161 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1268:130:1268:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1268:139:1268:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1269:115:1269:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1269:124:1269:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1270:100:1270:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1270:109:1270:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1271:85:1271:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1271:94:1271:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1272:70:1272:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1272:79:1272:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1273:55:1273:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1273:64:1273:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1274:40:1274:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1274:49:1274:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1275:25:1275:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1275:34:1275:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1277:25:1277:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1277:34:1277:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1278:40:1278:61 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1278:54:1278:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1279:25:1279:46 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1279:39:1279:46 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1283:23:1283:30 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1284:23:1284:30 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1285:23:1285:30 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1286:22:1286:29 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1287:23:1287:30 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1288:22:1288:29 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1293:27:1293:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1294:27:1294:34 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1298:42:1298:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1299:27:1299:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1300:27:1300:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1304:42:1304:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1305:57:1305:79 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1305:57:1305:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1305:71:1305:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1299:57:1299:79 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1299:57:1299:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1299:71:1299:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1300:42:1300:49 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1301:27:1301:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1302:27:1302:34 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1306:42:1306:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1307:26:1307:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1308:26:1308:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1312:41:1312:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1313:56:1313:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1313:56:1313:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1313:70:1313:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1314:41:1314:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1315:27:1315:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1316:27:1316:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1320:42:1320:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1321:57:1321:79 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1321:57:1321:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1321:71:1321:78 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1322:42:1322:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1323:26:1323:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1324:26:1324:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1328:41:1328:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1329:56:1329:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1329:56:1329:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1329:70:1329:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1330:41:1330:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1331:64:1331:71 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1332:64:1332:71 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1336:79:1336:86 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1337:79:1337:86 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1338:94:1338:116 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1338:94:1338:116 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1338:108:1338:115 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1339:43:1339:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1339:52:1339:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1340:28:1340:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1340:37:1340:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1341:43:1341:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1341:52:1341:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1342:28:1342:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1342:37:1342:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1343:28:1343:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1343:37:1343:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1344:28:1344:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1344:37:1344:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1345:43:1345:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1345:43:1345:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1345:57:1345:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1346:43:1346:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1346:43:1346:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1346:57:1346:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1347:58:1347:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1347:67:1347:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1348:43:1348:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1348:52:1348:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1349:28:1349:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1349:37:1349:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1350:58:1350:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1350:67:1350:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1307:57:1307:79 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1307:57:1307:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1307:71:1307:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1308:42:1308:49 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1309:27:1309:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1310:27:1310:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1314:42:1314:49 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1315:57:1315:79 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1315:57:1315:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1315:71:1315:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1316:42:1316:49 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1317:26:1317:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1318:26:1318:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1322:41:1322:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1323:56:1323:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1323:56:1323:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1323:70:1323:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1324:41:1324:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1325:27:1325:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1326:27:1326:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1330:42:1330:49 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1331:57:1331:79 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1331:57:1331:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1331:71:1331:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1332:42:1332:49 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1333:26:1333:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1334:26:1334:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1338:41:1338:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1339:56:1339:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1339:56:1339:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1339:70:1339:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1340:41:1340:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1341:64:1341:71 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1342:64:1342:71 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1346:79:1346:86 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1347:79:1347:86 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1348:94:1348:116 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1348:94:1348:116 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1348:108:1348:115 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1349:43:1349:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1349:52:1349:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1350:28:1350:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1350:37:1350:44 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1351:43:1351:59 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1351:52:1351:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1352:28:1352:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1352:37:1352:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1353:73:1353:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1353:82:1353:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1354:58:1354:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1354:67:1354:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1355:43:1355:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1355:52:1355:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1356:28:1356:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1356:37:1356:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1357:73:1357:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1357:82:1357:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1358:58:1358:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1358:67:1358:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1359:43:1359:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1359:52:1359:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1360:28:1360:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1360:37:1360:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1353:28:1353:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1353:37:1353:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1354:28:1354:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1354:37:1354:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1355:43:1355:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1355:43:1355:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1355:57:1355:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1356:43:1356:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1356:43:1356:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1356:57:1356:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1357:58:1357:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1357:67:1357:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1358:43:1358:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1358:52:1358:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1359:28:1359:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1359:37:1359:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1360:58:1360:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1360:67:1360:74 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1361:43:1361:59 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1361:52:1361:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1362:28:1362:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1362:37:1362:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1363:43:1363:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1363:52:1363:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1364:28:1364:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1364:37:1364:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1365:28:1365:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1365:37:1365:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1363:73:1363:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1363:82:1363:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1364:58:1364:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1364:67:1364:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1365:43:1365:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1365:52:1365:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1366:28:1366:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1366:37:1366:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1367:43:1367:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1367:43:1367:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1367:57:1367:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1368:43:1368:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1368:43:1368:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1368:57:1368:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1369:58:1369:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1369:67:1369:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1370:43:1370:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1370:52:1370:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1371:28:1371:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1371:37:1371:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1372:58:1372:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1372:67:1372:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1367:73:1367:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1367:82:1367:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1368:58:1368:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1368:67:1368:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1369:43:1369:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1369:52:1369:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1370:28:1370:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1370:37:1370:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1371:43:1371:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1371:52:1371:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1372:28:1372:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1372:37:1372:44 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1373:43:1373:59 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1373:52:1373:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1374:28:1374:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1374:37:1374:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1375:73:1375:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1375:82:1375:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1376:58:1376:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1376:67:1376:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1377:43:1377:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1377:52:1377:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1378:28:1378:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1378:37:1378:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1379:73:1379:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1379:82:1379:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1380:58:1380:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1380:67:1380:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1381:43:1381:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1381:52:1381:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1382:28:1382:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1382:37:1382:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1375:28:1375:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1375:37:1375:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1376:28:1376:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1376:37:1376:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1377:43:1377:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1377:43:1377:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1377:57:1377:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1378:43:1378:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1378:43:1378:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1378:57:1378:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1379:58:1379:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1379:67:1379:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1380:43:1380:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1380:52:1380:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1381:28:1381:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1381:37:1381:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1382:58:1382:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1382:67:1382:74 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1383:43:1383:59 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1383:52:1383:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1384:28:1384:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1384:37:1384:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1385:43:1385:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1385:52:1385:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1386:28:1386:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1386:37:1386:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1387:28:1387:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1387:37:1387:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1385:73:1385:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1385:82:1385:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1386:58:1386:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1386:67:1386:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1387:43:1387:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1387:52:1387:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1388:28:1388:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1388:37:1388:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1389:43:1389:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1389:43:1389:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1389:57:1389:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1390:43:1390:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1390:43:1390:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1390:57:1390:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1391:58:1391:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1391:67:1391:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1392:43:1392:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1392:52:1392:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1393:28:1393:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1393:37:1393:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1394:58:1394:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1394:67:1394:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1389:73:1389:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1389:82:1389:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1390:58:1390:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1390:67:1390:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1391:43:1391:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1391:52:1391:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1392:28:1392:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1392:37:1392:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1393:43:1393:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1393:52:1393:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1394:28:1394:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1394:37:1394:44 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1395:43:1395:59 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1395:52:1395:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1396:28:1396:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1396:37:1396:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1397:73:1397:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1397:82:1397:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1398:58:1398:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1398:67:1398:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1399:43:1399:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1399:52:1399:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1400:28:1400:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1400:37:1400:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1401:73:1401:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1401:82:1401:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1402:58:1402:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1402:67:1402:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1403:43:1403:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1403:52:1403:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1404:28:1404:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1404:37:1404:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1405:42:1405:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1405:51:1405:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1406:27:1406:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1406:36:1406:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1407:42:1407:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1407:51:1407:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1408:27:1408:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1408:36:1408:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1409:27:1409:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1409:36:1409:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1410:27:1410:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1410:36:1410:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1411:42:1411:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1411:42:1411:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1411:56:1411:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1412:42:1412:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1412:42:1412:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1412:56:1412:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1413:57:1413:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1413:66:1413:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1414:42:1414:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1414:51:1414:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1415:27:1415:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1415:36:1415:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1416:57:1416:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1416:66:1416:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1397:28:1397:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1397:37:1397:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1398:28:1398:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1398:37:1398:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1399:43:1399:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1399:43:1399:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1399:57:1399:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1400:43:1400:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1400:43:1400:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1400:57:1400:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1401:58:1401:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1401:67:1401:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1402:43:1402:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1402:52:1402:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1403:28:1403:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1403:37:1403:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1404:58:1404:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1404:67:1404:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1405:43:1405:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1405:52:1405:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1406:28:1406:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1406:37:1406:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1407:73:1407:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1407:82:1407:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1408:58:1408:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1408:67:1408:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1409:43:1409:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1409:52:1409:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1410:28:1410:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1410:37:1410:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1411:73:1411:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1411:82:1411:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1412:58:1412:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1412:67:1412:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1413:43:1413:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1413:52:1413:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1414:28:1414:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1414:37:1414:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1415:42:1415:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1415:51:1415:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1416:27:1416:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1416:36:1416:43 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1417:42:1417:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1417:51:1417:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1418:27:1418:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1418:36:1418:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1419:72:1419:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1419:81:1419:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1420:57:1420:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1420:66:1420:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1421:42:1421:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1421:51:1421:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1422:27:1422:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1422:36:1422:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1423:72:1423:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1423:81:1423:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1424:57:1424:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1424:66:1424:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1425:42:1425:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1425:51:1425:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1426:27:1426:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1426:36:1426:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1427:80:1427:96 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1427:89:1427:96 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1428:65:1428:81 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1428:74:1428:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1429:80:1429:96 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1429:89:1429:96 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1430:65:1430:81 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1430:74:1430:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1431:65:1431:81 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1431:74:1431:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1432:65:1432:81 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1432:74:1432:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1433:80:1433:102 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1433:80:1433:102 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1433:94:1433:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1434:80:1434:102 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1434:80:1434:102 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1434:94:1434:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1435:95:1435:111 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1435:104:1435:111 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1436:80:1436:96 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1436:89:1436:96 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1437:65:1437:81 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1437:74:1437:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1438:95:1438:111 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1438:104:1438:111 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1419:27:1419:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1419:36:1419:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1420:27:1420:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1420:36:1420:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1421:42:1421:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1421:42:1421:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1421:56:1421:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1422:42:1422:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1422:42:1422:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1422:56:1422:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1423:57:1423:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1423:66:1423:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1424:42:1424:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1424:51:1424:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1425:27:1425:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1425:36:1425:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1426:57:1426:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1426:66:1426:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1427:42:1427:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1427:51:1427:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1428:27:1428:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1428:36:1428:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1429:72:1429:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1429:81:1429:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1430:57:1430:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1430:66:1430:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1431:42:1431:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1431:51:1431:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1432:27:1432:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1432:36:1432:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1433:72:1433:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1433:81:1433:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1434:57:1434:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1434:66:1434:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1435:42:1435:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1435:51:1435:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1436:27:1436:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1436:36:1436:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1437:80:1437:96 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1437:89:1437:96 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1438:65:1438:81 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1438:74:1438:81 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1439:80:1439:96 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1439:89:1439:96 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1440:65:1440:81 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1440:74:1440:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1441:110:1441:126 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1441:119:1441:126 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1442:95:1442:111 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1442:104:1442:111 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1443:80:1443:96 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1443:89:1443:96 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1444:65:1444:81 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1444:74:1444:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1445:110:1445:126 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1445:119:1445:126 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1446:95:1446:111 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1446:104:1446:111 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1447:80:1447:96 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1447:89:1447:96 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1448:65:1448:81 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1448:74:1448:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1449:43:1449:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1449:52:1449:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1450:28:1450:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1450:37:1450:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1451:43:1451:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1451:52:1451:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1452:28:1452:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1452:37:1452:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1453:28:1453:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1453:37:1453:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1454:28:1454:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1454:37:1454:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1455:43:1455:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1455:43:1455:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1455:57:1455:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1456:43:1456:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1456:43:1456:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1456:57:1456:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1457:58:1457:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1457:67:1457:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1458:43:1458:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1458:52:1458:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1459:28:1459:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1459:37:1459:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1460:58:1460:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1460:67:1460:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1441:65:1441:81 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1441:74:1441:81 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1442:65:1442:81 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1442:74:1442:81 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1443:80:1443:102 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1443:80:1443:102 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1443:94:1443:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1444:80:1444:102 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1444:80:1444:102 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1444:94:1444:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1445:95:1445:111 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1445:104:1445:111 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1446:80:1446:96 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1446:89:1446:96 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1447:65:1447:81 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1447:74:1447:81 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1448:95:1448:111 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1448:104:1448:111 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1449:80:1449:96 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1449:89:1449:96 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1450:65:1450:81 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1450:74:1450:81 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1451:110:1451:126 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1451:119:1451:126 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1452:95:1452:111 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1452:104:1452:111 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1453:80:1453:96 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1453:89:1453:96 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1454:65:1454:81 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1454:74:1454:81 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1455:110:1455:126 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1455:119:1455:126 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1456:95:1456:111 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1456:104:1456:111 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1457:80:1457:96 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1457:89:1457:96 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1458:65:1458:81 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1458:74:1458:81 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1459:43:1459:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1459:52:1459:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1460:28:1460:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1460:37:1460:44 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1461:43:1461:59 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1461:52:1461:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1462:28:1462:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1462:37:1462:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1463:73:1463:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1463:82:1463:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1464:58:1464:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1464:67:1464:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1465:43:1465:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1465:52:1465:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1466:28:1466:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1466:37:1466:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1467:73:1467:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1467:82:1467:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1468:58:1468:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1468:67:1468:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1469:43:1469:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1469:52:1469:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1470:28:1470:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1470:37:1470:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1471:42:1471:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1471:51:1471:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1472:27:1472:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1472:36:1472:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1473:42:1473:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1473:51:1473:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1474:27:1474:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1474:36:1474:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1475:27:1475:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1475:36:1475:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1476:27:1476:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1476:36:1476:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1477:42:1477:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1477:42:1477:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1477:56:1477:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1478:42:1478:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1478:42:1478:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1478:56:1478:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1479:57:1479:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1479:66:1479:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1480:42:1480:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1480:51:1480:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1481:27:1481:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1481:36:1481:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1482:57:1482:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1482:66:1482:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1463:28:1463:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1463:37:1463:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1464:28:1464:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1464:37:1464:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1465:43:1465:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1465:43:1465:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1465:57:1465:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1466:43:1466:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1466:43:1466:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1466:57:1466:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1467:58:1467:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1467:67:1467:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1468:43:1468:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1468:52:1468:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1469:28:1469:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1469:37:1469:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1470:58:1470:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1470:67:1470:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1471:43:1471:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1471:52:1471:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1472:28:1472:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1472:37:1472:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1473:73:1473:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1473:82:1473:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1474:58:1474:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1474:67:1474:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1475:43:1475:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1475:52:1475:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1476:28:1476:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1476:37:1476:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1477:73:1477:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1477:82:1477:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1478:58:1478:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1478:67:1478:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1479:43:1479:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1479:52:1479:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1480:28:1480:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1480:37:1480:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1481:42:1481:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1481:51:1481:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1482:27:1482:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1482:36:1482:43 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1483:42:1483:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1483:51:1483:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1484:27:1484:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1484:36:1484:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1485:72:1485:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1485:81:1485:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1486:57:1486:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1486:66:1486:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1487:42:1487:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1487:51:1487:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1488:27:1488:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1488:36:1488:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1489:72:1489:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1489:81:1489:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1490:57:1490:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1490:66:1490:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1491:42:1491:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1491:51:1491:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1492:27:1492:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1492:36:1492:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1498:26:1498:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1499:26:1499:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1503:41:1503:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1504:56:1504:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1504:56:1504:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1504:70:1504:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1505:41:1505:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1506:26:1506:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1507:26:1507:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1511:41:1511:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1512:56:1512:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1512:56:1512:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1512:70:1512:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1485:27:1485:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1485:36:1485:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1486:27:1486:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1486:36:1486:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1487:42:1487:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1487:42:1487:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1487:56:1487:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1488:42:1488:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1488:42:1488:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1488:56:1488:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1489:57:1489:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1489:66:1489:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1490:42:1490:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1490:51:1490:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1491:27:1491:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1491:36:1491:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1492:57:1492:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1492:66:1492:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1493:42:1493:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1493:51:1493:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1494:27:1494:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1494:36:1494:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1495:72:1495:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1495:81:1495:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1496:57:1496:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1496:66:1496:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1497:42:1497:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1497:51:1497:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1498:27:1498:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1498:36:1498:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1499:72:1499:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1499:81:1499:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1500:57:1500:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1500:66:1500:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1501:42:1501:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1501:51:1501:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1502:27:1502:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1502:36:1502:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1508:26:1508:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1509:26:1509:33 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1513:41:1513:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1514:26:1514:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1515:26:1515:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1519:41:1519:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1520:56:1520:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1520:56:1520:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1520:70:1520:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1514:56:1514:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1514:56:1514:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1514:70:1514:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1515:41:1515:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1516:26:1516:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1517:26:1517:33 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1521:41:1521:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1522:25:1522:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1523:25:1523:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1527:40:1527:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1528:55:1528:77 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1528:55:1528:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1528:69:1528:76 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1529:40:1529:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1530:26:1530:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1531:26:1531:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1535:41:1535:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1536:56:1536:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1536:56:1536:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1536:70:1536:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1537:41:1537:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1538:25:1538:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1539:25:1539:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1543:40:1543:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1544:55:1544:77 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1544:55:1544:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1544:69:1544:76 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1545:40:1545:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1546:63:1546:70 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1547:63:1547:70 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1551:78:1551:85 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1552:78:1552:85 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1553:93:1553:115 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1553:93:1553:115 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1553:107:1553:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1554:42:1554:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1554:51:1554:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1555:27:1555:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1555:36:1555:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1556:42:1556:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1556:51:1556:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1557:27:1557:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1557:36:1557:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1558:27:1558:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1558:36:1558:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1559:27:1559:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1559:36:1559:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1560:42:1560:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1560:42:1560:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1560:56:1560:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1561:42:1561:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1561:42:1561:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1561:56:1561:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1562:57:1562:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1562:66:1562:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1563:42:1563:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1563:51:1563:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1564:27:1564:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1564:36:1564:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1565:57:1565:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1565:66:1565:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1522:56:1522:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1522:56:1522:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1522:70:1522:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1523:41:1523:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1524:26:1524:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1525:26:1525:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1529:41:1529:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1530:56:1530:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1530:56:1530:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1530:70:1530:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1531:41:1531:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1532:25:1532:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1533:25:1533:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1537:40:1537:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1538:55:1538:77 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1538:55:1538:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1538:69:1538:76 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1539:40:1539:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1540:26:1540:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1541:26:1541:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1545:41:1545:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1546:56:1546:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1546:56:1546:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1546:70:1546:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1547:41:1547:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1548:25:1548:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1549:25:1549:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1553:40:1553:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1554:55:1554:77 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1554:55:1554:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1554:69:1554:76 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1555:40:1555:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1556:63:1556:70 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1557:63:1557:70 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1561:78:1561:85 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1562:78:1562:85 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1563:93:1563:115 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1563:93:1563:115 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1563:107:1563:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1564:42:1564:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1564:51:1564:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1565:27:1565:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1565:36:1565:43 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1566:42:1566:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1566:51:1566:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1567:27:1567:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1567:36:1567:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1568:72:1568:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1568:81:1568:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1569:57:1569:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1569:66:1569:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1570:42:1570:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1570:51:1570:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1571:27:1571:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1571:36:1571:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1572:72:1572:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1572:81:1572:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1573:57:1573:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1573:66:1573:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1574:42:1574:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1574:51:1574:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1575:27:1575:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1575:36:1575:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1568:27:1568:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1568:36:1568:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1569:27:1569:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1569:36:1569:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1570:42:1570:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1570:42:1570:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1570:56:1570:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1571:42:1571:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1571:42:1571:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1571:56:1571:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1572:57:1572:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1572:66:1572:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1573:42:1573:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1573:51:1573:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1574:27:1574:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1574:36:1574:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1575:57:1575:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1575:66:1575:73 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1576:42:1576:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1576:51:1576:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1577:27:1577:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1577:36:1577:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1578:42:1578:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1578:51:1578:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1579:27:1579:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1579:36:1579:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1580:27:1580:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1580:36:1580:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1578:72:1578:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1578:81:1578:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1579:57:1579:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1579:66:1579:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1580:42:1580:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1580:51:1580:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1581:27:1581:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1581:36:1581:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1582:42:1582:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1582:42:1582:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1582:56:1582:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1583:42:1583:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1583:42:1583:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1583:56:1583:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1584:57:1584:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1584:66:1584:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1585:42:1585:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1585:51:1585:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1586:27:1586:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1586:36:1586:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1587:57:1587:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1587:66:1587:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1582:72:1582:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1582:81:1582:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1583:57:1583:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1583:66:1583:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1584:42:1584:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1584:51:1584:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1585:27:1585:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1585:36:1585:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1586:42:1586:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1586:51:1586:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1587:27:1587:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1587:36:1587:43 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1588:42:1588:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1588:51:1588:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1589:27:1589:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1589:36:1589:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1590:72:1590:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1590:81:1590:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1591:57:1591:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1591:66:1591:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1592:42:1592:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1592:51:1592:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1593:27:1593:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1593:36:1593:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1594:72:1594:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1594:81:1594:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1595:57:1595:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1595:66:1595:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1596:42:1596:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1596:51:1596:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1597:27:1597:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1597:36:1597:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1590:27:1590:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1590:36:1590:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1591:27:1591:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1591:36:1591:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1592:42:1592:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1592:42:1592:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1592:56:1592:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1593:42:1593:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1593:42:1593:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1593:56:1593:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1594:57:1594:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1594:66:1594:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1595:42:1595:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1595:51:1595:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1596:27:1596:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1596:36:1596:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1597:57:1597:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1597:66:1597:73 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1598:42:1598:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1598:51:1598:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1599:27:1599:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1599:36:1599:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1600:42:1600:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1600:51:1600:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1601:27:1601:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1601:36:1601:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1602:27:1602:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1602:36:1602:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1600:72:1600:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1600:81:1600:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1601:57:1601:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1601:66:1601:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1602:42:1602:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1602:51:1602:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1603:27:1603:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1603:36:1603:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1604:42:1604:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1604:42:1604:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1604:56:1604:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1605:42:1605:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1605:42:1605:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1605:56:1605:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1606:57:1606:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1606:66:1606:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1607:42:1607:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1607:51:1607:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1608:27:1608:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1608:36:1608:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1609:57:1609:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1609:66:1609:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1604:72:1604:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1604:81:1604:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1605:57:1605:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1605:66:1605:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1606:42:1606:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1606:51:1606:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1607:27:1607:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1607:36:1607:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1608:42:1608:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1608:51:1608:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1609:27:1609:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1609:36:1609:43 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1610:42:1610:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1610:51:1610:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1611:27:1611:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1611:36:1611:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1612:72:1612:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1612:81:1612:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1613:57:1613:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1613:66:1613:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1614:42:1614:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1614:51:1614:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1615:27:1615:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1615:36:1615:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1616:72:1616:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1616:81:1616:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1617:57:1617:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1617:66:1617:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1618:42:1618:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1618:51:1618:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1619:27:1619:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1619:36:1619:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1620:41:1620:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1620:50:1620:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1621:26:1621:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1621:35:1621:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1622:41:1622:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1622:50:1622:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1623:26:1623:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1623:35:1623:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1624:26:1624:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1624:35:1624:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1625:26:1625:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1625:35:1625:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1626:41:1626:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1626:41:1626:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1626:55:1626:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1627:41:1627:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1627:41:1627:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1627:55:1627:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1628:56:1628:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1628:65:1628:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1629:41:1629:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1629:50:1629:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1630:26:1630:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1630:35:1630:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1631:56:1631:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1631:65:1631:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1612:27:1612:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1612:36:1612:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1613:27:1613:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1613:36:1613:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1614:42:1614:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1614:42:1614:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1614:56:1614:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1615:42:1615:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1615:42:1615:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1615:56:1615:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1616:57:1616:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1616:66:1616:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1617:42:1617:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1617:51:1617:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1618:27:1618:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1618:36:1618:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1619:57:1619:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1619:66:1619:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1620:42:1620:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1620:51:1620:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1621:27:1621:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1621:36:1621:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1622:72:1622:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1622:81:1622:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1623:57:1623:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1623:66:1623:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1624:42:1624:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1624:51:1624:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1625:27:1625:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1625:36:1625:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1626:72:1626:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1626:81:1626:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1627:57:1627:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1627:66:1627:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1628:42:1628:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1628:51:1628:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1629:27:1629:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1629:36:1629:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1630:41:1630:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1630:50:1630:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1631:26:1631:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1631:35:1631:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1632:41:1632:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1632:50:1632:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1633:26:1633:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1633:35:1633:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1634:71:1634:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1634:80:1634:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1635:56:1635:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1635:65:1635:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1636:41:1636:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1636:50:1636:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1637:26:1637:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1637:35:1637:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1638:71:1638:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1638:80:1638:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1639:56:1639:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1639:65:1639:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1640:41:1640:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1640:50:1640:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1641:26:1641:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1641:35:1641:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1642:79:1642:95 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1642:88:1642:95 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1643:64:1643:80 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1643:73:1643:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1644:79:1644:95 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1644:88:1644:95 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1645:64:1645:80 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1645:73:1645:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1646:64:1646:80 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1646:73:1646:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1647:64:1647:80 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1647:73:1647:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1648:79:1648:101 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1648:79:1648:101 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1648:93:1648:100 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1649:79:1649:101 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1649:79:1649:101 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1649:93:1649:100 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1650:94:1650:110 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1650:103:1650:110 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1651:79:1651:95 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1651:88:1651:95 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1652:64:1652:80 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1652:73:1652:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1653:94:1653:110 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1653:103:1653:110 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1634:26:1634:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1634:35:1634:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1635:26:1635:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1635:35:1635:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1636:41:1636:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1636:41:1636:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1636:55:1636:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1637:41:1637:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1637:41:1637:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1637:55:1637:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1638:56:1638:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1638:65:1638:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1639:41:1639:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1639:50:1639:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1640:26:1640:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1640:35:1640:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1641:56:1641:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1641:65:1641:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1642:41:1642:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1642:50:1642:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1643:26:1643:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1643:35:1643:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1644:71:1644:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1644:80:1644:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1645:56:1645:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1645:65:1645:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1646:41:1646:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1646:50:1646:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1647:26:1647:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1647:35:1647:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1648:71:1648:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1648:80:1648:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1649:56:1649:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1649:65:1649:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1650:41:1650:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1650:50:1650:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1651:26:1651:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1651:35:1651:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1652:79:1652:95 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1652:88:1652:95 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1653:64:1653:80 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1653:73:1653:80 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1654:79:1654:95 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1654:88:1654:95 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1655:64:1655:80 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1655:73:1655:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1656:109:1656:125 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1656:118:1656:125 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1657:94:1657:110 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1657:103:1657:110 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1658:79:1658:95 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1658:88:1658:95 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1659:64:1659:80 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1659:73:1659:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1660:109:1660:125 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1660:118:1660:125 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1661:94:1661:110 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1661:103:1661:110 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1662:79:1662:95 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1662:88:1662:95 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1663:64:1663:80 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1663:73:1663:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1664:42:1664:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1664:51:1664:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1665:27:1665:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1665:36:1665:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1666:42:1666:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1666:51:1666:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1667:27:1667:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1667:36:1667:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1668:27:1668:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1668:36:1668:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1669:27:1669:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1669:36:1669:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1670:42:1670:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1670:42:1670:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1670:56:1670:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1671:42:1671:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1671:42:1671:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1671:56:1671:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1672:57:1672:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1672:66:1672:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1673:42:1673:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1673:51:1673:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1674:27:1674:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1674:36:1674:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1675:57:1675:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1675:66:1675:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1656:64:1656:80 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1656:73:1656:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1657:64:1657:80 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1657:73:1657:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1658:79:1658:101 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1658:79:1658:101 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1658:93:1658:100 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1659:79:1659:101 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1659:79:1659:101 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1659:93:1659:100 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1660:94:1660:110 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1660:103:1660:110 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1661:79:1661:95 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1661:88:1661:95 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1662:64:1662:80 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1662:73:1662:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1663:94:1663:110 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1663:103:1663:110 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1664:79:1664:95 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1664:88:1664:95 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1665:64:1665:80 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1665:73:1665:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1666:109:1666:125 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1666:118:1666:125 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1667:94:1667:110 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1667:103:1667:110 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1668:79:1668:95 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1668:88:1668:95 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1669:64:1669:80 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1669:73:1669:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1670:109:1670:125 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1670:118:1670:125 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1671:94:1671:110 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1671:103:1671:110 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1672:79:1672:95 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1672:88:1672:95 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1673:64:1673:80 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1673:73:1673:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1674:42:1674:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1674:51:1674:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1675:27:1675:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1675:36:1675:43 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1676:42:1676:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1676:51:1676:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1677:27:1677:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1677:36:1677:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1678:72:1678:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1678:81:1678:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1679:57:1679:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1679:66:1679:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1680:42:1680:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1680:51:1680:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1681:27:1681:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1681:36:1681:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1682:72:1682:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1682:81:1682:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1683:57:1683:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1683:66:1683:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1684:42:1684:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1684:51:1684:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1685:27:1685:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1685:36:1685:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1686:41:1686:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1686:50:1686:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1687:26:1687:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1687:35:1687:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1688:41:1688:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1688:50:1688:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1689:26:1689:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1689:35:1689:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1690:26:1690:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1690:35:1690:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1691:26:1691:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1691:35:1691:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1692:41:1692:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1692:41:1692:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1692:55:1692:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1693:41:1693:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1693:41:1693:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1693:55:1693:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1694:56:1694:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1694:65:1694:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1695:41:1695:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1695:50:1695:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1696:26:1696:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1696:35:1696:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1697:56:1697:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1697:65:1697:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1678:27:1678:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1678:36:1678:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1679:27:1679:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1679:36:1679:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1680:42:1680:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1680:42:1680:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1680:56:1680:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1681:42:1681:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1681:42:1681:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1681:56:1681:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1682:57:1682:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1682:66:1682:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1683:42:1683:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1683:51:1683:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1684:27:1684:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1684:36:1684:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1685:57:1685:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1685:66:1685:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1686:42:1686:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1686:51:1686:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1687:27:1687:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1687:36:1687:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1688:72:1688:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1688:81:1688:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1689:57:1689:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1689:66:1689:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1690:42:1690:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1690:51:1690:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1691:27:1691:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1691:36:1691:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1692:72:1692:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1692:81:1692:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1693:57:1693:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1693:66:1693:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1694:42:1694:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1694:51:1694:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1695:27:1695:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1695:36:1695:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1696:41:1696:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1696:50:1696:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1697:26:1697:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1697:35:1697:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1698:41:1698:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1698:50:1698:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1699:26:1699:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1699:35:1699:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1700:71:1700:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1700:80:1700:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1701:56:1701:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1701:65:1701:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1702:41:1702:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1702:50:1702:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1703:26:1703:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1703:35:1703:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1704:71:1704:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1704:80:1704:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1705:56:1705:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1705:65:1705:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1706:41:1706:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1706:50:1706:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1707:26:1707:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1707:35:1707:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1712:25:1712:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1712:34:1712:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1713:25:1713:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1713:34:1713:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1714:40:1714:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1715:25:1715:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1715:34:1715:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1716:40:1716:62 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1716:40:1716:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1716:54:1716:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1717:25:1717:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1717:34:1717:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1718:40:1718:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1719:55:1719:62 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1720:25:1720:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1720:55:1720:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1725:26:1725:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1725:35:1725:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1726:26:1726:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1726:35:1726:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1727:41:1727:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1728:26:1728:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1728:35:1728:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1729:41:1729:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1729:41:1729:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1729:55:1729:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1730:26:1730:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1730:35:1730:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1731:41:1731:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1732:56:1732:63 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1733:26:1733:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1733:35:1733:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1734:51:1734:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1734:60:1734:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1735:51:1735:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1735:60:1735:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1736:66:1736:73 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1737:51:1737:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1737:60:1737:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1738:66:1738:88 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1738:66:1738:88 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1738:80:1738:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1739:51:1739:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1739:60:1739:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1740:66:1740:73 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1741:81:1741:88 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1742:51:1742:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1742:60:1742:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1743:13:1743:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1743:66:1743:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1744:13:1744:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1744:81:1744:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1745:13:1745:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1745:96:1745:103 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1746:26:1746:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1746:35:1746:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1747:26:1747:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1747:35:1747:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1748:41:1748:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1749:26:1749:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1749:35:1749:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1750:41:1750:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1750:41:1750:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1750:55:1750:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1751:26:1751:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1751:35:1751:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1752:41:1752:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1753:56:1753:63 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1754:26:1754:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1754:35:1754:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1755:51:1755:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1755:60:1755:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1756:51:1756:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1756:60:1756:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1757:66:1757:73 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1758:51:1758:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1758:60:1758:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1759:66:1759:88 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1759:66:1759:88 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1759:80:1759:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1760:51:1760:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1760:60:1760:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1761:66:1761:73 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1762:81:1762:88 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1763:51:1763:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1763:60:1763:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1764:13:1764:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1764:66:1764:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1765:13:1765:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1765:81:1765:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1766:13:1766:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1766:96:1766:103 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1767:25:1767:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1767:34:1767:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1768:25:1768:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1768:34:1768:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1769:40:1769:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1770:25:1770:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1770:34:1770:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1771:40:1771:62 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1771:40:1771:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1771:54:1771:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1772:25:1772:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1772:34:1772:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1773:40:1773:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1774:55:1774:62 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1775:25:1775:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1775:34:1775:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1776:50:1776:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1776:59:1776:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1777:50:1777:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1777:59:1777:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1778:65:1778:72 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1779:50:1779:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1779:59:1779:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1780:65:1780:87 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1780:65:1780:87 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1780:79:1780:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1781:50:1781:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1781:59:1781:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1782:65:1782:72 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1783:80:1783:87 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1784:50:1784:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1784:59:1784:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1785:13:1785:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1785:65:1785:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1786:13:1786:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1786:80:1786:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1787:13:1787:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1787:95:1787:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1788:26:1788:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1788:35:1788:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1789:26:1789:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1789:35:1789:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1790:41:1790:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1791:26:1791:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1791:35:1791:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1792:41:1792:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1792:41:1792:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1792:55:1792:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1793:26:1793:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1793:35:1793:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1794:41:1794:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1795:56:1795:63 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1796:26:1796:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1796:35:1796:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1797:51:1797:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1797:60:1797:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1798:51:1798:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1798:60:1798:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1799:66:1799:73 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1800:51:1800:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1800:60:1800:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1801:66:1801:88 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1801:66:1801:88 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1801:80:1801:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1802:51:1802:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1802:60:1802:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1803:66:1803:73 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1804:81:1804:88 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1805:51:1805:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1805:60:1805:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1806:13:1806:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1806:66:1806:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1807:13:1807:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1807:81:1807:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1808:13:1808:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1808:96:1808:103 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1809:25:1809:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1809:34:1809:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1810:25:1810:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1810:34:1810:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1811:40:1811:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1812:25:1812:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1812:34:1812:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1813:40:1813:62 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1813:40:1813:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1813:54:1813:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1814:25:1814:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1814:34:1814:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1815:40:1815:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1816:55:1816:62 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1817:25:1817:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1817:34:1817:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1818:50:1818:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1818:59:1818:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1819:50:1819:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1819:59:1819:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1820:65:1820:72 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1821:50:1821:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1821:59:1821:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1822:65:1822:87 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1822:65:1822:87 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1822:79:1822:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1823:50:1823:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1823:59:1823:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1824:65:1824:72 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1825:80:1825:87 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1826:50:1826:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1826:59:1826:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1827:13:1827:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1827:65:1827:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1828:13:1828:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1828:80:1828:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1829:13:1829:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1829:95:1829:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1834:33:1834:40 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1835:26:1835:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1836:26:1836:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1837:26:1837:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1838:26:1838:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1839:25:1839:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1840:25:1840:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1841:26:1841:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1842:26:1842:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1843:25:1843:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1844:25:1844:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1845:27:1845:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1846:27:1846:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1850:28:1850:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1850:37:1850:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1851:43:1851:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1851:43:1851:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1851:57:1851:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1853:21:1853:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1853:30:1853:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1854:36:1854:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1854:45:1854:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1855:21:1855:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1855:30:1855:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1856:51:1856:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1856:60:1856:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1857:36:1857:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1857:45:1857:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1858:21:1858:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1858:30:1858:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1859:66:1859:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1859:75:1859:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1860:51:1860:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1860:60:1860:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1861:36:1861:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1861:45:1861:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1862:21:1862:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1862:30:1862:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1863:81:1863:97 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1863:90:1863:97 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1864:66:1864:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1864:75:1864:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1865:51:1865:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1865:60:1865:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1866:36:1866:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1866:45:1866:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1867:21:1867:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1867:30:1867:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1868:96:1868:112 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1868:105:1868:112 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1869:81:1869:97 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1869:90:1869:97 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1870:66:1870:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1870:75:1870:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1871:51:1871:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1871:60:1871:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1872:36:1872:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1872:45:1872:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1873:21:1873:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1873:30:1873:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1874:111:1874:127 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1874:120:1874:127 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1875:96:1875:112 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1875:105:1875:112 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1876:81:1876:97 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1876:90:1876:97 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1877:66:1877:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1877:75:1877:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1878:51:1878:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1878:60:1878:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1879:36:1879:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1879:45:1879:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1880:21:1880:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1880:30:1880:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1881:126:1881:142 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1881:135:1881:142 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1882:111:1882:127 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1882:120:1882:127 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1883:96:1883:112 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1883:105:1883:112 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1884:81:1884:97 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1884:90:1884:97 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1885:66:1885:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1885:75:1885:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1886:51:1886:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1886:60:1886:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1887:36:1887:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1887:45:1887:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1888:21:1888:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1888:30:1888:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1889:141:1889:157 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1889:150:1889:157 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1890:126:1890:142 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1890:135:1890:142 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1891:111:1891:127 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1891:120:1891:127 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1892:96:1892:112 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1892:105:1892:112 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1893:81:1893:97 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1893:90:1893:97 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1894:66:1894:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1894:75:1894:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1895:51:1895:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1895:60:1895:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1896:36:1896:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1896:45:1896:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1897:21:1897:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1897:30:1897:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1898:156:1898:172 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1898:165:1898:172 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1700:26:1700:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1700:35:1700:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1701:26:1701:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1701:35:1701:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1702:41:1702:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1702:41:1702:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1702:55:1702:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1703:41:1703:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1703:41:1703:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1703:55:1703:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1704:56:1704:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1704:65:1704:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1705:41:1705:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1705:50:1705:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1706:26:1706:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1706:35:1706:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1707:56:1707:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1707:65:1707:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1708:41:1708:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1708:50:1708:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1709:26:1709:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1709:35:1709:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1710:71:1710:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1710:80:1710:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1711:56:1711:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1711:65:1711:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1712:41:1712:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1712:50:1712:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1713:26:1713:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1713:35:1713:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1714:71:1714:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1714:80:1714:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1715:56:1715:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1715:65:1715:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1716:41:1716:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1716:50:1716:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1717:26:1717:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1717:35:1717:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1722:25:1722:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1722:34:1722:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1723:25:1723:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1723:34:1723:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1724:40:1724:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1725:25:1725:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1725:34:1725:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1726:40:1726:62 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1726:40:1726:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1726:54:1726:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1727:25:1727:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1727:34:1727:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1728:40:1728:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1729:55:1729:62 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1730:25:1730:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1730:55:1730:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1735:26:1735:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1735:35:1735:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1736:26:1736:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1736:35:1736:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1737:41:1737:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1738:26:1738:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1738:35:1738:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1739:41:1739:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1739:41:1739:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1739:55:1739:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1740:26:1740:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1740:35:1740:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1741:41:1741:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1742:56:1742:63 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1743:26:1743:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1743:35:1743:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1744:51:1744:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1744:60:1744:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1745:51:1745:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1745:60:1745:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1746:66:1746:73 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1747:51:1747:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1747:60:1747:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1748:66:1748:88 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1748:66:1748:88 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1748:80:1748:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1749:51:1749:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1749:60:1749:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1750:66:1750:73 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1751:81:1751:88 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1752:51:1752:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1752:60:1752:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1753:13:1753:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1753:66:1753:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1754:13:1754:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1754:81:1754:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1755:13:1755:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1755:96:1755:103 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1756:26:1756:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1756:35:1756:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1757:26:1757:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1757:35:1757:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1758:41:1758:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1759:26:1759:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1759:35:1759:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1760:41:1760:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1760:41:1760:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1760:55:1760:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1761:26:1761:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1761:35:1761:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1762:41:1762:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1763:56:1763:63 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1764:26:1764:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1764:35:1764:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1765:51:1765:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1765:60:1765:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1766:51:1766:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1766:60:1766:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1767:66:1767:73 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1768:51:1768:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1768:60:1768:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1769:66:1769:88 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1769:66:1769:88 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1769:80:1769:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1770:51:1770:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1770:60:1770:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1771:66:1771:73 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1772:81:1772:88 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1773:51:1773:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1773:60:1773:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1774:13:1774:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1774:66:1774:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1775:13:1775:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1775:81:1775:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1776:13:1776:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1776:96:1776:103 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1777:25:1777:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1777:34:1777:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1778:25:1778:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1778:34:1778:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1779:40:1779:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1780:25:1780:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1780:34:1780:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1781:40:1781:62 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1781:40:1781:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1781:54:1781:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1782:25:1782:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1782:34:1782:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1783:40:1783:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1784:55:1784:62 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1785:25:1785:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1785:34:1785:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1786:50:1786:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1786:59:1786:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1787:50:1787:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1787:59:1787:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1788:65:1788:72 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1789:50:1789:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1789:59:1789:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1790:65:1790:87 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1790:65:1790:87 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1790:79:1790:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1791:50:1791:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1791:59:1791:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1792:65:1792:72 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1793:80:1793:87 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1794:50:1794:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1794:59:1794:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1795:13:1795:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1795:65:1795:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1796:13:1796:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1796:80:1796:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1797:13:1797:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1797:95:1797:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1798:26:1798:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1798:35:1798:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1799:26:1799:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1799:35:1799:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1800:41:1800:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1801:26:1801:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1801:35:1801:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1802:41:1802:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1802:41:1802:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1802:55:1802:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1803:26:1803:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1803:35:1803:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1804:41:1804:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1805:56:1805:63 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1806:26:1806:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1806:35:1806:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1807:51:1807:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1807:60:1807:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1808:51:1808:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1808:60:1808:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1809:66:1809:73 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1810:51:1810:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1810:60:1810:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1811:66:1811:88 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1811:66:1811:88 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1811:80:1811:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1812:51:1812:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1812:60:1812:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1813:66:1813:73 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1814:81:1814:88 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1815:51:1815:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1815:60:1815:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1816:13:1816:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1816:66:1816:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1817:13:1817:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1817:81:1817:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1818:13:1818:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1818:96:1818:103 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1819:25:1819:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1819:34:1819:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1820:25:1820:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1820:34:1820:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1821:40:1821:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1822:25:1822:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1822:34:1822:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1823:40:1823:62 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1823:40:1823:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1823:54:1823:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1824:25:1824:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1824:34:1824:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1825:40:1825:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1826:55:1826:62 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1827:25:1827:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1827:34:1827:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1828:50:1828:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1828:59:1828:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1829:50:1829:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1829:59:1829:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1830:65:1830:72 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1831:50:1831:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1831:59:1831:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1832:65:1832:87 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1832:65:1832:87 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1832:79:1832:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1833:50:1833:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1833:59:1833:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1834:65:1834:72 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1835:80:1835:87 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1836:50:1836:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1836:59:1836:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1837:13:1837:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1837:65:1837:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1838:13:1838:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1838:80:1838:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1839:13:1839:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1839:95:1839:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1844:33:1844:40 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1845:26:1845:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1846:26:1846:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1847:26:1847:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1848:26:1848:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1849:25:1849:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1850:25:1850:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1851:26:1851:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1852:26:1852:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1853:25:1853:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1854:25:1854:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1855:27:1855:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1856:27:1856:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1860:28:1860:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1860:37:1860:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1861:43:1861:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1861:43:1861:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1861:57:1861:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1863:21:1863:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1863:30:1863:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1864:36:1864:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1864:45:1864:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1865:21:1865:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1865:30:1865:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1866:51:1866:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1866:60:1866:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1867:36:1867:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1867:45:1867:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1868:21:1868:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1868:30:1868:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1869:66:1869:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1869:75:1869:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1870:51:1870:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1870:60:1870:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1871:36:1871:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1871:45:1871:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1872:21:1872:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1872:30:1872:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1873:81:1873:97 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1873:90:1873:97 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1874:66:1874:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1874:75:1874:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1875:51:1875:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1875:60:1875:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1876:36:1876:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1876:45:1876:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1877:21:1877:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1877:30:1877:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1878:96:1878:112 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1878:105:1878:112 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1879:81:1879:97 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1879:90:1879:97 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1880:66:1880:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1880:75:1880:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1881:51:1881:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1881:60:1881:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1882:36:1882:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1882:45:1882:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1883:21:1883:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1883:30:1883:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1884:111:1884:127 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1884:120:1884:127 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1885:96:1885:112 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1885:105:1885:112 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1886:81:1886:97 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1886:90:1886:97 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1887:66:1887:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1887:75:1887:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1888:51:1888:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1888:60:1888:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1889:36:1889:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1889:45:1889:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1890:21:1890:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1890:30:1890:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1891:126:1891:142 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1891:135:1891:142 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1892:111:1892:127 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1892:120:1892:127 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1893:96:1893:112 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1893:105:1893:112 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1894:81:1894:97 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1894:90:1894:97 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1895:66:1895:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1895:75:1895:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1896:51:1896:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1896:60:1896:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1897:36:1897:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1897:45:1897:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1898:21:1898:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1898:30:1898:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1899:141:1899:157 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1899:150:1899:157 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1900:126:1900:142 | (...)... | semmle.label | (...)... | @@ -7707,78 +7687,83 @@ nodes | LogInjectionTest.java:1906:45:1906:52 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1907:21:1907:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1907:30:1907:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1908:171:1908:187 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1908:180:1908:187 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1909:156:1909:172 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1909:165:1909:172 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1910:141:1910:157 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1910:150:1910:157 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1911:126:1911:142 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1911:135:1911:142 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1912:111:1912:127 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1912:120:1912:127 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1913:96:1913:112 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1913:105:1913:112 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1914:81:1914:97 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1914:90:1914:97 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1915:66:1915:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1915:75:1915:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1916:51:1916:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1916:60:1916:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1917:36:1917:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1917:45:1917:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1918:21:1918:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1918:30:1918:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1919:186:1919:207 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1919:186:1919:207 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1919:199:1919:206 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1920:171:1920:187 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1920:180:1920:187 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1921:156:1921:172 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1921:165:1921:172 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1922:141:1922:157 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1922:150:1922:157 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1923:126:1923:142 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1923:135:1923:142 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1924:111:1924:127 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1924:120:1924:127 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1925:96:1925:112 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1925:105:1925:112 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1926:81:1926:97 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1926:90:1926:97 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1927:66:1927:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1927:75:1927:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1928:51:1928:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1928:60:1928:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1929:36:1929:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1929:45:1929:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1930:21:1930:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1930:30:1930:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1932:21:1932:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1932:30:1932:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1933:21:1933:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1933:30:1933:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1934:21:1934:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1934:30:1934:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1935:21:1935:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1935:30:1935:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1936:21:1936:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1936:30:1936:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1937:21:1937:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1937:30:1937:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1938:36:1938:43 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1939:21:1939:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1939:30:1939:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1940:36:1940:43 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1941:21:1941:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1941:30:1941:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1942:36:1942:43 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1908:156:1908:172 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1908:165:1908:172 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1909:141:1909:157 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1909:150:1909:157 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1910:126:1910:142 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1910:135:1910:142 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1911:111:1911:127 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1911:120:1911:127 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1912:96:1912:112 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1912:105:1912:112 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1913:81:1913:97 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1913:90:1913:97 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1914:66:1914:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1914:75:1914:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1915:51:1915:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1915:60:1915:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1916:36:1916:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1916:45:1916:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1917:21:1917:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1917:30:1917:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1918:171:1918:187 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1918:180:1918:187 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1919:156:1919:172 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1919:165:1919:172 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1920:141:1920:157 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1920:150:1920:157 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1921:126:1921:142 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1921:135:1921:142 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1922:111:1922:127 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1922:120:1922:127 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1923:96:1923:112 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1923:105:1923:112 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1924:81:1924:97 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1924:90:1924:97 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1925:66:1925:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1925:75:1925:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1926:51:1926:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1926:60:1926:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1927:36:1927:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1927:45:1927:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1928:21:1928:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1928:30:1928:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1929:186:1929:207 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1929:186:1929:207 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1929:199:1929:206 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1930:171:1930:187 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1930:180:1930:187 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1931:156:1931:172 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1931:165:1931:172 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1932:141:1932:157 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1932:150:1932:157 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1933:126:1933:142 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1933:135:1933:142 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1934:111:1934:127 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1934:120:1934:127 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1935:96:1935:112 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1935:105:1935:112 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1936:81:1936:97 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1936:90:1936:97 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1937:66:1937:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1937:75:1937:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1938:51:1938:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1938:60:1938:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1939:36:1939:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1939:45:1939:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1940:21:1940:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1940:30:1940:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1942:21:1942:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1942:30:1942:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1943:21:1943:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1943:30:1943:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1944:36:1944:43 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1944:21:1944:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1944:30:1944:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1945:21:1945:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1945:30:1945:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1946:36:1946:43 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1946:21:1946:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1946:30:1946:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1947:21:1947:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1947:30:1947:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1948:36:1948:43 | source(...) | semmle.label | source(...) | @@ -7790,48 +7775,43 @@ nodes | LogInjectionTest.java:1952:36:1952:43 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1953:21:1953:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1953:30:1953:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1954:43:1954:50 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1954:36:1954:43 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1955:21:1955:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1955:30:1955:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1956:41:1956:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1956:36:1956:43 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1957:21:1957:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1957:30:1957:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1958:46:1958:53 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1958:36:1958:43 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1959:21:1959:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1959:30:1959:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1960:47:1960:54 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1960:36:1960:43 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1961:21:1961:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1961:30:1961:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1962:39:1962:46 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1962:36:1962:43 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1963:21:1963:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1963:30:1963:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1964:40:1964:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1964:43:1964:50 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1965:21:1965:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1965:30:1965:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1966:47:1966:54 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1966:41:1966:48 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1967:21:1967:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1967:30:1967:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1968:48:1968:55 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1968:46:1968:53 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1969:21:1969:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1969:30:1969:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1970:21:1970:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1970:30:1970:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1970:47:1970:54 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1971:21:1971:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1971:30:1971:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1972:21:1972:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1972:30:1972:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1972:39:1972:46 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1973:21:1973:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1973:30:1973:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1974:21:1974:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1974:30:1974:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1974:40:1974:47 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1975:21:1975:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1975:30:1975:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1976:21:1976:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1976:30:1976:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1976:47:1976:54 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1977:21:1977:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1977:30:1977:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1978:21:1978:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1978:30:1978:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1978:48:1978:55 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1979:21:1979:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1979:30:1979:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1980:21:1980:37 | (...)... | semmle.label | (...)... | @@ -7940,162 +7920,162 @@ nodes | LogInjectionTest.java:2031:30:2031:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2032:21:2032:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2032:30:2032:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2037:27:2037:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2037:36:2037:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2038:27:2038:64 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2038:57:2038:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2039:25:2039:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2039:34:2039:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2040:25:2040:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2040:55:2040:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2041:26:2041:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2041:35:2041:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2042:26:2042:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2042:56:2042:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2043:27:2043:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2043:36:2043:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2044:27:2044:64 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2044:57:2044:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2045:25:2045:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2045:34:2045:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2046:25:2046:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2046:55:2046:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2033:21:2033:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2033:30:2033:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2034:21:2034:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2034:30:2034:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2035:21:2035:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2035:30:2035:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2036:21:2036:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2036:30:2036:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2037:21:2037:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2037:30:2037:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2038:21:2038:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2038:30:2038:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2039:21:2039:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2039:30:2039:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2040:21:2040:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2040:30:2040:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2041:21:2041:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2041:30:2041:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2042:21:2042:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2042:30:2042:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2047:27:2047:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2047:36:2047:43 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2048:27:2048:64 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2048:57:2048:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2049:28:2049:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2049:37:2049:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2050:28:2050:65 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2050:58:2050:65 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2051:29:2051:45 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2051:38:2051:45 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2052:44:2052:60 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2052:53:2052:60 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2053:29:2053:45 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2053:38:2053:45 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2054:44:2054:60 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2054:53:2054:60 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2055:59:2055:75 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2055:68:2055:75 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2056:29:2056:45 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2056:38:2056:45 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2057:44:2057:60 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2057:53:2057:60 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2058:59:2058:81 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:2058:59:2058:81 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:2058:73:2058:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2049:25:2049:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2049:34:2049:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2050:25:2050:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2050:55:2050:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2051:26:2051:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2051:35:2051:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2052:26:2052:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2052:56:2052:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2053:27:2053:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2053:36:2053:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2054:27:2054:64 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2054:57:2054:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2055:25:2055:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2055:34:2055:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2056:25:2056:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2056:55:2056:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2057:27:2057:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2057:36:2057:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2058:27:2058:64 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2058:57:2058:64 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2059:28:2059:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2059:37:2059:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2060:43:2060:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2060:52:2060:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2061:28:2061:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2061:37:2061:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2062:43:2062:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2062:52:2062:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2063:58:2063:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2063:67:2063:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2064:56:2064:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2064:65:2064:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2065:56:2065:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2065:65:2065:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2066:71:2066:78 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:2067:56:2067:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2067:65:2067:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2068:71:2068:92 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:2068:71:2068:92 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:2068:84:2068:91 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2069:56:2069:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2069:65:2069:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2070:56:2070:93 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2070:86:2070:93 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2071:74:2071:111 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2071:104:2071:111 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2072:24:2072:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2072:36:2072:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2073:57:2073:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2073:66:2073:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2074:72:2074:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2074:81:2074:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2075:87:2075:103 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2075:96:2075:103 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2076:57:2076:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2076:66:2076:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2077:72:2077:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2077:81:2077:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2078:87:2078:103 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2078:96:2078:103 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2079:102:2079:109 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:2080:57:2080:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2080:66:2080:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2081:72:2081:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2081:81:2081:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2082:87:2082:103 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2082:96:2082:103 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2083:102:2083:124 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:2083:102:2083:124 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:2083:116:2083:123 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2084:57:2084:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2084:66:2084:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2085:72:2085:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2085:81:2085:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2086:87:2086:103 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2086:96:2086:103 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2087:57:2087:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2087:66:2087:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2088:72:2088:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2088:81:2088:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2089:87:2089:124 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2089:117:2089:124 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2060:28:2060:65 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2060:58:2060:65 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2061:29:2061:45 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2061:38:2061:45 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2062:44:2062:60 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2062:53:2062:60 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2063:29:2063:45 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2063:38:2063:45 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2064:44:2064:60 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2064:53:2064:60 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2065:59:2065:75 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2065:68:2065:75 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2066:29:2066:45 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2066:38:2066:45 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2067:44:2067:60 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2067:53:2067:60 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2068:59:2068:81 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:2068:59:2068:81 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:2068:73:2068:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2069:28:2069:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2069:37:2069:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2070:43:2070:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2070:52:2070:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2071:28:2071:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2071:37:2071:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2072:43:2072:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2072:52:2072:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2073:58:2073:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2073:67:2073:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2074:56:2074:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2074:65:2074:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2075:56:2075:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2075:65:2075:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2076:71:2076:78 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:2077:56:2077:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2077:65:2077:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2078:71:2078:92 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:2078:71:2078:92 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:2078:84:2078:91 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2079:56:2079:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2079:65:2079:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2080:56:2080:93 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2080:86:2080:93 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2081:74:2081:111 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2081:104:2081:111 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2082:24:2082:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2082:36:2082:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2083:57:2083:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2083:66:2083:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2084:72:2084:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2084:81:2084:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2085:87:2085:103 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2085:96:2085:103 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2086:57:2086:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2086:66:2086:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2087:72:2087:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2087:81:2087:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2088:87:2088:103 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2088:96:2088:103 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2089:102:2089:109 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:2090:57:2090:73 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2090:66:2090:73 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2091:72:2091:88 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2091:81:2091:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2092:105:2092:142 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2092:135:2092:142 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2093:58:2093:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2093:67:2093:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2094:73:2094:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2094:82:2094:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2095:111:2095:127 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2095:120:2095:127 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2096:126:2096:148 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:2096:126:2096:148 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:2096:140:2096:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2097:58:2097:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2097:67:2097:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2098:73:2098:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2098:82:2098:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2099:111:2099:127 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2099:120:2099:127 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2100:58:2100:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2100:67:2100:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2101:73:2101:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2101:82:2101:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2102:88:2102:104 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2102:97:2102:104 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2103:103:2103:119 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2103:112:2103:119 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2104:58:2104:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2104:67:2104:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2105:73:2105:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2105:82:2105:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2106:88:2106:104 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2106:97:2106:104 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2107:103:2107:119 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2107:112:2107:119 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2108:118:2108:125 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:2109:58:2109:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2109:67:2109:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2110:73:2110:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2110:82:2110:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2111:88:2111:104 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2111:97:2111:104 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2112:103:2112:119 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2112:112:2112:119 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2113:118:2113:140 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:2113:118:2113:140 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:2113:132:2113:139 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2092:87:2092:103 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2092:96:2092:103 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2093:102:2093:124 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:2093:102:2093:124 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:2093:116:2093:123 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2094:57:2094:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2094:66:2094:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2095:72:2095:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2095:81:2095:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2096:87:2096:103 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2096:96:2096:103 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2097:57:2097:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2097:66:2097:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2098:72:2098:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2098:81:2098:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2099:87:2099:124 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2099:117:2099:124 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2100:57:2100:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2100:66:2100:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2101:72:2101:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2101:81:2101:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2102:105:2102:142 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2102:135:2102:142 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2103:58:2103:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2103:67:2103:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2104:73:2104:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2104:82:2104:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2105:111:2105:127 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2105:120:2105:127 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2106:126:2106:148 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:2106:126:2106:148 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:2106:140:2106:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2107:58:2107:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2107:67:2107:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2108:73:2108:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2108:82:2108:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2109:111:2109:127 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2109:120:2109:127 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2110:58:2110:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2110:67:2110:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2111:73:2111:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2111:82:2111:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2112:88:2112:104 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2112:97:2112:104 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2113:103:2113:119 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2113:112:2113:119 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2114:58:2114:74 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2114:67:2114:74 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2115:73:2115:89 | (...)... | semmle.label | (...)... | @@ -8104,28 +8084,48 @@ nodes | LogInjectionTest.java:2116:97:2116:104 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2117:103:2117:119 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2117:112:2117:119 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2121:36:2121:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2121:45:2121:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2122:36:2122:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2122:45:2122:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2123:36:2123:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2123:45:2123:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2124:36:2124:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2124:45:2124:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2125:36:2125:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2125:45:2125:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2126:38:2126:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2126:47:2126:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2131:38:2131:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2131:47:2131:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2133:38:2133:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2133:47:2133:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2135:38:2135:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2135:47:2135:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2137:38:2137:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2137:47:2137:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2139:38:2139:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2139:47:2139:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2118:118:2118:125 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:2119:58:2119:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2119:67:2119:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2120:73:2120:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2120:82:2120:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2121:88:2121:104 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2121:97:2121:104 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2122:103:2122:119 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2122:112:2122:119 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2123:118:2123:140 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:2123:118:2123:140 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:2123:132:2123:139 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2124:58:2124:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2124:67:2124:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2125:73:2125:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2125:82:2125:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2126:88:2126:104 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2126:97:2126:104 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2127:103:2127:119 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2127:112:2127:119 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2131:36:2131:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2131:45:2131:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2132:36:2132:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2132:45:2132:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2133:36:2133:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2133:45:2133:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2134:36:2134:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2134:45:2134:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2135:36:2135:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2135:45:2135:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2136:38:2136:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2136:47:2136:54 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2141:38:2141:54 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2141:47:2141:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2143:38:2143:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2143:47:2143:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2145:38:2145:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2145:47:2145:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2147:38:2147:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2147:47:2147:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2149:38:2149:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2149:47:2149:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2151:38:2151:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2151:47:2151:54 | source(...) : Object | semmle.label | source(...) : Object | subpaths diff --git a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.ext.yml b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.ext.yml index 2ed1c17f6fe3..b9c9ffc5b940 100644 --- a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.ext.yml +++ b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.ext.yml @@ -4,3 +4,5 @@ extensions: extensible: sourceModel data: - ["loginjection", "LogInjectionTest", False, "source", "()", "", "ReturnValue", "remote", "manual"] + - ["loginjection", "LogInjectionTest", False, "validatedInput", "()", "", "ReturnValue", "remote", "manual"] + - ["loginjection", "LogInjectionTest", False, "validatedInputField", "", "", "", "remote", "manual"] diff --git a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.java b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.java index 118a55bc7fad..00d986c09121 100644 --- a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.java +++ b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.java @@ -19,6 +19,14 @@ import org.slf4j.spi.LoggingEventBuilder; public class LogInjectionTest { + @javax.validation.constraints.Pattern(regexp = "^[a-zA-Z0-9]*$") + public String validatedInputField; + + @javax.validation.constraints.Pattern(regexp = "[^\n\r]*") + public String validatedInput() { + return (String) source(); + } + public Object source() { return null; } @@ -187,6 +195,8 @@ public void testGuards() { logger.debug(source); // $ MISSING: $ Alert } + logger.debug(validatedInputField); + logger.debug(validatedInput()); } public void test() { diff --git a/java/ql/test/query-tests/security/CWE-117/options b/java/ql/test/query-tests/security/CWE-117/options index 372b08b08066..b0b3d9323e95 100644 --- a/java/ql/test/query-tests/security/CWE-117/options +++ b/java/ql/test/query-tests/security/CWE-117/options @@ -1 +1 @@ -//semmle-extractor-options: --javac-args -cp ${testdir}/../../../stubs/apache-log4j-1.2.17:${testdir}/../../../stubs/apache-log4j-2.14.1:${testdir}/../../../stubs/apache-commons-logging-1.2:${testdir}/../../../stubs/jboss-logging-3.4.2:${testdir}/../../../stubs/slf4j-2.0.0:${testdir}/../../../stubs/scijava-common-2.87.1:${testdir}/../../../stubs/flogger-0.7.1:${testdir}/../../../stubs/google-android-9.0.0:${testdir}/../../../stubs/apache-cxf \ No newline at end of file +//semmle-extractor-options: --javac-args -cp ${testdir}/../../../stubs/javax-validation-constraints:${testdir}/../../../stubs/apache-log4j-1.2.17:${testdir}/../../../stubs/apache-log4j-2.14.1:${testdir}/../../../stubs/apache-commons-logging-1.2:${testdir}/../../../stubs/jboss-logging-3.4.2:${testdir}/../../../stubs/slf4j-2.0.0:${testdir}/../../../stubs/scijava-common-2.87.1:${testdir}/../../../stubs/flogger-0.7.1:${testdir}/../../../stubs/google-android-9.0.0:${testdir}/../../../stubs/apache-cxf diff --git a/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected b/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected index 3fdd2395fcb7..a0bbc205a39f 100644 --- a/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected +++ b/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected @@ -228,30 +228,32 @@ | JdbcUrlSSRF.java:88:19:88:25 | jdbcUrl | JdbcUrlSSRF.java:80:26:80:56 | getParameter(...) : String | JdbcUrlSSRF.java:88:19:88:25 | jdbcUrl | Potential server-side request forgery due to a $@. | JdbcUrlSSRF.java:80:26:80:56 | getParameter(...) | user-provided value | | ReactiveWebClientSSRF.java:16:52:16:54 | url | ReactiveWebClientSSRF.java:15:26:15:52 | getParameter(...) : String | ReactiveWebClientSSRF.java:16:52:16:54 | url | Potential server-side request forgery due to a $@. | ReactiveWebClientSSRF.java:15:26:15:52 | getParameter(...) | user-provided value | | ReactiveWebClientSSRF.java:35:30:35:32 | url | ReactiveWebClientSSRF.java:32:26:32:52 | getParameter(...) : String | ReactiveWebClientSSRF.java:35:30:35:32 | url | Potential server-side request forgery due to a $@. | ReactiveWebClientSSRF.java:32:26:32:52 | getParameter(...) | user-provided value | -| SanitizationTests.java:24:52:24:54 | uri | SanitizationTests.java:21:31:21:57 | getParameter(...) : String | SanitizationTests.java:24:52:24:54 | uri | Potential server-side request forgery due to a $@. | SanitizationTests.java:21:31:21:57 | getParameter(...) | user-provided value | -| SanitizationTests.java:25:25:25:25 | r | SanitizationTests.java:21:31:21:57 | getParameter(...) : String | SanitizationTests.java:25:25:25:25 | r | Potential server-side request forgery due to a $@. | SanitizationTests.java:21:31:21:57 | getParameter(...) | user-provided value | -| SanitizationTests.java:78:59:78:77 | new URI(...) | SanitizationTests.java:77:33:77:63 | getParameter(...) : String | SanitizationTests.java:78:59:78:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:77:33:77:63 | getParameter(...) | user-provided value | -| SanitizationTests.java:79:25:79:32 | unsafer3 | SanitizationTests.java:77:33:77:63 | getParameter(...) : String | SanitizationTests.java:79:25:79:32 | unsafer3 | Potential server-side request forgery due to a $@. | SanitizationTests.java:77:33:77:63 | getParameter(...) | user-provided value | -| SanitizationTests.java:82:59:82:77 | new URI(...) | SanitizationTests.java:81:49:81:79 | getParameter(...) : String | SanitizationTests.java:82:59:82:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:81:49:81:79 | getParameter(...) | user-provided value | -| SanitizationTests.java:83:25:83:32 | unsafer4 | SanitizationTests.java:81:49:81:79 | getParameter(...) : String | SanitizationTests.java:83:25:83:32 | unsafer4 | Potential server-side request forgery due to a $@. | SanitizationTests.java:81:49:81:79 | getParameter(...) | user-provided value | -| SanitizationTests.java:87:59:87:88 | new URI(...) | SanitizationTests.java:86:31:86:61 | getParameter(...) : String | SanitizationTests.java:87:59:87:88 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:86:31:86:61 | getParameter(...) | user-provided value | -| SanitizationTests.java:88:25:88:32 | unsafer5 | SanitizationTests.java:86:31:86:61 | getParameter(...) : String | SanitizationTests.java:88:25:88:32 | unsafer5 | Potential server-side request forgery due to a $@. | SanitizationTests.java:86:31:86:61 | getParameter(...) | user-provided value | -| SanitizationTests.java:92:60:92:89 | new URI(...) | SanitizationTests.java:90:58:90:86 | getParameter(...) : String | SanitizationTests.java:92:60:92:89 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:90:58:90:86 | getParameter(...) | user-provided value | -| SanitizationTests.java:93:25:93:33 | unsafer5a | SanitizationTests.java:90:58:90:86 | getParameter(...) : String | SanitizationTests.java:93:25:93:33 | unsafer5a | Potential server-side request forgery due to a $@. | SanitizationTests.java:90:58:90:86 | getParameter(...) | user-provided value | -| SanitizationTests.java:97:60:97:90 | new URI(...) | SanitizationTests.java:95:60:95:88 | getParameter(...) : String | SanitizationTests.java:97:60:97:90 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:95:60:95:88 | getParameter(...) | user-provided value | -| SanitizationTests.java:98:25:98:33 | unsafer5b | SanitizationTests.java:95:60:95:88 | getParameter(...) : String | SanitizationTests.java:98:25:98:33 | unsafer5b | Potential server-side request forgery due to a $@. | SanitizationTests.java:95:60:95:88 | getParameter(...) | user-provided value | -| SanitizationTests.java:102:60:102:90 | new URI(...) | SanitizationTests.java:100:77:100:105 | getParameter(...) : String | SanitizationTests.java:102:60:102:90 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:100:77:100:105 | getParameter(...) | user-provided value | -| SanitizationTests.java:103:25:103:33 | unsafer5c | SanitizationTests.java:100:77:100:105 | getParameter(...) : String | SanitizationTests.java:103:25:103:33 | unsafer5c | Potential server-side request forgery due to a $@. | SanitizationTests.java:100:77:100:105 | getParameter(...) | user-provided value | -| SanitizationTests.java:106:59:106:77 | new URI(...) | SanitizationTests.java:105:73:105:103 | getParameter(...) : String | SanitizationTests.java:106:59:106:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:105:73:105:103 | getParameter(...) | user-provided value | -| SanitizationTests.java:107:25:107:32 | unsafer6 | SanitizationTests.java:105:73:105:103 | getParameter(...) : String | SanitizationTests.java:107:25:107:32 | unsafer6 | Potential server-side request forgery due to a $@. | SanitizationTests.java:105:73:105:103 | getParameter(...) | user-provided value | -| SanitizationTests.java:110:59:110:77 | new URI(...) | SanitizationTests.java:109:56:109:86 | getParameter(...) : String | SanitizationTests.java:110:59:110:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:109:56:109:86 | getParameter(...) | user-provided value | -| SanitizationTests.java:111:25:111:32 | unsafer7 | SanitizationTests.java:109:56:109:86 | getParameter(...) : String | SanitizationTests.java:111:25:111:32 | unsafer7 | Potential server-side request forgery due to a $@. | SanitizationTests.java:109:56:109:86 | getParameter(...) | user-provided value | -| SanitizationTests.java:114:59:114:77 | new URI(...) | SanitizationTests.java:113:55:113:85 | getParameter(...) : String | SanitizationTests.java:114:59:114:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:113:55:113:85 | getParameter(...) | user-provided value | -| SanitizationTests.java:115:25:115:32 | unsafer8 | SanitizationTests.java:113:55:113:85 | getParameter(...) : String | SanitizationTests.java:115:25:115:32 | unsafer8 | Potential server-side request forgery due to a $@. | SanitizationTests.java:113:55:113:85 | getParameter(...) | user-provided value | -| SanitizationTests.java:118:59:118:77 | new URI(...) | SanitizationTests.java:117:33:117:63 | getParameter(...) : String | SanitizationTests.java:118:59:118:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:117:33:117:63 | getParameter(...) | user-provided value | -| SanitizationTests.java:119:25:119:32 | unsafer9 | SanitizationTests.java:117:33:117:63 | getParameter(...) : String | SanitizationTests.java:119:25:119:32 | unsafer9 | Potential server-side request forgery due to a $@. | SanitizationTests.java:117:33:117:63 | getParameter(...) | user-provided value | -| SanitizationTests.java:122:60:122:79 | new URI(...) | SanitizationTests.java:121:94:121:125 | getParameter(...) : String | SanitizationTests.java:122:60:122:79 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:121:94:121:125 | getParameter(...) | user-provided value | -| SanitizationTests.java:123:25:123:33 | unsafer10 | SanitizationTests.java:121:94:121:125 | getParameter(...) : String | SanitizationTests.java:123:25:123:33 | unsafer10 | Potential server-side request forgery due to a $@. | SanitizationTests.java:121:94:121:125 | getParameter(...) | user-provided value | +| SanitizationTests.java:25:52:25:54 | uri | SanitizationTests.java:22:31:22:57 | getParameter(...) : String | SanitizationTests.java:25:52:25:54 | uri | Potential server-side request forgery due to a $@. | SanitizationTests.java:22:31:22:57 | getParameter(...) | user-provided value | +| SanitizationTests.java:26:25:26:25 | r | SanitizationTests.java:22:31:22:57 | getParameter(...) : String | SanitizationTests.java:26:25:26:25 | r | Potential server-side request forgery due to a $@. | SanitizationTests.java:22:31:22:57 | getParameter(...) | user-provided value | +| SanitizationTests.java:79:59:79:77 | new URI(...) | SanitizationTests.java:78:33:78:63 | getParameter(...) : String | SanitizationTests.java:79:59:79:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:78:33:78:63 | getParameter(...) | user-provided value | +| SanitizationTests.java:80:25:80:32 | unsafer3 | SanitizationTests.java:78:33:78:63 | getParameter(...) : String | SanitizationTests.java:80:25:80:32 | unsafer3 | Potential server-side request forgery due to a $@. | SanitizationTests.java:78:33:78:63 | getParameter(...) | user-provided value | +| SanitizationTests.java:83:59:83:77 | new URI(...) | SanitizationTests.java:82:49:82:79 | getParameter(...) : String | SanitizationTests.java:83:59:83:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:82:49:82:79 | getParameter(...) | user-provided value | +| SanitizationTests.java:84:25:84:32 | unsafer4 | SanitizationTests.java:82:49:82:79 | getParameter(...) : String | SanitizationTests.java:84:25:84:32 | unsafer4 | Potential server-side request forgery due to a $@. | SanitizationTests.java:82:49:82:79 | getParameter(...) | user-provided value | +| SanitizationTests.java:88:59:88:88 | new URI(...) | SanitizationTests.java:87:31:87:61 | getParameter(...) : String | SanitizationTests.java:88:59:88:88 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:87:31:87:61 | getParameter(...) | user-provided value | +| SanitizationTests.java:89:25:89:32 | unsafer5 | SanitizationTests.java:87:31:87:61 | getParameter(...) : String | SanitizationTests.java:89:25:89:32 | unsafer5 | Potential server-side request forgery due to a $@. | SanitizationTests.java:87:31:87:61 | getParameter(...) | user-provided value | +| SanitizationTests.java:93:60:93:89 | new URI(...) | SanitizationTests.java:91:58:91:86 | getParameter(...) : String | SanitizationTests.java:93:60:93:89 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:91:58:91:86 | getParameter(...) | user-provided value | +| SanitizationTests.java:94:25:94:33 | unsafer5a | SanitizationTests.java:91:58:91:86 | getParameter(...) : String | SanitizationTests.java:94:25:94:33 | unsafer5a | Potential server-side request forgery due to a $@. | SanitizationTests.java:91:58:91:86 | getParameter(...) | user-provided value | +| SanitizationTests.java:98:60:98:90 | new URI(...) | SanitizationTests.java:96:60:96:88 | getParameter(...) : String | SanitizationTests.java:98:60:98:90 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:96:60:96:88 | getParameter(...) | user-provided value | +| SanitizationTests.java:99:25:99:33 | unsafer5b | SanitizationTests.java:96:60:96:88 | getParameter(...) : String | SanitizationTests.java:99:25:99:33 | unsafer5b | Potential server-side request forgery due to a $@. | SanitizationTests.java:96:60:96:88 | getParameter(...) | user-provided value | +| SanitizationTests.java:103:60:103:90 | new URI(...) | SanitizationTests.java:101:77:101:105 | getParameter(...) : String | SanitizationTests.java:103:60:103:90 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:101:77:101:105 | getParameter(...) | user-provided value | +| SanitizationTests.java:104:25:104:33 | unsafer5c | SanitizationTests.java:101:77:101:105 | getParameter(...) : String | SanitizationTests.java:104:25:104:33 | unsafer5c | Potential server-side request forgery due to a $@. | SanitizationTests.java:101:77:101:105 | getParameter(...) | user-provided value | +| SanitizationTests.java:107:59:107:77 | new URI(...) | SanitizationTests.java:106:73:106:103 | getParameter(...) : String | SanitizationTests.java:107:59:107:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:106:73:106:103 | getParameter(...) | user-provided value | +| SanitizationTests.java:108:25:108:32 | unsafer6 | SanitizationTests.java:106:73:106:103 | getParameter(...) : String | SanitizationTests.java:108:25:108:32 | unsafer6 | Potential server-side request forgery due to a $@. | SanitizationTests.java:106:73:106:103 | getParameter(...) | user-provided value | +| SanitizationTests.java:111:59:111:77 | new URI(...) | SanitizationTests.java:110:56:110:86 | getParameter(...) : String | SanitizationTests.java:111:59:111:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:110:56:110:86 | getParameter(...) | user-provided value | +| SanitizationTests.java:112:25:112:32 | unsafer7 | SanitizationTests.java:110:56:110:86 | getParameter(...) : String | SanitizationTests.java:112:25:112:32 | unsafer7 | Potential server-side request forgery due to a $@. | SanitizationTests.java:110:56:110:86 | getParameter(...) | user-provided value | +| SanitizationTests.java:115:59:115:77 | new URI(...) | SanitizationTests.java:114:55:114:85 | getParameter(...) : String | SanitizationTests.java:115:59:115:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:114:55:114:85 | getParameter(...) | user-provided value | +| SanitizationTests.java:116:25:116:32 | unsafer8 | SanitizationTests.java:114:55:114:85 | getParameter(...) : String | SanitizationTests.java:116:25:116:32 | unsafer8 | Potential server-side request forgery due to a $@. | SanitizationTests.java:114:55:114:85 | getParameter(...) | user-provided value | +| SanitizationTests.java:119:59:119:77 | new URI(...) | SanitizationTests.java:118:33:118:63 | getParameter(...) : String | SanitizationTests.java:119:59:119:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:118:33:118:63 | getParameter(...) | user-provided value | +| SanitizationTests.java:120:25:120:32 | unsafer9 | SanitizationTests.java:118:33:118:63 | getParameter(...) : String | SanitizationTests.java:120:25:120:32 | unsafer9 | Potential server-side request forgery due to a $@. | SanitizationTests.java:118:33:118:63 | getParameter(...) | user-provided value | +| SanitizationTests.java:123:60:123:79 | new URI(...) | SanitizationTests.java:122:94:122:125 | getParameter(...) : String | SanitizationTests.java:123:60:123:79 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:122:94:122:125 | getParameter(...) | user-provided value | +| SanitizationTests.java:124:25:124:33 | unsafer10 | SanitizationTests.java:122:94:122:125 | getParameter(...) : String | SanitizationTests.java:124:25:124:33 | unsafer10 | Potential server-side request forgery due to a $@. | SanitizationTests.java:122:94:122:125 | getParameter(...) | user-provided value | +| SanitizationTests.java:177:54:177:113 | new URI(...) | SanitizationTests.java:177:82:177:110 | getParameter(...) : String | SanitizationTests.java:177:54:177:113 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:177:82:177:110 | getParameter(...) | user-provided value | +| SanitizationTests.java:178:25:178:27 | r18 | SanitizationTests.java:177:82:177:110 | getParameter(...) : String | SanitizationTests.java:178:25:178:27 | r18 | Potential server-side request forgery due to a $@. | SanitizationTests.java:177:82:177:110 | getParameter(...) | user-provided value | | SpringSSRF.java:32:39:32:59 | ... + ... | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:32:39:32:59 | ... + ... | Potential server-side request forgery due to a $@. | SpringSSRF.java:28:33:28:60 | getParameter(...) | user-provided value | | SpringSSRF.java:33:69:33:82 | fooResourceUrl | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:33:69:33:82 | fooResourceUrl | Potential server-side request forgery due to a $@. | SpringSSRF.java:28:33:28:60 | getParameter(...) | user-provided value | | SpringSSRF.java:34:73:34:86 | fooResourceUrl | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:34:73:34:86 | fooResourceUrl | Potential server-side request forgery due to a $@. | SpringSSRF.java:28:33:28:60 | getParameter(...) | user-provided value | @@ -403,11 +405,11 @@ edges | ApacheHttpSSRF.java:28:31:28:34 | sink : String | ApacheHttpSSRF.java:28:23:28:35 | new URI(...) : URI | provenance | Config | | ApacheHttpSSRF.java:28:31:28:34 | sink : String | ApacheHttpSSRF.java:28:23:28:35 | new URI(...) : URI | provenance | MaD:285 | | ApacheHttpSSRF.java:42:62:42:64 | uri : URI | ApacheHttpSSRF.java:42:62:42:75 | toString(...) : String | provenance | MaD:286 | -| ApacheHttpSSRF.java:42:62:42:75 | toString(...) : String | ApacheHttpSSRF.java:42:34:42:82 | new BasicRequestLine(...) | provenance | MaD:293 Sink:MaD:231 | +| ApacheHttpSSRF.java:42:62:42:75 | toString(...) : String | ApacheHttpSSRF.java:42:34:42:82 | new BasicRequestLine(...) | provenance | MaD:295 Sink:MaD:231 | | ApacheHttpSSRF.java:43:41:43:43 | uri : URI | ApacheHttpSSRF.java:43:41:43:54 | toString(...) | provenance | MaD:286 Sink:MaD:232 | | ApacheHttpSSRF.java:44:41:44:43 | uri : URI | ApacheHttpSSRF.java:44:41:44:54 | toString(...) | provenance | MaD:286 Sink:MaD:233 | | ApacheHttpSSRF.java:46:77:46:79 | uri : URI | ApacheHttpSSRF.java:46:77:46:90 | toString(...) : String | provenance | MaD:286 | -| ApacheHttpSSRF.java:46:77:46:90 | toString(...) : String | ApacheHttpSSRF.java:46:49:46:97 | new BasicRequestLine(...) | provenance | MaD:293 Sink:MaD:228 | +| ApacheHttpSSRF.java:46:77:46:90 | toString(...) : String | ApacheHttpSSRF.java:46:49:46:97 | new BasicRequestLine(...) | provenance | MaD:295 Sink:MaD:228 | | ApacheHttpSSRF.java:47:56:47:58 | uri : URI | ApacheHttpSSRF.java:47:56:47:69 | toString(...) | provenance | MaD:286 Sink:MaD:229 | | ApacheHttpSSRF.java:48:56:48:58 | uri : URI | ApacheHttpSSRF.java:48:56:48:69 | toString(...) | provenance | MaD:286 Sink:MaD:230 | | ApacheHttpSSRFVersion5.java:41:30:41:56 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:42:31:42:37 | uriSink : String | provenance | Src:MaD:277 | @@ -501,7 +503,7 @@ edges | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:132:36:132:39 | host | provenance | Sink:MaD:100 | | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:136:38:136:41 | host | provenance | Sink:MaD:103 | | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:162:52:162:55 | host | provenance | Sink:MaD:204 | -| ApacheHttpSSRFVersion5.java:45:42:45:49 | hostSink : String | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | provenance | MaD:292 | +| ApacheHttpSSRFVersion5.java:45:42:45:49 | hostSink : String | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | | ApacheHttpSSRFVersion5.java:49:54:49:56 | uri : URI | ApacheHttpSSRFVersion5.java:49:54:49:67 | toString(...) | provenance | MaD:286 Sink:MaD:39 | | ApacheHttpSSRFVersion5.java:51:48:51:50 | uri : URI | ApacheHttpSSRFVersion5.java:51:48:51:61 | toString(...) | provenance | MaD:286 Sink:MaD:41 | | ApacheHttpSSRFVersion5.java:55:38:55:40 | uri : URI | ApacheHttpSSRFVersion5.java:55:38:55:51 | toString(...) | provenance | MaD:286 Sink:MaD:44 | @@ -631,7 +633,7 @@ edges | ApacheHttpSSRFVersion5.java:298:31:298:58 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:299:42:299:49 | hostSink : String | provenance | Src:MaD:277 | | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:303:34:303:37 | host | provenance | Sink:MaD:178 | | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:304:34:304:37 | host | provenance | Sink:MaD:179 | -| ApacheHttpSSRFVersion5.java:299:42:299:49 | hostSink : String | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | provenance | MaD:292 | +| ApacheHttpSSRFVersion5.java:299:42:299:49 | hostSink : String | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | | ApacheHttpSSRFVersion5.java:308:60:308:62 | uri : URI | ApacheHttpSSRFVersion5.java:308:60:308:73 | toString(...) | provenance | MaD:286 Sink:MaD:208 | | ApacheHttpSSRFVersion5.java:313:53:313:55 | uri : URI | ApacheHttpSSRFVersion5.java:313:53:313:66 | toString(...) | provenance | MaD:286 Sink:MaD:208 | | ApacheHttpSSRFVersion5.java:326:30:326:56 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:327:31:327:37 | uriSink : String | provenance | Src:MaD:277 | @@ -657,7 +659,7 @@ edges | ApacheHttpSSRFVersion5.java:327:31:327:37 | uriSink : String | ApacheHttpSSRFVersion5.java:327:23:327:38 | new URI(...) : URI | provenance | MaD:285 | | ApacheHttpSSRFVersion5.java:329:31:329:58 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:330:42:330:49 | hostSink : String | provenance | Src:MaD:277 | | ApacheHttpSSRFVersion5.java:330:29:330:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:354:53:354:56 | host | provenance | Sink:MaD:204 | -| ApacheHttpSSRFVersion5.java:330:42:330:49 | hostSink : String | ApacheHttpSSRFVersion5.java:330:29:330:50 | new HttpHost(...) : HttpHost | provenance | MaD:292 | +| ApacheHttpSSRFVersion5.java:330:42:330:49 | hostSink : String | ApacheHttpSSRFVersion5.java:330:29:330:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | | ApacheHttpSSRFVersion5.java:333:42:333:44 | uri : URI | ApacheHttpSSRFVersion5.java:333:42:333:55 | toString(...) | provenance | MaD:286 Sink:MaD:180 | | ApacheHttpSSRFVersion5.java:336:39:336:41 | uri : URI | ApacheHttpSSRFVersion5.java:336:39:336:52 | toString(...) | provenance | MaD:286 Sink:MaD:182 | | ApacheHttpSSRFVersion5.java:339:40:339:42 | uri : URI | ApacheHttpSSRFVersion5.java:339:40:339:53 | toString(...) | provenance | MaD:286 Sink:MaD:184 | @@ -681,7 +683,7 @@ edges | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:381:51:381:54 | host | provenance | Sink:MaD:198 | | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:385:50:385:53 | host | provenance | Sink:MaD:200 | | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:387:44:387:47 | host | provenance | Sink:MaD:202 | -| ApacheHttpSSRFVersion5.java:376:42:376:49 | hostSink : String | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | provenance | MaD:292 | +| ApacheHttpSSRFVersion5.java:376:42:376:49 | hostSink : String | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | | JakartaWsSSRF.java:14:22:14:48 | getParameter(...) : String | JakartaWsSSRF.java:15:23:15:25 | url | provenance | Src:MaD:277 Sink:MaD:3 | | JavaNetHttpSSRF.java:25:27:25:53 | getParameter(...) : String | JavaNetHttpSSRF.java:26:31:26:34 | sink : String | provenance | Src:MaD:277 | | JavaNetHttpSSRF.java:26:23:26:35 | new URI(...) : URI | JavaNetHttpSSRF.java:39:59:39:61 | uri | provenance | Sink:MaD:6 | @@ -708,7 +710,7 @@ edges | JdbcUrlSSRF.java:52:9:52:13 | props : Properties | JdbcUrlSSRF.java:54:49:54:53 | props | provenance | Sink:MaD:1 | | JdbcUrlSSRF.java:52:9:52:13 | props [post update] : Properties [] : String | JdbcUrlSSRF.java:54:49:54:53 | props | provenance | Sink:MaD:1 | | JdbcUrlSSRF.java:52:38:52:44 | jdbcUrl : String | JdbcUrlSSRF.java:52:9:52:13 | props : Properties | provenance | Config | -| JdbcUrlSSRF.java:52:38:52:44 | jdbcUrl : String | JdbcUrlSSRF.java:52:9:52:13 | props [post update] : Properties [] : String | provenance | MaD:291 | +| JdbcUrlSSRF.java:52:38:52:44 | jdbcUrl : String | JdbcUrlSSRF.java:52:9:52:13 | props [post update] : Properties [] : String | provenance | MaD:293 | | JdbcUrlSSRF.java:60:26:60:56 | getParameter(...) : String | JdbcUrlSSRF.java:65:27:65:33 | jdbcUrl | provenance | Src:MaD:277 Sink:MaD:257 | | JdbcUrlSSRF.java:60:26:60:56 | getParameter(...) : String | JdbcUrlSSRF.java:67:75:67:81 | jdbcUrl | provenance | Src:MaD:277 Sink:MaD:258 | | JdbcUrlSSRF.java:60:26:60:56 | getParameter(...) : String | JdbcUrlSSRF.java:70:75:70:81 | jdbcUrl | provenance | Src:MaD:277 Sink:MaD:260 | @@ -721,118 +723,130 @@ edges | JdbcUrlSSRF.java:80:26:80:56 | getParameter(...) : String | JdbcUrlSSRF.java:88:19:88:25 | jdbcUrl | provenance | Src:MaD:277 Sink:MaD:240 | | ReactiveWebClientSSRF.java:15:26:15:52 | getParameter(...) : String | ReactiveWebClientSSRF.java:16:52:16:54 | url | provenance | Src:MaD:277 Sink:MaD:274 | | ReactiveWebClientSSRF.java:32:26:32:52 | getParameter(...) : String | ReactiveWebClientSSRF.java:35:30:35:32 | url | provenance | Src:MaD:277 Sink:MaD:273 | -| SanitizationTests.java:21:23:21:58 | new URI(...) : URI | SanitizationTests.java:24:52:24:54 | uri | provenance | Sink:MaD:6 | -| SanitizationTests.java:21:23:21:58 | new URI(...) : URI | SanitizationTests.java:24:52:24:54 | uri : URI | provenance | | -| SanitizationTests.java:21:31:21:57 | getParameter(...) : String | SanitizationTests.java:21:23:21:58 | new URI(...) : URI | provenance | Src:MaD:277 Config | -| SanitizationTests.java:21:31:21:57 | getParameter(...) : String | SanitizationTests.java:21:23:21:58 | new URI(...) : URI | provenance | Src:MaD:277 MaD:285 | -| SanitizationTests.java:24:29:24:55 | newBuilder(...) : Builder | SanitizationTests.java:24:29:24:63 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:24:29:24:63 | build(...) : HttpRequest | SanitizationTests.java:25:25:25:25 | r | provenance | Sink:MaD:4 | -| SanitizationTests.java:24:52:24:54 | uri : URI | SanitizationTests.java:24:29:24:55 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:77:33:77:63 | getParameter(...) : String | SanitizationTests.java:78:67:78:76 | unsafeUri3 : String | provenance | Src:MaD:277 | -| SanitizationTests.java:78:36:78:78 | newBuilder(...) : Builder | SanitizationTests.java:78:36:78:86 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:78:36:78:86 | build(...) : HttpRequest | SanitizationTests.java:79:25:79:32 | unsafer3 | provenance | Sink:MaD:4 | -| SanitizationTests.java:78:59:78:77 | new URI(...) : URI | SanitizationTests.java:78:36:78:78 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:78:67:78:76 | unsafeUri3 : String | SanitizationTests.java:78:59:78:77 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:78:67:78:76 | unsafeUri3 : String | SanitizationTests.java:78:59:78:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:78:67:78:76 | unsafeUri3 : String | SanitizationTests.java:78:59:78:77 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:78:67:78:76 | unsafeUri3 : String | SanitizationTests.java:78:59:78:77 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:81:49:81:79 | getParameter(...) : String | SanitizationTests.java:82:67:82:76 | unsafeUri4 : String | provenance | Src:MaD:277 | -| SanitizationTests.java:82:36:82:78 | newBuilder(...) : Builder | SanitizationTests.java:82:36:82:86 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:82:36:82:86 | build(...) : HttpRequest | SanitizationTests.java:83:25:83:32 | unsafer4 | provenance | Sink:MaD:4 | -| SanitizationTests.java:82:59:82:77 | new URI(...) : URI | SanitizationTests.java:82:36:82:78 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:82:67:82:76 | unsafeUri4 : String | SanitizationTests.java:82:59:82:77 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:82:67:82:76 | unsafeUri4 : String | SanitizationTests.java:82:59:82:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:82:67:82:76 | unsafeUri4 : String | SanitizationTests.java:82:59:82:77 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:82:67:82:76 | unsafeUri4 : String | SanitizationTests.java:82:59:82:77 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:86:13:86:22 | unsafeUri5 [post update] : StringBuilder | SanitizationTests.java:87:67:87:76 | unsafeUri5 : StringBuilder | provenance | | -| SanitizationTests.java:86:31:86:61 | getParameter(...) : String | SanitizationTests.java:86:13:86:22 | unsafeUri5 [post update] : StringBuilder | provenance | Src:MaD:277 MaD:278 | -| SanitizationTests.java:87:36:87:89 | newBuilder(...) : Builder | SanitizationTests.java:87:36:87:97 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:87:36:87:97 | build(...) : HttpRequest | SanitizationTests.java:88:25:88:32 | unsafer5 | provenance | Sink:MaD:4 | -| SanitizationTests.java:87:59:87:88 | new URI(...) : URI | SanitizationTests.java:87:36:87:89 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:87:67:87:76 | unsafeUri5 : StringBuilder | SanitizationTests.java:87:67:87:87 | toString(...) : String | provenance | MaD:280 | -| SanitizationTests.java:87:67:87:87 | toString(...) : String | SanitizationTests.java:87:59:87:88 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:87:67:87:87 | toString(...) : String | SanitizationTests.java:87:59:87:88 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:87:67:87:87 | toString(...) : String | SanitizationTests.java:87:59:87:88 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:87:67:87:87 | toString(...) : String | SanitizationTests.java:87:59:87:88 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:90:40:90:87 | new StringBuilder(...) : StringBuilder | SanitizationTests.java:92:68:92:77 | unafeUri5a : StringBuilder | provenance | | -| SanitizationTests.java:90:58:90:86 | getParameter(...) : String | SanitizationTests.java:90:40:90:87 | new StringBuilder(...) : StringBuilder | provenance | Src:MaD:277 MaD:282 | -| SanitizationTests.java:92:37:92:90 | newBuilder(...) : Builder | SanitizationTests.java:92:37:92:98 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:92:37:92:98 | build(...) : HttpRequest | SanitizationTests.java:93:25:93:33 | unsafer5a | provenance | Sink:MaD:4 | -| SanitizationTests.java:92:60:92:89 | new URI(...) : URI | SanitizationTests.java:92:37:92:90 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:92:68:92:77 | unafeUri5a : StringBuilder | SanitizationTests.java:92:68:92:88 | toString(...) : String | provenance | MaD:280 | -| SanitizationTests.java:92:68:92:88 | toString(...) : String | SanitizationTests.java:92:60:92:89 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:92:68:92:88 | toString(...) : String | SanitizationTests.java:92:60:92:89 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:92:68:92:88 | toString(...) : String | SanitizationTests.java:92:60:92:89 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:92:68:92:88 | toString(...) : String | SanitizationTests.java:92:60:92:89 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:95:41:95:105 | append(...) : StringBuilder | SanitizationTests.java:97:68:97:78 | unsafeUri5b : StringBuilder | provenance | | -| SanitizationTests.java:95:42:95:89 | new StringBuilder(...) : StringBuilder | SanitizationTests.java:95:41:95:105 | append(...) : StringBuilder | provenance | MaD:279 | -| SanitizationTests.java:95:60:95:88 | getParameter(...) : String | SanitizationTests.java:95:42:95:89 | new StringBuilder(...) : StringBuilder | provenance | Src:MaD:277 MaD:282 | -| SanitizationTests.java:97:37:97:91 | newBuilder(...) : Builder | SanitizationTests.java:97:37:97:99 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:97:37:97:99 | build(...) : HttpRequest | SanitizationTests.java:98:25:98:33 | unsafer5b | provenance | Sink:MaD:4 | -| SanitizationTests.java:97:60:97:90 | new URI(...) : URI | SanitizationTests.java:97:37:97:91 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:97:68:97:78 | unsafeUri5b : StringBuilder | SanitizationTests.java:97:68:97:89 | toString(...) : String | provenance | MaD:280 | -| SanitizationTests.java:97:68:97:89 | toString(...) : String | SanitizationTests.java:97:60:97:90 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:97:68:97:89 | toString(...) : String | SanitizationTests.java:97:60:97:90 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:97:68:97:89 | toString(...) : String | SanitizationTests.java:97:60:97:90 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:97:68:97:89 | toString(...) : String | SanitizationTests.java:97:60:97:90 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:100:41:100:106 | append(...) : StringBuilder | SanitizationTests.java:102:68:102:78 | unsafeUri5c : StringBuilder | provenance | | -| SanitizationTests.java:100:77:100:105 | getParameter(...) : String | SanitizationTests.java:100:41:100:106 | append(...) : StringBuilder | provenance | Src:MaD:277 MaD:278+MaD:279 | -| SanitizationTests.java:102:37:102:91 | newBuilder(...) : Builder | SanitizationTests.java:102:37:102:99 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:102:37:102:99 | build(...) : HttpRequest | SanitizationTests.java:103:25:103:33 | unsafer5c | provenance | Sink:MaD:4 | -| SanitizationTests.java:102:60:102:90 | new URI(...) : URI | SanitizationTests.java:102:37:102:91 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:102:68:102:78 | unsafeUri5c : StringBuilder | SanitizationTests.java:102:68:102:89 | toString(...) : String | provenance | MaD:280 | -| SanitizationTests.java:102:68:102:89 | toString(...) : String | SanitizationTests.java:102:60:102:90 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:102:68:102:89 | toString(...) : String | SanitizationTests.java:102:60:102:90 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:102:68:102:89 | toString(...) : String | SanitizationTests.java:102:60:102:90 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:102:68:102:89 | toString(...) : String | SanitizationTests.java:102:60:102:90 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:105:33:105:104 | format(...) : String | SanitizationTests.java:106:67:106:76 | unsafeUri6 : String | provenance | | -| SanitizationTests.java:105:33:105:104 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:105:33:105:104 | format(...) : String | provenance | MaD:281 | -| SanitizationTests.java:105:73:105:103 | getParameter(...) : String | SanitizationTests.java:105:33:105:104 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | -| SanitizationTests.java:106:36:106:78 | newBuilder(...) : Builder | SanitizationTests.java:106:36:106:86 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:106:36:106:86 | build(...) : HttpRequest | SanitizationTests.java:107:25:107:32 | unsafer6 | provenance | Sink:MaD:4 | -| SanitizationTests.java:106:59:106:77 | new URI(...) : URI | SanitizationTests.java:106:36:106:78 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:106:67:106:76 | unsafeUri6 : String | SanitizationTests.java:106:59:106:77 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:106:67:106:76 | unsafeUri6 : String | SanitizationTests.java:106:59:106:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:106:67:106:76 | unsafeUri6 : String | SanitizationTests.java:106:59:106:77 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:106:67:106:76 | unsafeUri6 : String | SanitizationTests.java:106:59:106:77 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:109:33:109:110 | format(...) : String | SanitizationTests.java:110:67:110:76 | unsafeUri7 : String | provenance | | -| SanitizationTests.java:109:33:109:110 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:109:33:109:110 | format(...) : String | provenance | MaD:281 | -| SanitizationTests.java:109:56:109:86 | getParameter(...) : String | SanitizationTests.java:109:33:109:110 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | -| SanitizationTests.java:110:36:110:78 | newBuilder(...) : Builder | SanitizationTests.java:110:36:110:86 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:110:36:110:86 | build(...) : HttpRequest | SanitizationTests.java:111:25:111:32 | unsafer7 | provenance | Sink:MaD:4 | -| SanitizationTests.java:110:59:110:77 | new URI(...) : URI | SanitizationTests.java:110:36:110:78 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:110:67:110:76 | unsafeUri7 : String | SanitizationTests.java:110:59:110:77 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:110:67:110:76 | unsafeUri7 : String | SanitizationTests.java:110:59:110:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:110:67:110:76 | unsafeUri7 : String | SanitizationTests.java:110:59:110:77 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:110:67:110:76 | unsafeUri7 : String | SanitizationTests.java:110:59:110:77 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:113:33:113:110 | format(...) : String | SanitizationTests.java:114:67:114:76 | unsafeUri8 : String | provenance | | -| SanitizationTests.java:113:33:113:110 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:113:33:113:110 | format(...) : String | provenance | MaD:281 | -| SanitizationTests.java:113:55:113:85 | getParameter(...) : String | SanitizationTests.java:113:33:113:110 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | -| SanitizationTests.java:114:36:114:78 | newBuilder(...) : Builder | SanitizationTests.java:114:36:114:86 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:114:36:114:86 | build(...) : HttpRequest | SanitizationTests.java:115:25:115:32 | unsafer8 | provenance | Sink:MaD:4 | -| SanitizationTests.java:114:59:114:77 | new URI(...) : URI | SanitizationTests.java:114:36:114:78 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:114:67:114:76 | unsafeUri8 : String | SanitizationTests.java:114:59:114:77 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:114:67:114:76 | unsafeUri8 : String | SanitizationTests.java:114:59:114:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:114:67:114:76 | unsafeUri8 : String | SanitizationTests.java:114:59:114:77 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:114:67:114:76 | unsafeUri8 : String | SanitizationTests.java:114:59:114:77 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:117:33:117:63 | getParameter(...) : String | SanitizationTests.java:118:67:118:76 | unsafeUri9 : String | provenance | Src:MaD:277 | -| SanitizationTests.java:118:36:118:78 | newBuilder(...) : Builder | SanitizationTests.java:118:36:118:86 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:118:36:118:86 | build(...) : HttpRequest | SanitizationTests.java:119:25:119:32 | unsafer9 | provenance | Sink:MaD:4 | -| SanitizationTests.java:118:59:118:77 | new URI(...) : URI | SanitizationTests.java:118:36:118:78 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:118:67:118:76 | unsafeUri9 : String | SanitizationTests.java:118:59:118:77 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:118:67:118:76 | unsafeUri9 : String | SanitizationTests.java:118:59:118:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:118:67:118:76 | unsafeUri9 : String | SanitizationTests.java:118:59:118:77 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:118:67:118:76 | unsafeUri9 : String | SanitizationTests.java:118:59:118:77 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:121:34:121:126 | format(...) : String | SanitizationTests.java:122:68:122:78 | unsafeUri10 : String | provenance | | -| SanitizationTests.java:121:34:121:126 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:121:34:121:126 | format(...) : String | provenance | MaD:281 | -| SanitizationTests.java:121:94:121:125 | getParameter(...) : String | SanitizationTests.java:121:34:121:126 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | -| SanitizationTests.java:122:37:122:80 | newBuilder(...) : Builder | SanitizationTests.java:122:37:122:88 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:122:37:122:88 | build(...) : HttpRequest | SanitizationTests.java:123:25:123:33 | unsafer10 | provenance | Sink:MaD:4 | -| SanitizationTests.java:122:60:122:79 | new URI(...) : URI | SanitizationTests.java:122:37:122:80 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:122:68:122:78 | unsafeUri10 : String | SanitizationTests.java:122:60:122:79 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:122:68:122:78 | unsafeUri10 : String | SanitizationTests.java:122:60:122:79 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:122:68:122:78 | unsafeUri10 : String | SanitizationTests.java:122:60:122:79 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:122:68:122:78 | unsafeUri10 : String | SanitizationTests.java:122:60:122:79 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:22:23:22:58 | new URI(...) : URI | SanitizationTests.java:25:52:25:54 | uri | provenance | Sink:MaD:6 | +| SanitizationTests.java:22:23:22:58 | new URI(...) : URI | SanitizationTests.java:25:52:25:54 | uri : URI | provenance | | +| SanitizationTests.java:22:31:22:57 | getParameter(...) : String | SanitizationTests.java:22:23:22:58 | new URI(...) : URI | provenance | Src:MaD:277 Config | +| SanitizationTests.java:22:31:22:57 | getParameter(...) : String | SanitizationTests.java:22:23:22:58 | new URI(...) : URI | provenance | Src:MaD:277 MaD:285 | +| SanitizationTests.java:25:29:25:55 | newBuilder(...) : Builder | SanitizationTests.java:25:29:25:63 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:25:29:25:63 | build(...) : HttpRequest | SanitizationTests.java:26:25:26:25 | r | provenance | Sink:MaD:4 | +| SanitizationTests.java:25:52:25:54 | uri : URI | SanitizationTests.java:25:29:25:55 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:78:33:78:63 | getParameter(...) : String | SanitizationTests.java:79:67:79:76 | unsafeUri3 : String | provenance | Src:MaD:277 | +| SanitizationTests.java:79:36:79:78 | newBuilder(...) : Builder | SanitizationTests.java:79:36:79:86 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:79:36:79:86 | build(...) : HttpRequest | SanitizationTests.java:80:25:80:32 | unsafer3 | provenance | Sink:MaD:4 | +| SanitizationTests.java:79:59:79:77 | new URI(...) : URI | SanitizationTests.java:79:36:79:78 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:79:67:79:76 | unsafeUri3 : String | SanitizationTests.java:79:59:79:77 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:79:67:79:76 | unsafeUri3 : String | SanitizationTests.java:79:59:79:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:79:67:79:76 | unsafeUri3 : String | SanitizationTests.java:79:59:79:77 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:79:67:79:76 | unsafeUri3 : String | SanitizationTests.java:79:59:79:77 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:82:49:82:79 | getParameter(...) : String | SanitizationTests.java:83:67:83:76 | unsafeUri4 : String | provenance | Src:MaD:277 | +| SanitizationTests.java:83:36:83:78 | newBuilder(...) : Builder | SanitizationTests.java:83:36:83:86 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:83:36:83:86 | build(...) : HttpRequest | SanitizationTests.java:84:25:84:32 | unsafer4 | provenance | Sink:MaD:4 | +| SanitizationTests.java:83:59:83:77 | new URI(...) : URI | SanitizationTests.java:83:36:83:78 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:83:67:83:76 | unsafeUri4 : String | SanitizationTests.java:83:59:83:77 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:83:67:83:76 | unsafeUri4 : String | SanitizationTests.java:83:59:83:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:83:67:83:76 | unsafeUri4 : String | SanitizationTests.java:83:59:83:77 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:83:67:83:76 | unsafeUri4 : String | SanitizationTests.java:83:59:83:77 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:87:13:87:22 | unsafeUri5 [post update] : StringBuilder | SanitizationTests.java:88:67:88:76 | unsafeUri5 : StringBuilder | provenance | | +| SanitizationTests.java:87:31:87:61 | getParameter(...) : String | SanitizationTests.java:87:13:87:22 | unsafeUri5 [post update] : StringBuilder | provenance | Src:MaD:277 MaD:278 | +| SanitizationTests.java:88:36:88:89 | newBuilder(...) : Builder | SanitizationTests.java:88:36:88:97 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:88:36:88:97 | build(...) : HttpRequest | SanitizationTests.java:89:25:89:32 | unsafer5 | provenance | Sink:MaD:4 | +| SanitizationTests.java:88:59:88:88 | new URI(...) : URI | SanitizationTests.java:88:36:88:89 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:88:67:88:76 | unsafeUri5 : StringBuilder | SanitizationTests.java:88:67:88:87 | toString(...) : String | provenance | MaD:280 | +| SanitizationTests.java:88:67:88:87 | toString(...) : String | SanitizationTests.java:88:59:88:88 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:88:67:88:87 | toString(...) : String | SanitizationTests.java:88:59:88:88 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:88:67:88:87 | toString(...) : String | SanitizationTests.java:88:59:88:88 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:88:67:88:87 | toString(...) : String | SanitizationTests.java:88:59:88:88 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:91:40:91:87 | new StringBuilder(...) : StringBuilder | SanitizationTests.java:93:68:93:77 | unafeUri5a : StringBuilder | provenance | | +| SanitizationTests.java:91:58:91:86 | getParameter(...) : String | SanitizationTests.java:91:40:91:87 | new StringBuilder(...) : StringBuilder | provenance | Src:MaD:277 MaD:282 | +| SanitizationTests.java:93:37:93:90 | newBuilder(...) : Builder | SanitizationTests.java:93:37:93:98 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:93:37:93:98 | build(...) : HttpRequest | SanitizationTests.java:94:25:94:33 | unsafer5a | provenance | Sink:MaD:4 | +| SanitizationTests.java:93:60:93:89 | new URI(...) : URI | SanitizationTests.java:93:37:93:90 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:93:68:93:77 | unafeUri5a : StringBuilder | SanitizationTests.java:93:68:93:88 | toString(...) : String | provenance | MaD:280 | +| SanitizationTests.java:93:68:93:88 | toString(...) : String | SanitizationTests.java:93:60:93:89 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:93:68:93:88 | toString(...) : String | SanitizationTests.java:93:60:93:89 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:93:68:93:88 | toString(...) : String | SanitizationTests.java:93:60:93:89 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:93:68:93:88 | toString(...) : String | SanitizationTests.java:93:60:93:89 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:96:41:96:105 | append(...) : StringBuilder | SanitizationTests.java:98:68:98:78 | unsafeUri5b : StringBuilder | provenance | | +| SanitizationTests.java:96:42:96:89 | new StringBuilder(...) : StringBuilder | SanitizationTests.java:96:41:96:105 | append(...) : StringBuilder | provenance | MaD:279 | +| SanitizationTests.java:96:60:96:88 | getParameter(...) : String | SanitizationTests.java:96:42:96:89 | new StringBuilder(...) : StringBuilder | provenance | Src:MaD:277 MaD:282 | +| SanitizationTests.java:98:37:98:91 | newBuilder(...) : Builder | SanitizationTests.java:98:37:98:99 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:98:37:98:99 | build(...) : HttpRequest | SanitizationTests.java:99:25:99:33 | unsafer5b | provenance | Sink:MaD:4 | +| SanitizationTests.java:98:60:98:90 | new URI(...) : URI | SanitizationTests.java:98:37:98:91 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:98:68:98:78 | unsafeUri5b : StringBuilder | SanitizationTests.java:98:68:98:89 | toString(...) : String | provenance | MaD:280 | +| SanitizationTests.java:98:68:98:89 | toString(...) : String | SanitizationTests.java:98:60:98:90 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:98:68:98:89 | toString(...) : String | SanitizationTests.java:98:60:98:90 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:98:68:98:89 | toString(...) : String | SanitizationTests.java:98:60:98:90 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:98:68:98:89 | toString(...) : String | SanitizationTests.java:98:60:98:90 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:101:41:101:106 | append(...) : StringBuilder | SanitizationTests.java:103:68:103:78 | unsafeUri5c : StringBuilder | provenance | | +| SanitizationTests.java:101:77:101:105 | getParameter(...) : String | SanitizationTests.java:101:41:101:106 | append(...) : StringBuilder | provenance | Src:MaD:277 MaD:278+MaD:279 | +| SanitizationTests.java:103:37:103:91 | newBuilder(...) : Builder | SanitizationTests.java:103:37:103:99 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:103:37:103:99 | build(...) : HttpRequest | SanitizationTests.java:104:25:104:33 | unsafer5c | provenance | Sink:MaD:4 | +| SanitizationTests.java:103:60:103:90 | new URI(...) : URI | SanitizationTests.java:103:37:103:91 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:103:68:103:78 | unsafeUri5c : StringBuilder | SanitizationTests.java:103:68:103:89 | toString(...) : String | provenance | MaD:280 | +| SanitizationTests.java:103:68:103:89 | toString(...) : String | SanitizationTests.java:103:60:103:90 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:103:68:103:89 | toString(...) : String | SanitizationTests.java:103:60:103:90 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:103:68:103:89 | toString(...) : String | SanitizationTests.java:103:60:103:90 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:103:68:103:89 | toString(...) : String | SanitizationTests.java:103:60:103:90 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:106:33:106:104 | format(...) : String | SanitizationTests.java:107:67:107:76 | unsafeUri6 : String | provenance | | +| SanitizationTests.java:106:33:106:104 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:106:33:106:104 | format(...) : String | provenance | MaD:281 | +| SanitizationTests.java:106:73:106:103 | getParameter(...) : String | SanitizationTests.java:106:33:106:104 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | +| SanitizationTests.java:107:36:107:78 | newBuilder(...) : Builder | SanitizationTests.java:107:36:107:86 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:107:36:107:86 | build(...) : HttpRequest | SanitizationTests.java:108:25:108:32 | unsafer6 | provenance | Sink:MaD:4 | +| SanitizationTests.java:107:59:107:77 | new URI(...) : URI | SanitizationTests.java:107:36:107:78 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:107:67:107:76 | unsafeUri6 : String | SanitizationTests.java:107:59:107:77 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:107:67:107:76 | unsafeUri6 : String | SanitizationTests.java:107:59:107:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:107:67:107:76 | unsafeUri6 : String | SanitizationTests.java:107:59:107:77 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:107:67:107:76 | unsafeUri6 : String | SanitizationTests.java:107:59:107:77 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:110:33:110:110 | format(...) : String | SanitizationTests.java:111:67:111:76 | unsafeUri7 : String | provenance | | +| SanitizationTests.java:110:33:110:110 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:110:33:110:110 | format(...) : String | provenance | MaD:281 | +| SanitizationTests.java:110:56:110:86 | getParameter(...) : String | SanitizationTests.java:110:33:110:110 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | +| SanitizationTests.java:111:36:111:78 | newBuilder(...) : Builder | SanitizationTests.java:111:36:111:86 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:111:36:111:86 | build(...) : HttpRequest | SanitizationTests.java:112:25:112:32 | unsafer7 | provenance | Sink:MaD:4 | +| SanitizationTests.java:111:59:111:77 | new URI(...) : URI | SanitizationTests.java:111:36:111:78 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:111:67:111:76 | unsafeUri7 : String | SanitizationTests.java:111:59:111:77 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:111:67:111:76 | unsafeUri7 : String | SanitizationTests.java:111:59:111:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:111:67:111:76 | unsafeUri7 : String | SanitizationTests.java:111:59:111:77 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:111:67:111:76 | unsafeUri7 : String | SanitizationTests.java:111:59:111:77 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:114:33:114:110 | format(...) : String | SanitizationTests.java:115:67:115:76 | unsafeUri8 : String | provenance | | +| SanitizationTests.java:114:33:114:110 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:114:33:114:110 | format(...) : String | provenance | MaD:281 | +| SanitizationTests.java:114:55:114:85 | getParameter(...) : String | SanitizationTests.java:114:33:114:110 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | +| SanitizationTests.java:115:36:115:78 | newBuilder(...) : Builder | SanitizationTests.java:115:36:115:86 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:115:36:115:86 | build(...) : HttpRequest | SanitizationTests.java:116:25:116:32 | unsafer8 | provenance | Sink:MaD:4 | +| SanitizationTests.java:115:59:115:77 | new URI(...) : URI | SanitizationTests.java:115:36:115:78 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:115:67:115:76 | unsafeUri8 : String | SanitizationTests.java:115:59:115:77 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:115:67:115:76 | unsafeUri8 : String | SanitizationTests.java:115:59:115:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:115:67:115:76 | unsafeUri8 : String | SanitizationTests.java:115:59:115:77 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:115:67:115:76 | unsafeUri8 : String | SanitizationTests.java:115:59:115:77 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:118:33:118:63 | getParameter(...) : String | SanitizationTests.java:119:67:119:76 | unsafeUri9 : String | provenance | Src:MaD:277 | +| SanitizationTests.java:119:36:119:78 | newBuilder(...) : Builder | SanitizationTests.java:119:36:119:86 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:119:36:119:86 | build(...) : HttpRequest | SanitizationTests.java:120:25:120:32 | unsafer9 | provenance | Sink:MaD:4 | +| SanitizationTests.java:119:59:119:77 | new URI(...) : URI | SanitizationTests.java:119:36:119:78 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:119:67:119:76 | unsafeUri9 : String | SanitizationTests.java:119:59:119:77 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:119:67:119:76 | unsafeUri9 : String | SanitizationTests.java:119:59:119:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:119:67:119:76 | unsafeUri9 : String | SanitizationTests.java:119:59:119:77 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:119:67:119:76 | unsafeUri9 : String | SanitizationTests.java:119:59:119:77 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:122:34:122:126 | format(...) : String | SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | provenance | | +| SanitizationTests.java:122:34:122:126 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:122:34:122:126 | format(...) : String | provenance | MaD:281 | +| SanitizationTests.java:122:94:122:125 | getParameter(...) : String | SanitizationTests.java:122:34:122:126 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | +| SanitizationTests.java:123:37:123:80 | newBuilder(...) : Builder | SanitizationTests.java:123:37:123:88 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:123:37:123:88 | build(...) : HttpRequest | SanitizationTests.java:124:25:124:33 | unsafer10 | provenance | Sink:MaD:4 | +| SanitizationTests.java:123:60:123:79 | new URI(...) : URI | SanitizationTests.java:123:37:123:80 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:177:31:177:114 | newBuilder(...) : Builder | SanitizationTests.java:177:31:177:122 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:177:31:177:122 | build(...) : HttpRequest | SanitizationTests.java:178:25:178:27 | r18 | provenance | Sink:MaD:4 | +| SanitizationTests.java:177:54:177:113 | new URI(...) : URI | SanitizationTests.java:177:31:177:114 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:177:62:177:112 | getFromList(...) : String | SanitizationTests.java:177:54:177:113 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:177:62:177:112 | getFromList(...) : String | SanitizationTests.java:177:54:177:113 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:177:62:177:112 | getFromList(...) : String | SanitizationTests.java:177:54:177:113 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:177:62:177:112 | getFromList(...) : String | SanitizationTests.java:177:54:177:113 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:177:74:177:111 | of(...) : List [] : String | SanitizationTests.java:177:62:177:112 | getFromList(...) : String | provenance | MaD:290 | +| SanitizationTests.java:177:74:177:111 | of(...) : List [] : String | SanitizationTests.java:199:31:199:112 | list : List [] : String | provenance | | +| SanitizationTests.java:177:82:177:110 | getParameter(...) : String | SanitizationTests.java:177:74:177:111 | of(...) : List [] : String | provenance | Src:MaD:277 MaD:289 | +| SanitizationTests.java:199:31:199:112 | list : List [] : String | SanitizationTests.java:200:16:200:19 | list : List [] : String | provenance | | +| SanitizationTests.java:200:16:200:19 | list : List [] : String | SanitizationTests.java:200:16:200:26 | get(...) : String | provenance | MaD:290 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:32:39:32:59 | ... + ... | provenance | Src:MaD:277 Sink:MaD:264 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:33:69:33:82 | fooResourceUrl | provenance | Src:MaD:277 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:34:73:34:86 | fooResourceUrl | provenance | Src:MaD:277 | @@ -864,16 +878,16 @@ edges | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:82:107:82:120 | fooResourceUrl : String | provenance | Src:MaD:277 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:84:129:84:142 | fooResourceUrl : String | provenance | Src:MaD:277 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | provenance | Src:MaD:277 | -| SpringSSRF.java:38:83:38:96 | fooResourceUrl : String | SpringSSRF.java:38:69:38:97 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:40:105:40:118 | fooResourceUrl : String | SpringSSRF.java:40:69:40:119 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:49:105:49:118 | fooResourceUrl : String | SpringSSRF.java:49:91:49:119 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:51:127:51:140 | fooResourceUrl : String | SpringSSRF.java:51:91:51:141 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:60:93:60:106 | fooResourceUrl : String | SpringSSRF.java:60:79:60:107 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:62:115:62:128 | fooResourceUrl : String | SpringSSRF.java:62:79:62:129 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:71:83:71:96 | fooResourceUrl : String | SpringSSRF.java:71:69:71:97 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:73:105:73:118 | fooResourceUrl : String | SpringSSRF.java:73:69:73:119 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:82:107:82:120 | fooResourceUrl : String | SpringSSRF.java:82:93:82:121 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:84:129:84:142 | fooResourceUrl : String | SpringSSRF.java:84:93:84:143 | of(...) | provenance | MaD:290 | +| SpringSSRF.java:38:83:38:96 | fooResourceUrl : String | SpringSSRF.java:38:69:38:97 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:40:105:40:118 | fooResourceUrl : String | SpringSSRF.java:40:69:40:119 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:49:105:49:118 | fooResourceUrl : String | SpringSSRF.java:49:91:49:119 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:51:127:51:140 | fooResourceUrl : String | SpringSSRF.java:51:91:51:141 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:60:93:60:106 | fooResourceUrl : String | SpringSSRF.java:60:79:60:107 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:62:115:62:128 | fooResourceUrl : String | SpringSSRF.java:62:79:62:129 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:71:83:71:96 | fooResourceUrl : String | SpringSSRF.java:71:69:71:97 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:73:105:73:118 | fooResourceUrl : String | SpringSSRF.java:73:69:73:119 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:82:107:82:120 | fooResourceUrl : String | SpringSSRF.java:82:93:82:121 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:84:129:84:142 | fooResourceUrl : String | SpringSSRF.java:84:93:84:143 | of(...) | provenance | MaD:292 | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:87:40:87:62 | new URI(...) | provenance | Config Sink:MaD:269 | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:87:40:87:62 | new URI(...) | provenance | MaD:285 Sink:MaD:269 | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:88:92:88:105 | fooResourceUrl | provenance | | @@ -918,20 +932,20 @@ edges | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:159:72:159:85 | fooResourceUrl : String | provenance | | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:161:94:161:107 | fooResourceUrl : String | provenance | | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:166:35:166:48 | fooResourceUrl : String | provenance | | -| SpringSSRF.java:93:106:93:119 | fooResourceUrl : String | SpringSSRF.java:93:92:93:120 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:95:128:95:141 | fooResourceUrl : String | SpringSSRF.java:95:92:95:142 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:104:94:104:107 | fooResourceUrl : String | SpringSSRF.java:104:80:104:108 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:106:116:106:129 | fooResourceUrl : String | SpringSSRF.java:106:80:106:130 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:115:106:115:119 | fooResourceUrl : String | SpringSSRF.java:115:92:115:120 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:117:128:117:141 | fooResourceUrl : String | SpringSSRF.java:117:92:117:142 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:126:82:126:95 | fooResourceUrl : String | SpringSSRF.java:126:68:126:96 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:128:104:128:117 | fooResourceUrl : String | SpringSSRF.java:128:68:128:118 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:137:63:137:76 | fooResourceUrl : String | SpringSSRF.java:137:49:137:77 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:139:85:139:98 | fooResourceUrl : String | SpringSSRF.java:139:49:139:99 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:148:71:148:84 | fooResourceUrl : String | SpringSSRF.java:148:57:148:85 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:150:93:150:106 | fooResourceUrl : String | SpringSSRF.java:150:57:150:107 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:159:72:159:85 | fooResourceUrl : String | SpringSSRF.java:159:58:159:86 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:161:94:161:107 | fooResourceUrl : String | SpringSSRF.java:161:58:161:108 | of(...) | provenance | MaD:290 | +| SpringSSRF.java:93:106:93:119 | fooResourceUrl : String | SpringSSRF.java:93:92:93:120 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:95:128:95:141 | fooResourceUrl : String | SpringSSRF.java:95:92:95:142 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:104:94:104:107 | fooResourceUrl : String | SpringSSRF.java:104:80:104:108 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:106:116:106:129 | fooResourceUrl : String | SpringSSRF.java:106:80:106:130 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:115:106:115:119 | fooResourceUrl : String | SpringSSRF.java:115:92:115:120 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:117:128:117:141 | fooResourceUrl : String | SpringSSRF.java:117:92:117:142 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:126:82:126:95 | fooResourceUrl : String | SpringSSRF.java:126:68:126:96 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:128:104:128:117 | fooResourceUrl : String | SpringSSRF.java:128:68:128:118 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:137:63:137:76 | fooResourceUrl : String | SpringSSRF.java:137:49:137:77 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:139:85:139:98 | fooResourceUrl : String | SpringSSRF.java:139:49:139:99 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:148:71:148:84 | fooResourceUrl : String | SpringSSRF.java:148:57:148:85 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:150:93:150:106 | fooResourceUrl : String | SpringSSRF.java:150:57:150:107 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:159:72:159:85 | fooResourceUrl : String | SpringSSRF.java:159:58:159:86 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:161:94:161:107 | fooResourceUrl : String | SpringSSRF.java:161:58:161:108 | of(...) | provenance | MaD:292 | | SpringSSRF.java:166:27:166:49 | new URI(...) : URI | SpringSSRF.java:168:44:168:46 | uri | provenance | Sink:MaD:255 | | SpringSSRF.java:166:27:166:49 | new URI(...) : URI | SpringSSRF.java:170:35:170:37 | uri | provenance | Sink:MaD:250 | | SpringSSRF.java:166:27:166:49 | new URI(...) : URI | SpringSSRF.java:171:35:171:37 | uri | provenance | Sink:MaD:256 | @@ -1352,11 +1366,13 @@ models | 286 | Summary: java.net; URI; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | | 287 | Summary: java.net; URI; false; toURL; ; ; Argument[this]; ReturnValue; taint; manual | | 288 | Summary: java.net; URL; false; URL; (String); ; Argument[0]; Argument[this]; taint; manual | -| 289 | Summary: java.util; Map; false; of; ; ; Argument[1]; ReturnValue.MapValue; value; manual | -| 290 | Summary: java.util; Map; false; of; ; ; Argument[3]; ReturnValue.MapValue; value; manual | -| 291 | Summary: java.util; Properties; true; setProperty; (String,String); ; Argument[1]; Argument[this].MapValue; value; manual | -| 292 | Summary: org.apache.hc.core5.http; HttpHost; true; HttpHost; (String); ; Argument[0]; Argument[this]; taint; hq-manual | -| 293 | Summary: org.apache.http.message; BasicRequestLine; false; BasicRequestLine; ; ; Argument[1]; Argument[this]; taint; manual | +| 289 | Summary: java.util; List; false; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | +| 290 | Summary: java.util; List; true; get; (int); ; Argument[this].Element; ReturnValue; value; manual | +| 291 | Summary: java.util; Map; false; of; ; ; Argument[1]; ReturnValue.MapValue; value; manual | +| 292 | Summary: java.util; Map; false; of; ; ; Argument[3]; ReturnValue.MapValue; value; manual | +| 293 | Summary: java.util; Properties; true; setProperty; (String,String); ; Argument[1]; Argument[this].MapValue; value; manual | +| 294 | Summary: org.apache.hc.core5.http; HttpHost; true; HttpHost; (String); ; Argument[0]; Argument[this]; taint; hq-manual | +| 295 | Summary: org.apache.http.message; BasicRequestLine; false; BasicRequestLine; ; ; Argument[1]; Argument[this]; taint; manual | nodes | ApacheHttpSSRF.java:27:27:27:53 | getParameter(...) : String | semmle.label | getParameter(...) : String | | ApacheHttpSSRF.java:28:23:28:35 | new URI(...) : URI | semmle.label | new URI(...) : URI | @@ -1714,107 +1730,118 @@ nodes | ReactiveWebClientSSRF.java:16:52:16:54 | url | semmle.label | url | | ReactiveWebClientSSRF.java:32:26:32:52 | getParameter(...) : String | semmle.label | getParameter(...) : String | | ReactiveWebClientSSRF.java:35:30:35:32 | url | semmle.label | url | -| SanitizationTests.java:21:23:21:58 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:21:31:21:57 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:24:29:24:55 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:24:29:24:63 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:24:52:24:54 | uri | semmle.label | uri | -| SanitizationTests.java:24:52:24:54 | uri : URI | semmle.label | uri : URI | -| SanitizationTests.java:25:25:25:25 | r | semmle.label | r | -| SanitizationTests.java:77:33:77:63 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:78:36:78:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:78:36:78:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:78:59:78:77 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:78:59:78:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:78:67:78:76 | unsafeUri3 : String | semmle.label | unsafeUri3 : String | -| SanitizationTests.java:79:25:79:32 | unsafer3 | semmle.label | unsafer3 | -| SanitizationTests.java:81:49:81:79 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:82:36:82:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:82:36:82:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:82:59:82:77 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:82:59:82:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:82:67:82:76 | unsafeUri4 : String | semmle.label | unsafeUri4 : String | -| SanitizationTests.java:83:25:83:32 | unsafer4 | semmle.label | unsafer4 | -| SanitizationTests.java:86:13:86:22 | unsafeUri5 [post update] : StringBuilder | semmle.label | unsafeUri5 [post update] : StringBuilder | -| SanitizationTests.java:86:31:86:61 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:87:36:87:89 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:87:36:87:97 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:87:59:87:88 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:87:59:87:88 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:87:67:87:76 | unsafeUri5 : StringBuilder | semmle.label | unsafeUri5 : StringBuilder | -| SanitizationTests.java:87:67:87:87 | toString(...) : String | semmle.label | toString(...) : String | -| SanitizationTests.java:88:25:88:32 | unsafer5 | semmle.label | unsafer5 | -| SanitizationTests.java:90:40:90:87 | new StringBuilder(...) : StringBuilder | semmle.label | new StringBuilder(...) : StringBuilder | -| SanitizationTests.java:90:58:90:86 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:92:37:92:90 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:92:37:92:98 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:92:60:92:89 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:92:60:92:89 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:92:68:92:77 | unafeUri5a : StringBuilder | semmle.label | unafeUri5a : StringBuilder | -| SanitizationTests.java:92:68:92:88 | toString(...) : String | semmle.label | toString(...) : String | -| SanitizationTests.java:93:25:93:33 | unsafer5a | semmle.label | unsafer5a | -| SanitizationTests.java:95:41:95:105 | append(...) : StringBuilder | semmle.label | append(...) : StringBuilder | -| SanitizationTests.java:95:42:95:89 | new StringBuilder(...) : StringBuilder | semmle.label | new StringBuilder(...) : StringBuilder | -| SanitizationTests.java:95:60:95:88 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:97:37:97:91 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:97:37:97:99 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:97:60:97:90 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:97:60:97:90 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:97:68:97:78 | unsafeUri5b : StringBuilder | semmle.label | unsafeUri5b : StringBuilder | -| SanitizationTests.java:97:68:97:89 | toString(...) : String | semmle.label | toString(...) : String | -| SanitizationTests.java:98:25:98:33 | unsafer5b | semmle.label | unsafer5b | -| SanitizationTests.java:100:41:100:106 | append(...) : StringBuilder | semmle.label | append(...) : StringBuilder | -| SanitizationTests.java:100:77:100:105 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:102:37:102:91 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:102:37:102:99 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:102:60:102:90 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:102:60:102:90 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:102:68:102:78 | unsafeUri5c : StringBuilder | semmle.label | unsafeUri5c : StringBuilder | -| SanitizationTests.java:102:68:102:89 | toString(...) : String | semmle.label | toString(...) : String | -| SanitizationTests.java:103:25:103:33 | unsafer5c | semmle.label | unsafer5c | -| SanitizationTests.java:105:33:105:104 | format(...) : String | semmle.label | format(...) : String | -| SanitizationTests.java:105:33:105:104 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | -| SanitizationTests.java:105:73:105:103 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:106:36:106:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:106:36:106:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:106:59:106:77 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:106:59:106:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:106:67:106:76 | unsafeUri6 : String | semmle.label | unsafeUri6 : String | -| SanitizationTests.java:107:25:107:32 | unsafer6 | semmle.label | unsafer6 | -| SanitizationTests.java:109:33:109:110 | format(...) : String | semmle.label | format(...) : String | -| SanitizationTests.java:109:33:109:110 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | -| SanitizationTests.java:109:56:109:86 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:110:36:110:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:110:36:110:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:110:59:110:77 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:110:59:110:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:110:67:110:76 | unsafeUri7 : String | semmle.label | unsafeUri7 : String | -| SanitizationTests.java:111:25:111:32 | unsafer7 | semmle.label | unsafer7 | -| SanitizationTests.java:113:33:113:110 | format(...) : String | semmle.label | format(...) : String | -| SanitizationTests.java:113:33:113:110 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | -| SanitizationTests.java:113:55:113:85 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:114:36:114:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:114:36:114:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:114:59:114:77 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:114:59:114:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:114:67:114:76 | unsafeUri8 : String | semmle.label | unsafeUri8 : String | -| SanitizationTests.java:115:25:115:32 | unsafer8 | semmle.label | unsafer8 | -| SanitizationTests.java:117:33:117:63 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:118:36:118:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:118:36:118:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:118:59:118:77 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:118:59:118:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:118:67:118:76 | unsafeUri9 : String | semmle.label | unsafeUri9 : String | -| SanitizationTests.java:119:25:119:32 | unsafer9 | semmle.label | unsafer9 | -| SanitizationTests.java:121:34:121:126 | format(...) : String | semmle.label | format(...) : String | -| SanitizationTests.java:121:34:121:126 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | -| SanitizationTests.java:121:94:121:125 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:122:37:122:80 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:122:37:122:88 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:122:60:122:79 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:122:60:122:79 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:122:68:122:78 | unsafeUri10 : String | semmle.label | unsafeUri10 : String | -| SanitizationTests.java:123:25:123:33 | unsafer10 | semmle.label | unsafer10 | +| SanitizationTests.java:22:23:22:58 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:22:31:22:57 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:25:29:25:55 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:25:29:25:63 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:25:52:25:54 | uri | semmle.label | uri | +| SanitizationTests.java:25:52:25:54 | uri : URI | semmle.label | uri : URI | +| SanitizationTests.java:26:25:26:25 | r | semmle.label | r | +| SanitizationTests.java:78:33:78:63 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:79:36:79:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:79:36:79:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:79:59:79:77 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:79:59:79:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:79:67:79:76 | unsafeUri3 : String | semmle.label | unsafeUri3 : String | +| SanitizationTests.java:80:25:80:32 | unsafer3 | semmle.label | unsafer3 | +| SanitizationTests.java:82:49:82:79 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:83:36:83:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:83:36:83:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:83:59:83:77 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:83:59:83:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:83:67:83:76 | unsafeUri4 : String | semmle.label | unsafeUri4 : String | +| SanitizationTests.java:84:25:84:32 | unsafer4 | semmle.label | unsafer4 | +| SanitizationTests.java:87:13:87:22 | unsafeUri5 [post update] : StringBuilder | semmle.label | unsafeUri5 [post update] : StringBuilder | +| SanitizationTests.java:87:31:87:61 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:88:36:88:89 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:88:36:88:97 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:88:59:88:88 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:88:59:88:88 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:88:67:88:76 | unsafeUri5 : StringBuilder | semmle.label | unsafeUri5 : StringBuilder | +| SanitizationTests.java:88:67:88:87 | toString(...) : String | semmle.label | toString(...) : String | +| SanitizationTests.java:89:25:89:32 | unsafer5 | semmle.label | unsafer5 | +| SanitizationTests.java:91:40:91:87 | new StringBuilder(...) : StringBuilder | semmle.label | new StringBuilder(...) : StringBuilder | +| SanitizationTests.java:91:58:91:86 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:93:37:93:90 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:93:37:93:98 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:93:60:93:89 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:93:60:93:89 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:93:68:93:77 | unafeUri5a : StringBuilder | semmle.label | unafeUri5a : StringBuilder | +| SanitizationTests.java:93:68:93:88 | toString(...) : String | semmle.label | toString(...) : String | +| SanitizationTests.java:94:25:94:33 | unsafer5a | semmle.label | unsafer5a | +| SanitizationTests.java:96:41:96:105 | append(...) : StringBuilder | semmle.label | append(...) : StringBuilder | +| SanitizationTests.java:96:42:96:89 | new StringBuilder(...) : StringBuilder | semmle.label | new StringBuilder(...) : StringBuilder | +| SanitizationTests.java:96:60:96:88 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:98:37:98:91 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:98:37:98:99 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:98:60:98:90 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:98:60:98:90 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:98:68:98:78 | unsafeUri5b : StringBuilder | semmle.label | unsafeUri5b : StringBuilder | +| SanitizationTests.java:98:68:98:89 | toString(...) : String | semmle.label | toString(...) : String | +| SanitizationTests.java:99:25:99:33 | unsafer5b | semmle.label | unsafer5b | +| SanitizationTests.java:101:41:101:106 | append(...) : StringBuilder | semmle.label | append(...) : StringBuilder | +| SanitizationTests.java:101:77:101:105 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:103:37:103:91 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:103:37:103:99 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:103:60:103:90 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:103:60:103:90 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:103:68:103:78 | unsafeUri5c : StringBuilder | semmle.label | unsafeUri5c : StringBuilder | +| SanitizationTests.java:103:68:103:89 | toString(...) : String | semmle.label | toString(...) : String | +| SanitizationTests.java:104:25:104:33 | unsafer5c | semmle.label | unsafer5c | +| SanitizationTests.java:106:33:106:104 | format(...) : String | semmle.label | format(...) : String | +| SanitizationTests.java:106:33:106:104 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | +| SanitizationTests.java:106:73:106:103 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:107:36:107:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:107:36:107:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:107:59:107:77 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:107:59:107:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:107:67:107:76 | unsafeUri6 : String | semmle.label | unsafeUri6 : String | +| SanitizationTests.java:108:25:108:32 | unsafer6 | semmle.label | unsafer6 | +| SanitizationTests.java:110:33:110:110 | format(...) : String | semmle.label | format(...) : String | +| SanitizationTests.java:110:33:110:110 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | +| SanitizationTests.java:110:56:110:86 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:111:36:111:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:111:36:111:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:111:59:111:77 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:111:59:111:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:111:67:111:76 | unsafeUri7 : String | semmle.label | unsafeUri7 : String | +| SanitizationTests.java:112:25:112:32 | unsafer7 | semmle.label | unsafer7 | +| SanitizationTests.java:114:33:114:110 | format(...) : String | semmle.label | format(...) : String | +| SanitizationTests.java:114:33:114:110 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | +| SanitizationTests.java:114:55:114:85 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:115:36:115:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:115:36:115:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:115:59:115:77 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:115:59:115:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:115:67:115:76 | unsafeUri8 : String | semmle.label | unsafeUri8 : String | +| SanitizationTests.java:116:25:116:32 | unsafer8 | semmle.label | unsafer8 | +| SanitizationTests.java:118:33:118:63 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:119:36:119:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:119:36:119:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:119:59:119:77 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:119:59:119:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:119:67:119:76 | unsafeUri9 : String | semmle.label | unsafeUri9 : String | +| SanitizationTests.java:120:25:120:32 | unsafer9 | semmle.label | unsafer9 | +| SanitizationTests.java:122:34:122:126 | format(...) : String | semmle.label | format(...) : String | +| SanitizationTests.java:122:34:122:126 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | +| SanitizationTests.java:122:94:122:125 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:123:37:123:80 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:123:37:123:88 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:123:60:123:79 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:123:60:123:79 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | semmle.label | unsafeUri10 : String | +| SanitizationTests.java:124:25:124:33 | unsafer10 | semmle.label | unsafer10 | +| SanitizationTests.java:177:31:177:114 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:177:31:177:122 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:177:54:177:113 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:177:54:177:113 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:177:62:177:112 | getFromList(...) : String | semmle.label | getFromList(...) : String | +| SanitizationTests.java:177:74:177:111 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| SanitizationTests.java:177:82:177:110 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:178:25:178:27 | r18 | semmle.label | r18 | +| SanitizationTests.java:199:31:199:112 | list : List [] : String | semmle.label | list : List [] : String | +| SanitizationTests.java:200:16:200:19 | list : List [] : String | semmle.label | list : List [] : String | +| SanitizationTests.java:200:16:200:26 | get(...) : String | semmle.label | get(...) : String | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | semmle.label | getParameter(...) : String | | SpringSSRF.java:32:39:32:59 | ... + ... | semmle.label | ... + ... | | SpringSSRF.java:33:69:33:82 | fooResourceUrl | semmle.label | fooResourceUrl | @@ -2035,3 +2062,4 @@ nodes | mad/Test.java:112:15:112:31 | (...)... | semmle.label | (...)... | | mad/Test.java:112:24:112:31 | source(...) : String | semmle.label | source(...) : String | subpaths +| SanitizationTests.java:177:74:177:111 | of(...) : List [] : String | SanitizationTests.java:199:31:199:112 | list : List [] : String | SanitizationTests.java:200:16:200:26 | get(...) : String | SanitizationTests.java:177:62:177:112 | getFromList(...) : String | diff --git a/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java b/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java index 4da70e8dd751..f14158de0d1a 100644 --- a/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java +++ b/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java @@ -2,8 +2,9 @@ import java.net.URI; import java.net.http.HttpClient; import java.net.http.HttpRequest; -import java.util.regex.Pattern; import java.util.regex.Matcher; +import java.util.regex.Pattern; +import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; @@ -140,13 +141,41 @@ protected void doGet(HttpServletRequest request, HttpServletResponse response) client.send(r12, null); } - Pattern pattern = Pattern.compile("[a-zA-Z0-9_-]+"); + Pattern pattern = Pattern.compile("([a-zA-Z0-9_-]+)"); String param13 = request.getParameter("uri13"); Matcher matcher = pattern.matcher(param13); if (matcher.matches()) { - HttpRequest r13 = HttpRequest.newBuilder(new URI(param13)).build(); - client.send(r13, null); + HttpRequest r13a = HttpRequest.newBuilder(new URI(param13)).build(); + client.send(r13a, null); + HttpRequest r13b = HttpRequest.newBuilder(new URI(matcher.group(1))).build(); + client.send(r13b, null); } + + // GOOD: sanitisation by @Pattern annotation on a field + AnnotatedFieldObject obj14 = new AnnotatedFieldObject(request.getParameter("uri14")); + HttpRequest r14a = HttpRequest.newBuilder(new URI(obj14.uri)).build(); + client.send(r14a, null); + HttpRequest r14b = HttpRequest.newBuilder(new URI(obj14.getUri())).build(); + client.send(r14b, null); + + // GOOD: sanitisation by @Pattern annotation on a parameter of a constructor + AnnotatedParameterObject obj15 = new AnnotatedParameterObject(request.getParameter("uri15")); + HttpRequest r15a = HttpRequest.newBuilder(new URI(obj15.uri)).build(); + client.send(r15a, null); + HttpRequest r15b = HttpRequest.newBuilder(new URI(obj15.getUri())).build(); + client.send(r15b, null); + + // GOOD: sanitisation by @Pattern annotation on a parameter of a method + HttpRequest r16 = HttpRequest.newBuilder(new URI(identity1(request.getParameter("uri16")))).build(); + client.send(r16, null); + + // GOOD: sanitisation by @Pattern annotation on a method (which constrains the return value) + HttpRequest r17 = HttpRequest.newBuilder(new URI(identity2(request.getParameter("uri17")))).build(); + client.send(r17, null); + + // GOOD: sanitisation by @Pattern annotation on a type (we do not recognise this, so we get an FP) + HttpRequest r18 = HttpRequest.newBuilder(new URI(getFromList(List.of(request.getParameter("uri18"))))).build(); // $ SPURIOUS: Source Alert + client.send(r18, null); // $ SPURIOUS: Alert } catch (Exception e) { // TODO: handle exception } @@ -157,4 +186,44 @@ private void validate(String s) { throw new IllegalArgumentException("Invalid ID"); } } + + public String identity1(@javax.validation.constraints.Pattern(regexp = "[a-zA-Z0-9_-]+") String uri) { + return uri; + } + + @javax.validation.constraints.Pattern(regexp = "[a-zA-Z0-9_-]+") + public String identity2(String uri) { + return uri; + } + + public String getFromList(List<@javax.validation.constraints.Pattern(regexp = "[a-zA-Z0-9_-]+") String> list) { + return list.get(0); + } + + public class AnnotatedFieldObject { + @javax.validation.constraints.Pattern(regexp = "[a-zA-Z0-9_-]+") + String uri; + + String otherField; + + public AnnotatedFieldObject(String uri) { + this.uri = uri; + } + + public String getUri() { + return uri; + } + } + + public class AnnotatedParameterObject { + String uri; + + public AnnotatedParameterObject(@javax.validation.constraints.Pattern(regexp = "[a-zA-Z0-9_-]+") String uri) { + this.uri = uri; + } + + public String getUri() { + return uri; + } + } } diff --git a/java/ql/test/query-tests/security/CWE-918/options b/java/ql/test/query-tests/security/CWE-918/options index 78a6c15024ae..6b6efaeca544 100644 --- a/java/ql/test/query-tests/security/CWE-918/options +++ b/java/ql/test/query-tests/security/CWE-918/options @@ -1 +1 @@ -//semmle-extractor-options: --javac-args -source 11 -target 11 -cp ${testdir}/../../../stubs/springframework-5.8.x:${testdir}/../../../stubs/javax-ws-rs-api-2.1.1:${testdir}/../../../stubs/javax-ws-rs-api-3.0.0:${testdir}/../../../stubs/apache-http-4.4.13/:${testdir}/../../../stubs/projectreactor-3.4.3/:${testdir}/../../../stubs/postgresql-42.3.3/:${testdir}/../../../stubs/HikariCP-3.4.5/:${testdir}/../../../stubs/spring-jdbc-5.3.8/:${testdir}/../../../stubs/jdbi3-core-3.27.2/:${testdir}/../../../stubs/cargo:${testdir}/../../../stubs/javafx-web:${testdir}/../../../stubs/apache-commons-jelly-1.0.1:${testdir}/../../../stubs/dom4j-2.1.1:${testdir}/../../../stubs/jaxen-1.2.0:${testdir}/../../../stubs/stapler-1.263:${testdir}/../../../stubs/javax-servlet-2.5:${testdir}/../../../stubs/apache-commons-fileupload-1.4:${testdir}/../../../stubs/saxon-xqj-9.x:${testdir}/../../../stubs/apache-commons-beanutils:${testdir}/../../../stubs/apache-commons-lang:${testdir}/../../../stubs/apache-http-5:${testdir}/../../../stubs/playframework-2.6.x:${testdir}/../../../stubs/jaxws-api-2.0:${testdir}/../../../stubs/apache-cxf +//semmle-extractor-options: --javac-args -source 11 -target 11 -cp ${testdir}/../../../stubs/javax-validation-constraints:${testdir}/../../../stubs/springframework-5.8.x:${testdir}/../../../stubs/javax-ws-rs-api-2.1.1:${testdir}/../../../stubs/javax-ws-rs-api-3.0.0:${testdir}/../../../stubs/apache-http-4.4.13/:${testdir}/../../../stubs/projectreactor-3.4.3/:${testdir}/../../../stubs/postgresql-42.3.3/:${testdir}/../../../stubs/HikariCP-3.4.5/:${testdir}/../../../stubs/spring-jdbc-5.3.8/:${testdir}/../../../stubs/jdbi3-core-3.27.2/:${testdir}/../../../stubs/cargo:${testdir}/../../../stubs/javafx-web:${testdir}/../../../stubs/apache-commons-jelly-1.0.1:${testdir}/../../../stubs/dom4j-2.1.1:${testdir}/../../../stubs/jaxen-1.2.0:${testdir}/../../../stubs/stapler-1.263:${testdir}/../../../stubs/javax-servlet-2.5:${testdir}/../../../stubs/apache-commons-fileupload-1.4:${testdir}/../../../stubs/saxon-xqj-9.x:${testdir}/../../../stubs/apache-commons-beanutils:${testdir}/../../../stubs/apache-commons-lang:${testdir}/../../../stubs/apache-http-5:${testdir}/../../../stubs/playframework-2.6.x:${testdir}/../../../stubs/jaxws-api-2.0:${testdir}/../../../stubs/apache-cxf diff --git a/java/ql/test/stubs/javax-validation-constraints/javax/validation/Constraint.java b/java/ql/test/stubs/javax-validation-constraints/javax/validation/Constraint.java new file mode 100644 index 000000000000..5ad2617b19cd --- /dev/null +++ b/java/ql/test/stubs/javax-validation-constraints/javax/validation/Constraint.java @@ -0,0 +1,88 @@ +/* + * Bean Validation API + * + * License: Apache License, Version 2.0 + * See the license.txt file in the root directory or . + */ +package javax.validation; + +import static java.lang.annotation.ElementType.ANNOTATION_TYPE; +import static java.lang.annotation.RetentionPolicy.RUNTIME; + +import java.lang.annotation.Documented; +import java.lang.annotation.Retention; +import java.lang.annotation.Target; + +/** + * Marks an annotation as being a Bean Validation constraint. + *

+ * A given constraint annotation must be annotated by a {@code @Constraint} + * annotation which refers to its list of constraint validation implementations. + *

+ * Each constraint annotation must host the following attributes: + *

    + *
  • {@code String message() default [...];} which should default to an error + * message key made of the fully-qualified class name of the constraint followed by + * {@code .message}. For example {@code "{com.acme.constraints.NotSafe.message}"}
  • + *
  • {@code Class[] groups() default {};} for user to customize the targeted + * groups
  • + *
  • {@code Class[] payload() default {};} for + * extensibility purposes
  • + *
+ *

+ * When building a constraint that is both generic and cross-parameter, the constraint + * annotation must host the {@code validationAppliesTo()} property. + * A constraint is generic if it targets the annotated element and is cross-parameter if + * it targets the array of parameters of a method or constructor. + *

+ *     ConstraintTarget validationAppliesTo() default ConstraintTarget.IMPLICIT;
+ * 
+ * This property allows the constraint user to choose whether the constraint + * targets the return type of the executable or its array of parameters. + * + * A constraint is both generic and cross-parameter if + *
    + *
  • two kinds of {@code ConstraintValidator}s are attached to the + * constraint, one targeting {@link ValidationTarget#ANNOTATED_ELEMENT} + * and one targeting {@link ValidationTarget#PARAMETERS},
  • + *
  • or if a {@code ConstraintValidator} targets both + * {@code ANNOTATED_ELEMENT} and {@code PARAMETERS}.
  • + *
+ * + * Such dual constraints are rare. See {@link SupportedValidationTarget} for more info. + *

+ * Here is an example of constraint definition: + *

+ * @Documented
+ * @Constraint(validatedBy = OrderNumberValidator.class)
+ * @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
+ * @Retention(RUNTIME)
+ * public @interface OrderNumber {
+ *     String message() default "{com.acme.constraint.OrderNumber.message}";
+ *     Class<?>[] groups() default {};
+ *     Class<? extends Payload>[] payload() default {};
+ * }
+ * 
+ * + * @author Emmanuel Bernard + * @author Gavin King + * @author Hardy Ferentschik + */ +@Documented +@Target({ ANNOTATION_TYPE }) +@Retention(RUNTIME) +public @interface Constraint { + + /** + * {@link ConstraintValidator} classes implementing the constraint. The given classes + * must reference distinct target types for a given {@link ValidationTarget}. If two + * {@code ConstraintValidator}s refer to the same type, an exception will occur. + *

+ * At most one {@code ConstraintValidator} targeting the array of parameters of + * methods or constructors (aka cross-parameter) is accepted. If two or more + * are present, an exception will occur. + * + * @return array of {@code ConstraintValidator} classes implementing the constraint + */ + Class[] validatedBy(); +} diff --git a/java/ql/test/stubs/javax-validation-constraints/javax/validation/Payload.java b/java/ql/test/stubs/javax-validation-constraints/javax/validation/Payload.java new file mode 100644 index 000000000000..12c2760d34d4 --- /dev/null +++ b/java/ql/test/stubs/javax-validation-constraints/javax/validation/Payload.java @@ -0,0 +1,23 @@ +/* + * Bean Validation API + * + * License: Apache License, Version 2.0 + * See the license.txt file in the root directory or . + */ +package javax.validation; + +/** + * Payload type that can be attached to a given + * constraint declaration. + *

+ * Payloads are typically used to carry on metadata information + * consumed by a validation client. + *

+ * With the exception of the {@link Unwrapping} payload types, the use of payloads is not + * considered portable. + * + * @author Emmanuel Bernard + * @author Gerhard Petracek + */ +public interface Payload { +} diff --git a/java/ql/test/stubs/javax-validation-constraints/javax/validation/constraints/Pattern.java b/java/ql/test/stubs/javax-validation-constraints/javax/validation/constraints/Pattern.java new file mode 100644 index 000000000000..0f3191fe0d95 --- /dev/null +++ b/java/ql/test/stubs/javax-validation-constraints/javax/validation/constraints/Pattern.java @@ -0,0 +1,148 @@ +/* + * Bean Validation API + * + * License: Apache License, Version 2.0 + * See the license.txt file in the root directory or . + */ +package javax.validation.constraints; + +import static java.lang.annotation.ElementType.ANNOTATION_TYPE; +import static java.lang.annotation.ElementType.CONSTRUCTOR; +import static java.lang.annotation.ElementType.FIELD; +import static java.lang.annotation.ElementType.METHOD; +import static java.lang.annotation.ElementType.PARAMETER; +import static java.lang.annotation.ElementType.TYPE_USE; +import static java.lang.annotation.RetentionPolicy.RUNTIME; + +import java.lang.annotation.Documented; +import java.lang.annotation.Repeatable; +import java.lang.annotation.Retention; +import java.lang.annotation.Target; + +import javax.validation.Constraint; +import javax.validation.Payload; +import javax.validation.constraints.Pattern.List; + +/** + * The annotated {@code CharSequence} must match the specified regular expression. + * The regular expression follows the Java regular expression conventions + * see {@link java.util.regex.Pattern}. + *

+ * Accepts {@code CharSequence}. {@code null} elements are considered valid. + * + * @author Emmanuel Bernard + */ +@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE }) +@Retention(RUNTIME) +@Repeatable(List.class) +@Documented +@Constraint(validatedBy = { }) +public @interface Pattern { + + /** + * @return the regular expression to match + */ + String regexp(); + + /** + * @return array of {@code Flag}s considered when resolving the regular expression + */ + Flag[] flags() default { }; + + /** + * @return the error message template + */ + String message() default "{javax.validation.constraints.Pattern.message}"; + + /** + * @return the groups the constraint belongs to + */ + Class[] groups() default { }; + + /** + * @return the payload associated to the constraint + */ + Class[] payload() default { }; + + /** + * Possible Regexp flags. + */ + public static enum Flag { + + /** + * Enables Unix lines mode. + * + * @see java.util.regex.Pattern#UNIX_LINES + */ + UNIX_LINES( java.util.regex.Pattern.UNIX_LINES ), + + /** + * Enables case-insensitive matching. + * + * @see java.util.regex.Pattern#CASE_INSENSITIVE + */ + CASE_INSENSITIVE( java.util.regex.Pattern.CASE_INSENSITIVE ), + + /** + * Permits whitespace and comments in pattern. + * + * @see java.util.regex.Pattern#COMMENTS + */ + COMMENTS( java.util.regex.Pattern.COMMENTS ), + + /** + * Enables multiline mode. + * + * @see java.util.regex.Pattern#MULTILINE + */ + MULTILINE( java.util.regex.Pattern.MULTILINE ), + + /** + * Enables dotall mode. + * + * @see java.util.regex.Pattern#DOTALL + */ + DOTALL( java.util.regex.Pattern.DOTALL ), + + /** + * Enables Unicode-aware case folding. + * + * @see java.util.regex.Pattern#UNICODE_CASE + */ + UNICODE_CASE( java.util.regex.Pattern.UNICODE_CASE ), + + /** + * Enables canonical equivalence. + * + * @see java.util.regex.Pattern#CANON_EQ + */ + CANON_EQ( java.util.regex.Pattern.CANON_EQ ); + + //JDK flag value + private final int value; + + private Flag(int value) { + this.value = value; + } + + /** + * @return flag value as defined in {@link java.util.regex.Pattern} + */ + public int getValue() { + return value; + } + } + + /** + * Defines several {@link Pattern} annotations on the same element. + * + * @see Pattern + */ + @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE }) + @Retention(RUNTIME) + @Documented + @interface List { + + Pattern[] value(); + } +} diff --git a/javascript/ql/lib/CHANGELOG.md b/javascript/ql/lib/CHANGELOG.md index c599ea0799bd..1d872998261d 100644 --- a/javascript/ql/lib/CHANGELOG.md +++ b/javascript/ql/lib/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.6.22 + +No user-facing changes. + ## 2.6.21 ### Minor Analysis Improvements diff --git a/javascript/ql/lib/change-notes/released/2.6.22.md b/javascript/ql/lib/change-notes/released/2.6.22.md new file mode 100644 index 000000000000..a89579426456 --- /dev/null +++ b/javascript/ql/lib/change-notes/released/2.6.22.md @@ -0,0 +1,3 @@ +## 2.6.22 + +No user-facing changes. diff --git a/javascript/ql/lib/codeql-pack.release.yml b/javascript/ql/lib/codeql-pack.release.yml index 872f4f9807c1..205f738ae8d9 100644 --- a/javascript/ql/lib/codeql-pack.release.yml +++ b/javascript/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.6.21 +lastReleaseVersion: 2.6.22 diff --git a/javascript/ql/lib/qlpack.yml b/javascript/ql/lib/qlpack.yml index 2e54148b68c4..2415cf3d3b72 100644 --- a/javascript/ql/lib/qlpack.yml +++ b/javascript/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/javascript-all -version: 2.6.21 +version: 2.6.23-dev groups: javascript dbscheme: semmlecode.javascript.dbscheme extractor: javascript diff --git a/javascript/ql/src/CHANGELOG.md b/javascript/ql/src/CHANGELOG.md index 50da6325746f..c08f0793935a 100644 --- a/javascript/ql/src/CHANGELOG.md +++ b/javascript/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.3.2 + +No user-facing changes. + ## 2.3.1 No user-facing changes. diff --git a/javascript/ql/src/change-notes/released/2.3.2.md b/javascript/ql/src/change-notes/released/2.3.2.md new file mode 100644 index 000000000000..420587fa3dc9 --- /dev/null +++ b/javascript/ql/src/change-notes/released/2.3.2.md @@ -0,0 +1,3 @@ +## 2.3.2 + +No user-facing changes. diff --git a/javascript/ql/src/codeql-pack.release.yml b/javascript/ql/src/codeql-pack.release.yml index 530699ffeccb..f51e9b8563c7 100644 --- a/javascript/ql/src/codeql-pack.release.yml +++ b/javascript/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.3.1 +lastReleaseVersion: 2.3.2 diff --git a/javascript/ql/src/qlpack.yml b/javascript/ql/src/qlpack.yml index ad56a74e9b5d..1f57b3e99e2f 100644 --- a/javascript/ql/src/qlpack.yml +++ b/javascript/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/javascript-queries -version: 2.3.1 +version: 2.3.3-dev groups: - javascript - queries diff --git a/misc/bazel/3rdparty/patch_defs.py b/misc/bazel/3rdparty/patch_defs.py index 512fb1667723..62cbf8075172 100644 --- a/misc/bazel/3rdparty/patch_defs.py +++ b/misc/bazel/3rdparty/patch_defs.py @@ -2,7 +2,23 @@ import re import pathlib -label_re = re.compile(r'"@(vendor.*)//:(.+)-([\d.]+)"') +# Problem number 1: +# https://github.com/bazelbuild/rules_rust/issues/3255 +# `crates_vendor` generates broken labels in `defs.bzl`: instead of +# "anyhow": Label("@vendor__anyhow-1.0.44//:anyhow") +# it produces +# "anyhow": Label("@vendor//:anyhow-1.0.44") +# which results in: ERROR: no such package '@@[unknown repo 'vendor' requested from @@]//' +# +# Problem number 2: +# Semver versions can contain `+` for build metadata (e.g., `0.9.11+spec-1.1.0`). +# Bazel repo names use `-` instead of `+`, so `vendor_ts__toml-0.9.11+spec-1.1.0` +# becomes `vendor_ts__toml-0.9.11-spec-1.1.0`. The generated labels reference the +# `+` version which doesn't exist, causing: +# ERROR: no such package '@@[unknown repo 'vendor_ts__toml-0.9.11+spec-1.1.0' +# requested from @@ (did you mean 'vendor_ts__toml-0.9.11-spec-1.1.0'?)]// + +label_re = re.compile(r'"@(vendor.*)//:([^+]+)-([\d.]+(?:\+.*)?)"') file = pathlib.Path(sys.argv[1]) temp = file.with_suffix(f'{file.suffix}.tmp') @@ -10,7 +26,7 @@ with open(file) as input, open(temp, "w") as output: for line in input: - line = label_re.sub(lambda m: f'"@{m[1]}__{m[2]}-{m[3]}//:{m[2].replace("-", "_")}"', line) + line = label_re.sub(lambda m: f'"@{m[1]}__{m[2]}-{m[3].replace("+", "-")}//:{m[2].replace("-", "_")}"', line) output.write(line) temp.rename(file) diff --git a/misc/suite-helpers/CHANGELOG.md b/misc/suite-helpers/CHANGELOG.md index 0d796d324391..2a81d5f40ba6 100644 --- a/misc/suite-helpers/CHANGELOG.md +++ b/misc/suite-helpers/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/misc/suite-helpers/change-notes/released/1.0.42.md b/misc/suite-helpers/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/misc/suite-helpers/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/misc/suite-helpers/codeql-pack.release.yml b/misc/suite-helpers/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/misc/suite-helpers/codeql-pack.release.yml +++ b/misc/suite-helpers/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/misc/suite-helpers/qlpack.yml b/misc/suite-helpers/qlpack.yml index 4a0344c0f0f8..48e31175a000 100644 --- a/misc/suite-helpers/qlpack.yml +++ b/misc/suite-helpers/qlpack.yml @@ -1,4 +1,4 @@ name: codeql/suite-helpers -version: 1.0.41 +version: 1.0.43-dev groups: shared warnOnImplicitThis: true diff --git a/python/extractor/semmle/util.py b/python/extractor/semmle/util.py index 202c2a941c26..00651ace8314 100644 --- a/python/extractor/semmle/util.py +++ b/python/extractor/semmle/util.py @@ -10,7 +10,7 @@ #Semantic version of extractor. #Update this if any changes are made -VERSION = "7.1.7" +VERSION = "7.1.8" PY_EXTENSIONS = ".py", ".pyw" diff --git a/python/extractor/tests/parser/strings.py b/python/extractor/tests/parser/strings.py index c7b772a44aaf..3aa61185a348 100644 --- a/python/extractor/tests/parser/strings.py +++ b/python/extractor/tests/parser/strings.py @@ -86,3 +86,5 @@ if 39: r'a\ ' +if 40: + f"{x:=^20}" diff --git a/python/extractor/tests/parser/template_strings_new.expected b/python/extractor/tests/parser/template_strings_new.expected index 64df91aac772..ae8eff88dcea 100644 --- a/python/extractor/tests/parser/template_strings_new.expected +++ b/python/extractor/tests/parser/template_strings_new.expected @@ -1,4 +1,4 @@ -Module: [1, 0] - [18, 0] +Module: [1, 0] - [20, 0] body: [ Assign: [1, 0] - [1, 14] targets: [ @@ -191,4 +191,24 @@ Module: [1, 0] - [18, 0] ] ] orelse: None + If: [18, 0] - [18, 5] + test: + Num: [18, 3] - [18, 4] + n: 7 + text: '7' + body: [ + Expr: [19, 4] - [19, 43] + value: + TemplateString: [19, 4] - [19, 43] + prefix: 't"' + values: [ + TemplateStringPart: [19, 6] - [19, 31] + text: '"With a format specifier: "' + s: 'With a format specifier: ' + Name: [19, 32] - [19, 36] + variable: Variable('name', None) + ctx: Load + ] + ] + orelse: None ] diff --git a/python/extractor/tests/parser/template_strings_new.py b/python/extractor/tests/parser/template_strings_new.py index 4c56dca2c0c8..452473a9d78a 100644 --- a/python/extractor/tests/parser/template_strings_new.py +++ b/python/extractor/tests/parser/template_strings_new.py @@ -15,3 +15,5 @@ t"Multiple {first} and {second} placeholders." if 6: t"Implicit concatenation: " t"Hello, {name}!" t" How are you?" +if 7: + t"With a format specifier: {name:=^20}" diff --git a/python/extractor/tsg-python/tsp/grammar.js b/python/extractor/tsg-python/tsp/grammar.js index a30ddb9f0a0f..c53a67da1260 100644 --- a/python/extractor/tsg-python/tsp/grammar.js +++ b/python/extractor/tsg-python/tsp/grammar.js @@ -1168,7 +1168,7 @@ module.exports = grammar({ _not_escape_sequence: $ => token.immediate('\\'), format_specifier: $ => seq( - ':', + token(prec(1,':')), repeat(choice( token(prec(1, /[^{}\n]+/)), alias($.interpolation, $.format_expression) diff --git a/python/extractor/tsg-python/tsp/src/grammar.json b/python/extractor/tsg-python/tsp/src/grammar.json index e413f91b0855..fbe1f17b9491 100644 --- a/python/extractor/tsg-python/tsp/src/grammar.json +++ b/python/extractor/tsg-python/tsp/src/grammar.json @@ -1,4 +1,5 @@ { + "$schema": "https://tree-sitter.github.io/tree-sitter/assets/schemas/grammar.schema.json", "name": "python", "word": "identifier", "rules": { @@ -6292,8 +6293,15 @@ "type": "SEQ", "members": [ { - "type": "STRING", - "value": ":" + "type": "TOKEN", + "content": { + "type": "PREC", + "value": 1, + "content": { + "type": "STRING", + "value": ":" + } + } }, { "type": "REPEAT", @@ -6860,6 +6868,6 @@ "primary_expression", "pattern", "parameter" - ] -} - + ], + "reserved": {} +} \ No newline at end of file diff --git a/python/extractor/tsg-python/tsp/src/node-types.json b/python/extractor/tsg-python/tsp/src/node-types.json index a718a48aab65..609952bd5e53 100644 --- a/python/extractor/tsg-python/tsp/src/node-types.json +++ b/python/extractor/tsg-python/tsp/src/node-types.json @@ -2770,6 +2770,7 @@ { "type": "module", "named": true, + "root": true, "fields": {}, "children": { "multiple": true, @@ -3944,6 +3945,10 @@ "type": ":=", "named": false }, + { + "type": ";", + "named": false + }, { "type": "<", "named": false @@ -4000,6 +4005,10 @@ "type": "[", "named": false }, + { + "type": "\\", + "named": false + }, { "type": "]", "named": false @@ -4050,7 +4059,8 @@ }, { "type": "comment", - "named": true + "named": true, + "extra": true }, { "type": "continue", diff --git a/python/extractor/tsg-python/tsp/src/parser.c b/python/extractor/tsg-python/tsp/src/parser.c index e275c1316a0f..74a0d1440fbd 100644 --- a/python/extractor/tsg-python/tsp/src/parser.c +++ b/python/extractor/tsg-python/tsp/src/parser.c @@ -1,22 +1,25 @@ -#include +/* Automatically @generated by tree-sitter */ + +#include "tree_sitter/parser.h" #if defined(__GNUC__) || defined(__clang__) -#pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wmissing-field-initializers" #endif -#define LANGUAGE_VERSION 13 -#define STATE_COUNT 1510 -#define LARGE_STATE_COUNT 152 -#define SYMBOL_COUNT 288 +#define LANGUAGE_VERSION 14 +#define STATE_COUNT 1723 +#define LARGE_STATE_COUNT 156 +#define SYMBOL_COUNT 291 #define ALIAS_COUNT 3 -#define TOKEN_COUNT 108 +#define TOKEN_COUNT 109 #define EXTERNAL_TOKEN_COUNT 7 #define FIELD_COUNT 54 #define MAX_ALIAS_SEQUENCE_LENGTH 10 +#define MAX_RESERVED_WORD_SET_SIZE 0 #define PRODUCTION_ID_COUNT 166 +#define SUPERTYPE_COUNT 0 -enum { +enum ts_symbol_identifiers { sym_identifier = 1, anon_sym_import = 2, anon_sym_DOT = 3, @@ -106,207 +109,210 @@ enum { anon_sym_LBRACE2 = 87, sym__escape_interpolation = 88, sym_escape_sequence = 89, - sym__not_escape_sequence = 90, - aux_sym_format_specifier_token1 = 91, - sym_type_conversion = 92, - sym_integer = 93, - sym_float = 94, - anon_sym_await = 95, - sym_true = 96, - sym_false = 97, - sym_none = 98, - sym_comment = 99, - sym__semicolon = 100, - sym__newline = 101, - sym__indent = 102, - sym__dedent = 103, - sym__string_start = 104, - sym__string_content = 105, - sym__string_end = 106, - sym__template_string_start = 107, - sym_module = 108, - sym__statement = 109, - sym__simple_statements = 110, - sym_import_statement = 111, - sym_import_prefix = 112, - sym_relative_import = 113, - sym_future_import_statement = 114, - sym_import_from_statement = 115, - sym__import_list = 116, - sym_aliased_import = 117, - sym_wildcard_import = 118, - sym_print_statement = 119, - sym_chevron = 120, - sym_assert_statement = 121, - sym_expression_statement = 122, - sym_named_expression = 123, - sym_return_statement = 124, - sym_delete_statement = 125, - sym_raise_statement = 126, - sym_pass_statement = 127, - sym_break_statement = 128, - sym_continue_statement = 129, - sym_if_statement = 130, - sym_elif_clause = 131, - sym_else_clause = 132, - sym_for_statement = 133, - sym_while_statement = 134, - sym_try_statement = 135, - sym_exception_list = 136, - sym_except_clause = 137, - sym_except_group_clause = 138, - sym_finally_clause = 139, - sym_with_statement = 140, - sym_with_clause = 141, - sym_with_item = 142, - sym_match_statement = 143, - sym_cases = 144, - sym_case_block = 145, - sym__match_patterns = 146, - sym_open_sequence_match_pattern = 147, - sym__match_pattern = 148, - sym_match_as_pattern = 149, - sym__match_or_pattern = 150, - sym_match_or_pattern = 151, - sym__closed_pattern = 152, - sym_match_literal_pattern = 153, - sym_match_capture_pattern = 154, - sym_match_value_pattern = 155, - sym_match_group_pattern = 156, - sym_match_sequence_pattern = 157, - sym__match_maybe_star_pattern = 158, - sym_match_star_pattern = 159, - sym_match_mapping_pattern = 160, - sym_match_double_star_pattern = 161, - sym_match_key_value_pattern = 162, - sym_match_class_pattern = 163, - sym_pattern_class_name = 164, - sym_match_positional_pattern = 165, - sym_match_keyword_pattern = 166, - sym_guard = 167, - sym_function_definition = 168, - sym_parameters = 169, - sym_lambda_parameters = 170, - sym_list_splat = 171, - sym_dictionary_splat = 172, - sym_global_statement = 173, - sym_nonlocal_statement = 174, - sym_exec_statement = 175, - sym_type_alias_statement = 176, - sym_class_definition = 177, - sym_type_parameters = 178, - sym__type_bound = 179, - sym_typevar_parameter = 180, - sym_typevartuple_parameter = 181, - sym_paramspec_parameter = 182, - sym__type_parameter = 183, - sym__type_param_default = 184, - sym_parenthesized_list_splat = 185, - sym_argument_list = 186, - sym_decorated_definition = 187, - sym_decorator = 188, - sym_block = 189, - sym_expression_list = 190, - sym_dotted_name = 191, - sym__parameters = 192, - sym__patterns = 193, - sym_parameter = 194, - sym_pattern = 195, - sym_tuple_pattern = 196, - sym_list_pattern = 197, - sym_default_parameter = 198, - sym_typed_default_parameter = 199, - sym_list_splat_pattern = 200, - sym_dictionary_splat_pattern = 201, - sym__expression_within_for_in_clause = 202, - sym_expression = 203, - sym_primary_expression = 204, - sym_not_operator = 205, - sym_boolean_operator = 206, - sym_binary_operator = 207, - sym_unary_operator = 208, - sym_comparison_operator = 209, - sym_lambda = 210, - sym_lambda_within_for_in_clause = 211, - sym_assignment = 212, - sym_augmented_assignment = 213, - sym_pattern_list = 214, - sym__right_hand_side = 215, - sym_yield = 216, - sym_attribute = 217, - sym__index_expression = 218, - sym_index_expression_list = 219, - sym_subscript = 220, - sym_slice = 221, - sym_call = 222, - sym_typed_parameter = 223, - sym_type = 224, - sym_keyword_argument = 225, - sym_list = 226, - sym_set = 227, - sym_tuple = 228, - sym_dictionary = 229, - sym_pair = 230, - sym_list_comprehension = 231, - sym_dictionary_comprehension = 232, - sym_set_comprehension = 233, - sym_generator_expression = 234, - sym__comprehension_clauses = 235, - sym_parenthesized_expression = 236, - sym__collection_elements = 237, - sym_for_in_clause = 238, - sym_if_clause = 239, - sym_conditional_expression = 240, - sym_concatenated_string = 241, - sym_string = 242, - sym_concatenated_template_string = 243, - sym_template_string = 244, - sym_string_content = 245, - sym_interpolation = 246, - sym__f_expression = 247, - sym_format_specifier = 248, - sym_await = 249, - sym_positional_separator = 250, - sym_keyword_separator = 251, - aux_sym_module_repeat1 = 252, - aux_sym__simple_statements_repeat1 = 253, - aux_sym_import_prefix_repeat1 = 254, - aux_sym__import_list_repeat1 = 255, - aux_sym_print_statement_repeat1 = 256, - aux_sym_assert_statement_repeat1 = 257, - aux_sym_if_statement_repeat1 = 258, - aux_sym_try_statement_repeat1 = 259, - aux_sym_try_statement_repeat2 = 260, - aux_sym_exception_list_repeat1 = 261, - aux_sym_with_clause_repeat1 = 262, - aux_sym_cases_repeat1 = 263, - aux_sym_open_sequence_match_pattern_repeat1 = 264, - aux_sym_match_or_pattern_repeat1 = 265, - aux_sym_match_value_pattern_repeat1 = 266, - aux_sym_match_mapping_pattern_repeat1 = 267, - aux_sym_match_class_pattern_repeat1 = 268, - aux_sym_match_class_pattern_repeat2 = 269, - aux_sym_global_statement_repeat1 = 270, - aux_sym_type_parameters_repeat1 = 271, - aux_sym_argument_list_repeat1 = 272, - aux_sym_decorated_definition_repeat1 = 273, - aux_sym_expression_list_repeat1 = 274, - aux_sym__parameters_repeat1 = 275, - aux_sym__patterns_repeat1 = 276, - aux_sym_comparison_operator_repeat1 = 277, - aux_sym_index_expression_list_repeat1 = 278, - aux_sym_dictionary_repeat1 = 279, - aux_sym__comprehension_clauses_repeat1 = 280, - aux_sym__collection_elements_repeat1 = 281, - aux_sym_for_in_clause_repeat1 = 282, - aux_sym_concatenated_string_repeat1 = 283, - aux_sym_string_repeat1 = 284, - aux_sym_concatenated_template_string_repeat1 = 285, - aux_sym_string_content_repeat1 = 286, - aux_sym_format_specifier_repeat1 = 287, - alias_sym_format_expression = 288, - anon_alias_sym_isnot = 289, - anon_alias_sym_notin = 290, + anon_sym_BSLASH = 90, + anon_sym_COLON2 = 91, + aux_sym_format_specifier_token1 = 92, + sym_type_conversion = 93, + sym_integer = 94, + sym_float = 95, + anon_sym_await = 96, + sym_true = 97, + sym_false = 98, + sym_none = 99, + sym_comment = 100, + anon_sym_SEMI = 101, + sym__newline = 102, + sym__indent = 103, + sym__dedent = 104, + sym__string_start = 105, + sym__string_content = 106, + sym__string_end = 107, + sym__template_string_start = 108, + sym_module = 109, + sym__statement = 110, + sym__simple_statements = 111, + sym_import_statement = 112, + sym_import_prefix = 113, + sym_relative_import = 114, + sym_future_import_statement = 115, + sym_import_from_statement = 116, + sym__import_list = 117, + sym_aliased_import = 118, + sym_wildcard_import = 119, + sym_print_statement = 120, + sym_chevron = 121, + sym_assert_statement = 122, + sym_expression_statement = 123, + sym_named_expression = 124, + sym_return_statement = 125, + sym_delete_statement = 126, + sym_raise_statement = 127, + sym_pass_statement = 128, + sym_break_statement = 129, + sym_continue_statement = 130, + sym_if_statement = 131, + sym_elif_clause = 132, + sym_else_clause = 133, + sym_for_statement = 134, + sym_while_statement = 135, + sym_try_statement = 136, + sym_exception_list = 137, + sym_except_clause = 138, + sym_except_group_clause = 139, + sym_finally_clause = 140, + sym_with_statement = 141, + sym_with_clause = 142, + sym_with_item = 143, + sym_match_statement = 144, + sym_cases = 145, + sym_case_block = 146, + sym__match_patterns = 147, + sym_open_sequence_match_pattern = 148, + sym__match_pattern = 149, + sym_match_as_pattern = 150, + sym__match_or_pattern = 151, + sym_match_or_pattern = 152, + sym__closed_pattern = 153, + sym_match_literal_pattern = 154, + sym_match_capture_pattern = 155, + sym_match_value_pattern = 156, + sym_match_group_pattern = 157, + sym_match_sequence_pattern = 158, + sym__match_maybe_star_pattern = 159, + sym_match_star_pattern = 160, + sym_match_mapping_pattern = 161, + sym_match_double_star_pattern = 162, + sym_match_key_value_pattern = 163, + sym_match_class_pattern = 164, + sym_pattern_class_name = 165, + sym_match_positional_pattern = 166, + sym_match_keyword_pattern = 167, + sym_guard = 168, + sym_function_definition = 169, + sym_parameters = 170, + sym_lambda_parameters = 171, + sym_list_splat = 172, + sym_dictionary_splat = 173, + sym_global_statement = 174, + sym_nonlocal_statement = 175, + sym_exec_statement = 176, + sym_type_alias_statement = 177, + sym_class_definition = 178, + sym_type_parameters = 179, + sym__type_bound = 180, + sym_typevar_parameter = 181, + sym_typevartuple_parameter = 182, + sym_paramspec_parameter = 183, + sym__type_parameter = 184, + sym__type_param_default = 185, + sym_parenthesized_list_splat = 186, + sym_argument_list = 187, + sym_decorated_definition = 188, + sym_decorator = 189, + sym_block = 190, + sym_expression_list = 191, + sym_dotted_name = 192, + sym__parameters = 193, + sym__patterns = 194, + sym_parameter = 195, + sym_pattern = 196, + sym_tuple_pattern = 197, + sym_list_pattern = 198, + sym_default_parameter = 199, + sym_typed_default_parameter = 200, + sym_list_splat_pattern = 201, + sym_dictionary_splat_pattern = 202, + sym__expression_within_for_in_clause = 203, + sym_expression = 204, + sym_primary_expression = 205, + sym_not_operator = 206, + sym_boolean_operator = 207, + sym_binary_operator = 208, + sym_unary_operator = 209, + sym_comparison_operator = 210, + sym_lambda = 211, + sym_lambda_within_for_in_clause = 212, + sym_assignment = 213, + sym_augmented_assignment = 214, + sym_pattern_list = 215, + sym__right_hand_side = 216, + sym_yield = 217, + sym_attribute = 218, + sym__index_expression = 219, + sym_index_expression_list = 220, + sym_subscript = 221, + sym_slice = 222, + sym_call = 223, + sym_typed_parameter = 224, + sym_type = 225, + sym_keyword_argument = 226, + sym_list = 227, + sym_set = 228, + sym_tuple = 229, + sym_dictionary = 230, + sym_pair = 231, + sym_list_comprehension = 232, + sym_dictionary_comprehension = 233, + sym_set_comprehension = 234, + sym_generator_expression = 235, + sym__comprehension_clauses = 236, + sym_parenthesized_expression = 237, + sym__collection_elements = 238, + sym_for_in_clause = 239, + sym_if_clause = 240, + sym_conditional_expression = 241, + sym_concatenated_string = 242, + sym_string = 243, + sym_concatenated_template_string = 244, + sym_template_string = 245, + sym_string_content = 246, + sym_interpolation = 247, + sym__f_expression = 248, + sym__not_escape_sequence = 249, + sym_format_specifier = 250, + sym_await = 251, + sym_positional_separator = 252, + sym_keyword_separator = 253, + sym__semicolon = 254, + aux_sym_module_repeat1 = 255, + aux_sym__simple_statements_repeat1 = 256, + aux_sym_import_prefix_repeat1 = 257, + aux_sym__import_list_repeat1 = 258, + aux_sym_print_statement_repeat1 = 259, + aux_sym_assert_statement_repeat1 = 260, + aux_sym_if_statement_repeat1 = 261, + aux_sym_try_statement_repeat1 = 262, + aux_sym_try_statement_repeat2 = 263, + aux_sym_exception_list_repeat1 = 264, + aux_sym_with_clause_repeat1 = 265, + aux_sym_cases_repeat1 = 266, + aux_sym_open_sequence_match_pattern_repeat1 = 267, + aux_sym_match_or_pattern_repeat1 = 268, + aux_sym_match_value_pattern_repeat1 = 269, + aux_sym_match_mapping_pattern_repeat1 = 270, + aux_sym_match_class_pattern_repeat1 = 271, + aux_sym_match_class_pattern_repeat2 = 272, + aux_sym_global_statement_repeat1 = 273, + aux_sym_type_parameters_repeat1 = 274, + aux_sym_argument_list_repeat1 = 275, + aux_sym_decorated_definition_repeat1 = 276, + aux_sym_expression_list_repeat1 = 277, + aux_sym__parameters_repeat1 = 278, + aux_sym__patterns_repeat1 = 279, + aux_sym_comparison_operator_repeat1 = 280, + aux_sym_index_expression_list_repeat1 = 281, + aux_sym_dictionary_repeat1 = 282, + aux_sym__comprehension_clauses_repeat1 = 283, + aux_sym__collection_elements_repeat1 = 284, + aux_sym_for_in_clause_repeat1 = 285, + aux_sym_concatenated_string_repeat1 = 286, + aux_sym_string_repeat1 = 287, + aux_sym_concatenated_template_string_repeat1 = 288, + aux_sym_string_content_repeat1 = 289, + aux_sym_format_specifier_repeat1 = 290, + alias_sym_format_expression = 291, + anon_alias_sym_isnot = 292, + anon_alias_sym_notin = 293, }; static const char * const ts_symbol_names[] = { @@ -400,7 +406,8 @@ static const char * const ts_symbol_names[] = { [anon_sym_LBRACE2] = "{", [sym__escape_interpolation] = "_escape_interpolation", [sym_escape_sequence] = "escape_sequence", - [sym__not_escape_sequence] = "_not_escape_sequence", + [anon_sym_BSLASH] = "\\", + [anon_sym_COLON2] = ":", [aux_sym_format_specifier_token1] = "format_specifier_token1", [sym_type_conversion] = "type_conversion", [sym_integer] = "integer", @@ -410,7 +417,7 @@ static const char * const ts_symbol_names[] = { [sym_false] = "false", [sym_none] = "none", [sym_comment] = "comment", - [sym__semicolon] = "_semicolon", + [anon_sym_SEMI] = ";", [sym__newline] = "_newline", [sym__indent] = "_indent", [sym__dedent] = "_dedent", @@ -558,10 +565,12 @@ static const char * const ts_symbol_names[] = { [sym_string_content] = "string_content", [sym_interpolation] = "interpolation", [sym__f_expression] = "_f_expression", + [sym__not_escape_sequence] = "_not_escape_sequence", [sym_format_specifier] = "format_specifier", [sym_await] = "await", [sym_positional_separator] = "positional_separator", [sym_keyword_separator] = "keyword_separator", + [sym__semicolon] = "_semicolon", [aux_sym_module_repeat1] = "module_repeat1", [aux_sym__simple_statements_repeat1] = "_simple_statements_repeat1", [aux_sym_import_prefix_repeat1] = "import_prefix_repeat1", @@ -694,7 +703,8 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_LBRACE2] = anon_sym_LBRACE, [sym__escape_interpolation] = sym__escape_interpolation, [sym_escape_sequence] = sym_escape_sequence, - [sym__not_escape_sequence] = sym__not_escape_sequence, + [anon_sym_BSLASH] = anon_sym_BSLASH, + [anon_sym_COLON2] = anon_sym_COLON, [aux_sym_format_specifier_token1] = aux_sym_format_specifier_token1, [sym_type_conversion] = sym_type_conversion, [sym_integer] = sym_integer, @@ -704,7 +714,7 @@ static const TSSymbol ts_symbol_map[] = { [sym_false] = sym_false, [sym_none] = sym_none, [sym_comment] = sym_comment, - [sym__semicolon] = sym__semicolon, + [anon_sym_SEMI] = anon_sym_SEMI, [sym__newline] = sym__newline, [sym__indent] = sym__indent, [sym__dedent] = sym__dedent, @@ -852,10 +862,12 @@ static const TSSymbol ts_symbol_map[] = { [sym_string_content] = sym_string_content, [sym_interpolation] = sym_interpolation, [sym__f_expression] = sym__f_expression, + [sym__not_escape_sequence] = sym__not_escape_sequence, [sym_format_specifier] = sym_format_specifier, [sym_await] = sym_await, [sym_positional_separator] = sym_positional_separator, [sym_keyword_separator] = sym_keyword_separator, + [sym__semicolon] = sym__semicolon, [aux_sym_module_repeat1] = aux_sym_module_repeat1, [aux_sym__simple_statements_repeat1] = aux_sym__simple_statements_repeat1, [aux_sym_import_prefix_repeat1] = aux_sym_import_prefix_repeat1, @@ -1258,9 +1270,13 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [sym__not_escape_sequence] = { - .visible = false, - .named = true, + [anon_sym_BSLASH] = { + .visible = true, + .named = false, + }, + [anon_sym_COLON2] = { + .visible = true, + .named = false, }, [aux_sym_format_specifier_token1] = { .visible = false, @@ -1298,9 +1314,9 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [sym__semicolon] = { - .visible = false, - .named = true, + [anon_sym_SEMI] = { + .visible = true, + .named = false, }, [sym__newline] = { .visible = false, @@ -1894,6 +1910,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = true, }, + [sym__not_escape_sequence] = { + .visible = false, + .named = true, + }, [sym_format_specifier] = { .visible = true, .named = true, @@ -1910,6 +1930,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym__semicolon] = { + .visible = false, + .named = true, + }, [aux_sym_module_repeat1] = { .visible = false, .named = false, @@ -2068,7 +2092,7 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { }, }; -enum { +enum ts_field_identifiers { field_alias = 1, field_alternative = 2, field_argument = 3, @@ -2183,7 +2207,7 @@ static const char * const ts_field_names[] = { [field_vararg] = "vararg", }; -static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { +static const TSMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [2] = {.index = 0, .length = 2}, [3] = {.index = 2, .length = 1}, [4] = {.index = 3, .length = 1}, @@ -3032,2052 +3056,2234 @@ static const uint16_t ts_non_terminal_alias_map[] = { 0, }; -static inline bool sym_identifier_character_set_1(int32_t c) { - return (c < 43020 - ? (c < 4096 - ? (c < 2693 - ? (c < 1969 - ? (c < 910 - ? (c < 736 - ? (c < 186 - ? (c < 170 - ? (c < 'a' - ? (c >= 'A' && c <= '_') - : c <= 'z') - : (c <= 170 || c == 181)) - : (c <= 186 || (c < 248 - ? (c < 216 - ? (c >= 192 && c <= 214) - : c <= 246) - : (c <= 705 || (c >= 710 && c <= 721))))) - : (c <= 740 || (c < 891 - ? (c < 880 - ? (c < 750 - ? c == 748 - : c <= 750) - : (c <= 884 || (c >= 886 && c <= 887))) - : (c <= 893 || (c < 904 - ? (c < 902 - ? c == 895 - : c <= 902) - : (c <= 906 || c == 908)))))) - : (c <= 929 || (c < 1646 - ? (c < 1369 - ? (c < 1162 - ? (c < 1015 - ? (c >= 931 && c <= 1013) - : c <= 1153) - : (c <= 1327 || (c >= 1329 && c <= 1366))) - : (c <= 1369 || (c < 1519 - ? (c < 1488 - ? (c >= 1376 && c <= 1416) - : c <= 1514) - : (c <= 1522 || (c >= 1568 && c <= 1610))))) - : (c <= 1647 || (c < 1786 - ? (c < 1765 - ? (c < 1749 - ? (c >= 1649 && c <= 1747) - : c <= 1749) - : (c <= 1766 || (c >= 1774 && c <= 1775))) - : (c <= 1788 || (c < 1810 - ? (c < 1808 - ? c == 1791 - : c <= 1808) - : (c <= 1839 || (c >= 1869 && c <= 1957))))))))) - : (c <= 1969 || (c < 2474 - ? (c < 2208 - ? (c < 2074 - ? (c < 2042 - ? (c < 2036 - ? (c >= 1994 && c <= 2026) - : c <= 2037) - : (c <= 2042 || (c >= 2048 && c <= 2069))) - : (c <= 2074 || (c < 2112 - ? (c < 2088 - ? c == 2084 - : c <= 2088) - : (c <= 2136 || (c >= 2144 && c <= 2154))))) - : (c <= 2228 || (c < 2392 - ? (c < 2365 - ? (c < 2308 - ? (c >= 2230 && c <= 2247) - : c <= 2361) - : (c <= 2365 || c == 2384)) - : (c <= 2401 || (c < 2447 - ? (c < 2437 - ? (c >= 2417 && c <= 2432) - : c <= 2444) - : (c <= 2448 || (c >= 2451 && c <= 2472))))))) - : (c <= 2480 || (c < 2575 - ? (c < 2524 - ? (c < 2493 - ? (c < 2486 - ? c == 2482 - : c <= 2489) - : (c <= 2493 || c == 2510)) - : (c <= 2525 || (c < 2556 - ? (c < 2544 - ? (c >= 2527 && c <= 2529) - : c <= 2545) - : (c <= 2556 || (c >= 2565 && c <= 2570))))) - : (c <= 2576 || (c < 2616 - ? (c < 2610 - ? (c < 2602 - ? (c >= 2579 && c <= 2600) - : c <= 2608) - : (c <= 2611 || (c >= 2613 && c <= 2614))) - : (c <= 2617 || (c < 2654 - ? (c >= 2649 && c <= 2652) - : (c <= 2654 || (c >= 2674 && c <= 2676))))))))))) - : (c <= 2701 || (c < 3214 - ? (c < 2947 - ? (c < 2821 - ? (c < 2741 - ? (c < 2730 - ? (c < 2707 - ? (c >= 2703 && c <= 2705) - : c <= 2728) - : (c <= 2736 || (c >= 2738 && c <= 2739))) - : (c <= 2745 || (c < 2784 - ? (c < 2768 - ? c == 2749 - : c <= 2768) - : (c <= 2785 || c == 2809)))) - : (c <= 2828 || (c < 2869 - ? (c < 2858 - ? (c < 2835 - ? (c >= 2831 && c <= 2832) - : c <= 2856) - : (c <= 2864 || (c >= 2866 && c <= 2867))) - : (c <= 2873 || (c < 2911 - ? (c < 2908 - ? c == 2877 - : c <= 2909) - : (c <= 2913 || c == 2929)))))) - : (c <= 2947 || (c < 3024 - ? (c < 2972 - ? (c < 2962 - ? (c < 2958 - ? (c >= 2949 && c <= 2954) - : c <= 2960) - : (c <= 2965 || (c >= 2969 && c <= 2970))) - : (c <= 2972 || (c < 2984 - ? (c < 2979 - ? (c >= 2974 && c <= 2975) - : c <= 2980) - : (c <= 2986 || (c >= 2990 && c <= 3001))))) - : (c <= 3024 || (c < 3133 - ? (c < 3090 - ? (c < 3086 - ? (c >= 3077 && c <= 3084) - : c <= 3088) - : (c <= 3112 || (c >= 3114 && c <= 3129))) - : (c <= 3133 || (c < 3200 - ? (c < 3168 - ? (c >= 3160 && c <= 3162) - : c <= 3169) - : (c <= 3200 || (c >= 3205 && c <= 3212))))))))) - : (c <= 3216 || (c < 3520 - ? (c < 3346 - ? (c < 3294 - ? (c < 3253 - ? (c < 3242 - ? (c >= 3218 && c <= 3240) - : c <= 3251) - : (c <= 3257 || c == 3261)) - : (c <= 3294 || (c < 3332 - ? (c < 3313 - ? (c >= 3296 && c <= 3297) - : c <= 3314) - : (c <= 3340 || (c >= 3342 && c <= 3344))))) - : (c <= 3386 || (c < 3450 - ? (c < 3412 - ? (c < 3406 - ? c == 3389 - : c <= 3406) - : (c <= 3414 || (c >= 3423 && c <= 3425))) - : (c <= 3455 || (c < 3507 - ? (c < 3482 - ? (c >= 3461 && c <= 3478) - : c <= 3505) - : (c <= 3515 || c == 3517)))))) - : (c <= 3526 || (c < 3762 - ? (c < 3716 - ? (c < 3648 - ? (c < 3634 - ? (c >= 3585 && c <= 3632) - : c <= 3634) - : (c <= 3654 || (c >= 3713 && c <= 3714))) - : (c <= 3716 || (c < 3749 - ? (c < 3724 - ? (c >= 3718 && c <= 3722) - : c <= 3747) - : (c <= 3749 || (c >= 3751 && c <= 3760))))) - : (c <= 3762 || (c < 3840 - ? (c < 3782 - ? (c < 3776 - ? c == 3773 - : c <= 3780) - : (c <= 3782 || (c >= 3804 && c <= 3807))) - : (c <= 3840 || (c < 3913 - ? (c >= 3904 && c <= 3911) - : (c <= 3948 || (c >= 3976 && c <= 3980))))))))))))) - : (c <= 4138 || (c < 8025 - ? (c < 5952 - ? (c < 4752 - ? (c < 4295 - ? (c < 4197 - ? (c < 4186 - ? (c < 4176 - ? c == 4159 - : c <= 4181) - : (c <= 4189 || c == 4193)) - : (c <= 4198 || (c < 4238 - ? (c < 4213 - ? (c >= 4206 && c <= 4208) - : c <= 4225) - : (c <= 4238 || (c >= 4256 && c <= 4293))))) - : (c <= 4295 || (c < 4688 - ? (c < 4348 - ? (c < 4304 - ? c == 4301 - : c <= 4346) - : (c <= 4680 || (c >= 4682 && c <= 4685))) - : (c <= 4694 || (c < 4704 - ? (c < 4698 - ? c == 4696 - : c <= 4701) - : (c <= 4744 || (c >= 4746 && c <= 4749))))))) - : (c <= 4784 || (c < 5024 - ? (c < 4808 - ? (c < 4800 - ? (c < 4792 - ? (c >= 4786 && c <= 4789) - : c <= 4798) - : (c <= 4800 || (c >= 4802 && c <= 4805))) - : (c <= 4822 || (c < 4888 - ? (c < 4882 - ? (c >= 4824 && c <= 4880) - : c <= 4885) - : (c <= 4954 || (c >= 4992 && c <= 5007))))) - : (c <= 5109 || (c < 5792 - ? (c < 5743 - ? (c < 5121 - ? (c >= 5112 && c <= 5117) - : c <= 5740) - : (c <= 5759 || (c >= 5761 && c <= 5786))) - : (c <= 5866 || (c < 5902 - ? (c < 5888 - ? (c >= 5870 && c <= 5880) - : c <= 5900) - : (c <= 5905 || (c >= 5920 && c <= 5937))))))))) - : (c <= 5969 || (c < 7043 - ? (c < 6400 - ? (c < 6108 - ? (c < 6016 - ? (c < 5998 - ? (c >= 5984 && c <= 5996) - : c <= 6000) - : (c <= 6067 || c == 6103)) - : (c <= 6108 || (c < 6314 - ? (c < 6272 - ? (c >= 6176 && c <= 6264) - : c <= 6312) - : (c <= 6314 || (c >= 6320 && c <= 6389))))) - : (c <= 6430 || (c < 6656 - ? (c < 6528 - ? (c < 6512 - ? (c >= 6480 && c <= 6509) - : c <= 6516) - : (c <= 6571 || (c >= 6576 && c <= 6601))) - : (c <= 6678 || (c < 6917 - ? (c < 6823 - ? (c >= 6688 && c <= 6740) - : c <= 6823) - : (c <= 6963 || (c >= 6981 && c <= 6987))))))) - : (c <= 7072 || (c < 7406 - ? (c < 7258 - ? (c < 7168 - ? (c < 7098 - ? (c >= 7086 && c <= 7087) - : c <= 7141) - : (c <= 7203 || (c >= 7245 && c <= 7247))) - : (c <= 7293 || (c < 7357 - ? (c < 7312 - ? (c >= 7296 && c <= 7304) - : c <= 7354) - : (c <= 7359 || (c >= 7401 && c <= 7404))))) - : (c <= 7411 || (c < 7960 - ? (c < 7424 - ? (c < 7418 - ? (c >= 7413 && c <= 7414) - : c <= 7418) - : (c <= 7615 || (c >= 7680 && c <= 7957))) - : (c <= 7965 || (c < 8008 - ? (c >= 7968 && c <= 8005) - : (c <= 8013 || (c >= 8016 && c <= 8023))))))))))) - : (c <= 8025 || (c < 11631 - ? (c < 8469 - ? (c < 8150 - ? (c < 8118 - ? (c < 8031 - ? (c < 8029 - ? c == 8027 - : c <= 8029) - : (c <= 8061 || (c >= 8064 && c <= 8116))) - : (c <= 8124 || (c < 8134 - ? (c < 8130 - ? c == 8126 - : c <= 8132) - : (c <= 8140 || (c >= 8144 && c <= 8147))))) - : (c <= 8155 || (c < 8319 - ? (c < 8182 - ? (c < 8178 - ? (c >= 8160 && c <= 8172) - : c <= 8180) - : (c <= 8188 || c == 8305)) - : (c <= 8319 || (c < 8455 - ? (c < 8450 - ? (c >= 8336 && c <= 8348) - : c <= 8450) - : (c <= 8455 || (c >= 8458 && c <= 8467))))))) - : (c <= 8469 || (c < 11264 - ? (c < 8490 - ? (c < 8486 - ? (c < 8484 - ? (c >= 8472 && c <= 8477) - : c <= 8484) - : (c <= 8486 || c == 8488)) - : (c <= 8505 || (c < 8526 - ? (c < 8517 - ? (c >= 8508 && c <= 8511) - : c <= 8521) - : (c <= 8526 || (c >= 8544 && c <= 8584))))) - : (c <= 11310 || (c < 11520 - ? (c < 11499 - ? (c < 11360 - ? (c >= 11312 && c <= 11358) - : c <= 11492) - : (c <= 11502 || (c >= 11506 && c <= 11507))) - : (c <= 11557 || (c < 11565 - ? c == 11559 - : (c <= 11565 || (c >= 11568 && c <= 11623))))))))) - : (c <= 11631 || (c < 12704 - ? (c < 12293 - ? (c < 11704 - ? (c < 11688 - ? (c < 11680 - ? (c >= 11648 && c <= 11670) - : c <= 11686) - : (c <= 11694 || (c >= 11696 && c <= 11702))) - : (c <= 11710 || (c < 11728 - ? (c < 11720 - ? (c >= 11712 && c <= 11718) - : c <= 11726) - : (c <= 11734 || (c >= 11736 && c <= 11742))))) - : (c <= 12295 || (c < 12445 - ? (c < 12344 - ? (c < 12337 - ? (c >= 12321 && c <= 12329) - : c <= 12341) - : (c <= 12348 || (c >= 12353 && c <= 12438))) - : (c <= 12447 || (c < 12549 - ? (c < 12540 - ? (c >= 12449 && c <= 12538) - : c <= 12543) - : (c <= 12591 || (c >= 12593 && c <= 12686))))))) - : (c <= 12735 || (c < 42623 - ? (c < 42192 - ? (c < 19968 - ? (c < 13312 - ? (c >= 12784 && c <= 12799) - : c <= 19903) - : (c <= 40956 || (c >= 40960 && c <= 42124))) - : (c <= 42237 || (c < 42538 - ? (c < 42512 - ? (c >= 42240 && c <= 42508) - : c <= 42527) - : (c <= 42539 || (c >= 42560 && c <= 42606))))) - : (c <= 42653 || (c < 42946 - ? (c < 42786 - ? (c < 42775 - ? (c >= 42656 && c <= 42735) - : c <= 42783) - : (c <= 42888 || (c >= 42891 && c <= 42943))) - : (c <= 42954 || (c < 43011 - ? (c >= 42997 && c <= 43009) - : (c <= 43013 || (c >= 43015 && c <= 43018))))))))))))))) - : (c <= 43042 || (c < 70453 - ? (c < 66176 - ? (c < 64112 - ? (c < 43697 - ? (c < 43471 - ? (c < 43261 - ? (c < 43250 - ? (c < 43138 - ? (c >= 43072 && c <= 43123) - : c <= 43187) - : (c <= 43255 || c == 43259)) - : (c <= 43262 || (c < 43360 - ? (c < 43312 - ? (c >= 43274 && c <= 43301) - : c <= 43334) - : (c <= 43388 || (c >= 43396 && c <= 43442))))) - : (c <= 43471 || (c < 43584 - ? (c < 43514 - ? (c < 43494 - ? (c >= 43488 && c <= 43492) - : c <= 43503) - : (c <= 43518 || (c >= 43520 && c <= 43560))) - : (c <= 43586 || (c < 43642 - ? (c < 43616 - ? (c >= 43588 && c <= 43595) - : c <= 43638) - : (c <= 43642 || (c >= 43646 && c <= 43695))))))) - : (c <= 43697 || (c < 43793 - ? (c < 43739 - ? (c < 43712 - ? (c < 43705 - ? (c >= 43701 && c <= 43702) - : c <= 43709) - : (c <= 43712 || c == 43714)) - : (c <= 43741 || (c < 43777 - ? (c < 43762 - ? (c >= 43744 && c <= 43754) - : c <= 43764) - : (c <= 43782 || (c >= 43785 && c <= 43790))))) - : (c <= 43798 || (c < 43888 - ? (c < 43824 - ? (c < 43816 - ? (c >= 43808 && c <= 43814) - : c <= 43822) - : (c <= 43866 || (c >= 43868 && c <= 43881))) - : (c <= 44002 || (c < 55243 - ? (c < 55216 - ? (c >= 44032 && c <= 55203) - : c <= 55238) - : (c <= 55291 || (c >= 63744 && c <= 64109))))))))) - : (c <= 64217 || (c < 65147 - ? (c < 64326 - ? (c < 64298 - ? (c < 64285 - ? (c < 64275 - ? (c >= 64256 && c <= 64262) - : c <= 64279) - : (c <= 64285 || (c >= 64287 && c <= 64296))) - : (c <= 64310 || (c < 64320 - ? (c < 64318 - ? (c >= 64312 && c <= 64316) - : c <= 64318) - : (c <= 64321 || (c >= 64323 && c <= 64324))))) - : (c <= 64433 || (c < 65008 - ? (c < 64848 - ? (c < 64612 - ? (c >= 64467 && c <= 64605) - : c <= 64829) - : (c <= 64911 || (c >= 64914 && c <= 64967))) - : (c <= 65017 || (c < 65143 - ? (c < 65139 - ? c == 65137 - : c <= 65139) - : (c <= 65143 || c == 65145)))))) - : (c <= 65147 || (c < 65498 - ? (c < 65382 - ? (c < 65313 - ? (c < 65151 - ? c == 65149 - : c <= 65276) - : (c <= 65338 || (c >= 65345 && c <= 65370))) - : (c <= 65437 || (c < 65482 - ? (c < 65474 - ? (c >= 65440 && c <= 65470) - : c <= 65479) - : (c <= 65487 || (c >= 65490 && c <= 65495))))) - : (c <= 65500 || (c < 65599 - ? (c < 65576 - ? (c < 65549 - ? (c >= 65536 && c <= 65547) - : c <= 65574) - : (c <= 65594 || (c >= 65596 && c <= 65597))) - : (c <= 65613 || (c < 65664 - ? (c >= 65616 && c <= 65629) - : (c <= 65786 || (c >= 65856 && c <= 65908))))))))))) - : (c <= 66204 || (c < 68416 - ? (c < 67639 - ? (c < 66736 - ? (c < 66432 - ? (c < 66349 - ? (c < 66304 - ? (c >= 66208 && c <= 66256) - : c <= 66335) - : (c <= 66378 || (c >= 66384 && c <= 66421))) - : (c <= 66461 || (c < 66513 - ? (c < 66504 - ? (c >= 66464 && c <= 66499) - : c <= 66511) - : (c <= 66517 || (c >= 66560 && c <= 66717))))) - : (c <= 66771 || (c < 67392 - ? (c < 66864 - ? (c < 66816 - ? (c >= 66776 && c <= 66811) - : c <= 66855) - : (c <= 66915 || (c >= 67072 && c <= 67382))) - : (c <= 67413 || (c < 67592 - ? (c < 67584 - ? (c >= 67424 && c <= 67431) - : c <= 67589) - : (c <= 67592 || (c >= 67594 && c <= 67637))))))) - : (c <= 67640 || (c < 68030 - ? (c < 67808 - ? (c < 67680 - ? (c < 67647 - ? c == 67644 - : c <= 67669) - : (c <= 67702 || (c >= 67712 && c <= 67742))) - : (c <= 67826 || (c < 67872 - ? (c < 67840 - ? (c >= 67828 && c <= 67829) - : c <= 67861) - : (c <= 67897 || (c >= 67968 && c <= 68023))))) - : (c <= 68031 || (c < 68192 - ? (c < 68117 - ? (c < 68112 - ? c == 68096 - : c <= 68115) - : (c <= 68119 || (c >= 68121 && c <= 68149))) - : (c <= 68220 || (c < 68297 - ? (c < 68288 - ? (c >= 68224 && c <= 68252) - : c <= 68295) - : (c <= 68324 || (c >= 68352 && c <= 68405))))))))) - : (c <= 68437 || (c < 69968 - ? (c < 69415 - ? (c < 68800 - ? (c < 68608 - ? (c < 68480 - ? (c >= 68448 && c <= 68466) - : c <= 68497) - : (c <= 68680 || (c >= 68736 && c <= 68786))) - : (c <= 68850 || (c < 69296 - ? (c < 69248 - ? (c >= 68864 && c <= 68899) - : c <= 69289) - : (c <= 69297 || (c >= 69376 && c <= 69404))))) - : (c <= 69415 || (c < 69763 - ? (c < 69600 - ? (c < 69552 - ? (c >= 69424 && c <= 69445) - : c <= 69572) - : (c <= 69622 || (c >= 69635 && c <= 69687))) - : (c <= 69807 || (c < 69956 - ? (c < 69891 - ? (c >= 69840 && c <= 69864) - : c <= 69926) - : (c <= 69956 || c == 69959)))))) - : (c <= 70002 || (c < 70282 - ? (c < 70108 - ? (c < 70081 - ? (c < 70019 - ? c == 70006 - : c <= 70066) - : (c <= 70084 || c == 70106)) - : (c <= 70108 || (c < 70272 - ? (c < 70163 - ? (c >= 70144 && c <= 70161) - : c <= 70187) - : (c <= 70278 || c == 70280)))) - : (c <= 70285 || (c < 70415 - ? (c < 70320 - ? (c < 70303 - ? (c >= 70287 && c <= 70301) - : c <= 70312) - : (c <= 70366 || (c >= 70405 && c <= 70412))) - : (c <= 70416 || (c < 70442 - ? (c >= 70419 && c <= 70440) - : (c <= 70448 || (c >= 70450 && c <= 70451))))))))))))) - : (c <= 70457 || (c < 113808 - ? (c < 72818 - ? (c < 71945 - ? (c < 71040 - ? (c < 70727 - ? (c < 70493 - ? (c < 70480 - ? c == 70461 - : c <= 70480) - : (c <= 70497 || (c >= 70656 && c <= 70708))) - : (c <= 70730 || (c < 70852 - ? (c < 70784 - ? (c >= 70751 && c <= 70753) - : c <= 70831) - : (c <= 70853 || c == 70855)))) - : (c <= 71086 || (c < 71352 - ? (c < 71236 - ? (c < 71168 - ? (c >= 71128 && c <= 71131) - : c <= 71215) - : (c <= 71236 || (c >= 71296 && c <= 71338))) - : (c <= 71352 || (c < 71840 - ? (c < 71680 - ? (c >= 71424 && c <= 71450) - : c <= 71723) - : (c <= 71903 || (c >= 71935 && c <= 71942))))))) - : (c <= 71945 || (c < 72192 - ? (c < 72001 - ? (c < 71960 - ? (c < 71957 - ? (c >= 71948 && c <= 71955) - : c <= 71958) - : (c <= 71983 || c == 71999)) - : (c <= 72001 || (c < 72161 - ? (c < 72106 - ? (c >= 72096 && c <= 72103) - : c <= 72144) - : (c <= 72161 || c == 72163)))) - : (c <= 72192 || (c < 72349 - ? (c < 72272 - ? (c < 72250 - ? (c >= 72203 && c <= 72242) - : c <= 72250) - : (c <= 72272 || (c >= 72284 && c <= 72329))) - : (c <= 72349 || (c < 72714 - ? (c < 72704 - ? (c >= 72384 && c <= 72440) - : c <= 72712) - : (c <= 72750 || c == 72768)))))))) - : (c <= 72847 || (c < 92992 - ? (c < 73648 - ? (c < 73056 - ? (c < 72971 - ? (c < 72968 - ? (c >= 72960 && c <= 72966) - : c <= 72969) - : (c <= 73008 || c == 73030)) - : (c <= 73061 || (c < 73112 - ? (c < 73066 - ? (c >= 73063 && c <= 73064) - : c <= 73097) - : (c <= 73112 || (c >= 73440 && c <= 73458))))) - : (c <= 73648 || (c < 82944 - ? (c < 74880 - ? (c < 74752 - ? (c >= 73728 && c <= 74649) - : c <= 74862) - : (c <= 75075 || (c >= 77824 && c <= 78894))) - : (c <= 83526 || (c < 92880 - ? (c < 92736 - ? (c >= 92160 && c <= 92728) - : c <= 92766) - : (c <= 92909 || (c >= 92928 && c <= 92975))))))) - : (c <= 92995 || (c < 100352 - ? (c < 94032 - ? (c < 93760 - ? (c < 93053 - ? (c >= 93027 && c <= 93047) - : c <= 93071) - : (c <= 93823 || (c >= 93952 && c <= 94026))) - : (c <= 94032 || (c < 94179 - ? (c < 94176 - ? (c >= 94099 && c <= 94111) - : c <= 94177) - : (c <= 94179 || (c >= 94208 && c <= 100343))))) - : (c <= 101589 || (c < 110960 - ? (c < 110928 - ? (c < 110592 - ? (c >= 101632 && c <= 101640) - : c <= 110878) - : (c <= 110930 || (c >= 110948 && c <= 110951))) - : (c <= 111355 || (c < 113776 - ? (c >= 113664 && c <= 113770) - : (c <= 113788 || (c >= 113792 && c <= 113800))))))))))) - : (c <= 113817 || (c < 126469 - ? (c < 120488 - ? (c < 120005 - ? (c < 119973 - ? (c < 119966 - ? (c < 119894 - ? (c >= 119808 && c <= 119892) - : c <= 119964) - : (c <= 119967 || c == 119970)) - : (c <= 119974 || (c < 119995 - ? (c < 119982 - ? (c >= 119977 && c <= 119980) - : c <= 119993) - : (c <= 119995 || (c >= 119997 && c <= 120003))))) - : (c <= 120069 || (c < 120123 - ? (c < 120086 - ? (c < 120077 - ? (c >= 120071 && c <= 120074) - : c <= 120084) - : (c <= 120092 || (c >= 120094 && c <= 120121))) - : (c <= 120126 || (c < 120138 - ? (c < 120134 - ? (c >= 120128 && c <= 120132) - : c <= 120134) - : (c <= 120144 || (c >= 120146 && c <= 120485))))))) - : (c <= 120512 || (c < 120772 - ? (c < 120630 - ? (c < 120572 - ? (c < 120540 - ? (c >= 120514 && c <= 120538) - : c <= 120570) - : (c <= 120596 || (c >= 120598 && c <= 120628))) - : (c <= 120654 || (c < 120714 - ? (c < 120688 - ? (c >= 120656 && c <= 120686) - : c <= 120712) - : (c <= 120744 || (c >= 120746 && c <= 120770))))) - : (c <= 120779 || (c < 124928 - ? (c < 123214 - ? (c < 123191 - ? (c >= 123136 && c <= 123180) - : c <= 123197) - : (c <= 123214 || (c >= 123584 && c <= 123627))) - : (c <= 125124 || (c < 125259 - ? (c >= 125184 && c <= 125251) - : (c <= 125259 || (c >= 126464 && c <= 126467))))))))) - : (c <= 126495 || (c < 126561 - ? (c < 126537 - ? (c < 126516 - ? (c < 126503 - ? (c < 126500 - ? (c >= 126497 && c <= 126498) - : c <= 126500) - : (c <= 126503 || (c >= 126505 && c <= 126514))) - : (c <= 126519 || (c < 126530 - ? (c < 126523 - ? c == 126521 - : c <= 126523) - : (c <= 126530 || c == 126535)))) - : (c <= 126537 || (c < 126551 - ? (c < 126545 - ? (c < 126541 - ? c == 126539 - : c <= 126543) - : (c <= 126546 || c == 126548)) - : (c <= 126551 || (c < 126557 - ? (c < 126555 - ? c == 126553 - : c <= 126555) - : (c <= 126557 || c == 126559)))))) - : (c <= 126562 || (c < 126629 - ? (c < 126585 - ? (c < 126572 - ? (c < 126567 - ? c == 126564 - : c <= 126570) - : (c <= 126578 || (c >= 126580 && c <= 126583))) - : (c <= 126588 || (c < 126603 - ? (c < 126592 - ? c == 126590 - : c <= 126601) - : (c <= 126619 || (c >= 126625 && c <= 126627))))) - : (c <= 126633 || (c < 178208 - ? (c < 173824 - ? (c < 131072 - ? (c >= 126635 && c <= 126651) - : c <= 173789) - : (c <= 177972 || (c >= 177984 && c <= 178205))) - : (c <= 183969 || (c < 194560 - ? (c >= 183984 && c <= 191456) - : (c <= 195101 || (c >= 196608 && c <= 201546))))))))))))))))); -} +static const TSStateId ts_primary_state_ids[STATE_COUNT] = { + [0] = 0, + [1] = 1, + [2] = 2, + [3] = 3, + [4] = 2, + [5] = 5, + [6] = 6, + [7] = 7, + [8] = 8, + [9] = 9, + [10] = 10, + [11] = 11, + [12] = 12, + [13] = 13, + [14] = 14, + [15] = 15, + [16] = 16, + [17] = 17, + [18] = 18, + [19] = 19, + [20] = 20, + [21] = 21, + [22] = 22, + [23] = 23, + [24] = 24, + [25] = 25, + [26] = 26, + [27] = 27, + [28] = 28, + [29] = 29, + [30] = 30, + [31] = 3, + [32] = 5, + [33] = 6, + [34] = 7, + [35] = 8, + [36] = 9, + [37] = 10, + [38] = 11, + [39] = 12, + [40] = 13, + [41] = 14, + [42] = 15, + [43] = 16, + [44] = 17, + [45] = 18, + [46] = 19, + [47] = 20, + [48] = 21, + [49] = 22, + [50] = 23, + [51] = 24, + [52] = 25, + [53] = 26, + [54] = 27, + [55] = 28, + [56] = 56, + [57] = 29, + [58] = 30, + [59] = 56, + [60] = 60, + [61] = 61, + [62] = 62, + [63] = 61, + [64] = 60, + [65] = 61, + [66] = 66, + [67] = 66, + [68] = 68, + [69] = 69, + [70] = 70, + [71] = 71, + [72] = 72, + [73] = 73, + [74] = 74, + [75] = 75, + [76] = 76, + [77] = 77, + [78] = 78, + [79] = 79, + [80] = 80, + [81] = 81, + [82] = 82, + [83] = 83, + [84] = 84, + [85] = 71, + [86] = 72, + [87] = 87, + [88] = 74, + [89] = 75, + [90] = 80, + [91] = 82, + [92] = 92, + [93] = 83, + [94] = 94, + [95] = 87, + [96] = 84, + [97] = 94, + [98] = 98, + [99] = 76, + [100] = 100, + [101] = 100, + [102] = 102, + [103] = 77, + [104] = 104, + [105] = 105, + [106] = 102, + [107] = 107, + [108] = 104, + [109] = 105, + [110] = 110, + [111] = 78, + [112] = 112, + [113] = 79, + [114] = 107, + [115] = 115, + [116] = 116, + [117] = 110, + [118] = 92, + [119] = 70, + [120] = 112, + [121] = 81, + [122] = 73, + [123] = 115, + [124] = 69, + [125] = 116, + [126] = 98, + [127] = 127, + [128] = 128, + [129] = 128, + [130] = 127, + [131] = 128, + [132] = 127, + [133] = 133, + [134] = 134, + [135] = 135, + [136] = 136, + [137] = 137, + [138] = 136, + [139] = 139, + [140] = 136, + [141] = 136, + [142] = 142, + [143] = 137, + [144] = 136, + [145] = 137, + [146] = 146, + [147] = 136, + [148] = 134, + [149] = 137, + [150] = 137, + [151] = 146, + [152] = 137, + [153] = 153, + [154] = 154, + [155] = 155, + [156] = 156, + [157] = 157, + [158] = 158, + [159] = 159, + [160] = 157, + [161] = 161, + [162] = 159, + [163] = 157, + [164] = 164, + [165] = 164, + [166] = 164, + [167] = 164, + [168] = 168, + [169] = 168, + [170] = 170, + [171] = 171, + [172] = 172, + [173] = 173, + [174] = 168, + [175] = 175, + [176] = 176, + [177] = 177, + [178] = 170, + [179] = 171, + [180] = 172, + [181] = 173, + [182] = 176, + [183] = 183, + [184] = 184, + [185] = 185, + [186] = 186, + [187] = 176, + [188] = 176, + [189] = 189, + [190] = 190, + [191] = 170, + [192] = 192, + [193] = 172, + [194] = 194, + [195] = 195, + [196] = 196, + [197] = 197, + [198] = 198, + [199] = 199, + [200] = 200, + [201] = 189, + [202] = 195, + [203] = 196, + [204] = 204, + [205] = 205, + [206] = 194, + [207] = 197, + [208] = 194, + [209] = 198, + [210] = 199, + [211] = 199, + [212] = 195, + [213] = 196, + [214] = 198, + [215] = 189, + [216] = 200, + [217] = 217, + [218] = 194, + [219] = 197, + [220] = 171, + [221] = 195, + [222] = 196, + [223] = 198, + [224] = 189, + [225] = 200, + [226] = 194, + [227] = 197, + [228] = 200, + [229] = 194, + [230] = 197, + [231] = 197, + [232] = 232, + [233] = 233, + [234] = 234, + [235] = 235, + [236] = 236, + [237] = 237, + [238] = 232, + [239] = 239, + [240] = 232, + [241] = 232, + [242] = 242, + [243] = 243, + [244] = 244, + [245] = 245, + [246] = 246, + [247] = 246, + [248] = 243, + [249] = 249, + [250] = 250, + [251] = 250, + [252] = 252, + [253] = 253, + [254] = 249, + [255] = 252, + [256] = 252, + [257] = 253, + [258] = 249, + [259] = 252, + [260] = 253, + [261] = 249, + [262] = 253, + [263] = 250, + [264] = 264, + [265] = 265, + [266] = 266, + [267] = 267, + [268] = 266, + [269] = 269, + [270] = 270, + [271] = 265, + [272] = 272, + [273] = 273, + [274] = 274, + [275] = 275, + [276] = 276, + [277] = 277, + [278] = 278, + [279] = 275, + [280] = 267, + [281] = 273, + [282] = 282, + [283] = 283, + [284] = 278, + [285] = 276, + [286] = 270, + [287] = 283, + [288] = 288, + [289] = 289, + [290] = 290, + [291] = 291, + [292] = 292, + [293] = 293, + [294] = 294, + [295] = 295, + [296] = 296, + [297] = 297, + [298] = 298, + [299] = 299, + [300] = 300, + [301] = 301, + [302] = 302, + [303] = 303, + [304] = 288, + [305] = 305, + [306] = 306, + [307] = 307, + [308] = 308, + [309] = 309, + [310] = 305, + [311] = 295, + [312] = 312, + [313] = 313, + [314] = 314, + [315] = 315, + [316] = 316, + [317] = 317, + [318] = 313, + [319] = 312, + [320] = 320, + [321] = 321, + [322] = 322, + [323] = 323, + [324] = 324, + [325] = 320, + [326] = 321, + [327] = 322, + [328] = 328, + [329] = 329, + [330] = 328, + [331] = 329, + [332] = 314, + [333] = 316, + [334] = 334, + [335] = 317, + [336] = 334, + [337] = 323, + [338] = 324, + [339] = 339, + [340] = 340, + [341] = 341, + [342] = 342, + [343] = 340, + [344] = 344, + [345] = 345, + [346] = 346, + [347] = 347, + [348] = 345, + [349] = 349, + [350] = 350, + [351] = 351, + [352] = 352, + [353] = 353, + [354] = 354, + [355] = 355, + [356] = 356, + [357] = 356, + [358] = 358, + [359] = 341, + [360] = 360, + [361] = 361, + [362] = 362, + [363] = 363, + [364] = 364, + [365] = 365, + [366] = 356, + [367] = 367, + [368] = 361, + [369] = 351, + [370] = 341, + [371] = 344, + [372] = 372, + [373] = 373, + [374] = 353, + [375] = 362, + [376] = 360, + [377] = 377, + [378] = 378, + [379] = 361, + [380] = 380, + [381] = 364, + [382] = 351, + [383] = 383, + [384] = 384, + [385] = 385, + [386] = 353, + [387] = 360, + [388] = 344, + [389] = 344, + [390] = 378, + [391] = 340, + [392] = 356, + [393] = 361, + [394] = 364, + [395] = 351, + [396] = 353, + [397] = 397, + [398] = 360, + [399] = 354, + [400] = 344, + [401] = 340, + [402] = 402, + [403] = 340, + [404] = 350, + [405] = 356, + [406] = 406, + [407] = 407, + [408] = 356, + [409] = 361, + [410] = 364, + [411] = 351, + [412] = 353, + [413] = 360, + [414] = 344, + [415] = 361, + [416] = 340, + [417] = 350, + [418] = 362, + [419] = 350, + [420] = 364, + [421] = 350, + [422] = 350, + [423] = 385, + [424] = 407, + [425] = 425, + [426] = 351, + [427] = 353, + [428] = 360, + [429] = 380, + [430] = 430, + [431] = 378, + [432] = 432, + [433] = 402, + [434] = 397, + [435] = 364, + [436] = 436, + [437] = 437, + [438] = 438, + [439] = 439, + [440] = 440, + [441] = 441, + [442] = 442, + [443] = 443, + [444] = 436, + [445] = 442, + [446] = 446, + [447] = 447, + [448] = 446, + [449] = 447, + [450] = 450, + [451] = 440, + [452] = 452, + [453] = 452, + [454] = 437, + [455] = 441, + [456] = 438, + [457] = 443, + [458] = 458, + [459] = 439, + [460] = 450, + [461] = 461, + [462] = 462, + [463] = 463, + [464] = 464, + [465] = 465, + [466] = 466, + [467] = 467, + [468] = 468, + [469] = 469, + [470] = 470, + [471] = 471, + [472] = 470, + [473] = 463, + [474] = 474, + [475] = 294, + [476] = 466, + [477] = 477, + [478] = 478, + [479] = 468, + [480] = 480, + [481] = 480, + [482] = 482, + [483] = 307, + [484] = 469, + [485] = 485, + [486] = 471, + [487] = 487, + [488] = 464, + [489] = 485, + [490] = 477, + [491] = 482, + [492] = 492, + [493] = 493, + [494] = 494, + [495] = 495, + [496] = 496, + [497] = 497, + [498] = 492, + [499] = 499, + [500] = 500, + [501] = 501, + [502] = 502, + [503] = 495, + [504] = 496, + [505] = 499, + [506] = 500, + [507] = 501, + [508] = 493, + [509] = 509, + [510] = 510, + [511] = 511, + [512] = 511, + [513] = 513, + [514] = 514, + [515] = 515, + [516] = 516, + [517] = 517, + [518] = 518, + [519] = 519, + [520] = 520, + [521] = 521, + [522] = 522, + [523] = 523, + [524] = 524, + [525] = 525, + [526] = 526, + [527] = 527, + [528] = 528, + [529] = 529, + [530] = 530, + [531] = 531, + [532] = 532, + [533] = 533, + [534] = 534, + [535] = 535, + [536] = 536, + [537] = 537, + [538] = 538, + [539] = 539, + [540] = 540, + [541] = 541, + [542] = 542, + [543] = 543, + [544] = 544, + [545] = 545, + [546] = 546, + [547] = 547, + [548] = 548, + [549] = 549, + [550] = 550, + [551] = 551, + [552] = 521, + [553] = 553, + [554] = 554, + [555] = 555, + [556] = 556, + [557] = 557, + [558] = 514, + [559] = 559, + [560] = 560, + [561] = 534, + [562] = 535, + [563] = 540, + [564] = 541, + [565] = 547, + [566] = 550, + [567] = 567, + [568] = 568, + [569] = 569, + [570] = 570, + [571] = 571, + [572] = 515, + [573] = 516, + [574] = 517, + [575] = 518, + [576] = 519, + [577] = 520, + [578] = 522, + [579] = 523, + [580] = 524, + [581] = 567, + [582] = 525, + [583] = 526, + [584] = 527, + [585] = 528, + [586] = 529, + [587] = 530, + [588] = 560, + [589] = 531, + [590] = 532, + [591] = 533, + [592] = 536, + [593] = 537, + [594] = 538, + [595] = 539, + [596] = 568, + [597] = 569, + [598] = 542, + [599] = 543, + [600] = 544, + [601] = 545, + [602] = 546, + [603] = 548, + [604] = 549, + [605] = 570, + [606] = 571, + [607] = 553, + [608] = 554, + [609] = 555, + [610] = 556, + [611] = 557, + [612] = 612, + [613] = 559, + [614] = 614, + [615] = 615, + [616] = 616, + [617] = 617, + [618] = 615, + [619] = 619, + [620] = 620, + [621] = 621, + [622] = 615, + [623] = 615, + [624] = 624, + [625] = 615, + [626] = 615, + [627] = 627, + [628] = 628, + [629] = 629, + [630] = 630, + [631] = 627, + [632] = 632, + [633] = 633, + [634] = 634, + [635] = 628, + [636] = 629, + [637] = 628, + [638] = 629, + [639] = 630, + [640] = 640, + [641] = 641, + [642] = 642, + [643] = 633, + [644] = 634, + [645] = 632, + [646] = 628, + [647] = 629, + [648] = 630, + [649] = 640, + [650] = 634, + [651] = 642, + [652] = 633, + [653] = 634, + [654] = 640, + [655] = 627, + [656] = 632, + [657] = 657, + [658] = 627, + [659] = 632, + [660] = 641, + [661] = 630, + [662] = 662, + [663] = 628, + [664] = 629, + [665] = 630, + [666] = 640, + [667] = 641, + [668] = 642, + [669] = 633, + [670] = 634, + [671] = 642, + [672] = 640, + [673] = 627, + [674] = 632, + [675] = 657, + [676] = 657, + [677] = 657, + [678] = 678, + [679] = 657, + [680] = 641, + [681] = 628, + [682] = 629, + [683] = 630, + [684] = 640, + [685] = 641, + [686] = 642, + [687] = 633, + [688] = 634, + [689] = 633, + [690] = 627, + [691] = 632, + [692] = 657, + [693] = 642, + [694] = 641, + [695] = 695, + [696] = 696, + [697] = 697, + [698] = 698, + [699] = 699, + [700] = 700, + [701] = 701, + [702] = 702, + [703] = 703, + [704] = 704, + [705] = 705, + [706] = 706, + [707] = 707, + [708] = 708, + [709] = 709, + [710] = 710, + [711] = 711, + [712] = 712, + [713] = 713, + [714] = 714, + [715] = 715, + [716] = 716, + [717] = 717, + [718] = 718, + [719] = 719, + [720] = 720, + [721] = 721, + [722] = 722, + [723] = 723, + [724] = 724, + [725] = 719, + [726] = 726, + [727] = 727, + [728] = 728, + [729] = 729, + [730] = 730, + [731] = 731, + [732] = 732, + [733] = 733, + [734] = 734, + [735] = 735, + [736] = 736, + [737] = 737, + [738] = 738, + [739] = 739, + [740] = 734, + [741] = 741, + [742] = 742, + [743] = 743, + [744] = 616, + [745] = 617, + [746] = 619, + [747] = 620, + [748] = 748, + [749] = 749, + [750] = 736, + [751] = 737, + [752] = 738, + [753] = 739, + [754] = 741, + [755] = 742, + [756] = 743, + [757] = 748, + [758] = 749, + [759] = 759, + [760] = 735, + [761] = 759, + [762] = 620, + [763] = 624, + [764] = 713, + [765] = 616, + [766] = 719, + [767] = 621, + [768] = 624, + [769] = 616, + [770] = 617, + [771] = 619, + [772] = 719, + [773] = 773, + [774] = 774, + [775] = 619, + [776] = 620, + [777] = 712, + [778] = 617, + [779] = 719, + [780] = 773, + [781] = 774, + [782] = 621, + [783] = 734, + [784] = 759, + [785] = 735, + [786] = 736, + [787] = 737, + [788] = 738, + [789] = 739, + [790] = 735, + [791] = 741, + [792] = 742, + [793] = 743, + [794] = 621, + [795] = 624, + [796] = 736, + [797] = 748, + [798] = 749, + [799] = 737, + [800] = 738, + [801] = 739, + [802] = 734, + [803] = 759, + [804] = 742, + [805] = 743, + [806] = 695, + [807] = 696, + [808] = 697, + [809] = 698, + [810] = 735, + [811] = 759, + [812] = 736, + [813] = 737, + [814] = 738, + [815] = 739, + [816] = 734, + [817] = 741, + [818] = 742, + [819] = 743, + [820] = 748, + [821] = 749, + [822] = 719, + [823] = 748, + [824] = 749, + [825] = 741, + [826] = 773, + [827] = 696, + [828] = 736, + [829] = 737, + [830] = 698, + [831] = 738, + [832] = 739, + [833] = 734, + [834] = 509, + [835] = 741, + [836] = 742, + [837] = 743, + [838] = 502, + [839] = 839, + [840] = 773, + [841] = 697, + [842] = 774, + [843] = 748, + [844] = 749, + [845] = 759, + [846] = 846, + [847] = 695, + [848] = 735, + [849] = 494, + [850] = 695, + [851] = 698, + [852] = 852, + [853] = 774, + [854] = 854, + [855] = 855, + [856] = 856, + [857] = 513, + [858] = 462, + [859] = 696, + [860] = 860, + [861] = 697, + [862] = 856, + [863] = 773, + [864] = 465, + [865] = 774, + [866] = 720, + [867] = 716, + [868] = 710, + [869] = 705, + [870] = 712, + [871] = 713, + [872] = 706, + [873] = 707, + [874] = 708, + [875] = 709, + [876] = 294, + [877] = 699, + [878] = 732, + [879] = 721, + [880] = 726, + [881] = 727, + [882] = 728, + [883] = 729, + [884] = 730, + [885] = 731, + [886] = 706, + [887] = 722, + [888] = 700, + [889] = 702, + [890] = 307, + [891] = 705, + [892] = 717, + [893] = 714, + [894] = 716, + [895] = 718, + [896] = 732, + [897] = 711, + [898] = 701, + [899] = 703, + [900] = 704, + [901] = 710, + [902] = 708, + [903] = 718, + [904] = 733, + [905] = 712, + [906] = 733, + [907] = 721, + [908] = 724, + [909] = 714, + [910] = 726, + [911] = 773, + [912] = 774, + [913] = 727, + [914] = 701, + [915] = 494, + [916] = 703, + [917] = 704, + [918] = 713, + [919] = 502, + [920] = 728, + [921] = 729, + [922] = 730, + [923] = 731, + [924] = 724, + [925] = 513, + [926] = 723, + [927] = 927, + [928] = 928, + [929] = 722, + [930] = 700, + [931] = 699, + [932] = 932, + [933] = 933, + [934] = 934, + [935] = 935, + [936] = 702, + [937] = 707, + [938] = 723, + [939] = 715, + [940] = 717, + [941] = 720, + [942] = 715, + [943] = 711, + [944] = 709, + [945] = 706, + [946] = 710, + [947] = 294, + [948] = 722, + [949] = 699, + [950] = 702, + [951] = 307, + [952] = 715, + [953] = 724, + [954] = 717, + [955] = 714, + [956] = 716, + [957] = 718, + [958] = 720, + [959] = 732, + [960] = 711, + [961] = 701, + [962] = 703, + [963] = 723, + [964] = 964, + [965] = 704, + [966] = 707, + [967] = 721, + [968] = 708, + [969] = 705, + [970] = 726, + [971] = 727, + [972] = 839, + [973] = 852, + [974] = 728, + [975] = 709, + [976] = 729, + [977] = 733, + [978] = 730, + [979] = 979, + [980] = 980, + [981] = 731, + [982] = 982, + [983] = 700, + [984] = 984, + [985] = 985, + [986] = 986, + [987] = 987, + [988] = 988, + [989] = 989, + [990] = 989, + [991] = 991, + [992] = 991, + [993] = 993, + [994] = 994, + [995] = 989, + [996] = 996, + [997] = 991, + [998] = 998, + [999] = 999, + [1000] = 1000, + [1001] = 1001, + [1002] = 991, + [1003] = 989, + [1004] = 1004, + [1005] = 1005, + [1006] = 991, + [1007] = 989, + [1008] = 1008, + [1009] = 991, + [1010] = 1010, + [1011] = 989, + [1012] = 1012, + [1013] = 1013, + [1014] = 1014, + [1015] = 1014, + [1016] = 1014, + [1017] = 1014, + [1018] = 1014, + [1019] = 1019, + [1020] = 1014, + [1021] = 1021, + [1022] = 1022, + [1023] = 1023, + [1024] = 1024, + [1025] = 1025, + [1026] = 1025, + [1027] = 1023, + [1028] = 1028, + [1029] = 1028, + [1030] = 1030, + [1031] = 1031, + [1032] = 1032, + [1033] = 1033, + [1034] = 1034, + [1035] = 1035, + [1036] = 1036, + [1037] = 1037, + [1038] = 1038, + [1039] = 1039, + [1040] = 1040, + [1041] = 1041, + [1042] = 1042, + [1043] = 1033, + [1044] = 1035, + [1045] = 1037, + [1046] = 1034, + [1047] = 1033, + [1048] = 1036, + [1049] = 1049, + [1050] = 1035, + [1051] = 1037, + [1052] = 1052, + [1053] = 1033, + [1054] = 1036, + [1055] = 1035, + [1056] = 1037, + [1057] = 1033, + [1058] = 1036, + [1059] = 1035, + [1060] = 1034, + [1061] = 1034, + [1062] = 1062, + [1063] = 1063, + [1064] = 1064, + [1065] = 1065, + [1066] = 1066, + [1067] = 1067, + [1068] = 1063, + [1069] = 1065, + [1070] = 1070, + [1071] = 1071, + [1072] = 1072, + [1073] = 1066, + [1074] = 1070, + [1075] = 1067, + [1076] = 1067, + [1077] = 1077, + [1078] = 1078, + [1079] = 1066, + [1080] = 1067, + [1081] = 1081, + [1082] = 1064, + [1083] = 1081, + [1084] = 1066, + [1085] = 1071, + [1086] = 1081, + [1087] = 1077, + [1088] = 1081, + [1089] = 1062, + [1090] = 1090, + [1091] = 1091, + [1092] = 1092, + [1093] = 1093, + [1094] = 1094, + [1095] = 1095, + [1096] = 1096, + [1097] = 1097, + [1098] = 1098, + [1099] = 1099, + [1100] = 1100, + [1101] = 1101, + [1102] = 1071, + [1103] = 1064, + [1104] = 1062, + [1105] = 1063, + [1106] = 1065, + [1107] = 1070, + [1108] = 1071, + [1109] = 1071, + [1110] = 1110, + [1111] = 1111, + [1112] = 1096, + [1113] = 1113, + [1114] = 1114, + [1115] = 1115, + [1116] = 1116, + [1117] = 1117, + [1118] = 1113, + [1119] = 1119, + [1120] = 1120, + [1121] = 1063, + [1122] = 1122, + [1123] = 1065, + [1124] = 1124, + [1125] = 1125, + [1126] = 1126, + [1127] = 1127, + [1128] = 1128, + [1129] = 1031, + [1130] = 1130, + [1131] = 1131, + [1132] = 1132, + [1133] = 1133, + [1134] = 1134, + [1135] = 1030, + [1136] = 1136, + [1137] = 1137, + [1138] = 1138, + [1139] = 1139, + [1140] = 1140, + [1141] = 1096, + [1142] = 1142, + [1143] = 1143, + [1144] = 1070, + [1145] = 1077, + [1146] = 1146, + [1147] = 1147, + [1148] = 1093, + [1149] = 1077, + [1150] = 1064, + [1151] = 1062, + [1152] = 1063, + [1153] = 1065, + [1154] = 1154, + [1155] = 1155, + [1156] = 1064, + [1157] = 1070, + [1158] = 1031, + [1159] = 1159, + [1160] = 1160, + [1161] = 1161, + [1162] = 1162, + [1163] = 1062, + [1164] = 1117, + [1165] = 1077, + [1166] = 1125, + [1167] = 1167, + [1168] = 1030, + [1169] = 1169, + [1170] = 1170, + [1171] = 1171, + [1172] = 1172, + [1173] = 1173, + [1174] = 1174, + [1175] = 1175, + [1176] = 1031, + [1177] = 1177, + [1178] = 1178, + [1179] = 1179, + [1180] = 1180, + [1181] = 1173, + [1182] = 1182, + [1183] = 1183, + [1184] = 1184, + [1185] = 1185, + [1186] = 1186, + [1187] = 1171, + [1188] = 1077, + [1189] = 1183, + [1190] = 1170, + [1191] = 1125, + [1192] = 1064, + [1193] = 1062, + [1194] = 1063, + [1195] = 1065, + [1196] = 1196, + [1197] = 1197, + [1198] = 1170, + [1199] = 1117, + [1200] = 1200, + [1201] = 1201, + [1202] = 1093, + [1203] = 1203, + [1204] = 1204, + [1205] = 1186, + [1206] = 1206, + [1207] = 1204, + [1208] = 1070, + [1209] = 1071, + [1210] = 1030, + [1211] = 1211, + [1212] = 1170, + [1213] = 1213, + [1214] = 1214, + [1215] = 1215, + [1216] = 1216, + [1217] = 1217, + [1218] = 1218, + [1219] = 1216, + [1220] = 1220, + [1221] = 1221, + [1222] = 1221, + [1223] = 1223, + [1224] = 1224, + [1225] = 1225, + [1226] = 1226, + [1227] = 1227, + [1228] = 1228, + [1229] = 1229, + [1230] = 1230, + [1231] = 1231, + [1232] = 1215, + [1233] = 1233, + [1234] = 1032, + [1235] = 1235, + [1236] = 1236, + [1237] = 1235, + [1238] = 1238, + [1239] = 1239, + [1240] = 1236, + [1241] = 1233, + [1242] = 1242, + [1243] = 1243, + [1244] = 1244, + [1245] = 1245, + [1246] = 1246, + [1247] = 1247, + [1248] = 1248, + [1249] = 1249, + [1250] = 1172, + [1251] = 1229, + [1252] = 1252, + [1253] = 1253, + [1254] = 1230, + [1255] = 1255, + [1256] = 1256, + [1257] = 1257, + [1258] = 1183, + [1259] = 1259, + [1260] = 1215, + [1261] = 1261, + [1262] = 1262, + [1263] = 1263, + [1264] = 1264, + [1265] = 1265, + [1266] = 1266, + [1267] = 1267, + [1268] = 1268, + [1269] = 1269, + [1270] = 1270, + [1271] = 1271, + [1272] = 1272, + [1273] = 1267, + [1274] = 1274, + [1275] = 1275, + [1276] = 1276, + [1277] = 1277, + [1278] = 1229, + [1279] = 1279, + [1280] = 1221, + [1281] = 1256, + [1282] = 1214, + [1283] = 1283, + [1284] = 1284, + [1285] = 1285, + [1286] = 1286, + [1287] = 1265, + [1288] = 1288, + [1289] = 1049, + [1290] = 1290, + [1291] = 1291, + [1292] = 1292, + [1293] = 1293, + [1294] = 1294, + [1295] = 1295, + [1296] = 1296, + [1297] = 1297, + [1298] = 1298, + [1299] = 1299, + [1300] = 1300, + [1301] = 1301, + [1302] = 1302, + [1303] = 1303, + [1304] = 1304, + [1305] = 1298, + [1306] = 1306, + [1307] = 1297, + [1308] = 1308, + [1309] = 1309, + [1310] = 1302, + [1311] = 1311, + [1312] = 1312, + [1313] = 1313, + [1314] = 1314, + [1315] = 1315, + [1316] = 1316, + [1317] = 1039, + [1318] = 1040, + [1319] = 1319, + [1320] = 1320, + [1321] = 1321, + [1322] = 1322, + [1323] = 1323, + [1324] = 1324, + [1325] = 1325, + [1326] = 1326, + [1327] = 1327, + [1328] = 1271, + [1329] = 1275, + [1330] = 1290, + [1331] = 1331, + [1332] = 1332, + [1333] = 1303, + [1334] = 1334, + [1335] = 1297, + [1336] = 1336, + [1337] = 1337, + [1338] = 1338, + [1339] = 1297, + [1340] = 1340, + [1341] = 1341, + [1342] = 1342, + [1343] = 1303, + [1344] = 1344, + [1345] = 1297, + [1346] = 1322, + [1347] = 1334, + [1348] = 1332, + [1349] = 1349, + [1350] = 1295, + [1351] = 1351, + [1352] = 1349, + [1353] = 1353, + [1354] = 1354, + [1355] = 1355, + [1356] = 1356, + [1357] = 1357, + [1358] = 1267, + [1359] = 1359, + [1360] = 1360, + [1361] = 1351, + [1362] = 1362, + [1363] = 1304, + [1364] = 1364, + [1365] = 1365, + [1366] = 1297, + [1367] = 1255, + [1368] = 1368, + [1369] = 1301, + [1370] = 1323, + [1371] = 1371, + [1372] = 1372, + [1373] = 1332, + [1374] = 1374, + [1375] = 1375, + [1376] = 1376, + [1377] = 1377, + [1378] = 1378, + [1379] = 1379, + [1380] = 1223, + [1381] = 1381, + [1382] = 1306, + [1383] = 1383, + [1384] = 1309, + [1385] = 1385, + [1386] = 1386, + [1387] = 1387, + [1388] = 1388, + [1389] = 1389, + [1390] = 1390, + [1391] = 1391, + [1392] = 1392, + [1393] = 1393, + [1394] = 1394, + [1395] = 1368, + [1396] = 1396, + [1397] = 1387, + [1398] = 1388, + [1399] = 1399, + [1400] = 1383, + [1401] = 1401, + [1402] = 1402, + [1403] = 1403, + [1404] = 697, + [1405] = 1405, + [1406] = 1406, + [1407] = 1377, + [1408] = 1389, + [1409] = 1409, + [1410] = 1403, + [1411] = 1387, + [1412] = 1388, + [1413] = 1413, + [1414] = 1377, + [1415] = 1415, + [1416] = 1416, + [1417] = 1417, + [1418] = 1418, + [1419] = 1419, + [1420] = 1420, + [1421] = 1421, + [1422] = 1422, + [1423] = 1383, + [1424] = 1424, + [1425] = 1403, + [1426] = 1389, + [1427] = 1409, + [1428] = 1385, + [1429] = 1387, + [1430] = 1388, + [1431] = 1431, + [1432] = 1377, + [1433] = 1409, + [1434] = 1434, + [1435] = 1415, + [1436] = 1417, + [1437] = 1418, + [1438] = 1438, + [1439] = 1439, + [1440] = 1440, + [1441] = 1441, + [1442] = 1442, + [1443] = 1443, + [1444] = 1444, + [1445] = 1445, + [1446] = 1446, + [1447] = 1447, + [1448] = 1415, + [1449] = 1449, + [1450] = 1417, + [1451] = 1418, + [1452] = 1452, + [1453] = 1453, + [1454] = 1454, + [1455] = 1253, + [1456] = 1390, + [1457] = 1457, + [1458] = 1419, + [1459] = 1459, + [1460] = 1460, + [1461] = 1461, + [1462] = 1415, + [1463] = 1308, + [1464] = 1464, + [1465] = 1465, + [1466] = 1466, + [1467] = 1467, + [1468] = 1468, + [1469] = 1469, + [1470] = 695, + [1471] = 1376, + [1472] = 1472, + [1473] = 1473, + [1474] = 1474, + [1475] = 1475, + [1476] = 1476, + [1477] = 1477, + [1478] = 1478, + [1479] = 1342, + [1480] = 1480, + [1481] = 1417, + [1482] = 1218, + [1483] = 1418, + [1484] = 1484, + [1485] = 1389, + [1486] = 1486, + [1487] = 1353, + [1488] = 1359, + [1489] = 1383, + [1490] = 1403, + [1491] = 1409, + [1492] = 1492, + [1493] = 1453, + [1494] = 1457, + [1495] = 1495, + [1496] = 1496, + [1497] = 1497, + [1498] = 1498, + [1499] = 1460, + [1500] = 1500, + [1501] = 1501, + [1502] = 1217, + [1503] = 1503, + [1504] = 1496, + [1505] = 1473, + [1506] = 1443, + [1507] = 1507, + [1508] = 1508, + [1509] = 1509, + [1510] = 1510, + [1511] = 1511, + [1512] = 1512, + [1513] = 1513, + [1514] = 1514, + [1515] = 313, + [1516] = 1516, + [1517] = 1517, + [1518] = 1518, + [1519] = 1519, + [1520] = 1442, + [1521] = 320, + [1522] = 1522, + [1523] = 1523, + [1524] = 1524, + [1525] = 1525, + [1526] = 1526, + [1527] = 1527, + [1528] = 1528, + [1529] = 1529, + [1530] = 1530, + [1531] = 1531, + [1532] = 1532, + [1533] = 1533, + [1534] = 1534, + [1535] = 1535, + [1536] = 314, + [1537] = 1196, + [1538] = 317, + [1539] = 1539, + [1540] = 1486, + [1541] = 1541, + [1542] = 1542, + [1543] = 1511, + [1544] = 1544, + [1545] = 1421, + [1546] = 1513, + [1547] = 1547, + [1548] = 1548, + [1549] = 1510, + [1550] = 1550, + [1551] = 1551, + [1552] = 1548, + [1553] = 1553, + [1554] = 1541, + [1555] = 1555, + [1556] = 1556, + [1557] = 1557, + [1558] = 1558, + [1559] = 1559, + [1560] = 1560, + [1561] = 1561, + [1562] = 1562, + [1563] = 1563, + [1564] = 1564, + [1565] = 1550, + [1566] = 1566, + [1567] = 1510, + [1568] = 1568, + [1569] = 1569, + [1570] = 1570, + [1571] = 1571, + [1572] = 1572, + [1573] = 1573, + [1574] = 1574, + [1575] = 1575, + [1576] = 1557, + [1577] = 1577, + [1578] = 1512, + [1579] = 1579, + [1580] = 334, + [1581] = 1581, + [1582] = 1539, + [1583] = 1583, + [1584] = 1584, + [1585] = 1585, + [1586] = 1584, + [1587] = 1587, + [1588] = 1588, + [1589] = 1589, + [1590] = 1590, + [1591] = 1591, + [1592] = 1592, + [1593] = 1593, + [1594] = 1594, + [1595] = 1595, + [1596] = 1596, + [1597] = 1597, + [1598] = 1598, + [1599] = 1599, + [1600] = 1600, + [1601] = 1601, + [1602] = 1600, + [1603] = 1603, + [1604] = 1593, + [1605] = 1605, + [1606] = 1588, + [1607] = 1589, + [1608] = 1608, + [1609] = 1609, + [1610] = 1610, + [1611] = 1611, + [1612] = 1612, + [1613] = 1592, + [1614] = 1614, + [1615] = 1591, + [1616] = 1616, + [1617] = 1617, + [1618] = 1617, + [1619] = 1619, + [1620] = 1620, + [1621] = 1621, + [1622] = 1622, + [1623] = 1623, + [1624] = 1614, + [1625] = 1610, + [1626] = 1591, + [1627] = 1627, + [1628] = 1628, + [1629] = 1629, + [1630] = 1630, + [1631] = 1631, + [1632] = 1605, + [1633] = 1594, + [1634] = 1612, + [1635] = 1584, + [1636] = 1636, + [1637] = 1603, + [1638] = 1638, + [1639] = 1583, + [1640] = 1640, + [1641] = 1641, + [1642] = 1616, + [1643] = 1643, + [1644] = 1644, + [1645] = 1627, + [1646] = 1609, + [1647] = 1647, + [1648] = 1648, + [1649] = 1627, + [1650] = 1631, + [1651] = 1605, + [1652] = 1587, + [1653] = 1653, + [1654] = 1654, + [1655] = 1655, + [1656] = 1594, + [1657] = 1657, + [1658] = 1658, + [1659] = 1659, + [1660] = 1653, + [1661] = 1661, + [1662] = 1662, + [1663] = 1663, + [1664] = 1664, + [1665] = 1596, + [1666] = 1608, + [1667] = 1667, + [1668] = 1593, + [1669] = 1653, + [1670] = 1597, + [1671] = 1612, + [1672] = 1672, + [1673] = 1593, + [1674] = 1612, + [1675] = 1591, + [1676] = 1590, + [1677] = 1614, + [1678] = 1596, + [1679] = 1594, + [1680] = 1680, + [1681] = 1636, + [1682] = 1682, + [1683] = 1596, + [1684] = 1684, + [1685] = 1685, + [1686] = 1592, + [1687] = 1600, + [1688] = 1688, + [1689] = 1621, + [1690] = 1593, + [1691] = 1629, + [1692] = 1641, + [1693] = 1653, + [1694] = 1584, + [1695] = 1605, + [1696] = 1696, + [1697] = 1622, + [1698] = 1667, + [1699] = 1644, + [1700] = 1612, + [1701] = 1701, + [1702] = 1702, + [1703] = 1703, + [1704] = 1611, + [1705] = 1600, + [1706] = 1592, + [1707] = 1707, + [1708] = 1614, + [1709] = 1709, + [1710] = 1601, + [1711] = 1593, + [1712] = 1688, + [1713] = 1619, + [1714] = 1599, + [1715] = 1627, + [1716] = 1661, + [1717] = 1685, + [1718] = 1631, + [1719] = 1672, + [1720] = 1612, + [1721] = 1631, + [1722] = 1722, +}; -static inline bool sym_identifier_character_set_2(int32_t c) { - return (c < 43052 - ? (c < 3718 - ? (c < 2730 - ? (c < 2042 - ? (c < 1015 - ? (c < 710 - ? (c < 181 - ? (c < '_' - ? (c < 'A' - ? (c >= '0' && c <= '9') - : c <= 'Z') - : (c <= '_' || (c < 170 - ? (c >= 'a' && c <= 'z') - : c <= 170))) - : (c <= 181 || (c < 192 - ? (c < 186 - ? c == 183 - : c <= 186) - : (c <= 214 || (c < 248 - ? (c >= 216 && c <= 246) - : c <= 705))))) - : (c <= 721 || (c < 891 - ? (c < 750 - ? (c < 748 - ? (c >= 736 && c <= 740) - : c <= 748) - : (c <= 750 || (c < 886 - ? (c >= 768 && c <= 884) - : c <= 887))) - : (c <= 893 || (c < 908 - ? (c < 902 - ? c == 895 - : c <= 906) - : (c <= 908 || (c < 931 - ? (c >= 910 && c <= 929) - : c <= 1013))))))) - : (c <= 1153 || (c < 1519 - ? (c < 1425 - ? (c < 1329 - ? (c < 1162 - ? (c >= 1155 && c <= 1159) - : c <= 1327) - : (c <= 1366 || (c < 1376 - ? c == 1369 - : c <= 1416))) - : (c <= 1469 || (c < 1476 - ? (c < 1473 - ? c == 1471 - : c <= 1474) - : (c <= 1477 || (c < 1488 - ? c == 1479 - : c <= 1514))))) - : (c <= 1522 || (c < 1770 - ? (c < 1646 - ? (c < 1568 - ? (c >= 1552 && c <= 1562) - : c <= 1641) - : (c <= 1747 || (c < 1759 - ? (c >= 1749 && c <= 1756) - : c <= 1768))) - : (c <= 1788 || (c < 1869 - ? (c < 1808 - ? c == 1791 - : c <= 1866) - : (c <= 1969 || (c >= 1984 && c <= 2037))))))))) - : (c <= 2042 || (c < 2534 - ? (c < 2447 - ? (c < 2230 - ? (c < 2112 - ? (c < 2048 - ? c == 2045 - : c <= 2093) - : (c <= 2139 || (c < 2208 - ? (c >= 2144 && c <= 2154) - : c <= 2228))) - : (c <= 2247 || (c < 2406 - ? (c < 2275 - ? (c >= 2259 && c <= 2273) - : c <= 2403) - : (c <= 2415 || (c < 2437 - ? (c >= 2417 && c <= 2435) - : c <= 2444))))) - : (c <= 2448 || (c < 2503 - ? (c < 2482 - ? (c < 2474 - ? (c >= 2451 && c <= 2472) - : c <= 2480) - : (c <= 2482 || (c < 2492 - ? (c >= 2486 && c <= 2489) - : c <= 2500))) - : (c <= 2504 || (c < 2524 - ? (c < 2519 - ? (c >= 2507 && c <= 2510) - : c <= 2519) - : (c <= 2525 || (c >= 2527 && c <= 2531))))))) - : (c <= 2545 || (c < 2622 - ? (c < 2579 - ? (c < 2561 - ? (c < 2558 - ? c == 2556 - : c <= 2558) - : (c <= 2563 || (c < 2575 - ? (c >= 2565 && c <= 2570) - : c <= 2576))) - : (c <= 2600 || (c < 2613 - ? (c < 2610 - ? (c >= 2602 && c <= 2608) - : c <= 2611) - : (c <= 2614 || (c < 2620 - ? (c >= 2616 && c <= 2617) - : c <= 2620))))) - : (c <= 2626 || (c < 2662 - ? (c < 2641 - ? (c < 2635 - ? (c >= 2631 && c <= 2632) - : c <= 2637) - : (c <= 2641 || (c < 2654 - ? (c >= 2649 && c <= 2652) - : c <= 2654))) - : (c <= 2677 || (c < 2703 - ? (c < 2693 - ? (c >= 2689 && c <= 2691) - : c <= 2701) - : (c <= 2705 || (c >= 2707 && c <= 2728))))))))))) - : (c <= 2736 || (c < 3142 - ? (c < 2918 - ? (c < 2831 - ? (c < 2768 - ? (c < 2748 - ? (c < 2741 - ? (c >= 2738 && c <= 2739) - : c <= 2745) - : (c <= 2757 || (c < 2763 - ? (c >= 2759 && c <= 2761) - : c <= 2765))) - : (c <= 2768 || (c < 2809 - ? (c < 2790 - ? (c >= 2784 && c <= 2787) - : c <= 2799) - : (c <= 2815 || (c < 2821 - ? (c >= 2817 && c <= 2819) - : c <= 2828))))) - : (c <= 2832 || (c < 2887 - ? (c < 2866 - ? (c < 2858 - ? (c >= 2835 && c <= 2856) - : c <= 2864) - : (c <= 2867 || (c < 2876 - ? (c >= 2869 && c <= 2873) - : c <= 2884))) - : (c <= 2888 || (c < 2908 - ? (c < 2901 - ? (c >= 2891 && c <= 2893) - : c <= 2903) - : (c <= 2909 || (c >= 2911 && c <= 2915))))))) - : (c <= 2927 || (c < 3006 - ? (c < 2969 - ? (c < 2949 - ? (c < 2946 - ? c == 2929 - : c <= 2947) - : (c <= 2954 || (c < 2962 - ? (c >= 2958 && c <= 2960) - : c <= 2965))) - : (c <= 2970 || (c < 2979 - ? (c < 2974 - ? c == 2972 - : c <= 2975) - : (c <= 2980 || (c < 2990 - ? (c >= 2984 && c <= 2986) - : c <= 3001))))) - : (c <= 3010 || (c < 3072 - ? (c < 3024 - ? (c < 3018 - ? (c >= 3014 && c <= 3016) - : c <= 3021) - : (c <= 3024 || (c < 3046 - ? c == 3031 - : c <= 3055))) - : (c <= 3084 || (c < 3114 - ? (c < 3090 - ? (c >= 3086 && c <= 3088) - : c <= 3112) - : (c <= 3129 || (c >= 3133 && c <= 3140))))))))) - : (c <= 3144 || (c < 3398 - ? (c < 3260 - ? (c < 3200 - ? (c < 3160 - ? (c < 3157 - ? (c >= 3146 && c <= 3149) - : c <= 3158) - : (c <= 3162 || (c < 3174 - ? (c >= 3168 && c <= 3171) - : c <= 3183))) - : (c <= 3203 || (c < 3218 - ? (c < 3214 - ? (c >= 3205 && c <= 3212) - : c <= 3216) - : (c <= 3240 || (c < 3253 - ? (c >= 3242 && c <= 3251) - : c <= 3257))))) - : (c <= 3268 || (c < 3302 - ? (c < 3285 - ? (c < 3274 - ? (c >= 3270 && c <= 3272) - : c <= 3277) - : (c <= 3286 || (c < 3296 - ? c == 3294 - : c <= 3299))) - : (c <= 3311 || (c < 3342 - ? (c < 3328 - ? (c >= 3313 && c <= 3314) - : c <= 3340) - : (c <= 3344 || (c >= 3346 && c <= 3396))))))) - : (c <= 3400 || (c < 3530 - ? (c < 3457 - ? (c < 3423 - ? (c < 3412 - ? (c >= 3402 && c <= 3406) - : c <= 3415) - : (c <= 3427 || (c < 3450 - ? (c >= 3430 && c <= 3439) - : c <= 3455))) - : (c <= 3459 || (c < 3507 - ? (c < 3482 - ? (c >= 3461 && c <= 3478) - : c <= 3505) - : (c <= 3515 || (c < 3520 - ? c == 3517 - : c <= 3526))))) - : (c <= 3530 || (c < 3585 - ? (c < 3544 - ? (c < 3542 - ? (c >= 3535 && c <= 3540) - : c <= 3542) - : (c <= 3551 || (c < 3570 - ? (c >= 3558 && c <= 3567) - : c <= 3571))) - : (c <= 3642 || (c < 3713 - ? (c < 3664 - ? (c >= 3648 && c <= 3662) - : c <= 3673) - : (c <= 3714 || c == 3716)))))))))))) - : (c <= 3722 || (c < 7296 - ? (c < 5024 - ? (c < 4256 - ? (c < 3893 - ? (c < 3784 - ? (c < 3751 - ? (c < 3749 - ? (c >= 3724 && c <= 3747) - : c <= 3749) - : (c <= 3773 || (c < 3782 - ? (c >= 3776 && c <= 3780) - : c <= 3782))) - : (c <= 3789 || (c < 3840 - ? (c < 3804 - ? (c >= 3792 && c <= 3801) - : c <= 3807) - : (c <= 3840 || (c < 3872 - ? (c >= 3864 && c <= 3865) - : c <= 3881))))) - : (c <= 3893 || (c < 3974 - ? (c < 3902 - ? (c < 3897 - ? c == 3895 - : c <= 3897) - : (c <= 3911 || (c < 3953 - ? (c >= 3913 && c <= 3948) - : c <= 3972))) - : (c <= 3991 || (c < 4096 - ? (c < 4038 - ? (c >= 3993 && c <= 4028) - : c <= 4038) - : (c <= 4169 || (c >= 4176 && c <= 4253))))))) - : (c <= 4293 || (c < 4786 - ? (c < 4688 - ? (c < 4304 - ? (c < 4301 - ? c == 4295 - : c <= 4301) - : (c <= 4346 || (c < 4682 - ? (c >= 4348 && c <= 4680) - : c <= 4685))) - : (c <= 4694 || (c < 4704 - ? (c < 4698 - ? c == 4696 - : c <= 4701) - : (c <= 4744 || (c < 4752 - ? (c >= 4746 && c <= 4749) - : c <= 4784))))) - : (c <= 4789 || (c < 4882 - ? (c < 4802 - ? (c < 4800 - ? (c >= 4792 && c <= 4798) - : c <= 4800) - : (c <= 4805 || (c < 4824 - ? (c >= 4808 && c <= 4822) - : c <= 4880))) - : (c <= 4885 || (c < 4969 - ? (c < 4957 - ? (c >= 4888 && c <= 4954) - : c <= 4959) - : (c <= 4977 || (c >= 4992 && c <= 5007))))))))) - : (c <= 5109 || (c < 6400 - ? (c < 5998 - ? (c < 5870 - ? (c < 5743 - ? (c < 5121 - ? (c >= 5112 && c <= 5117) - : c <= 5740) - : (c <= 5759 || (c < 5792 - ? (c >= 5761 && c <= 5786) - : c <= 5866))) - : (c <= 5880 || (c < 5920 - ? (c < 5902 - ? (c >= 5888 && c <= 5900) - : c <= 5908) - : (c <= 5940 || (c < 5984 - ? (c >= 5952 && c <= 5971) - : c <= 5996))))) - : (c <= 6000 || (c < 6155 - ? (c < 6103 - ? (c < 6016 - ? (c >= 6002 && c <= 6003) - : c <= 6099) - : (c <= 6103 || (c < 6112 - ? (c >= 6108 && c <= 6109) - : c <= 6121))) - : (c <= 6157 || (c < 6272 - ? (c < 6176 - ? (c >= 6160 && c <= 6169) - : c <= 6264) - : (c <= 6314 || (c >= 6320 && c <= 6389))))))) - : (c <= 6430 || (c < 6800 - ? (c < 6576 - ? (c < 6470 - ? (c < 6448 - ? (c >= 6432 && c <= 6443) - : c <= 6459) - : (c <= 6509 || (c < 6528 - ? (c >= 6512 && c <= 6516) - : c <= 6571))) - : (c <= 6601 || (c < 6688 - ? (c < 6656 - ? (c >= 6608 && c <= 6618) - : c <= 6683) - : (c <= 6750 || (c < 6783 - ? (c >= 6752 && c <= 6780) - : c <= 6793))))) - : (c <= 6809 || (c < 7019 - ? (c < 6847 - ? (c < 6832 - ? c == 6823 - : c <= 6845) - : (c <= 6848 || (c < 6992 - ? (c >= 6912 && c <= 6987) - : c <= 7001))) - : (c <= 7027 || (c < 7232 - ? (c < 7168 - ? (c >= 7040 && c <= 7155) - : c <= 7223) - : (c <= 7241 || (c >= 7245 && c <= 7293))))))))))) - : (c <= 7304 || (c < 11264 - ? (c < 8178 - ? (c < 8027 - ? (c < 7675 - ? (c < 7376 - ? (c < 7357 - ? (c >= 7312 && c <= 7354) - : c <= 7359) - : (c <= 7378 || (c < 7424 - ? (c >= 7380 && c <= 7418) - : c <= 7673))) - : (c <= 7957 || (c < 8008 - ? (c < 7968 - ? (c >= 7960 && c <= 7965) - : c <= 8005) - : (c <= 8013 || (c < 8025 - ? (c >= 8016 && c <= 8023) - : c <= 8025))))) - : (c <= 8027 || (c < 8130 - ? (c < 8064 - ? (c < 8031 - ? c == 8029 - : c <= 8061) - : (c <= 8116 || (c < 8126 - ? (c >= 8118 && c <= 8124) - : c <= 8126))) - : (c <= 8132 || (c < 8150 - ? (c < 8144 - ? (c >= 8134 && c <= 8140) - : c <= 8147) - : (c <= 8155 || (c >= 8160 && c <= 8172))))))) - : (c <= 8180 || (c < 8458 - ? (c < 8336 - ? (c < 8276 - ? (c < 8255 - ? (c >= 8182 && c <= 8188) - : c <= 8256) - : (c <= 8276 || (c < 8319 - ? c == 8305 - : c <= 8319))) - : (c <= 8348 || (c < 8421 - ? (c < 8417 - ? (c >= 8400 && c <= 8412) - : c <= 8417) - : (c <= 8432 || (c < 8455 - ? c == 8450 - : c <= 8455))))) - : (c <= 8467 || (c < 8490 - ? (c < 8484 - ? (c < 8472 - ? c == 8469 - : c <= 8477) - : (c <= 8484 || (c < 8488 - ? c == 8486 - : c <= 8488))) - : (c <= 8505 || (c < 8526 - ? (c < 8517 - ? (c >= 8508 && c <= 8511) - : c <= 8521) - : (c <= 8526 || (c >= 8544 && c <= 8584))))))))) - : (c <= 11310 || (c < 12353 - ? (c < 11696 - ? (c < 11565 - ? (c < 11499 - ? (c < 11360 - ? (c >= 11312 && c <= 11358) - : c <= 11492) - : (c <= 11507 || (c < 11559 - ? (c >= 11520 && c <= 11557) - : c <= 11559))) - : (c <= 11565 || (c < 11647 - ? (c < 11631 - ? (c >= 11568 && c <= 11623) - : c <= 11631) - : (c <= 11670 || (c < 11688 - ? (c >= 11680 && c <= 11686) - : c <= 11694))))) - : (c <= 11702 || (c < 11744 - ? (c < 11720 - ? (c < 11712 - ? (c >= 11704 && c <= 11710) - : c <= 11718) - : (c <= 11726 || (c < 11736 - ? (c >= 11728 && c <= 11734) - : c <= 11742))) - : (c <= 11775 || (c < 12337 - ? (c < 12321 - ? (c >= 12293 && c <= 12295) - : c <= 12335) - : (c <= 12341 || (c >= 12344 && c <= 12348))))))) - : (c <= 12438 || (c < 42192 - ? (c < 12593 - ? (c < 12449 - ? (c < 12445 - ? (c >= 12441 && c <= 12442) - : c <= 12447) - : (c <= 12538 || (c < 12549 - ? (c >= 12540 && c <= 12543) - : c <= 12591))) - : (c <= 12686 || (c < 13312 - ? (c < 12784 - ? (c >= 12704 && c <= 12735) - : c <= 12799) - : (c <= 19903 || (c < 40960 - ? (c >= 19968 && c <= 40956) - : c <= 42124))))) - : (c <= 42237 || (c < 42775 - ? (c < 42560 - ? (c < 42512 - ? (c >= 42240 && c <= 42508) - : c <= 42539) - : (c <= 42607 || (c < 42623 - ? (c >= 42612 && c <= 42621) - : c <= 42737))) - : (c <= 42783 || (c < 42946 - ? (c < 42891 - ? (c >= 42786 && c <= 42888) - : c <= 42943) - : (c <= 42954 || (c >= 42997 && c <= 43047))))))))))))))) - : (c <= 43052 || (c < 71096 - ? (c < 66864 - ? (c < 64914 - ? (c < 43816 - ? (c < 43520 - ? (c < 43261 - ? (c < 43216 - ? (c < 43136 - ? (c >= 43072 && c <= 43123) - : c <= 43205) - : (c <= 43225 || (c < 43259 - ? (c >= 43232 && c <= 43255) - : c <= 43259))) - : (c <= 43309 || (c < 43392 - ? (c < 43360 - ? (c >= 43312 && c <= 43347) - : c <= 43388) - : (c <= 43456 || (c < 43488 - ? (c >= 43471 && c <= 43481) - : c <= 43518))))) - : (c <= 43574 || (c < 43744 - ? (c < 43616 - ? (c < 43600 - ? (c >= 43584 && c <= 43597) - : c <= 43609) - : (c <= 43638 || (c < 43739 - ? (c >= 43642 && c <= 43714) - : c <= 43741))) - : (c <= 43759 || (c < 43785 - ? (c < 43777 - ? (c >= 43762 && c <= 43766) - : c <= 43782) - : (c <= 43790 || (c < 43808 - ? (c >= 43793 && c <= 43798) - : c <= 43814))))))) - : (c <= 43822 || (c < 64275 - ? (c < 44032 - ? (c < 43888 - ? (c < 43868 - ? (c >= 43824 && c <= 43866) - : c <= 43881) - : (c <= 44010 || (c < 44016 - ? (c >= 44012 && c <= 44013) - : c <= 44025))) - : (c <= 55203 || (c < 63744 - ? (c < 55243 - ? (c >= 55216 && c <= 55238) - : c <= 55291) - : (c <= 64109 || (c < 64256 - ? (c >= 64112 && c <= 64217) - : c <= 64262))))) - : (c <= 64279 || (c < 64323 - ? (c < 64312 - ? (c < 64298 - ? (c >= 64285 && c <= 64296) - : c <= 64310) - : (c <= 64316 || (c < 64320 - ? c == 64318 - : c <= 64321))) - : (c <= 64324 || (c < 64612 - ? (c < 64467 - ? (c >= 64326 && c <= 64433) - : c <= 64605) - : (c <= 64829 || (c >= 64848 && c <= 64911))))))))) - : (c <= 64967 || (c < 65549 - ? (c < 65151 - ? (c < 65137 - ? (c < 65056 - ? (c < 65024 - ? (c >= 65008 && c <= 65017) - : c <= 65039) - : (c <= 65071 || (c < 65101 - ? (c >= 65075 && c <= 65076) - : c <= 65103))) - : (c <= 65137 || (c < 65145 - ? (c < 65143 - ? c == 65139 - : c <= 65143) - : (c <= 65145 || (c < 65149 - ? c == 65147 - : c <= 65149))))) - : (c <= 65276 || (c < 65474 - ? (c < 65343 - ? (c < 65313 - ? (c >= 65296 && c <= 65305) - : c <= 65338) - : (c <= 65343 || (c < 65382 - ? (c >= 65345 && c <= 65370) - : c <= 65470))) - : (c <= 65479 || (c < 65498 - ? (c < 65490 - ? (c >= 65482 && c <= 65487) - : c <= 65495) - : (c <= 65500 || (c >= 65536 && c <= 65547))))))) - : (c <= 65574 || (c < 66349 - ? (c < 65856 - ? (c < 65599 - ? (c < 65596 - ? (c >= 65576 && c <= 65594) - : c <= 65597) - : (c <= 65613 || (c < 65664 - ? (c >= 65616 && c <= 65629) - : c <= 65786))) - : (c <= 65908 || (c < 66208 - ? (c < 66176 - ? c == 66045 - : c <= 66204) - : (c <= 66256 || (c < 66304 - ? c == 66272 - : c <= 66335))))) - : (c <= 66378 || (c < 66560 - ? (c < 66464 - ? (c < 66432 - ? (c >= 66384 && c <= 66426) - : c <= 66461) - : (c <= 66499 || (c < 66513 - ? (c >= 66504 && c <= 66511) - : c <= 66517))) - : (c <= 66717 || (c < 66776 - ? (c < 66736 - ? (c >= 66720 && c <= 66729) - : c <= 66771) - : (c <= 66811 || (c >= 66816 && c <= 66855))))))))))) - : (c <= 66915 || (c < 69632 - ? (c < 68152 - ? (c < 67808 - ? (c < 67594 - ? (c < 67424 - ? (c < 67392 - ? (c >= 67072 && c <= 67382) - : c <= 67413) - : (c <= 67431 || (c < 67592 - ? (c >= 67584 && c <= 67589) - : c <= 67592))) - : (c <= 67637 || (c < 67647 - ? (c < 67644 - ? (c >= 67639 && c <= 67640) - : c <= 67644) - : (c <= 67669 || (c < 67712 - ? (c >= 67680 && c <= 67702) - : c <= 67742))))) - : (c <= 67826 || (c < 68096 - ? (c < 67872 - ? (c < 67840 - ? (c >= 67828 && c <= 67829) - : c <= 67861) - : (c <= 67897 || (c < 68030 - ? (c >= 67968 && c <= 68023) - : c <= 68031))) - : (c <= 68099 || (c < 68117 - ? (c < 68108 - ? (c >= 68101 && c <= 68102) - : c <= 68115) - : (c <= 68119 || (c >= 68121 && c <= 68149))))))) - : (c <= 68154 || (c < 68800 - ? (c < 68352 - ? (c < 68224 - ? (c < 68192 - ? c == 68159 - : c <= 68220) - : (c <= 68252 || (c < 68297 - ? (c >= 68288 && c <= 68295) - : c <= 68326))) - : (c <= 68405 || (c < 68480 - ? (c < 68448 - ? (c >= 68416 && c <= 68437) - : c <= 68466) - : (c <= 68497 || (c < 68736 - ? (c >= 68608 && c <= 68680) - : c <= 68786))))) - : (c <= 68850 || (c < 69376 - ? (c < 69248 - ? (c < 68912 - ? (c >= 68864 && c <= 68903) - : c <= 68921) - : (c <= 69289 || (c < 69296 - ? (c >= 69291 && c <= 69292) - : c <= 69297))) - : (c <= 69404 || (c < 69552 - ? (c < 69424 - ? c == 69415 - : c <= 69456) - : (c <= 69572 || (c >= 69600 && c <= 69622))))))))) - : (c <= 69702 || (c < 70384 - ? (c < 70094 - ? (c < 69942 - ? (c < 69840 - ? (c < 69759 - ? (c >= 69734 && c <= 69743) - : c <= 69818) - : (c <= 69864 || (c < 69888 - ? (c >= 69872 && c <= 69881) - : c <= 69940))) - : (c <= 69951 || (c < 70006 - ? (c < 69968 - ? (c >= 69956 && c <= 69959) - : c <= 70003) - : (c <= 70006 || (c < 70089 - ? (c >= 70016 && c <= 70084) - : c <= 70092))))) - : (c <= 70106 || (c < 70280 - ? (c < 70163 - ? (c < 70144 - ? c == 70108 - : c <= 70161) - : (c <= 70199 || (c < 70272 - ? c == 70206 - : c <= 70278))) - : (c <= 70280 || (c < 70303 - ? (c < 70287 - ? (c >= 70282 && c <= 70285) - : c <= 70301) - : (c <= 70312 || (c >= 70320 && c <= 70378))))))) - : (c <= 70393 || (c < 70487 - ? (c < 70450 - ? (c < 70415 - ? (c < 70405 - ? (c >= 70400 && c <= 70403) - : c <= 70412) - : (c <= 70416 || (c < 70442 - ? (c >= 70419 && c <= 70440) - : c <= 70448))) - : (c <= 70451 || (c < 70471 - ? (c < 70459 - ? (c >= 70453 && c <= 70457) - : c <= 70468) - : (c <= 70472 || (c < 70480 - ? (c >= 70475 && c <= 70477) - : c <= 70480))))) - : (c <= 70487 || (c < 70750 - ? (c < 70512 - ? (c < 70502 - ? (c >= 70493 && c <= 70499) - : c <= 70508) - : (c <= 70516 || (c < 70736 - ? (c >= 70656 && c <= 70730) - : c <= 70745))) - : (c <= 70753 || (c < 70864 - ? (c < 70855 - ? (c >= 70784 && c <= 70853) - : c <= 70855) - : (c <= 70873 || (c >= 71040 && c <= 71093))))))))))))) - : (c <= 71104 || (c < 119894 - ? (c < 73104 - ? (c < 72163 - ? (c < 71935 - ? (c < 71360 - ? (c < 71236 - ? (c < 71168 - ? (c >= 71128 && c <= 71133) - : c <= 71232) - : (c <= 71236 || (c < 71296 - ? (c >= 71248 && c <= 71257) - : c <= 71352))) - : (c <= 71369 || (c < 71472 - ? (c < 71453 - ? (c >= 71424 && c <= 71450) - : c <= 71467) - : (c <= 71481 || (c < 71840 - ? (c >= 71680 && c <= 71738) - : c <= 71913))))) - : (c <= 71942 || (c < 71995 - ? (c < 71957 - ? (c < 71948 - ? c == 71945 - : c <= 71955) - : (c <= 71958 || (c < 71991 - ? (c >= 71960 && c <= 71989) - : c <= 71992))) - : (c <= 72003 || (c < 72106 - ? (c < 72096 - ? (c >= 72016 && c <= 72025) - : c <= 72103) - : (c <= 72151 || (c >= 72154 && c <= 72161))))))) - : (c <= 72164 || (c < 72873 - ? (c < 72704 - ? (c < 72272 - ? (c < 72263 - ? (c >= 72192 && c <= 72254) - : c <= 72263) - : (c <= 72345 || (c < 72384 - ? c == 72349 - : c <= 72440))) - : (c <= 72712 || (c < 72784 - ? (c < 72760 - ? (c >= 72714 && c <= 72758) - : c <= 72768) - : (c <= 72793 || (c < 72850 - ? (c >= 72818 && c <= 72847) - : c <= 72871))))) - : (c <= 72886 || (c < 73023 - ? (c < 72971 - ? (c < 72968 - ? (c >= 72960 && c <= 72966) - : c <= 72969) - : (c <= 73014 || (c < 73020 - ? c == 73018 - : c <= 73021))) - : (c <= 73031 || (c < 73063 - ? (c < 73056 - ? (c >= 73040 && c <= 73049) - : c <= 73061) - : (c <= 73064 || (c >= 73066 && c <= 73102))))))))) - : (c <= 73105 || (c < 94095 - ? (c < 92768 - ? (c < 74752 - ? (c < 73440 - ? (c < 73120 - ? (c >= 73107 && c <= 73112) - : c <= 73129) - : (c <= 73462 || (c < 73728 - ? c == 73648 - : c <= 74649))) - : (c <= 74862 || (c < 82944 - ? (c < 77824 - ? (c >= 74880 && c <= 75075) - : c <= 78894) - : (c <= 83526 || (c < 92736 - ? (c >= 92160 && c <= 92728) - : c <= 92766))))) - : (c <= 92777 || (c < 93027 - ? (c < 92928 - ? (c < 92912 - ? (c >= 92880 && c <= 92909) - : c <= 92916) - : (c <= 92982 || (c < 93008 - ? (c >= 92992 && c <= 92995) - : c <= 93017))) - : (c <= 93047 || (c < 93952 - ? (c < 93760 - ? (c >= 93053 && c <= 93071) - : c <= 93823) - : (c <= 94026 || (c >= 94031 && c <= 94087))))))) - : (c <= 94111 || (c < 113776 - ? (c < 101632 - ? (c < 94192 - ? (c < 94179 - ? (c >= 94176 && c <= 94177) - : c <= 94180) - : (c <= 94193 || (c < 100352 - ? (c >= 94208 && c <= 100343) - : c <= 101589))) - : (c <= 101640 || (c < 110948 - ? (c < 110928 - ? (c >= 110592 && c <= 110878) - : c <= 110930) - : (c <= 110951 || (c < 113664 - ? (c >= 110960 && c <= 111355) - : c <= 113770))))) - : (c <= 113788 || (c < 119163 - ? (c < 113821 - ? (c < 113808 - ? (c >= 113792 && c <= 113800) - : c <= 113817) - : (c <= 113822 || (c < 119149 - ? (c >= 119141 && c <= 119145) - : c <= 119154))) - : (c <= 119170 || (c < 119362 - ? (c < 119210 - ? (c >= 119173 && c <= 119179) - : c <= 119213) - : (c <= 119364 || (c >= 119808 && c <= 119892))))))))))) - : (c <= 119964 || (c < 124928 - ? (c < 120630 - ? (c < 120094 - ? (c < 119995 - ? (c < 119973 - ? (c < 119970 - ? (c >= 119966 && c <= 119967) - : c <= 119970) - : (c <= 119974 || (c < 119982 - ? (c >= 119977 && c <= 119980) - : c <= 119993))) - : (c <= 119995 || (c < 120071 - ? (c < 120005 - ? (c >= 119997 && c <= 120003) - : c <= 120069) - : (c <= 120074 || (c < 120086 - ? (c >= 120077 && c <= 120084) - : c <= 120092))))) - : (c <= 120121 || (c < 120488 - ? (c < 120134 - ? (c < 120128 - ? (c >= 120123 && c <= 120126) - : c <= 120132) - : (c <= 120134 || (c < 120146 - ? (c >= 120138 && c <= 120144) - : c <= 120485))) - : (c <= 120512 || (c < 120572 - ? (c < 120540 - ? (c >= 120514 && c <= 120538) - : c <= 120570) - : (c <= 120596 || (c >= 120598 && c <= 120628))))))) - : (c <= 120654 || (c < 121505 - ? (c < 120782 - ? (c < 120714 - ? (c < 120688 - ? (c >= 120656 && c <= 120686) - : c <= 120712) - : (c <= 120744 || (c < 120772 - ? (c >= 120746 && c <= 120770) - : c <= 120779))) - : (c <= 120831 || (c < 121461 - ? (c < 121403 - ? (c >= 121344 && c <= 121398) - : c <= 121452) - : (c <= 121461 || (c < 121499 - ? c == 121476 - : c <= 121503))))) - : (c <= 121519 || (c < 123136 - ? (c < 122907 - ? (c < 122888 - ? (c >= 122880 && c <= 122886) - : c <= 122904) - : (c <= 122913 || (c < 122918 - ? (c >= 122915 && c <= 122916) - : c <= 122922))) - : (c <= 123180 || (c < 123214 - ? (c < 123200 - ? (c >= 123184 && c <= 123197) - : c <= 123209) - : (c <= 123214 || (c >= 123584 && c <= 123641))))))))) - : (c <= 125124 || (c < 126557 - ? (c < 126523 - ? (c < 126497 - ? (c < 125264 - ? (c < 125184 - ? (c >= 125136 && c <= 125142) - : c <= 125259) - : (c <= 125273 || (c < 126469 - ? (c >= 126464 && c <= 126467) - : c <= 126495))) - : (c <= 126498 || (c < 126505 - ? (c < 126503 - ? c == 126500 - : c <= 126503) - : (c <= 126514 || (c < 126521 - ? (c >= 126516 && c <= 126519) - : c <= 126521))))) - : (c <= 126523 || (c < 126545 - ? (c < 126537 - ? (c < 126535 - ? c == 126530 - : c <= 126535) - : (c <= 126537 || (c < 126541 - ? c == 126539 - : c <= 126543))) - : (c <= 126546 || (c < 126553 - ? (c < 126551 - ? c == 126548 - : c <= 126551) - : (c <= 126553 || c == 126555)))))) - : (c <= 126557 || (c < 126629 - ? (c < 126580 - ? (c < 126564 - ? (c < 126561 - ? c == 126559 - : c <= 126562) - : (c <= 126564 || (c < 126572 - ? (c >= 126567 && c <= 126570) - : c <= 126578))) - : (c <= 126583 || (c < 126592 - ? (c < 126590 - ? (c >= 126585 && c <= 126588) - : c <= 126590) - : (c <= 126601 || (c < 126625 - ? (c >= 126603 && c <= 126619) - : c <= 126627))))) - : (c <= 126633 || (c < 178208 - ? (c < 131072 - ? (c < 130032 - ? (c >= 126635 && c <= 126651) - : c <= 130041) - : (c <= 173789 || (c < 177984 - ? (c >= 173824 && c <= 177972) - : c <= 178205))) - : (c <= 183969 || (c < 196608 - ? (c < 194560 - ? (c >= 183984 && c <= 191456) - : c <= 195101) - : (c <= 201546 || (c >= 917760 && c <= 917999))))))))))))))))); -} +static const TSCharacterRange sym_identifier_character_set_1[] = { + {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xba, 0xba}, {0xc0, 0xd6}, {0xd8, 0xf6}, + {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x370, 0x374}, {0x376, 0x377}, {0x37b, 0x37d}, + {0x37f, 0x37f}, {0x386, 0x386}, {0x388, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, {0x48a, 0x52f}, + {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x620, 0x64a}, {0x66e, 0x66f}, {0x671, 0x6d3}, + {0x6d5, 0x6d5}, {0x6e5, 0x6e6}, {0x6ee, 0x6ef}, {0x6fa, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x710}, {0x712, 0x72f}, {0x74d, 0x7a5}, + {0x7b1, 0x7b1}, {0x7ca, 0x7ea}, {0x7f4, 0x7f5}, {0x7fa, 0x7fa}, {0x800, 0x815}, {0x81a, 0x81a}, {0x824, 0x824}, {0x828, 0x828}, + {0x840, 0x858}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x8a0, 0x8c9}, {0x904, 0x939}, {0x93d, 0x93d}, {0x950, 0x950}, + {0x958, 0x961}, {0x971, 0x980}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, + {0x9bd, 0x9bd}, {0x9ce, 0x9ce}, {0x9dc, 0x9dd}, {0x9df, 0x9e1}, {0x9f0, 0x9f1}, {0x9fc, 0x9fc}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, + {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa72, 0xa74}, + {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabd, 0xabd}, {0xad0, 0xad0}, + {0xae0, 0xae1}, {0xaf9, 0xaf9}, {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, + {0xb3d, 0xb3d}, {0xb5c, 0xb5d}, {0xb5f, 0xb61}, {0xb71, 0xb71}, {0xb83, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, {0xb92, 0xb95}, + {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbd0, 0xbd0}, {0xc05, 0xc0c}, + {0xc0e, 0xc10}, {0xc12, 0xc28}, {0xc2a, 0xc39}, {0xc3d, 0xc3d}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc61}, {0xc80, 0xc80}, + {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbd, 0xcbd}, {0xcdd, 0xcde}, {0xce0, 0xce1}, + {0xcf1, 0xcf2}, {0xd04, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd3a}, {0xd3d, 0xd3d}, {0xd4e, 0xd4e}, {0xd54, 0xd56}, {0xd5f, 0xd61}, + {0xd7a, 0xd7f}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xe01, 0xe30}, {0xe32, 0xe32}, + {0xe40, 0xe46}, {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xeb0}, {0xeb2, 0xeb2}, + {0xebd, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf40, 0xf47}, {0xf49, 0xf6c}, {0xf88, 0xf8c}, + {0x1000, 0x102a}, {0x103f, 0x103f}, {0x1050, 0x1055}, {0x105a, 0x105d}, {0x1061, 0x1061}, {0x1065, 0x1066}, {0x106e, 0x1070}, {0x1075, 0x1081}, + {0x108e, 0x108e}, {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, + {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, + {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, + {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1711}, {0x171f, 0x1731}, {0x1740, 0x1751}, + {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1780, 0x17b3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dc}, {0x1820, 0x1878}, {0x1880, 0x18a8}, {0x18aa, 0x18aa}, + {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1950, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x1a00, 0x1a16}, {0x1a20, 0x1a54}, + {0x1aa7, 0x1aa7}, {0x1b05, 0x1b33}, {0x1b45, 0x1b4c}, {0x1b83, 0x1ba0}, {0x1bae, 0x1baf}, {0x1bba, 0x1be5}, {0x1c00, 0x1c23}, {0x1c4d, 0x1c4f}, + {0x1c5a, 0x1c7d}, {0x1c80, 0x1c8a}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1ce9, 0x1cec}, {0x1cee, 0x1cf3}, {0x1cf5, 0x1cf6}, {0x1cfa, 0x1cfa}, + {0x1d00, 0x1dbf}, {0x1e00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, + {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, + {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x2071, 0x2071}, {0x207f, 0x207f}, {0x2090, 0x209c}, {0x2102, 0x2102}, + {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, + {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cee}, {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, + {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, {0x2d80, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, + {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x3005, 0x3007}, {0x3021, 0x3029}, {0x3031, 0x3035}, + {0x3038, 0x303c}, {0x3041, 0x3096}, {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, + {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa61f}, {0xa62a, 0xa62b}, {0xa640, 0xa66e}, + {0xa67f, 0xa69d}, {0xa6a0, 0xa6ef}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7cd}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7dc}, + {0xa7f2, 0xa801}, {0xa803, 0xa805}, {0xa807, 0xa80a}, {0xa80c, 0xa822}, {0xa840, 0xa873}, {0xa882, 0xa8b3}, {0xa8f2, 0xa8f7}, {0xa8fb, 0xa8fb}, + {0xa8fd, 0xa8fe}, {0xa90a, 0xa925}, {0xa930, 0xa946}, {0xa960, 0xa97c}, {0xa984, 0xa9b2}, {0xa9cf, 0xa9cf}, {0xa9e0, 0xa9e4}, {0xa9e6, 0xa9ef}, + {0xa9fa, 0xa9fe}, {0xaa00, 0xaa28}, {0xaa40, 0xaa42}, {0xaa44, 0xaa4b}, {0xaa60, 0xaa76}, {0xaa7a, 0xaa7a}, {0xaa7e, 0xaaaf}, {0xaab1, 0xaab1}, + {0xaab5, 0xaab6}, {0xaab9, 0xaabd}, {0xaac0, 0xaac0}, {0xaac2, 0xaac2}, {0xaadb, 0xaadd}, {0xaae0, 0xaaea}, {0xaaf2, 0xaaf4}, {0xab01, 0xab06}, + {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, {0xab5c, 0xab69}, {0xab70, 0xabe2}, {0xac00, 0xd7a3}, + {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb1d}, {0xfb1f, 0xfb28}, + {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, + {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b}, + {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xff9d}, {0xffa0, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, + {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d}, + {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x10300, 0x1031f}, {0x1032d, 0x1034a}, {0x10350, 0x10375}, {0x10380, 0x1039d}, + {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, + {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, + {0x105c0, 0x105f3}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10780, 0x10785}, {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, + {0x10808, 0x10808}, {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, + {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a00, 0x10a00}, {0x10a10, 0x10a13}, {0x10a15, 0x10a17}, + {0x10a19, 0x10a35}, {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae4}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, + {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d23}, {0x10d4a, 0x10d65}, {0x10d6f, 0x10d85}, {0x10e80, 0x10ea9}, + {0x10eb0, 0x10eb1}, {0x10ec2, 0x10ec4}, {0x10f00, 0x10f1c}, {0x10f27, 0x10f27}, {0x10f30, 0x10f45}, {0x10f70, 0x10f81}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, + {0x11003, 0x11037}, {0x11071, 0x11072}, {0x11075, 0x11075}, {0x11083, 0x110af}, {0x110d0, 0x110e8}, {0x11103, 0x11126}, {0x11144, 0x11144}, {0x11147, 0x11147}, + {0x11150, 0x11172}, {0x11176, 0x11176}, {0x11183, 0x111b2}, {0x111c1, 0x111c4}, {0x111da, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x1122b}, + {0x1123f, 0x11240}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112de}, {0x11305, 0x1130c}, + {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133d, 0x1133d}, {0x11350, 0x11350}, {0x1135d, 0x11361}, + {0x11380, 0x11389}, {0x1138b, 0x1138b}, {0x1138e, 0x1138e}, {0x11390, 0x113b5}, {0x113b7, 0x113b7}, {0x113d1, 0x113d1}, {0x113d3, 0x113d3}, {0x11400, 0x11434}, + {0x11447, 0x1144a}, {0x1145f, 0x11461}, {0x11480, 0x114af}, {0x114c4, 0x114c5}, {0x114c7, 0x114c7}, {0x11580, 0x115ae}, {0x115d8, 0x115db}, {0x11600, 0x1162f}, + {0x11644, 0x11644}, {0x11680, 0x116aa}, {0x116b8, 0x116b8}, {0x11700, 0x1171a}, {0x11740, 0x11746}, {0x11800, 0x1182b}, {0x118a0, 0x118df}, {0x118ff, 0x11906}, + {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x1192f}, {0x1193f, 0x1193f}, {0x11941, 0x11941}, {0x119a0, 0x119a7}, {0x119aa, 0x119d0}, + {0x119e1, 0x119e1}, {0x119e3, 0x119e3}, {0x11a00, 0x11a00}, {0x11a0b, 0x11a32}, {0x11a3a, 0x11a3a}, {0x11a50, 0x11a50}, {0x11a5c, 0x11a89}, {0x11a9d, 0x11a9d}, + {0x11ab0, 0x11af8}, {0x11bc0, 0x11be0}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c2e}, {0x11c40, 0x11c40}, {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, + {0x11d0b, 0x11d30}, {0x11d46, 0x11d46}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d89}, {0x11d98, 0x11d98}, {0x11ee0, 0x11ef2}, {0x11f02, 0x11f02}, + {0x11f04, 0x11f10}, {0x11f12, 0x11f33}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342f}, + {0x13441, 0x13446}, {0x13460, 0x143fa}, {0x14400, 0x14646}, {0x16100, 0x1611d}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a70, 0x16abe}, {0x16ad0, 0x16aed}, + {0x16b00, 0x16b2f}, {0x16b40, 0x16b43}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16d40, 0x16d6c}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f50, 0x16f50}, + {0x16f93, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe3}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, {0x18cff, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, + {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b132, 0x1b132}, {0x1b150, 0x1b152}, {0x1b155, 0x1b155}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, + {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, + {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, + {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, + {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, + {0x1d7c4, 0x1d7cb}, {0x1df00, 0x1df1e}, {0x1df25, 0x1df2a}, {0x1e030, 0x1e06d}, {0x1e100, 0x1e12c}, {0x1e137, 0x1e13d}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ad}, + {0x1e2c0, 0x1e2eb}, {0x1e4d0, 0x1e4eb}, {0x1e5d0, 0x1e5ed}, {0x1e5f0, 0x1e5f0}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, + {0x1e800, 0x1e8c4}, {0x1e900, 0x1e943}, {0x1e94b, 0x1e94b}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, + {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, + {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, + {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, + {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x20000, 0x2a6df}, {0x2a700, 0x2b739}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, + {0x2ceb0, 0x2ebe0}, {0x2ebf0, 0x2ee5d}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0x31350, 0x323af}, +}; + +static const TSCharacterRange sym_identifier_character_set_2[] = { + {'0', '9'}, {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xb7, 0xb7}, {0xba, 0xba}, + {0xc0, 0xd6}, {0xd8, 0xf6}, {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x300, 0x374}, + {0x376, 0x377}, {0x37b, 0x37d}, {0x37f, 0x37f}, {0x386, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, + {0x483, 0x487}, {0x48a, 0x52f}, {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x591, 0x5bd}, {0x5bf, 0x5bf}, {0x5c1, 0x5c2}, + {0x5c4, 0x5c5}, {0x5c7, 0x5c7}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x610, 0x61a}, {0x620, 0x669}, {0x66e, 0x6d3}, {0x6d5, 0x6dc}, + {0x6df, 0x6e8}, {0x6ea, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x74a}, {0x74d, 0x7b1}, {0x7c0, 0x7f5}, {0x7fa, 0x7fa}, {0x7fd, 0x7fd}, + {0x800, 0x82d}, {0x840, 0x85b}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x897, 0x8e1}, {0x8e3, 0x963}, {0x966, 0x96f}, + {0x971, 0x983}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, {0x9bc, 0x9c4}, + {0x9c7, 0x9c8}, {0x9cb, 0x9ce}, {0x9d7, 0x9d7}, {0x9dc, 0x9dd}, {0x9df, 0x9e3}, {0x9e6, 0x9f1}, {0x9fc, 0x9fc}, {0x9fe, 0x9fe}, + {0xa01, 0xa03}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, + {0xa3c, 0xa3c}, {0xa3e, 0xa42}, {0xa47, 0xa48}, {0xa4b, 0xa4d}, {0xa51, 0xa51}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa66, 0xa75}, + {0xa81, 0xa83}, {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabc, 0xac5}, + {0xac7, 0xac9}, {0xacb, 0xacd}, {0xad0, 0xad0}, {0xae0, 0xae3}, {0xae6, 0xaef}, {0xaf9, 0xaff}, {0xb01, 0xb03}, {0xb05, 0xb0c}, + {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3c, 0xb44}, {0xb47, 0xb48}, {0xb4b, 0xb4d}, + {0xb55, 0xb57}, {0xb5c, 0xb5d}, {0xb5f, 0xb63}, {0xb66, 0xb6f}, {0xb71, 0xb71}, {0xb82, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, + {0xb92, 0xb95}, {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbbe, 0xbc2}, + {0xbc6, 0xbc8}, {0xbca, 0xbcd}, {0xbd0, 0xbd0}, {0xbd7, 0xbd7}, {0xbe6, 0xbef}, {0xc00, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28}, + {0xc2a, 0xc39}, {0xc3c, 0xc44}, {0xc46, 0xc48}, {0xc4a, 0xc4d}, {0xc55, 0xc56}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc63}, + {0xc66, 0xc6f}, {0xc80, 0xc83}, {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbc, 0xcc4}, + {0xcc6, 0xcc8}, {0xcca, 0xccd}, {0xcd5, 0xcd6}, {0xcdd, 0xcde}, {0xce0, 0xce3}, {0xce6, 0xcef}, {0xcf1, 0xcf3}, {0xd00, 0xd0c}, + {0xd0e, 0xd10}, {0xd12, 0xd44}, {0xd46, 0xd48}, {0xd4a, 0xd4e}, {0xd54, 0xd57}, {0xd5f, 0xd63}, {0xd66, 0xd6f}, {0xd7a, 0xd7f}, + {0xd81, 0xd83}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xdca, 0xdca}, {0xdcf, 0xdd4}, + {0xdd6, 0xdd6}, {0xdd8, 0xddf}, {0xde6, 0xdef}, {0xdf2, 0xdf3}, {0xe01, 0xe3a}, {0xe40, 0xe4e}, {0xe50, 0xe59}, {0xe81, 0xe82}, + {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xec8, 0xece}, + {0xed0, 0xed9}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf18, 0xf19}, {0xf20, 0xf29}, {0xf35, 0xf35}, {0xf37, 0xf37}, {0xf39, 0xf39}, + {0xf3e, 0xf47}, {0xf49, 0xf6c}, {0xf71, 0xf84}, {0xf86, 0xf97}, {0xf99, 0xfbc}, {0xfc6, 0xfc6}, {0x1000, 0x1049}, {0x1050, 0x109d}, + {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x1258, 0x1258}, + {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5}, + {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x135d, 0x135f}, {0x1369, 0x1371}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, + {0x13f8, 0x13fd}, {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1715}, {0x171f, 0x1734}, + {0x1740, 0x1753}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1772, 0x1773}, {0x1780, 0x17d3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dd}, {0x17e0, 0x17e9}, + {0x180b, 0x180d}, {0x180f, 0x1819}, {0x1820, 0x1878}, {0x1880, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1920, 0x192b}, {0x1930, 0x193b}, + {0x1946, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x19d0, 0x19da}, {0x1a00, 0x1a1b}, {0x1a20, 0x1a5e}, {0x1a60, 0x1a7c}, + {0x1a7f, 0x1a89}, {0x1a90, 0x1a99}, {0x1aa7, 0x1aa7}, {0x1ab0, 0x1abd}, {0x1abf, 0x1ace}, {0x1b00, 0x1b4c}, {0x1b50, 0x1b59}, {0x1b6b, 0x1b73}, + {0x1b80, 0x1bf3}, {0x1c00, 0x1c37}, {0x1c40, 0x1c49}, {0x1c4d, 0x1c7d}, {0x1c80, 0x1c8a}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1cd0, 0x1cd2}, + {0x1cd4, 0x1cfa}, {0x1d00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, + {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, + {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x200c, 0x200d}, {0x203f, 0x2040}, {0x2054, 0x2054}, {0x2071, 0x2071}, + {0x207f, 0x207f}, {0x2090, 0x209c}, {0x20d0, 0x20dc}, {0x20e1, 0x20e1}, {0x20e5, 0x20f0}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, + {0x2115, 0x2115}, {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, + {0x214e, 0x214e}, {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, + {0x2d6f, 0x2d6f}, {0x2d7f, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, + {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x2de0, 0x2dff}, {0x3005, 0x3007}, {0x3021, 0x302f}, {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, + {0x3099, 0x309a}, {0x309d, 0x309f}, {0x30a1, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, + {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa62b}, {0xa640, 0xa66f}, {0xa674, 0xa67d}, {0xa67f, 0xa6f1}, {0xa717, 0xa71f}, + {0xa722, 0xa788}, {0xa78b, 0xa7cd}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7dc}, {0xa7f2, 0xa827}, {0xa82c, 0xa82c}, {0xa840, 0xa873}, + {0xa880, 0xa8c5}, {0xa8d0, 0xa8d9}, {0xa8e0, 0xa8f7}, {0xa8fb, 0xa8fb}, {0xa8fd, 0xa92d}, {0xa930, 0xa953}, {0xa960, 0xa97c}, {0xa980, 0xa9c0}, + {0xa9cf, 0xa9d9}, {0xa9e0, 0xa9fe}, {0xaa00, 0xaa36}, {0xaa40, 0xaa4d}, {0xaa50, 0xaa59}, {0xaa60, 0xaa76}, {0xaa7a, 0xaac2}, {0xaadb, 0xaadd}, + {0xaae0, 0xaaef}, {0xaaf2, 0xaaf6}, {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, + {0xab5c, 0xab69}, {0xab70, 0xabea}, {0xabec, 0xabed}, {0xabf0, 0xabf9}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, + {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, + {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe00, 0xfe0f}, + {0xfe20, 0xfe2f}, {0xfe33, 0xfe34}, {0xfe4d, 0xfe4f}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b}, + {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff10, 0xff19}, {0xff21, 0xff3a}, {0xff3f, 0xff3f}, {0xff41, 0xff5a}, {0xff65, 0xffbe}, {0xffc2, 0xffc7}, + {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, + {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x101fd, 0x101fd}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x102e0, 0x102e0}, {0x10300, 0x1031f}, + {0x1032d, 0x1034a}, {0x10350, 0x1037a}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104a0, 0x104a9}, + {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, + {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, {0x105c0, 0x105f3}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, + {0x10780, 0x10785}, {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, + {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, + {0x109be, 0x109bf}, {0x10a00, 0x10a03}, {0x10a05, 0x10a06}, {0x10a0c, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a38, 0x10a3a}, {0x10a3f, 0x10a3f}, + {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae6}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, + {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d27}, {0x10d30, 0x10d39}, {0x10d40, 0x10d65}, {0x10d69, 0x10d6d}, {0x10d6f, 0x10d85}, + {0x10e80, 0x10ea9}, {0x10eab, 0x10eac}, {0x10eb0, 0x10eb1}, {0x10ec2, 0x10ec4}, {0x10efc, 0x10f1c}, {0x10f27, 0x10f27}, {0x10f30, 0x10f50}, {0x10f70, 0x10f85}, + {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11000, 0x11046}, {0x11066, 0x11075}, {0x1107f, 0x110ba}, {0x110c2, 0x110c2}, {0x110d0, 0x110e8}, {0x110f0, 0x110f9}, + {0x11100, 0x11134}, {0x11136, 0x1113f}, {0x11144, 0x11147}, {0x11150, 0x11173}, {0x11176, 0x11176}, {0x11180, 0x111c4}, {0x111c9, 0x111cc}, {0x111ce, 0x111da}, + {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x11237}, {0x1123e, 0x11241}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, + {0x1129f, 0x112a8}, {0x112b0, 0x112ea}, {0x112f0, 0x112f9}, {0x11300, 0x11303}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, + {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133b, 0x11344}, {0x11347, 0x11348}, {0x1134b, 0x1134d}, {0x11350, 0x11350}, {0x11357, 0x11357}, {0x1135d, 0x11363}, + {0x11366, 0x1136c}, {0x11370, 0x11374}, {0x11380, 0x11389}, {0x1138b, 0x1138b}, {0x1138e, 0x1138e}, {0x11390, 0x113b5}, {0x113b7, 0x113c0}, {0x113c2, 0x113c2}, + {0x113c5, 0x113c5}, {0x113c7, 0x113ca}, {0x113cc, 0x113d3}, {0x113e1, 0x113e2}, {0x11400, 0x1144a}, {0x11450, 0x11459}, {0x1145e, 0x11461}, {0x11480, 0x114c5}, + {0x114c7, 0x114c7}, {0x114d0, 0x114d9}, {0x11580, 0x115b5}, {0x115b8, 0x115c0}, {0x115d8, 0x115dd}, {0x11600, 0x11640}, {0x11644, 0x11644}, {0x11650, 0x11659}, + {0x11680, 0x116b8}, {0x116c0, 0x116c9}, {0x116d0, 0x116e3}, {0x11700, 0x1171a}, {0x1171d, 0x1172b}, {0x11730, 0x11739}, {0x11740, 0x11746}, {0x11800, 0x1183a}, + {0x118a0, 0x118e9}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x11935}, {0x11937, 0x11938}, {0x1193b, 0x11943}, + {0x11950, 0x11959}, {0x119a0, 0x119a7}, {0x119aa, 0x119d7}, {0x119da, 0x119e1}, {0x119e3, 0x119e4}, {0x11a00, 0x11a3e}, {0x11a47, 0x11a47}, {0x11a50, 0x11a99}, + {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11bc0, 0x11be0}, {0x11bf0, 0x11bf9}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c36}, {0x11c38, 0x11c40}, {0x11c50, 0x11c59}, + {0x11c72, 0x11c8f}, {0x11c92, 0x11ca7}, {0x11ca9, 0x11cb6}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d36}, {0x11d3a, 0x11d3a}, {0x11d3c, 0x11d3d}, + {0x11d3f, 0x11d47}, {0x11d50, 0x11d59}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d8e}, {0x11d90, 0x11d91}, {0x11d93, 0x11d98}, {0x11da0, 0x11da9}, + {0x11ee0, 0x11ef6}, {0x11f00, 0x11f10}, {0x11f12, 0x11f3a}, {0x11f3e, 0x11f42}, {0x11f50, 0x11f5a}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, {0x12400, 0x1246e}, + {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342f}, {0x13440, 0x13455}, {0x13460, 0x143fa}, {0x14400, 0x14646}, {0x16100, 0x16139}, {0x16800, 0x16a38}, + {0x16a40, 0x16a5e}, {0x16a60, 0x16a69}, {0x16a70, 0x16abe}, {0x16ac0, 0x16ac9}, {0x16ad0, 0x16aed}, {0x16af0, 0x16af4}, {0x16b00, 0x16b36}, {0x16b40, 0x16b43}, + {0x16b50, 0x16b59}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16d40, 0x16d6c}, {0x16d70, 0x16d79}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f4f, 0x16f87}, + {0x16f8f, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe4}, {0x16ff0, 0x16ff1}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, {0x18cff, 0x18d08}, {0x1aff0, 0x1aff3}, + {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b132, 0x1b132}, {0x1b150, 0x1b152}, {0x1b155, 0x1b155}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, + {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1bc9d, 0x1bc9e}, {0x1ccf0, 0x1ccf9}, {0x1cf00, 0x1cf2d}, {0x1cf30, 0x1cf46}, + {0x1d165, 0x1d169}, {0x1d16d, 0x1d172}, {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, + {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, + {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, + {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, + {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1d7ce, 0x1d7ff}, {0x1da00, 0x1da36}, {0x1da3b, 0x1da6c}, {0x1da75, 0x1da75}, + {0x1da84, 0x1da84}, {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1df00, 0x1df1e}, {0x1df25, 0x1df2a}, {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, {0x1e01b, 0x1e021}, + {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, {0x1e030, 0x1e06d}, {0x1e08f, 0x1e08f}, {0x1e100, 0x1e12c}, {0x1e130, 0x1e13d}, {0x1e140, 0x1e149}, {0x1e14e, 0x1e14e}, + {0x1e290, 0x1e2ae}, {0x1e2c0, 0x1e2f9}, {0x1e4d0, 0x1e4f9}, {0x1e5d0, 0x1e5fa}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, + {0x1e800, 0x1e8c4}, {0x1e8d0, 0x1e8d6}, {0x1e900, 0x1e94b}, {0x1e950, 0x1e959}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, + {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, + {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, + {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, + {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x1fbf0, 0x1fbf9}, {0x20000, 0x2a6df}, {0x2a700, 0x2b739}, + {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2ebf0, 0x2ee5d}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0x31350, 0x323af}, {0xe0100, 0xe01ef}, +}; static bool ts_lex(TSLexer *lexer, TSStateId state) { START_LEXER(); eof = lexer->eof(lexer); switch (state) { case 0: - if (eof) ADVANCE(51); - if (lookahead == '!') ADVANCE(21); - if (lookahead == '#') ADVANCE(124); - if (lookahead == '%') ADVANCE(75); - if (lookahead == '&') ADVANCE(77); - if (lookahead == '(') ADVANCE(54); - if (lookahead == ')') ADVANCE(55); - if (lookahead == '*') ADVANCE(57); - if (lookahead == '+') ADVANCE(65); - if (lookahead == ',') ADVANCE(56); - if (lookahead == '-') ADVANCE(64); - if (lookahead == '.') ADVANCE(53); - if (lookahead == '/') ADVANCE(74); - if (lookahead == '0') ADVANCE(113); - if (lookahead == ':') ADVANCE(61); - if (lookahead == ';') ADVANCE(125); - if (lookahead == '<') ADVANCE(81); - if (lookahead == '=') ADVANCE(71); - if (lookahead == '>') ADVANCE(86); - if (lookahead == '@') ADVANCE(73); - if (lookahead == '[') ADVANCE(66); - if (lookahead == '\\') SKIP(46) - if (lookahead == ']') ADVANCE(67); - if (lookahead == '^') ADVANCE(78); - if (lookahead == '{') ADVANCE(102); - if (lookahead == '|') ADVANCE(62); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '~') ADVANCE(80); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + if (eof) ADVANCE(52); + ADVANCE_MAP( + '!', 22, + '#', 141, + '%', 85, + '&', 89, + '(', 55, + ')', 56, + '*', 58, + '+', 71, + ',', 57, + '-', 69, + '.', 54, + '/', 82, + '0', 129, + ':', 123, + ';', 142, + '<', 95, + '=', 78, + '>', 101, + '@', 81, + '[', 72, + ); + if (lookahead == '\\') SKIP(47); + if (lookahead == ']') ADVANCE(73); + if (lookahead == '^') ADVANCE(91); + if (lookahead == '{') ADVANCE(118); + if (lookahead == '|') ADVANCE(66); + if (lookahead == '}') ADVANCE(75); + if (lookahead == '~') ADVANCE(94); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(49) - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(112); - if (sym_identifier_character_set_1(lookahead)) ADVANCE(123); + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(50); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(130); + if (set_contains(sym_identifier_character_set_1, 685, lookahead)) ADVANCE(140); END_STATE(); case 1: - if (lookahead == '\n') SKIP(14) + if (lookahead == '\n') SKIP(14); END_STATE(); case 2: - if (lookahead == '\n') SKIP(14) - if (lookahead == '\r') SKIP(1) + if (lookahead == '\n') SKIP(14); + if (lookahead == '\r') SKIP(1); END_STATE(); case 3: - if (lookahead == '\n') SKIP(16) + if (lookahead == '\n') SKIP(16); END_STATE(); case 4: - if (lookahead == '\n') SKIP(16) - if (lookahead == '\r') SKIP(3) + if (lookahead == '\n') SKIP(16); + if (lookahead == '\r') SKIP(3); END_STATE(); case 5: - if (lookahead == '\n') SKIP(19) + if (lookahead == '\n') SKIP(15); END_STATE(); case 6: - if (lookahead == '\n') SKIP(19) - if (lookahead == '\r') SKIP(5) + if (lookahead == '\n') SKIP(15); + if (lookahead == '\r') SKIP(5); END_STATE(); case 7: - if (lookahead == '\n') ADVANCE(105); + if (lookahead == '\n') SKIP(19); END_STATE(); case 8: - if (lookahead == '\n') SKIP(9) - if (lookahead == '#') ADVANCE(109); - if (lookahead == '\\') ADVANCE(107); - if (lookahead == '{') ADVANCE(102); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '\t' || - lookahead == '\f' || - lookahead == '\r' || - lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) ADVANCE(108); - if (lookahead != 0) ADVANCE(109); + if (lookahead == '\n') SKIP(19); + if (lookahead == '\r') SKIP(7); END_STATE(); case 9: - if (lookahead == '\n') SKIP(9) - if (lookahead == '#') ADVANCE(109); - if (lookahead == '\\') ADVANCE(107); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '\t' || - lookahead == '\f' || - lookahead == '\r' || - lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) ADVANCE(108); - if (lookahead != 0 && - lookahead != '{') ADVANCE(109); + if (lookahead == '\n') ADVANCE(121); END_STATE(); case 10: - if (lookahead == '\n') SKIP(17) + if (lookahead == '\n') SKIP(11); + if (lookahead == '#') ADVANCE(126); + if (lookahead == '\\') ADVANCE(124); + if (lookahead == '{') ADVANCE(118); + if (lookahead == '}') ADVANCE(75); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) ADVANCE(125); + if (lookahead != 0) ADVANCE(126); END_STATE(); case 11: - if (lookahead == '\n') SKIP(17) - if (lookahead == '\r') SKIP(10) + if (lookahead == '\n') SKIP(11); + if (lookahead == '#') ADVANCE(126); + if (lookahead == '\\') ADVANCE(124); + if (lookahead == '}') ADVANCE(75); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) ADVANCE(125); + if (lookahead != 0 && + lookahead != '{') ADVANCE(126); END_STATE(); case 12: - if (lookahead == '\n') SKIP(15) + if (lookahead == '\n') SKIP(17); END_STATE(); case 13: - if (lookahead == '\n') SKIP(15) - if (lookahead == '\r') SKIP(12) + if (lookahead == '\n') SKIP(17); + if (lookahead == '\r') SKIP(12); END_STATE(); case 14: - if (lookahead == '!') ADVANCE(21); - if (lookahead == '#') ADVANCE(124); - if (lookahead == '%') ADVANCE(75); - if (lookahead == '&') ADVANCE(77); - if (lookahead == '(') ADVANCE(54); - if (lookahead == ')') ADVANCE(55); - if (lookahead == '*') ADVANCE(57); - if (lookahead == '+') ADVANCE(65); - if (lookahead == ',') ADVANCE(56); - if (lookahead == '-') ADVANCE(63); - if (lookahead == '.') ADVANCE(53); - if (lookahead == '/') ADVANCE(74); - if (lookahead == '0') ADVANCE(113); - if (lookahead == ':') ADVANCE(60); - if (lookahead == '<') ADVANCE(81); - if (lookahead == '=') ADVANCE(71); - if (lookahead == '>') ADVANCE(86); - if (lookahead == '@') ADVANCE(73); - if (lookahead == '[') ADVANCE(66); - if (lookahead == '\\') SKIP(2) - if (lookahead == ']') ADVANCE(67); - if (lookahead == '^') ADVANCE(78); - if (lookahead == '{') ADVANCE(68); - if (lookahead == '|') ADVANCE(62); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '~') ADVANCE(80); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + ADVANCE_MAP( + '!', 22, + '#', 141, + '%', 84, + '&', 88, + '(', 55, + ')', 56, + '*', 59, + '+', 70, + ',', 57, + '-', 67, + '.', 54, + '/', 83, + '0', 129, + ':', 123, + '<', 96, + '=', 78, + '>', 102, + '@', 80, + '[', 72, + ); + if (lookahead == '\\') SKIP(2); + if (lookahead == ']') ADVANCE(73); + if (lookahead == '^') ADVANCE(90); + if (lookahead == '{') ADVANCE(74); + if (lookahead == '|') ADVANCE(65); + if (lookahead == '}') ADVANCE(75); + if (lookahead == '~') ADVANCE(94); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(14) - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(112); - if (sym_identifier_character_set_1(lookahead)) ADVANCE(123); + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(14); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(130); + if (set_contains(sym_identifier_character_set_1, 685, lookahead)) ADVANCE(140); END_STATE(); case 15: - if (lookahead == '!') ADVANCE(21); - if (lookahead == '#') ADVANCE(124); - if (lookahead == '%') ADVANCE(75); - if (lookahead == '&') ADVANCE(77); - if (lookahead == '(') ADVANCE(54); - if (lookahead == ')') ADVANCE(55); - if (lookahead == '*') ADVANCE(57); - if (lookahead == '+') ADVANCE(65); - if (lookahead == ',') ADVANCE(56); - if (lookahead == '-') ADVANCE(63); - if (lookahead == '.') ADVANCE(52); - if (lookahead == '/') ADVANCE(74); - if (lookahead == ':') ADVANCE(61); - if (lookahead == ';') ADVANCE(125); - if (lookahead == '<') ADVANCE(81); - if (lookahead == '=') ADVANCE(71); - if (lookahead == '>') ADVANCE(86); - if (lookahead == '@') ADVANCE(73); - if (lookahead == '[') ADVANCE(66); - if (lookahead == '\\') SKIP(13) - if (lookahead == ']') ADVANCE(67); - if (lookahead == '^') ADVANCE(78); - if (lookahead == '|') ADVANCE(62); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + ADVANCE_MAP( + '!', 22, + '#', 141, + '%', 84, + '&', 88, + '(', 55, + ')', 56, + '*', 59, + '+', 70, + ',', 57, + '-', 67, + '.', 53, + '/', 83, + ':', 123, + '<', 96, + '=', 78, + '>', 102, + '@', 80, + '[', 72, + ); + if (lookahead == '\\') SKIP(6); + if (lookahead == ']') ADVANCE(73); + if (lookahead == '^') ADVANCE(90); + if (lookahead == '|') ADVANCE(65); + if (lookahead == '}') ADVANCE(75); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(15) - if (sym_identifier_character_set_1(lookahead)) ADVANCE(123); + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(15); + if (set_contains(sym_identifier_character_set_1, 685, lookahead)) ADVANCE(140); END_STATE(); case 16: - if (lookahead == '!') ADVANCE(21); - if (lookahead == '#') ADVANCE(124); - if (lookahead == '%') ADVANCE(75); - if (lookahead == '&') ADVANCE(77); - if (lookahead == '(') ADVANCE(54); - if (lookahead == ')') ADVANCE(55); - if (lookahead == '*') ADVANCE(57); - if (lookahead == '+') ADVANCE(65); - if (lookahead == ',') ADVANCE(56); - if (lookahead == '-') ADVANCE(63); - if (lookahead == '.') ADVANCE(52); - if (lookahead == '/') ADVANCE(74); - if (lookahead == ':') ADVANCE(60); - if (lookahead == ';') ADVANCE(125); - if (lookahead == '<') ADVANCE(81); - if (lookahead == '=') ADVANCE(71); - if (lookahead == '>') ADVANCE(86); - if (lookahead == '@') ADVANCE(73); - if (lookahead == '[') ADVANCE(66); - if (lookahead == '\\') SKIP(4) - if (lookahead == ']') ADVANCE(67); - if (lookahead == '^') ADVANCE(78); - if (lookahead == '|') ADVANCE(62); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + ADVANCE_MAP( + '!', 21, + '#', 141, + '%', 85, + '&', 89, + '(', 55, + ')', 56, + '*', 58, + '+', 71, + ',', 57, + '-', 68, + '.', 53, + '/', 82, + ':', 64, + ';', 142, + '<', 95, + '=', 78, + '>', 101, + '@', 81, + '[', 72, + ); + if (lookahead == '\\') SKIP(4); + if (lookahead == ']') ADVANCE(73); + if (lookahead == '^') ADVANCE(91); + if (lookahead == '|') ADVANCE(66); + if (lookahead == '}') ADVANCE(75); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(16) - if (sym_identifier_character_set_1(lookahead)) ADVANCE(123); + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(16); + if (set_contains(sym_identifier_character_set_1, 685, lookahead)) ADVANCE(140); END_STATE(); case 17: - if (lookahead == '#') ADVANCE(124); - if (lookahead == '-') ADVANCE(22); - if (lookahead == ':') ADVANCE(60); - if (lookahead == '\\') SKIP(11) - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + if (lookahead == '#') ADVANCE(141); + if (lookahead == '-') ADVANCE(23); + if (lookahead == ':') ADVANCE(63); + if (lookahead == '\\') SKIP(13); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(17) + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(17); END_STATE(); case 18: - if (lookahead == '#') ADVANCE(124); - if (lookahead == '\\') ADVANCE(106); - if (lookahead == '{') ADVANCE(103); - if (lookahead == '}') ADVANCE(28); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + if (lookahead == '#') ADVANCE(141); + if (lookahead == '\\') ADVANCE(122); + if (lookahead == '{') ADVANCE(119); + if (lookahead == '}') ADVANCE(29); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(19) + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(19); END_STATE(); case 19: - if (lookahead == '#') ADVANCE(124); - if (lookahead == '\\') SKIP(6) - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + if (lookahead == '#') ADVANCE(141); + if (lookahead == '\\') SKIP(8); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(19) + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(19); END_STATE(); case 20: - if (lookahead == '.') ADVANCE(101); + if (lookahead == '.') ADVANCE(117); END_STATE(); case 21: - if (lookahead == '=') ADVANCE(84); - if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(110); + if (lookahead == '=') ADVANCE(99); END_STATE(); case 22: - if (lookahead == '>') ADVANCE(72); + if (lookahead == '=') ADVANCE(99); + if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(127); END_STATE(); case 23: - if (lookahead == '_') ADVANCE(30); - if (lookahead == '0' || - lookahead == '1') ADVANCE(115); + if (lookahead == '>') ADVANCE(79); END_STATE(); case 24: if (lookahead == '_') ADVANCE(31); - if (('0' <= lookahead && lookahead <= '7')) ADVANCE(116); + if (lookahead == '0' || + lookahead == '1') ADVANCE(132); END_STATE(); case 25: - if (lookahead == '_') ADVANCE(35); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(117); + if (lookahead == '_') ADVANCE(32); + if (('0' <= lookahead && lookahead <= '7')) ADVANCE(133); END_STATE(); case 26: - if (lookahead == '{') ADVANCE(44); + if (lookahead == '_') ADVANCE(36); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(134); END_STATE(); case 27: - if (lookahead == '}') ADVANCE(105); - if (lookahead != 0) ADVANCE(27); + if (lookahead == '{') ADVANCE(45); END_STATE(); case 28: - if (lookahead == '}') ADVANCE(104); + if (lookahead == '}') ADVANCE(121); + if (lookahead != 0) ADVANCE(28); END_STATE(); case 29: - if (lookahead == '+' || - lookahead == '-') ADVANCE(32); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(120); + if (lookahead == '}') ADVANCE(120); END_STATE(); case 30: - if (lookahead == '0' || - lookahead == '1') ADVANCE(115); + if (lookahead == '+' || + lookahead == '-') ADVANCE(33); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(137); END_STATE(); case 31: - if (('0' <= lookahead && lookahead <= '7')) ADVANCE(116); + if (lookahead == '0' || + lookahead == '1') ADVANCE(132); END_STATE(); case 32: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(120); + if (('0' <= lookahead && lookahead <= '7')) ADVANCE(133); END_STATE(); case 33: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(105); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(137); END_STATE(); case 34: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(33); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(121); END_STATE(); case 35: - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(117); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(34); END_STATE(); case 36: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(105); + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(134); END_STATE(); case 37: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(36); + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(121); END_STATE(); case 38: if (('0' <= lookahead && lookahead <= '9') || @@ -5110,472 +5316,536 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { ('a' <= lookahead && lookahead <= 'f')) ADVANCE(42); END_STATE(); case 44: - if (lookahead != 0 && - lookahead != '}') ADVANCE(27); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(43); END_STATE(); case 45: - if (eof) ADVANCE(51); - if (lookahead == '\n') SKIP(49) + if (lookahead != 0 && + lookahead != '}') ADVANCE(28); END_STATE(); case 46: - if (eof) ADVANCE(51); - if (lookahead == '\n') SKIP(49) - if (lookahead == '\r') SKIP(45) + if (eof) ADVANCE(52); + if (lookahead == '\n') SKIP(50); END_STATE(); case 47: - if (eof) ADVANCE(51); - if (lookahead == '\n') SKIP(50) + if (eof) ADVANCE(52); + if (lookahead == '\n') SKIP(50); + if (lookahead == '\r') SKIP(46); END_STATE(); case 48: - if (eof) ADVANCE(51); - if (lookahead == '\n') SKIP(50) - if (lookahead == '\r') SKIP(47) + if (eof) ADVANCE(52); + if (lookahead == '\n') SKIP(51); END_STATE(); case 49: - if (eof) ADVANCE(51); - if (lookahead == '!') ADVANCE(21); - if (lookahead == '#') ADVANCE(124); - if (lookahead == '%') ADVANCE(75); - if (lookahead == '&') ADVANCE(77); - if (lookahead == '(') ADVANCE(54); - if (lookahead == ')') ADVANCE(55); - if (lookahead == '*') ADVANCE(57); - if (lookahead == '+') ADVANCE(65); - if (lookahead == ',') ADVANCE(56); - if (lookahead == '-') ADVANCE(64); - if (lookahead == '.') ADVANCE(53); - if (lookahead == '/') ADVANCE(74); - if (lookahead == '0') ADVANCE(113); - if (lookahead == ':') ADVANCE(61); - if (lookahead == ';') ADVANCE(125); - if (lookahead == '<') ADVANCE(81); - if (lookahead == '=') ADVANCE(71); - if (lookahead == '>') ADVANCE(86); - if (lookahead == '@') ADVANCE(73); - if (lookahead == '[') ADVANCE(66); - if (lookahead == '\\') SKIP(46) - if (lookahead == ']') ADVANCE(67); - if (lookahead == '^') ADVANCE(78); - if (lookahead == '{') ADVANCE(68); - if (lookahead == '|') ADVANCE(62); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '~') ADVANCE(80); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || - lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(49) - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(112); - if (sym_identifier_character_set_1(lookahead)) ADVANCE(123); + if (eof) ADVANCE(52); + if (lookahead == '\n') SKIP(51); + if (lookahead == '\r') SKIP(48); END_STATE(); case 50: - if (eof) ADVANCE(51); - if (lookahead == '!') ADVANCE(21); - if (lookahead == '#') ADVANCE(124); - if (lookahead == '%') ADVANCE(75); - if (lookahead == '&') ADVANCE(77); - if (lookahead == '(') ADVANCE(54); - if (lookahead == ')') ADVANCE(55); - if (lookahead == '*') ADVANCE(57); - if (lookahead == '+') ADVANCE(65); - if (lookahead == ',') ADVANCE(56); - if (lookahead == '-') ADVANCE(63); - if (lookahead == '.') ADVANCE(53); - if (lookahead == '/') ADVANCE(74); - if (lookahead == '0') ADVANCE(113); - if (lookahead == ':') ADVANCE(61); - if (lookahead == ';') ADVANCE(125); - if (lookahead == '<') ADVANCE(81); - if (lookahead == '=') ADVANCE(71); - if (lookahead == '>') ADVANCE(86); - if (lookahead == '@') ADVANCE(73); - if (lookahead == '[') ADVANCE(66); - if (lookahead == '\\') SKIP(48) - if (lookahead == ']') ADVANCE(67); - if (lookahead == '^') ADVANCE(78); - if (lookahead == '{') ADVANCE(68); - if (lookahead == '|') ADVANCE(62); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '~') ADVANCE(80); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + if (eof) ADVANCE(52); + ADVANCE_MAP( + '!', 22, + '#', 141, + '%', 85, + '&', 89, + '(', 55, + ')', 56, + '*', 58, + '+', 71, + ',', 57, + '-', 69, + '.', 54, + '/', 82, + '0', 129, + ':', 123, + ';', 142, + '<', 95, + '=', 78, + '>', 101, + '@', 81, + '[', 72, + ); + if (lookahead == '\\') SKIP(47); + if (lookahead == ']') ADVANCE(73); + if (lookahead == '^') ADVANCE(91); + if (lookahead == '{') ADVANCE(74); + if (lookahead == '|') ADVANCE(66); + if (lookahead == '}') ADVANCE(75); + if (lookahead == '~') ADVANCE(94); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(50) - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(112); - if (sym_identifier_character_set_1(lookahead)) ADVANCE(123); + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(50); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(130); + if (set_contains(sym_identifier_character_set_1, 685, lookahead)) ADVANCE(140); END_STATE(); case 51: - ACCEPT_TOKEN(ts_builtin_sym_end); + if (eof) ADVANCE(52); + ADVANCE_MAP( + '!', 21, + '#', 141, + '%', 85, + '&', 89, + '(', 55, + ')', 56, + '*', 58, + '+', 71, + ',', 57, + '-', 68, + '.', 54, + '/', 82, + '0', 129, + ':', 64, + ';', 142, + '<', 95, + '=', 78, + '>', 101, + '@', 81, + '[', 72, + ); + if (lookahead == '\\') SKIP(49); + if (lookahead == ']') ADVANCE(73); + if (lookahead == '^') ADVANCE(91); + if (lookahead == '{') ADVANCE(74); + if (lookahead == '|') ADVANCE(66); + if (lookahead == '}') ADVANCE(75); + if (lookahead == '~') ADVANCE(94); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(51); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(130); + if (set_contains(sym_identifier_character_set_1, 685, lookahead)) ADVANCE(140); END_STATE(); case 52: - ACCEPT_TOKEN(anon_sym_DOT); + ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 53: ACCEPT_TOKEN(anon_sym_DOT); - if (lookahead == '.') ADVANCE(20); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(119); END_STATE(); case 54: - ACCEPT_TOKEN(anon_sym_LPAREN); + ACCEPT_TOKEN(anon_sym_DOT); + if (lookahead == '.') ADVANCE(20); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(136); END_STATE(); case 55: - ACCEPT_TOKEN(anon_sym_RPAREN); + ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); case 56: - ACCEPT_TOKEN(anon_sym_COMMA); + ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); case 57: - ACCEPT_TOKEN(anon_sym_STAR); - if (lookahead == '*') ADVANCE(70); - if (lookahead == '=') ADVANCE(90); + ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 58: - ACCEPT_TOKEN(anon_sym_GT_GT); - if (lookahead == '=') ADVANCE(96); + ACCEPT_TOKEN(anon_sym_STAR); + if (lookahead == '*') ADVANCE(77); + if (lookahead == '=') ADVANCE(106); END_STATE(); case 59: - ACCEPT_TOKEN(anon_sym_COLON_EQ); + ACCEPT_TOKEN(anon_sym_STAR); + if (lookahead == '*') ADVANCE(76); END_STATE(); case 60: - ACCEPT_TOKEN(anon_sym_COLON); + ACCEPT_TOKEN(anon_sym_GT_GT); END_STATE(); case 61: - ACCEPT_TOKEN(anon_sym_COLON); - if (lookahead == '=') ADVANCE(59); + ACCEPT_TOKEN(anon_sym_GT_GT); + if (lookahead == '=') ADVANCE(112); END_STATE(); case 62: - ACCEPT_TOKEN(anon_sym_PIPE); - if (lookahead == '=') ADVANCE(100); + ACCEPT_TOKEN(anon_sym_COLON_EQ); END_STATE(); case 63: - ACCEPT_TOKEN(anon_sym_DASH); - if (lookahead == '=') ADVANCE(89); + ACCEPT_TOKEN(anon_sym_COLON); END_STATE(); case 64: - ACCEPT_TOKEN(anon_sym_DASH); - if (lookahead == '=') ADVANCE(89); - if (lookahead == '>') ADVANCE(72); + ACCEPT_TOKEN(anon_sym_COLON); + if (lookahead == '=') ADVANCE(62); END_STATE(); case 65: - ACCEPT_TOKEN(anon_sym_PLUS); - if (lookahead == '=') ADVANCE(88); + ACCEPT_TOKEN(anon_sym_PIPE); END_STATE(); case 66: - ACCEPT_TOKEN(anon_sym_LBRACK); + ACCEPT_TOKEN(anon_sym_PIPE); + if (lookahead == '=') ADVANCE(116); END_STATE(); case 67: - ACCEPT_TOKEN(anon_sym_RBRACK); + ACCEPT_TOKEN(anon_sym_DASH); END_STATE(); case 68: - ACCEPT_TOKEN(anon_sym_LBRACE); + ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '=') ADVANCE(105); END_STATE(); case 69: - ACCEPT_TOKEN(anon_sym_RBRACE); + ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '=') ADVANCE(105); + if (lookahead == '>') ADVANCE(79); END_STATE(); case 70: - ACCEPT_TOKEN(anon_sym_STAR_STAR); - if (lookahead == '=') ADVANCE(95); + ACCEPT_TOKEN(anon_sym_PLUS); END_STATE(); case 71: - ACCEPT_TOKEN(anon_sym_EQ); - if (lookahead == '=') ADVANCE(83); + ACCEPT_TOKEN(anon_sym_PLUS); + if (lookahead == '=') ADVANCE(104); END_STATE(); case 72: - ACCEPT_TOKEN(anon_sym_DASH_GT); + ACCEPT_TOKEN(anon_sym_LBRACK); END_STATE(); case 73: - ACCEPT_TOKEN(anon_sym_AT); - if (lookahead == '=') ADVANCE(92); + ACCEPT_TOKEN(anon_sym_RBRACK); END_STATE(); case 74: - ACCEPT_TOKEN(anon_sym_SLASH); - if (lookahead == '/') ADVANCE(76); - if (lookahead == '=') ADVANCE(91); + ACCEPT_TOKEN(anon_sym_LBRACE); END_STATE(); case 75: - ACCEPT_TOKEN(anon_sym_PERCENT); - if (lookahead == '=') ADVANCE(94); + ACCEPT_TOKEN(anon_sym_RBRACE); END_STATE(); case 76: - ACCEPT_TOKEN(anon_sym_SLASH_SLASH); - if (lookahead == '=') ADVANCE(93); + ACCEPT_TOKEN(anon_sym_STAR_STAR); END_STATE(); case 77: - ACCEPT_TOKEN(anon_sym_AMP); - if (lookahead == '=') ADVANCE(98); + ACCEPT_TOKEN(anon_sym_STAR_STAR); + if (lookahead == '=') ADVANCE(111); END_STATE(); case 78: - ACCEPT_TOKEN(anon_sym_CARET); - if (lookahead == '=') ADVANCE(99); + ACCEPT_TOKEN(anon_sym_EQ); + if (lookahead == '=') ADVANCE(98); END_STATE(); case 79: - ACCEPT_TOKEN(anon_sym_LT_LT); - if (lookahead == '=') ADVANCE(97); + ACCEPT_TOKEN(anon_sym_DASH_GT); END_STATE(); case 80: - ACCEPT_TOKEN(anon_sym_TILDE); + ACCEPT_TOKEN(anon_sym_AT); END_STATE(); case 81: - ACCEPT_TOKEN(anon_sym_LT); - if (lookahead == '<') ADVANCE(79); - if (lookahead == '=') ADVANCE(82); - if (lookahead == '>') ADVANCE(87); + ACCEPT_TOKEN(anon_sym_AT); + if (lookahead == '=') ADVANCE(108); END_STATE(); case 82: - ACCEPT_TOKEN(anon_sym_LT_EQ); + ACCEPT_TOKEN(anon_sym_SLASH); + if (lookahead == '/') ADVANCE(87); + if (lookahead == '=') ADVANCE(107); END_STATE(); case 83: - ACCEPT_TOKEN(anon_sym_EQ_EQ); + ACCEPT_TOKEN(anon_sym_SLASH); + if (lookahead == '/') ADVANCE(86); END_STATE(); case 84: - ACCEPT_TOKEN(anon_sym_BANG_EQ); + ACCEPT_TOKEN(anon_sym_PERCENT); END_STATE(); case 85: - ACCEPT_TOKEN(anon_sym_GT_EQ); + ACCEPT_TOKEN(anon_sym_PERCENT); + if (lookahead == '=') ADVANCE(110); END_STATE(); case 86: - ACCEPT_TOKEN(anon_sym_GT); - if (lookahead == '=') ADVANCE(85); - if (lookahead == '>') ADVANCE(58); + ACCEPT_TOKEN(anon_sym_SLASH_SLASH); END_STATE(); case 87: - ACCEPT_TOKEN(anon_sym_LT_GT); + ACCEPT_TOKEN(anon_sym_SLASH_SLASH); + if (lookahead == '=') ADVANCE(109); END_STATE(); case 88: - ACCEPT_TOKEN(anon_sym_PLUS_EQ); + ACCEPT_TOKEN(anon_sym_AMP); END_STATE(); case 89: - ACCEPT_TOKEN(anon_sym_DASH_EQ); + ACCEPT_TOKEN(anon_sym_AMP); + if (lookahead == '=') ADVANCE(114); END_STATE(); case 90: - ACCEPT_TOKEN(anon_sym_STAR_EQ); + ACCEPT_TOKEN(anon_sym_CARET); END_STATE(); case 91: - ACCEPT_TOKEN(anon_sym_SLASH_EQ); + ACCEPT_TOKEN(anon_sym_CARET); + if (lookahead == '=') ADVANCE(115); END_STATE(); case 92: - ACCEPT_TOKEN(anon_sym_AT_EQ); + ACCEPT_TOKEN(anon_sym_LT_LT); END_STATE(); case 93: - ACCEPT_TOKEN(anon_sym_SLASH_SLASH_EQ); + ACCEPT_TOKEN(anon_sym_LT_LT); + if (lookahead == '=') ADVANCE(113); END_STATE(); case 94: - ACCEPT_TOKEN(anon_sym_PERCENT_EQ); + ACCEPT_TOKEN(anon_sym_TILDE); END_STATE(); case 95: - ACCEPT_TOKEN(anon_sym_STAR_STAR_EQ); + ACCEPT_TOKEN(anon_sym_LT); + if (lookahead == '<') ADVANCE(93); + if (lookahead == '=') ADVANCE(97); + if (lookahead == '>') ADVANCE(103); END_STATE(); case 96: - ACCEPT_TOKEN(anon_sym_GT_GT_EQ); + ACCEPT_TOKEN(anon_sym_LT); + if (lookahead == '<') ADVANCE(92); + if (lookahead == '=') ADVANCE(97); + if (lookahead == '>') ADVANCE(103); END_STATE(); case 97: - ACCEPT_TOKEN(anon_sym_LT_LT_EQ); + ACCEPT_TOKEN(anon_sym_LT_EQ); END_STATE(); case 98: - ACCEPT_TOKEN(anon_sym_AMP_EQ); + ACCEPT_TOKEN(anon_sym_EQ_EQ); END_STATE(); case 99: - ACCEPT_TOKEN(anon_sym_CARET_EQ); + ACCEPT_TOKEN(anon_sym_BANG_EQ); END_STATE(); case 100: - ACCEPT_TOKEN(anon_sym_PIPE_EQ); + ACCEPT_TOKEN(anon_sym_GT_EQ); END_STATE(); case 101: - ACCEPT_TOKEN(sym_ellipsis); + ACCEPT_TOKEN(anon_sym_GT); + if (lookahead == '=') ADVANCE(100); + if (lookahead == '>') ADVANCE(61); END_STATE(); case 102: - ACCEPT_TOKEN(anon_sym_LBRACE2); + ACCEPT_TOKEN(anon_sym_GT); + if (lookahead == '=') ADVANCE(100); + if (lookahead == '>') ADVANCE(60); END_STATE(); case 103: - ACCEPT_TOKEN(anon_sym_LBRACE2); - if (lookahead == '{') ADVANCE(104); + ACCEPT_TOKEN(anon_sym_LT_GT); END_STATE(); case 104: - ACCEPT_TOKEN(sym__escape_interpolation); + ACCEPT_TOKEN(anon_sym_PLUS_EQ); END_STATE(); case 105: - ACCEPT_TOKEN(sym_escape_sequence); + ACCEPT_TOKEN(anon_sym_DASH_EQ); END_STATE(); case 106: - ACCEPT_TOKEN(sym__not_escape_sequence); - if (lookahead == '\n') ADVANCE(105); - if (lookahead == '\r') ADVANCE(7); - if (lookahead == 'N') ADVANCE(26); - if (lookahead == 'U') ADVANCE(43); - if (lookahead == 'u') ADVANCE(39); - if (lookahead == 'x') ADVANCE(37); - if (lookahead == '"' || - lookahead == '\'' || - lookahead == '\\' || - lookahead == 'a' || - lookahead == 'b' || - lookahead == 'f' || - lookahead == 'n' || - lookahead == 'r' || - ('t' <= lookahead && lookahead <= 'v')) ADVANCE(105); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(34); + ACCEPT_TOKEN(anon_sym_STAR_EQ); END_STATE(); case 107: + ACCEPT_TOKEN(anon_sym_SLASH_EQ); + END_STATE(); + case 108: + ACCEPT_TOKEN(anon_sym_AT_EQ); + END_STATE(); + case 109: + ACCEPT_TOKEN(anon_sym_SLASH_SLASH_EQ); + END_STATE(); + case 110: + ACCEPT_TOKEN(anon_sym_PERCENT_EQ); + END_STATE(); + case 111: + ACCEPT_TOKEN(anon_sym_STAR_STAR_EQ); + END_STATE(); + case 112: + ACCEPT_TOKEN(anon_sym_GT_GT_EQ); + END_STATE(); + case 113: + ACCEPT_TOKEN(anon_sym_LT_LT_EQ); + END_STATE(); + case 114: + ACCEPT_TOKEN(anon_sym_AMP_EQ); + END_STATE(); + case 115: + ACCEPT_TOKEN(anon_sym_CARET_EQ); + END_STATE(); + case 116: + ACCEPT_TOKEN(anon_sym_PIPE_EQ); + END_STATE(); + case 117: + ACCEPT_TOKEN(sym_ellipsis); + END_STATE(); + case 118: + ACCEPT_TOKEN(anon_sym_LBRACE2); + END_STATE(); + case 119: + ACCEPT_TOKEN(anon_sym_LBRACE2); + if (lookahead == '{') ADVANCE(120); + END_STATE(); + case 120: + ACCEPT_TOKEN(sym__escape_interpolation); + END_STATE(); + case 121: + ACCEPT_TOKEN(sym_escape_sequence); + END_STATE(); + case 122: + ACCEPT_TOKEN(anon_sym_BSLASH); + ADVANCE_MAP( + '\n', 121, + '\r', 9, + 'N', 27, + 'U', 44, + 'u', 40, + 'x', 38, + '"', 121, + '\'', 121, + '\\', 121, + 'a', 121, + 'b', 121, + 'f', 121, + 'n', 121, + 'r', 121, + 't', 121, + 'v', 121, + ); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(35); + END_STATE(); + case 123: + ACCEPT_TOKEN(anon_sym_COLON2); + END_STATE(); + case 124: ACCEPT_TOKEN(aux_sym_format_specifier_token1); - if (lookahead == '\r') ADVANCE(109); + if (lookahead == '\r') ADVANCE(126); if (lookahead != 0 && lookahead != '\n' && lookahead != '{' && - lookahead != '}') ADVANCE(109); + lookahead != '}') ADVANCE(126); END_STATE(); - case 108: + case 125: ACCEPT_TOKEN(aux_sym_format_specifier_token1); - if (lookahead == '#') ADVANCE(109); - if (lookahead == '\\') ADVANCE(107); + if (lookahead == '#') ADVANCE(126); + if (lookahead == '\\') ADVANCE(124); if (lookahead == '\t' || - lookahead == '\f' || - lookahead == '\r' || + (0x0b <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) ADVANCE(108); + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) ADVANCE(125); if (lookahead != 0 && - lookahead != '\n' && + (lookahead < '\t' || '\r' < lookahead) && lookahead != '{' && - lookahead != '}') ADVANCE(109); + lookahead != '}') ADVANCE(126); END_STATE(); - case 109: + case 126: ACCEPT_TOKEN(aux_sym_format_specifier_token1); if (lookahead != 0 && lookahead != '\n' && lookahead != '{' && - lookahead != '}') ADVANCE(109); + lookahead != '}') ADVANCE(126); END_STATE(); - case 110: + case 127: ACCEPT_TOKEN(sym_type_conversion); END_STATE(); - case 111: + case 128: ACCEPT_TOKEN(sym_integer); END_STATE(); - case 112: + case 129: ACCEPT_TOKEN(sym_integer); - if (lookahead == '.') ADVANCE(121); - if (lookahead == '_') ADVANCE(114); - if (lookahead == 'E' || - lookahead == 'e') ADVANCE(29); - if (lookahead == 'J' || - lookahead == 'L' || - lookahead == 'j' || - lookahead == 'l') ADVANCE(111); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(112); + ADVANCE_MAP( + '.', 138, + '_', 131, + 'B', 24, + 'b', 24, + 'E', 30, + 'e', 30, + 'O', 25, + 'o', 25, + 'X', 26, + 'x', 26, + 'J', 128, + 'L', 128, + 'j', 128, + 'l', 128, + ); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(130); END_STATE(); - case 113: + case 130: ACCEPT_TOKEN(sym_integer); - if (lookahead == '.') ADVANCE(121); - if (lookahead == 'B' || - lookahead == 'b') ADVANCE(23); - if (lookahead == 'O' || - lookahead == 'o') ADVANCE(24); - if (lookahead == 'X' || - lookahead == 'x') ADVANCE(25); - if (lookahead == '_') ADVANCE(114); - if (lookahead == 'E' || - lookahead == 'e') ADVANCE(29); - if (lookahead == 'J' || - lookahead == 'L' || - lookahead == 'j' || - lookahead == 'l') ADVANCE(111); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(112); + ADVANCE_MAP( + '.', 138, + '_', 131, + 'E', 30, + 'e', 30, + 'J', 128, + 'L', 128, + 'j', 128, + 'l', 128, + ); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(130); END_STATE(); - case 114: + case 131: ACCEPT_TOKEN(sym_integer); - if (lookahead == '.') ADVANCE(121); + if (lookahead == '.') ADVANCE(138); if (lookahead == 'E' || - lookahead == 'e') ADVANCE(29); + lookahead == 'e') ADVANCE(30); if (lookahead == 'J' || lookahead == 'L' || lookahead == 'j' || - lookahead == 'l') ADVANCE(111); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(112); + lookahead == 'l') ADVANCE(128); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(130); END_STATE(); - case 115: + case 132: ACCEPT_TOKEN(sym_integer); - if (lookahead == '_') ADVANCE(30); + if (lookahead == '_') ADVANCE(31); if (lookahead == 'L' || - lookahead == 'l') ADVANCE(111); + lookahead == 'l') ADVANCE(128); if (lookahead == '0' || - lookahead == '1') ADVANCE(115); + lookahead == '1') ADVANCE(132); END_STATE(); - case 116: + case 133: ACCEPT_TOKEN(sym_integer); - if (lookahead == '_') ADVANCE(31); + if (lookahead == '_') ADVANCE(32); if (lookahead == 'L' || - lookahead == 'l') ADVANCE(111); - if (('0' <= lookahead && lookahead <= '7')) ADVANCE(116); + lookahead == 'l') ADVANCE(128); + if (('0' <= lookahead && lookahead <= '7')) ADVANCE(133); END_STATE(); - case 117: + case 134: ACCEPT_TOKEN(sym_integer); - if (lookahead == '_') ADVANCE(35); + if (lookahead == '_') ADVANCE(36); if (lookahead == 'L' || - lookahead == 'l') ADVANCE(111); + lookahead == 'l') ADVANCE(128); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(117); + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(134); END_STATE(); - case 118: + case 135: ACCEPT_TOKEN(sym_float); END_STATE(); - case 119: + case 136: ACCEPT_TOKEN(sym_float); - if (lookahead == '_') ADVANCE(121); + if (lookahead == '_') ADVANCE(138); if (lookahead == 'E' || - lookahead == 'e') ADVANCE(29); + lookahead == 'e') ADVANCE(30); if (lookahead == 'J' || lookahead == 'L' || lookahead == 'j' || - lookahead == 'l') ADVANCE(118); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(119); + lookahead == 'l') ADVANCE(135); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(136); END_STATE(); - case 120: + case 137: ACCEPT_TOKEN(sym_float); - if (lookahead == '_') ADVANCE(122); + if (lookahead == '_') ADVANCE(139); if (lookahead == 'J' || lookahead == 'L' || lookahead == 'j' || - lookahead == 'l') ADVANCE(118); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(120); + lookahead == 'l') ADVANCE(135); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(137); END_STATE(); - case 121: + case 138: ACCEPT_TOKEN(sym_float); if (lookahead == 'E' || - lookahead == 'e') ADVANCE(29); + lookahead == 'e') ADVANCE(30); if (lookahead == 'J' || lookahead == 'L' || lookahead == 'j' || - lookahead == 'l') ADVANCE(118); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(119); + lookahead == 'l') ADVANCE(135); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(136); END_STATE(); - case 122: + case 139: ACCEPT_TOKEN(sym_float); if (lookahead == 'J' || lookahead == 'L' || lookahead == 'j' || - lookahead == 'l') ADVANCE(118); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(120); + lookahead == 'l') ADVANCE(135); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(137); END_STATE(); - case 123: + case 140: ACCEPT_TOKEN(sym_identifier); - if (sym_identifier_character_set_2(lookahead)) ADVANCE(123); + if (set_contains(sym_identifier_character_set_2, 800, lookahead)) ADVANCE(140); END_STATE(); - case 124: + case 141: ACCEPT_TOKEN(sym_comment); if (lookahead != 0 && - lookahead != '\n') ADVANCE(124); + lookahead != '\n') ADVANCE(141); END_STATE(); - case 125: - ACCEPT_TOKEN(sym__semicolon); + case 142: + ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); default: return false; @@ -5590,7 +5860,7 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { if (lookahead == 'F') ADVANCE(1); if (lookahead == 'N') ADVANCE(2); if (lookahead == 'T') ADVANCE(3); - if (lookahead == '\\') SKIP(4) + if (lookahead == '\\') SKIP(4); if (lookahead == '_') ADVANCE(5); if (lookahead == 'a') ADVANCE(6); if (lookahead == 'b') ADVANCE(7); @@ -5609,14 +5879,11 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { if (lookahead == 't') ADVANCE(20); if (lookahead == 'w') ADVANCE(21); if (lookahead == 'y') ADVANCE(22); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(0) + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(0); END_STATE(); case 1: if (lookahead == 'a') ADVANCE(23); @@ -5628,8 +5895,8 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { if (lookahead == 'r') ADVANCE(25); END_STATE(); case 4: - if (lookahead == '\n') SKIP(0) - if (lookahead == '\r') SKIP(26) + if (lookahead == '\n') SKIP(0); + if (lookahead == '\r') SKIP(26); END_STATE(); case 5: ACCEPT_TOKEN(sym_match_wildcard_pattern); @@ -5710,7 +5977,7 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { if (lookahead == 'u') ADVANCE(61); END_STATE(); case 26: - if (lookahead == '\n') SKIP(0) + if (lookahead == '\n') SKIP(0); END_STATE(); case 27: if (lookahead == 'f') ADVANCE(62); @@ -6136,817 +6403,817 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0, .external_lex_state = 1}, - [1] = {.lex_state = 50, .external_lex_state = 2}, - [2] = {.lex_state = 50, .external_lex_state = 3}, - [3] = {.lex_state = 50, .external_lex_state = 3}, - [4] = {.lex_state = 50, .external_lex_state = 3}, - [5] = {.lex_state = 50, .external_lex_state = 3}, - [6] = {.lex_state = 50, .external_lex_state = 3}, - [7] = {.lex_state = 50, .external_lex_state = 3}, - [8] = {.lex_state = 50, .external_lex_state = 3}, - [9] = {.lex_state = 50, .external_lex_state = 3}, - [10] = {.lex_state = 50, .external_lex_state = 3}, - [11] = {.lex_state = 50, .external_lex_state = 3}, - [12] = {.lex_state = 50, .external_lex_state = 3}, - [13] = {.lex_state = 50, .external_lex_state = 3}, - [14] = {.lex_state = 50, .external_lex_state = 3}, - [15] = {.lex_state = 50, .external_lex_state = 3}, - [16] = {.lex_state = 50, .external_lex_state = 3}, - [17] = {.lex_state = 50, .external_lex_state = 3}, - [18] = {.lex_state = 50, .external_lex_state = 3}, - [19] = {.lex_state = 50, .external_lex_state = 3}, - [20] = {.lex_state = 50, .external_lex_state = 3}, - [21] = {.lex_state = 50, .external_lex_state = 3}, - [22] = {.lex_state = 50, .external_lex_state = 3}, - [23] = {.lex_state = 50, .external_lex_state = 3}, - [24] = {.lex_state = 50, .external_lex_state = 3}, - [25] = {.lex_state = 50, .external_lex_state = 3}, - [26] = {.lex_state = 50, .external_lex_state = 3}, - [27] = {.lex_state = 50, .external_lex_state = 3}, - [28] = {.lex_state = 50, .external_lex_state = 3}, - [29] = {.lex_state = 50, .external_lex_state = 3}, - [30] = {.lex_state = 50, .external_lex_state = 3}, - [31] = {.lex_state = 50, .external_lex_state = 3}, - [32] = {.lex_state = 50, .external_lex_state = 3}, - [33] = {.lex_state = 50, .external_lex_state = 3}, - [34] = {.lex_state = 50, .external_lex_state = 3}, - [35] = {.lex_state = 50, .external_lex_state = 3}, - [36] = {.lex_state = 50, .external_lex_state = 3}, - [37] = {.lex_state = 50, .external_lex_state = 3}, - [38] = {.lex_state = 50, .external_lex_state = 3}, - [39] = {.lex_state = 50, .external_lex_state = 3}, - [40] = {.lex_state = 50, .external_lex_state = 3}, - [41] = {.lex_state = 50, .external_lex_state = 3}, - [42] = {.lex_state = 50, .external_lex_state = 3}, - [43] = {.lex_state = 50, .external_lex_state = 3}, - [44] = {.lex_state = 50, .external_lex_state = 3}, - [45] = {.lex_state = 50, .external_lex_state = 3}, - [46] = {.lex_state = 50, .external_lex_state = 3}, - [47] = {.lex_state = 50, .external_lex_state = 3}, - [48] = {.lex_state = 50, .external_lex_state = 3}, - [49] = {.lex_state = 50, .external_lex_state = 3}, - [50] = {.lex_state = 50, .external_lex_state = 3}, - [51] = {.lex_state = 50, .external_lex_state = 3}, - [52] = {.lex_state = 50, .external_lex_state = 3}, - [53] = {.lex_state = 50, .external_lex_state = 3}, - [54] = {.lex_state = 50, .external_lex_state = 3}, - [55] = {.lex_state = 50, .external_lex_state = 3}, - [56] = {.lex_state = 50, .external_lex_state = 3}, - [57] = {.lex_state = 50, .external_lex_state = 3}, - [58] = {.lex_state = 50, .external_lex_state = 3}, - [59] = {.lex_state = 50, .external_lex_state = 3}, - [60] = {.lex_state = 50, .external_lex_state = 3}, - [61] = {.lex_state = 50, .external_lex_state = 3}, - [62] = {.lex_state = 50, .external_lex_state = 3}, - [63] = {.lex_state = 50, .external_lex_state = 3}, - [64] = {.lex_state = 50, .external_lex_state = 2}, - [65] = {.lex_state = 50, .external_lex_state = 2}, - [66] = {.lex_state = 50, .external_lex_state = 4}, - [67] = {.lex_state = 50, .external_lex_state = 4}, - [68] = {.lex_state = 50, .external_lex_state = 5}, - [69] = {.lex_state = 50, .external_lex_state = 5}, - [70] = {.lex_state = 50, .external_lex_state = 5}, - [71] = {.lex_state = 50, .external_lex_state = 5}, - [72] = {.lex_state = 50, .external_lex_state = 5}, - [73] = {.lex_state = 50, .external_lex_state = 5}, - [74] = {.lex_state = 50, .external_lex_state = 5}, - [75] = {.lex_state = 50, .external_lex_state = 5}, - [76] = {.lex_state = 50, .external_lex_state = 5}, - [77] = {.lex_state = 50, .external_lex_state = 5}, - [78] = {.lex_state = 50, .external_lex_state = 5}, - [79] = {.lex_state = 50, .external_lex_state = 5}, - [80] = {.lex_state = 50, .external_lex_state = 5}, - [81] = {.lex_state = 50, .external_lex_state = 5}, - [82] = {.lex_state = 50, .external_lex_state = 5}, - [83] = {.lex_state = 50, .external_lex_state = 5}, - [84] = {.lex_state = 50, .external_lex_state = 5}, - [85] = {.lex_state = 50, .external_lex_state = 5}, - [86] = {.lex_state = 50, .external_lex_state = 5}, - [87] = {.lex_state = 50, .external_lex_state = 5}, - [88] = {.lex_state = 50, .external_lex_state = 5}, - [89] = {.lex_state = 50, .external_lex_state = 5}, - [90] = {.lex_state = 50, .external_lex_state = 5}, - [91] = {.lex_state = 50, .external_lex_state = 5}, - [92] = {.lex_state = 50, .external_lex_state = 5}, - [93] = {.lex_state = 50, .external_lex_state = 5}, - [94] = {.lex_state = 50, .external_lex_state = 5}, - [95] = {.lex_state = 50, .external_lex_state = 5}, - [96] = {.lex_state = 50, .external_lex_state = 5}, - [97] = {.lex_state = 50, .external_lex_state = 5}, - [98] = {.lex_state = 50, .external_lex_state = 5}, - [99] = {.lex_state = 50, .external_lex_state = 5}, - [100] = {.lex_state = 50, .external_lex_state = 5}, - [101] = {.lex_state = 50, .external_lex_state = 5}, - [102] = {.lex_state = 50, .external_lex_state = 5}, - [103] = {.lex_state = 50, .external_lex_state = 5}, - [104] = {.lex_state = 50, .external_lex_state = 5}, - [105] = {.lex_state = 50, .external_lex_state = 5}, - [106] = {.lex_state = 50, .external_lex_state = 5}, - [107] = {.lex_state = 50, .external_lex_state = 5}, - [108] = {.lex_state = 50, .external_lex_state = 5}, - [109] = {.lex_state = 50, .external_lex_state = 5}, - [110] = {.lex_state = 50, .external_lex_state = 5}, - [111] = {.lex_state = 50, .external_lex_state = 4}, - [112] = {.lex_state = 50, .external_lex_state = 5}, - [113] = {.lex_state = 50, .external_lex_state = 5}, - [114] = {.lex_state = 50, .external_lex_state = 5}, - [115] = {.lex_state = 50, .external_lex_state = 5}, - [116] = {.lex_state = 50, .external_lex_state = 5}, - [117] = {.lex_state = 50, .external_lex_state = 5}, - [118] = {.lex_state = 50, .external_lex_state = 5}, - [119] = {.lex_state = 50, .external_lex_state = 5}, - [120] = {.lex_state = 50, .external_lex_state = 5}, - [121] = {.lex_state = 50, .external_lex_state = 5}, - [122] = {.lex_state = 50, .external_lex_state = 5}, - [123] = {.lex_state = 50, .external_lex_state = 5}, - [124] = {.lex_state = 50, .external_lex_state = 5}, - [125] = {.lex_state = 50, .external_lex_state = 5}, - [126] = {.lex_state = 50, .external_lex_state = 5}, - [127] = {.lex_state = 50, .external_lex_state = 4}, - [128] = {.lex_state = 50, .external_lex_state = 4}, - [129] = {.lex_state = 50, .external_lex_state = 4}, - [130] = {.lex_state = 50, .external_lex_state = 4}, - [131] = {.lex_state = 50, .external_lex_state = 4}, - [132] = {.lex_state = 50, .external_lex_state = 4}, - [133] = {.lex_state = 50, .external_lex_state = 2}, - [134] = {.lex_state = 50, .external_lex_state = 4}, - [135] = {.lex_state = 50, .external_lex_state = 2}, - [136] = {.lex_state = 50, .external_lex_state = 2}, - [137] = {.lex_state = 14, .external_lex_state = 2}, - [138] = {.lex_state = 50, .external_lex_state = 2}, - [139] = {.lex_state = 14, .external_lex_state = 2}, - [140] = {.lex_state = 50, .external_lex_state = 4}, + [1] = {.lex_state = 51, .external_lex_state = 2}, + [2] = {.lex_state = 51, .external_lex_state = 3}, + [3] = {.lex_state = 51, .external_lex_state = 3}, + [4] = {.lex_state = 51, .external_lex_state = 3}, + [5] = {.lex_state = 51, .external_lex_state = 3}, + [6] = {.lex_state = 51, .external_lex_state = 3}, + [7] = {.lex_state = 51, .external_lex_state = 3}, + [8] = {.lex_state = 51, .external_lex_state = 3}, + [9] = {.lex_state = 51, .external_lex_state = 3}, + [10] = {.lex_state = 51, .external_lex_state = 3}, + [11] = {.lex_state = 51, .external_lex_state = 3}, + [12] = {.lex_state = 51, .external_lex_state = 3}, + [13] = {.lex_state = 51, .external_lex_state = 3}, + [14] = {.lex_state = 51, .external_lex_state = 3}, + [15] = {.lex_state = 51, .external_lex_state = 3}, + [16] = {.lex_state = 51, .external_lex_state = 3}, + [17] = {.lex_state = 51, .external_lex_state = 3}, + [18] = {.lex_state = 51, .external_lex_state = 3}, + [19] = {.lex_state = 51, .external_lex_state = 3}, + [20] = {.lex_state = 51, .external_lex_state = 3}, + [21] = {.lex_state = 51, .external_lex_state = 3}, + [22] = {.lex_state = 51, .external_lex_state = 3}, + [23] = {.lex_state = 51, .external_lex_state = 3}, + [24] = {.lex_state = 51, .external_lex_state = 3}, + [25] = {.lex_state = 51, .external_lex_state = 3}, + [26] = {.lex_state = 51, .external_lex_state = 3}, + [27] = {.lex_state = 51, .external_lex_state = 3}, + [28] = {.lex_state = 51, .external_lex_state = 3}, + [29] = {.lex_state = 51, .external_lex_state = 3}, + [30] = {.lex_state = 51, .external_lex_state = 3}, + [31] = {.lex_state = 51, .external_lex_state = 3}, + [32] = {.lex_state = 51, .external_lex_state = 3}, + [33] = {.lex_state = 51, .external_lex_state = 3}, + [34] = {.lex_state = 51, .external_lex_state = 3}, + [35] = {.lex_state = 51, .external_lex_state = 3}, + [36] = {.lex_state = 51, .external_lex_state = 3}, + [37] = {.lex_state = 51, .external_lex_state = 3}, + [38] = {.lex_state = 51, .external_lex_state = 3}, + [39] = {.lex_state = 51, .external_lex_state = 3}, + [40] = {.lex_state = 51, .external_lex_state = 3}, + [41] = {.lex_state = 51, .external_lex_state = 3}, + [42] = {.lex_state = 51, .external_lex_state = 3}, + [43] = {.lex_state = 51, .external_lex_state = 3}, + [44] = {.lex_state = 51, .external_lex_state = 3}, + [45] = {.lex_state = 51, .external_lex_state = 3}, + [46] = {.lex_state = 51, .external_lex_state = 3}, + [47] = {.lex_state = 51, .external_lex_state = 3}, + [48] = {.lex_state = 51, .external_lex_state = 3}, + [49] = {.lex_state = 51, .external_lex_state = 3}, + [50] = {.lex_state = 51, .external_lex_state = 3}, + [51] = {.lex_state = 51, .external_lex_state = 3}, + [52] = {.lex_state = 51, .external_lex_state = 3}, + [53] = {.lex_state = 51, .external_lex_state = 3}, + [54] = {.lex_state = 51, .external_lex_state = 3}, + [55] = {.lex_state = 51, .external_lex_state = 3}, + [56] = {.lex_state = 51, .external_lex_state = 3}, + [57] = {.lex_state = 51, .external_lex_state = 3}, + [58] = {.lex_state = 51, .external_lex_state = 3}, + [59] = {.lex_state = 51, .external_lex_state = 3}, + [60] = {.lex_state = 51, .external_lex_state = 2}, + [61] = {.lex_state = 51, .external_lex_state = 3}, + [62] = {.lex_state = 51, .external_lex_state = 2}, + [63] = {.lex_state = 51, .external_lex_state = 3}, + [64] = {.lex_state = 51, .external_lex_state = 3}, + [65] = {.lex_state = 51, .external_lex_state = 3}, + [66] = {.lex_state = 51, .external_lex_state = 4}, + [67] = {.lex_state = 51, .external_lex_state = 4}, + [68] = {.lex_state = 51, .external_lex_state = 4}, + [69] = {.lex_state = 51, .external_lex_state = 5}, + [70] = {.lex_state = 51, .external_lex_state = 5}, + [71] = {.lex_state = 51, .external_lex_state = 5}, + [72] = {.lex_state = 51, .external_lex_state = 5}, + [73] = {.lex_state = 51, .external_lex_state = 5}, + [74] = {.lex_state = 51, .external_lex_state = 5}, + [75] = {.lex_state = 51, .external_lex_state = 5}, + [76] = {.lex_state = 51, .external_lex_state = 5}, + [77] = {.lex_state = 51, .external_lex_state = 5}, + [78] = {.lex_state = 51, .external_lex_state = 5}, + [79] = {.lex_state = 51, .external_lex_state = 5}, + [80] = {.lex_state = 51, .external_lex_state = 5}, + [81] = {.lex_state = 51, .external_lex_state = 5}, + [82] = {.lex_state = 51, .external_lex_state = 5}, + [83] = {.lex_state = 51, .external_lex_state = 5}, + [84] = {.lex_state = 51, .external_lex_state = 5}, + [85] = {.lex_state = 51, .external_lex_state = 5}, + [86] = {.lex_state = 51, .external_lex_state = 5}, + [87] = {.lex_state = 51, .external_lex_state = 5}, + [88] = {.lex_state = 51, .external_lex_state = 5}, + [89] = {.lex_state = 51, .external_lex_state = 5}, + [90] = {.lex_state = 51, .external_lex_state = 5}, + [91] = {.lex_state = 51, .external_lex_state = 5}, + [92] = {.lex_state = 51, .external_lex_state = 5}, + [93] = {.lex_state = 51, .external_lex_state = 5}, + [94] = {.lex_state = 51, .external_lex_state = 5}, + [95] = {.lex_state = 51, .external_lex_state = 5}, + [96] = {.lex_state = 51, .external_lex_state = 5}, + [97] = {.lex_state = 51, .external_lex_state = 5}, + [98] = {.lex_state = 51, .external_lex_state = 5}, + [99] = {.lex_state = 51, .external_lex_state = 5}, + [100] = {.lex_state = 51, .external_lex_state = 5}, + [101] = {.lex_state = 51, .external_lex_state = 5}, + [102] = {.lex_state = 51, .external_lex_state = 5}, + [103] = {.lex_state = 51, .external_lex_state = 5}, + [104] = {.lex_state = 51, .external_lex_state = 5}, + [105] = {.lex_state = 51, .external_lex_state = 5}, + [106] = {.lex_state = 51, .external_lex_state = 5}, + [107] = {.lex_state = 51, .external_lex_state = 5}, + [108] = {.lex_state = 51, .external_lex_state = 5}, + [109] = {.lex_state = 51, .external_lex_state = 5}, + [110] = {.lex_state = 51, .external_lex_state = 5}, + [111] = {.lex_state = 51, .external_lex_state = 5}, + [112] = {.lex_state = 51, .external_lex_state = 5}, + [113] = {.lex_state = 51, .external_lex_state = 5}, + [114] = {.lex_state = 51, .external_lex_state = 5}, + [115] = {.lex_state = 51, .external_lex_state = 5}, + [116] = {.lex_state = 51, .external_lex_state = 5}, + [117] = {.lex_state = 51, .external_lex_state = 5}, + [118] = {.lex_state = 51, .external_lex_state = 5}, + [119] = {.lex_state = 51, .external_lex_state = 5}, + [120] = {.lex_state = 51, .external_lex_state = 5}, + [121] = {.lex_state = 51, .external_lex_state = 5}, + [122] = {.lex_state = 51, .external_lex_state = 5}, + [123] = {.lex_state = 51, .external_lex_state = 5}, + [124] = {.lex_state = 51, .external_lex_state = 5}, + [125] = {.lex_state = 51, .external_lex_state = 5}, + [126] = {.lex_state = 51, .external_lex_state = 5}, + [127] = {.lex_state = 51, .external_lex_state = 4}, + [128] = {.lex_state = 51, .external_lex_state = 4}, + [129] = {.lex_state = 51, .external_lex_state = 4}, + [130] = {.lex_state = 51, .external_lex_state = 4}, + [131] = {.lex_state = 51, .external_lex_state = 4}, + [132] = {.lex_state = 51, .external_lex_state = 4}, + [133] = {.lex_state = 51, .external_lex_state = 2}, + [134] = {.lex_state = 51, .external_lex_state = 4}, + [135] = {.lex_state = 51, .external_lex_state = 2}, + [136] = {.lex_state = 51, .external_lex_state = 2}, + [137] = {.lex_state = 51, .external_lex_state = 2}, + [138] = {.lex_state = 51, .external_lex_state = 2}, + [139] = {.lex_state = 51, .external_lex_state = 2}, + [140] = {.lex_state = 51, .external_lex_state = 4}, [141] = {.lex_state = 14, .external_lex_state = 2}, - [142] = {.lex_state = 14, .external_lex_state = 2}, - [143] = {.lex_state = 50, .external_lex_state = 2}, - [144] = {.lex_state = 50, .external_lex_state = 2}, - [145] = {.lex_state = 50, .external_lex_state = 4}, - [146] = {.lex_state = 50, .external_lex_state = 2}, - [147] = {.lex_state = 14, .external_lex_state = 2}, - [148] = {.lex_state = 50, .external_lex_state = 2}, - [149] = {.lex_state = 50, .external_lex_state = 2}, - [150] = {.lex_state = 50, .external_lex_state = 2}, - [151] = {.lex_state = 50, .external_lex_state = 2}, - [152] = {.lex_state = 14, .external_lex_state = 2}, - [153] = {.lex_state = 50, .external_lex_state = 2}, - [154] = {.lex_state = 50, .external_lex_state = 2}, - [155] = {.lex_state = 50, .external_lex_state = 2}, - [156] = {.lex_state = 50, .external_lex_state = 2}, - [157] = {.lex_state = 50, .external_lex_state = 2}, - [158] = {.lex_state = 14, .external_lex_state = 2}, - [159] = {.lex_state = 50, .external_lex_state = 2}, - [160] = {.lex_state = 14, .external_lex_state = 2}, - [161] = {.lex_state = 50, .external_lex_state = 2}, - [162] = {.lex_state = 14, .external_lex_state = 2}, - [163] = {.lex_state = 14, .external_lex_state = 2}, - [164] = {.lex_state = 50, .external_lex_state = 2}, - [165] = {.lex_state = 14, .external_lex_state = 2}, - [166] = {.lex_state = 50, .external_lex_state = 2}, - [167] = {.lex_state = 50, .external_lex_state = 2}, - [168] = {.lex_state = 50, .external_lex_state = 2}, - [169] = {.lex_state = 50, .external_lex_state = 2}, - [170] = {.lex_state = 50, .external_lex_state = 2}, - [171] = {.lex_state = 50, .external_lex_state = 2}, - [172] = {.lex_state = 50, .external_lex_state = 2}, - [173] = {.lex_state = 50, .external_lex_state = 2}, - [174] = {.lex_state = 50, .external_lex_state = 2}, - [175] = {.lex_state = 50, .external_lex_state = 2}, - [176] = {.lex_state = 50, .external_lex_state = 2}, - [177] = {.lex_state = 50, .external_lex_state = 4}, - [178] = {.lex_state = 50, .external_lex_state = 4}, - [179] = {.lex_state = 50, .external_lex_state = 2}, - [180] = {.lex_state = 50, .external_lex_state = 2}, - [181] = {.lex_state = 50, .external_lex_state = 2}, - [182] = {.lex_state = 50, .external_lex_state = 2}, - [183] = {.lex_state = 50, .external_lex_state = 2}, - [184] = {.lex_state = 50, .external_lex_state = 2}, - [185] = {.lex_state = 50, .external_lex_state = 2}, - [186] = {.lex_state = 50, .external_lex_state = 4}, - [187] = {.lex_state = 50, .external_lex_state = 2}, - [188] = {.lex_state = 50, .external_lex_state = 4}, - [189] = {.lex_state = 50, .external_lex_state = 2}, - [190] = {.lex_state = 50, .external_lex_state = 4}, - [191] = {.lex_state = 50, .external_lex_state = 2}, - [192] = {.lex_state = 50, .external_lex_state = 2}, - [193] = {.lex_state = 50, .external_lex_state = 2}, - [194] = {.lex_state = 50, .external_lex_state = 2}, - [195] = {.lex_state = 50, .external_lex_state = 2}, - [196] = {.lex_state = 50, .external_lex_state = 2}, - [197] = {.lex_state = 50, .external_lex_state = 2}, - [198] = {.lex_state = 50, .external_lex_state = 2}, - [199] = {.lex_state = 50, .external_lex_state = 2}, - [200] = {.lex_state = 50, .external_lex_state = 2}, - [201] = {.lex_state = 50, .external_lex_state = 2}, - [202] = {.lex_state = 50, .external_lex_state = 2}, - [203] = {.lex_state = 50, .external_lex_state = 2}, - [204] = {.lex_state = 50, .external_lex_state = 2}, - [205] = {.lex_state = 50, .external_lex_state = 2}, - [206] = {.lex_state = 50, .external_lex_state = 2}, - [207] = {.lex_state = 50, .external_lex_state = 2}, - [208] = {.lex_state = 50, .external_lex_state = 2}, - [209] = {.lex_state = 50, .external_lex_state = 2}, - [210] = {.lex_state = 50, .external_lex_state = 4}, - [211] = {.lex_state = 50, .external_lex_state = 2}, - [212] = {.lex_state = 50, .external_lex_state = 2}, - [213] = {.lex_state = 14, .external_lex_state = 2}, - [214] = {.lex_state = 14, .external_lex_state = 2}, - [215] = {.lex_state = 14, .external_lex_state = 2}, - [216] = {.lex_state = 14, .external_lex_state = 2}, - [217] = {.lex_state = 50, .external_lex_state = 2}, - [218] = {.lex_state = 14, .external_lex_state = 2}, - [219] = {.lex_state = 50, .external_lex_state = 2}, - [220] = {.lex_state = 14, .external_lex_state = 2}, - [221] = {.lex_state = 50, .external_lex_state = 2}, - [222] = {.lex_state = 50, .external_lex_state = 2}, - [223] = {.lex_state = 50, .external_lex_state = 2}, - [224] = {.lex_state = 50, .external_lex_state = 2}, - [225] = {.lex_state = 50, .external_lex_state = 2}, - [226] = {.lex_state = 14, .external_lex_state = 2}, - [227] = {.lex_state = 50, .external_lex_state = 2}, - [228] = {.lex_state = 50, .external_lex_state = 2}, - [229] = {.lex_state = 50, .external_lex_state = 2}, - [230] = {.lex_state = 50, .external_lex_state = 2}, - [231] = {.lex_state = 50, .external_lex_state = 2}, - [232] = {.lex_state = 50, .external_lex_state = 2}, - [233] = {.lex_state = 50, .external_lex_state = 2}, - [234] = {.lex_state = 50, .external_lex_state = 2}, - [235] = {.lex_state = 50, .external_lex_state = 2}, - [236] = {.lex_state = 50, .external_lex_state = 2}, - [237] = {.lex_state = 50, .external_lex_state = 2}, - [238] = {.lex_state = 50, .external_lex_state = 2}, - [239] = {.lex_state = 50, .external_lex_state = 2}, - [240] = {.lex_state = 50, .external_lex_state = 2}, - [241] = {.lex_state = 50, .external_lex_state = 2}, - [242] = {.lex_state = 50, .external_lex_state = 2}, - [243] = {.lex_state = 14, .external_lex_state = 2}, - [244] = {.lex_state = 16}, - [245] = {.lex_state = 16}, - [246] = {.lex_state = 14, .external_lex_state = 2}, - [247] = {.lex_state = 50, .external_lex_state = 2}, - [248] = {.lex_state = 50, .external_lex_state = 2}, - [249] = {.lex_state = 50, .external_lex_state = 2}, - [250] = {.lex_state = 50, .external_lex_state = 3}, - [251] = {.lex_state = 50, .external_lex_state = 2}, - [252] = {.lex_state = 50, .external_lex_state = 3}, - [253] = {.lex_state = 50, .external_lex_state = 2}, - [254] = {.lex_state = 50, .external_lex_state = 2}, - [255] = {.lex_state = 50, .external_lex_state = 3}, - [256] = {.lex_state = 50, .external_lex_state = 2}, - [257] = {.lex_state = 50, .external_lex_state = 3}, - [258] = {.lex_state = 50, .external_lex_state = 2}, - [259] = {.lex_state = 50, .external_lex_state = 2}, - [260] = {.lex_state = 50, .external_lex_state = 2}, - [261] = {.lex_state = 50, .external_lex_state = 2}, - [262] = {.lex_state = 14, .external_lex_state = 2}, - [263] = {.lex_state = 14, .external_lex_state = 2}, - [264] = {.lex_state = 50, .external_lex_state = 2}, - [265] = {.lex_state = 50, .external_lex_state = 4}, - [266] = {.lex_state = 50, .external_lex_state = 2}, - [267] = {.lex_state = 14, .external_lex_state = 2}, - [268] = {.lex_state = 50, .external_lex_state = 2}, - [269] = {.lex_state = 50, .external_lex_state = 2}, - [270] = {.lex_state = 50, .external_lex_state = 2}, - [271] = {.lex_state = 50, .external_lex_state = 4}, - [272] = {.lex_state = 50, .external_lex_state = 4}, - [273] = {.lex_state = 50, .external_lex_state = 2}, - [274] = {.lex_state = 50, .external_lex_state = 2}, - [275] = {.lex_state = 50, .external_lex_state = 2}, - [276] = {.lex_state = 50, .external_lex_state = 2}, - [277] = {.lex_state = 14, .external_lex_state = 2}, - [278] = {.lex_state = 50, .external_lex_state = 2}, - [279] = {.lex_state = 50, .external_lex_state = 2}, - [280] = {.lex_state = 50, .external_lex_state = 2}, - [281] = {.lex_state = 50, .external_lex_state = 2}, - [282] = {.lex_state = 50, .external_lex_state = 2}, - [283] = {.lex_state = 50, .external_lex_state = 2}, - [284] = {.lex_state = 50, .external_lex_state = 2}, - [285] = {.lex_state = 50, .external_lex_state = 2}, - [286] = {.lex_state = 50, .external_lex_state = 4}, - [287] = {.lex_state = 50, .external_lex_state = 2}, - [288] = {.lex_state = 50, .external_lex_state = 2}, - [289] = {.lex_state = 50, .external_lex_state = 2}, - [290] = {.lex_state = 50, .external_lex_state = 2}, - [291] = {.lex_state = 50, .external_lex_state = 2}, - [292] = {.lex_state = 50, .external_lex_state = 3}, - [293] = {.lex_state = 50, .external_lex_state = 3}, - [294] = {.lex_state = 50, .external_lex_state = 2}, - [295] = {.lex_state = 50, .external_lex_state = 2}, - [296] = {.lex_state = 50, .external_lex_state = 3}, - [297] = {.lex_state = 50, .external_lex_state = 2}, - [298] = {.lex_state = 15, .external_lex_state = 6}, - [299] = {.lex_state = 15, .external_lex_state = 6}, - [300] = {.lex_state = 50, .external_lex_state = 3}, - [301] = {.lex_state = 50, .external_lex_state = 3}, - [302] = {.lex_state = 50, .external_lex_state = 2}, - [303] = {.lex_state = 50, .external_lex_state = 2}, - [304] = {.lex_state = 50, .external_lex_state = 3}, - [305] = {.lex_state = 50, .external_lex_state = 2}, - [306] = {.lex_state = 50, .external_lex_state = 3}, - [307] = {.lex_state = 50, .external_lex_state = 3}, - [308] = {.lex_state = 50, .external_lex_state = 2}, - [309] = {.lex_state = 50, .external_lex_state = 2}, - [310] = {.lex_state = 50, .external_lex_state = 3}, - [311] = {.lex_state = 50, .external_lex_state = 2}, - [312] = {.lex_state = 50, .external_lex_state = 3}, - [313] = {.lex_state = 50, .external_lex_state = 3}, - [314] = {.lex_state = 50, .external_lex_state = 2}, - [315] = {.lex_state = 50, .external_lex_state = 2}, - [316] = {.lex_state = 50, .external_lex_state = 2}, - [317] = {.lex_state = 50, .external_lex_state = 2}, - [318] = {.lex_state = 50, .external_lex_state = 2}, - [319] = {.lex_state = 50, .external_lex_state = 2}, - [320] = {.lex_state = 50, .external_lex_state = 2}, - [321] = {.lex_state = 50, .external_lex_state = 2}, - [322] = {.lex_state = 50, .external_lex_state = 2}, - [323] = {.lex_state = 50, .external_lex_state = 2}, - [324] = {.lex_state = 50, .external_lex_state = 2}, - [325] = {.lex_state = 50, .external_lex_state = 2}, - [326] = {.lex_state = 50, .external_lex_state = 2}, - [327] = {.lex_state = 50, .external_lex_state = 2}, - [328] = {.lex_state = 50, .external_lex_state = 2}, - [329] = {.lex_state = 50, .external_lex_state = 2}, - [330] = {.lex_state = 50, .external_lex_state = 2}, - [331] = {.lex_state = 50, .external_lex_state = 2}, - [332] = {.lex_state = 50, .external_lex_state = 2}, - [333] = {.lex_state = 50, .external_lex_state = 2}, - [334] = {.lex_state = 50, .external_lex_state = 2}, - [335] = {.lex_state = 50, .external_lex_state = 2}, - [336] = {.lex_state = 50, .external_lex_state = 2}, - [337] = {.lex_state = 50, .external_lex_state = 2}, - [338] = {.lex_state = 50, .external_lex_state = 2}, - [339] = {.lex_state = 50, .external_lex_state = 2}, - [340] = {.lex_state = 50, .external_lex_state = 2}, - [341] = {.lex_state = 50, .external_lex_state = 2}, - [342] = {.lex_state = 50, .external_lex_state = 2}, - [343] = {.lex_state = 50, .external_lex_state = 2}, - [344] = {.lex_state = 50, .external_lex_state = 2}, - [345] = {.lex_state = 50, .external_lex_state = 2}, - [346] = {.lex_state = 50, .external_lex_state = 2}, - [347] = {.lex_state = 50, .external_lex_state = 2}, - [348] = {.lex_state = 50, .external_lex_state = 2}, - [349] = {.lex_state = 50, .external_lex_state = 2}, - [350] = {.lex_state = 50, .external_lex_state = 2}, - [351] = {.lex_state = 50, .external_lex_state = 2}, - [352] = {.lex_state = 50, .external_lex_state = 2}, - [353] = {.lex_state = 50, .external_lex_state = 2}, - [354] = {.lex_state = 50, .external_lex_state = 2}, - [355] = {.lex_state = 50, .external_lex_state = 2}, - [356] = {.lex_state = 50, .external_lex_state = 2}, - [357] = {.lex_state = 50, .external_lex_state = 2}, - [358] = {.lex_state = 50, .external_lex_state = 2}, - [359] = {.lex_state = 50, .external_lex_state = 2}, - [360] = {.lex_state = 50, .external_lex_state = 2}, - [361] = {.lex_state = 50, .external_lex_state = 2}, - [362] = {.lex_state = 50, .external_lex_state = 2}, - [363] = {.lex_state = 50, .external_lex_state = 2}, - [364] = {.lex_state = 50, .external_lex_state = 2}, - [365] = {.lex_state = 50, .external_lex_state = 2}, - [366] = {.lex_state = 50, .external_lex_state = 2}, - [367] = {.lex_state = 50, .external_lex_state = 2}, - [368] = {.lex_state = 50, .external_lex_state = 2}, - [369] = {.lex_state = 50, .external_lex_state = 3}, - [370] = {.lex_state = 50, .external_lex_state = 2}, - [371] = {.lex_state = 50, .external_lex_state = 2}, - [372] = {.lex_state = 50, .external_lex_state = 2}, - [373] = {.lex_state = 50, .external_lex_state = 2}, - [374] = {.lex_state = 50, .external_lex_state = 2}, - [375] = {.lex_state = 50, .external_lex_state = 2}, - [376] = {.lex_state = 50, .external_lex_state = 2}, - [377] = {.lex_state = 50, .external_lex_state = 2}, - [378] = {.lex_state = 50, .external_lex_state = 2}, - [379] = {.lex_state = 50, .external_lex_state = 2}, - [380] = {.lex_state = 50, .external_lex_state = 2}, - [381] = {.lex_state = 15, .external_lex_state = 7}, - [382] = {.lex_state = 50, .external_lex_state = 2}, - [383] = {.lex_state = 50, .external_lex_state = 2}, - [384] = {.lex_state = 50, .external_lex_state = 2}, - [385] = {.lex_state = 50, .external_lex_state = 2}, - [386] = {.lex_state = 50, .external_lex_state = 2}, - [387] = {.lex_state = 50, .external_lex_state = 2}, - [388] = {.lex_state = 50, .external_lex_state = 2}, - [389] = {.lex_state = 50, .external_lex_state = 2}, - [390] = {.lex_state = 50, .external_lex_state = 3}, - [391] = {.lex_state = 50, .external_lex_state = 2}, - [392] = {.lex_state = 50, .external_lex_state = 3}, - [393] = {.lex_state = 50, .external_lex_state = 3}, - [394] = {.lex_state = 50, .external_lex_state = 2}, - [395] = {.lex_state = 50, .external_lex_state = 2}, - [396] = {.lex_state = 50, .external_lex_state = 2}, - [397] = {.lex_state = 15, .external_lex_state = 6}, - [398] = {.lex_state = 50, .external_lex_state = 2}, - [399] = {.lex_state = 50, .external_lex_state = 2}, - [400] = {.lex_state = 50, .external_lex_state = 2}, - [401] = {.lex_state = 50, .external_lex_state = 3}, - [402] = {.lex_state = 50, .external_lex_state = 3}, - [403] = {.lex_state = 50, .external_lex_state = 3}, - [404] = {.lex_state = 50, .external_lex_state = 3}, - [405] = {.lex_state = 50, .external_lex_state = 2}, - [406] = {.lex_state = 50, .external_lex_state = 3}, - [407] = {.lex_state = 50, .external_lex_state = 2}, - [408] = {.lex_state = 50, .external_lex_state = 3}, - [409] = {.lex_state = 50, .external_lex_state = 2}, - [410] = {.lex_state = 50, .external_lex_state = 3}, - [411] = {.lex_state = 50, .external_lex_state = 2}, - [412] = {.lex_state = 50, .external_lex_state = 3}, - [413] = {.lex_state = 50, .external_lex_state = 3}, - [414] = {.lex_state = 50, .external_lex_state = 2}, - [415] = {.lex_state = 50, .external_lex_state = 2}, - [416] = {.lex_state = 15}, - [417] = {.lex_state = 50, .external_lex_state = 2}, - [418] = {.lex_state = 50, .external_lex_state = 3}, - [419] = {.lex_state = 50, .external_lex_state = 3}, - [420] = {.lex_state = 50, .external_lex_state = 2}, - [421] = {.lex_state = 50, .external_lex_state = 3}, - [422] = {.lex_state = 16, .external_lex_state = 6}, - [423] = {.lex_state = 50, .external_lex_state = 2}, - [424] = {.lex_state = 50, .external_lex_state = 3}, - [425] = {.lex_state = 50, .external_lex_state = 3}, - [426] = {.lex_state = 50, .external_lex_state = 2}, - [427] = {.lex_state = 50, .external_lex_state = 3}, - [428] = {.lex_state = 50, .external_lex_state = 2}, - [429] = {.lex_state = 15, .external_lex_state = 6}, - [430] = {.lex_state = 50, .external_lex_state = 3}, - [431] = {.lex_state = 50, .external_lex_state = 3}, - [432] = {.lex_state = 50, .external_lex_state = 2}, - [433] = {.lex_state = 50, .external_lex_state = 3}, - [434] = {.lex_state = 50, .external_lex_state = 2}, - [435] = {.lex_state = 50, .external_lex_state = 2}, - [436] = {.lex_state = 50, .external_lex_state = 3}, - [437] = {.lex_state = 50, .external_lex_state = 2}, - [438] = {.lex_state = 50, .external_lex_state = 2}, - [439] = {.lex_state = 50, .external_lex_state = 3}, - [440] = {.lex_state = 15, .external_lex_state = 6}, - [441] = {.lex_state = 50, .external_lex_state = 2}, - [442] = {.lex_state = 15}, - [443] = {.lex_state = 16, .external_lex_state = 6}, - [444] = {.lex_state = 50, .external_lex_state = 2}, - [445] = {.lex_state = 50, .external_lex_state = 2}, - [446] = {.lex_state = 16, .external_lex_state = 6}, - [447] = {.lex_state = 50, .external_lex_state = 2}, - [448] = {.lex_state = 50, .external_lex_state = 2}, - [449] = {.lex_state = 50, .external_lex_state = 2}, - [450] = {.lex_state = 50, .external_lex_state = 2}, - [451] = {.lex_state = 16, .external_lex_state = 6}, - [452] = {.lex_state = 16}, - [453] = {.lex_state = 50, .external_lex_state = 2}, - [454] = {.lex_state = 50, .external_lex_state = 2}, - [455] = {.lex_state = 50, .external_lex_state = 3}, - [456] = {.lex_state = 50, .external_lex_state = 2}, - [457] = {.lex_state = 50, .external_lex_state = 2}, - [458] = {.lex_state = 50, .external_lex_state = 2}, - [459] = {.lex_state = 16, .external_lex_state = 6}, - [460] = {.lex_state = 50, .external_lex_state = 3}, - [461] = {.lex_state = 50, .external_lex_state = 2}, - [462] = {.lex_state = 50, .external_lex_state = 3}, - [463] = {.lex_state = 50, .external_lex_state = 3}, - [464] = {.lex_state = 50, .external_lex_state = 3}, - [465] = {.lex_state = 50, .external_lex_state = 2}, - [466] = {.lex_state = 50, .external_lex_state = 3}, - [467] = {.lex_state = 50, .external_lex_state = 2}, - [468] = {.lex_state = 50, .external_lex_state = 3}, - [469] = {.lex_state = 50, .external_lex_state = 2}, - [470] = {.lex_state = 50, .external_lex_state = 3}, - [471] = {.lex_state = 50, .external_lex_state = 3}, - [472] = {.lex_state = 50, .external_lex_state = 2}, - [473] = {.lex_state = 50, .external_lex_state = 3}, - [474] = {.lex_state = 50, .external_lex_state = 3}, - [475] = {.lex_state = 50, .external_lex_state = 3}, - [476] = {.lex_state = 50, .external_lex_state = 2}, - [477] = {.lex_state = 50, .external_lex_state = 3}, - [478] = {.lex_state = 50, .external_lex_state = 3}, - [479] = {.lex_state = 50, .external_lex_state = 3}, - [480] = {.lex_state = 50, .external_lex_state = 3}, - [481] = {.lex_state = 50, .external_lex_state = 3}, - [482] = {.lex_state = 50, .external_lex_state = 2}, - [483] = {.lex_state = 50, .external_lex_state = 2}, - [484] = {.lex_state = 50, .external_lex_state = 2}, - [485] = {.lex_state = 50, .external_lex_state = 2}, - [486] = {.lex_state = 50, .external_lex_state = 3}, - [487] = {.lex_state = 50, .external_lex_state = 2}, - [488] = {.lex_state = 50, .external_lex_state = 3}, - [489] = {.lex_state = 50, .external_lex_state = 3}, - [490] = {.lex_state = 50, .external_lex_state = 2}, - [491] = {.lex_state = 50, .external_lex_state = 2}, - [492] = {.lex_state = 50, .external_lex_state = 3}, - [493] = {.lex_state = 50, .external_lex_state = 3}, - [494] = {.lex_state = 50, .external_lex_state = 3}, - [495] = {.lex_state = 50, .external_lex_state = 3}, - [496] = {.lex_state = 50, .external_lex_state = 3}, - [497] = {.lex_state = 50, .external_lex_state = 2}, - [498] = {.lex_state = 50, .external_lex_state = 3}, - [499] = {.lex_state = 50, .external_lex_state = 3}, - [500] = {.lex_state = 50, .external_lex_state = 3}, - [501] = {.lex_state = 50, .external_lex_state = 3}, - [502] = {.lex_state = 50, .external_lex_state = 2}, - [503] = {.lex_state = 50, .external_lex_state = 3}, - [504] = {.lex_state = 50, .external_lex_state = 2}, - [505] = {.lex_state = 50, .external_lex_state = 3}, - [506] = {.lex_state = 50, .external_lex_state = 2}, - [507] = {.lex_state = 50, .external_lex_state = 2}, - [508] = {.lex_state = 50, .external_lex_state = 2}, - [509] = {.lex_state = 50, .external_lex_state = 3}, - [510] = {.lex_state = 50, .external_lex_state = 2}, - [511] = {.lex_state = 50, .external_lex_state = 3}, - [512] = {.lex_state = 50, .external_lex_state = 3}, - [513] = {.lex_state = 50, .external_lex_state = 2}, - [514] = {.lex_state = 50, .external_lex_state = 3}, - [515] = {.lex_state = 50, .external_lex_state = 2}, - [516] = {.lex_state = 50, .external_lex_state = 3}, - [517] = {.lex_state = 50, .external_lex_state = 3}, - [518] = {.lex_state = 50, .external_lex_state = 2}, - [519] = {.lex_state = 50, .external_lex_state = 2}, - [520] = {.lex_state = 50, .external_lex_state = 2}, - [521] = {.lex_state = 50, .external_lex_state = 2}, - [522] = {.lex_state = 50, .external_lex_state = 3}, - [523] = {.lex_state = 50, .external_lex_state = 2}, - [524] = {.lex_state = 50, .external_lex_state = 2}, - [525] = {.lex_state = 50, .external_lex_state = 3}, - [526] = {.lex_state = 50, .external_lex_state = 3}, - [527] = {.lex_state = 50, .external_lex_state = 2}, - [528] = {.lex_state = 50, .external_lex_state = 2}, - [529] = {.lex_state = 50, .external_lex_state = 3}, - [530] = {.lex_state = 50, .external_lex_state = 3}, - [531] = {.lex_state = 50, .external_lex_state = 2}, - [532] = {.lex_state = 50, .external_lex_state = 2}, - [533] = {.lex_state = 50, .external_lex_state = 2}, - [534] = {.lex_state = 50, .external_lex_state = 2}, - [535] = {.lex_state = 50, .external_lex_state = 2}, - [536] = {.lex_state = 50, .external_lex_state = 3}, - [537] = {.lex_state = 50, .external_lex_state = 3}, - [538] = {.lex_state = 50, .external_lex_state = 3}, - [539] = {.lex_state = 50, .external_lex_state = 3}, - [540] = {.lex_state = 50, .external_lex_state = 2}, - [541] = {.lex_state = 50, .external_lex_state = 2}, - [542] = {.lex_state = 50, .external_lex_state = 2}, - [543] = {.lex_state = 50, .external_lex_state = 3}, - [544] = {.lex_state = 50, .external_lex_state = 2}, - [545] = {.lex_state = 50, .external_lex_state = 2}, - [546] = {.lex_state = 50, .external_lex_state = 2}, - [547] = {.lex_state = 50, .external_lex_state = 2}, - [548] = {.lex_state = 50, .external_lex_state = 3}, - [549] = {.lex_state = 50, .external_lex_state = 2}, - [550] = {.lex_state = 50, .external_lex_state = 3}, - [551] = {.lex_state = 50, .external_lex_state = 3}, - [552] = {.lex_state = 50, .external_lex_state = 2}, - [553] = {.lex_state = 50, .external_lex_state = 3}, - [554] = {.lex_state = 50, .external_lex_state = 2}, - [555] = {.lex_state = 50, .external_lex_state = 3}, - [556] = {.lex_state = 50, .external_lex_state = 2}, - [557] = {.lex_state = 50, .external_lex_state = 2}, - [558] = {.lex_state = 50, .external_lex_state = 2}, - [559] = {.lex_state = 50, .external_lex_state = 3}, - [560] = {.lex_state = 50, .external_lex_state = 3}, - [561] = {.lex_state = 50, .external_lex_state = 3}, - [562] = {.lex_state = 50, .external_lex_state = 2}, - [563] = {.lex_state = 50, .external_lex_state = 2}, - [564] = {.lex_state = 50, .external_lex_state = 2}, - [565] = {.lex_state = 50, .external_lex_state = 2}, - [566] = {.lex_state = 50, .external_lex_state = 2}, - [567] = {.lex_state = 50, .external_lex_state = 2}, - [568] = {.lex_state = 14, .external_lex_state = 2}, - [569] = {.lex_state = 16, .external_lex_state = 8}, - [570] = {.lex_state = 16, .external_lex_state = 9}, - [571] = {.lex_state = 16, .external_lex_state = 9}, - [572] = {.lex_state = 16, .external_lex_state = 9}, - [573] = {.lex_state = 16, .external_lex_state = 8}, - [574] = {.lex_state = 16, .external_lex_state = 8}, - [575] = {.lex_state = 50, .external_lex_state = 2}, - [576] = {.lex_state = 50, .external_lex_state = 2}, - [577] = {.lex_state = 50, .external_lex_state = 2}, - [578] = {.lex_state = 50, .external_lex_state = 2}, - [579] = {.lex_state = 50, .external_lex_state = 2}, - [580] = {.lex_state = 16, .external_lex_state = 8}, - [581] = {.lex_state = 16, .external_lex_state = 9}, - [582] = {.lex_state = 50, .external_lex_state = 2}, - [583] = {.lex_state = 50, .external_lex_state = 2}, - [584] = {.lex_state = 16, .external_lex_state = 8}, - [585] = {.lex_state = 50, .external_lex_state = 2}, - [586] = {.lex_state = 50, .external_lex_state = 2}, - [587] = {.lex_state = 50, .external_lex_state = 2}, - [588] = {.lex_state = 50, .external_lex_state = 2}, - [589] = {.lex_state = 50, .external_lex_state = 2}, - [590] = {.lex_state = 50, .external_lex_state = 2}, - [591] = {.lex_state = 50, .external_lex_state = 2}, - [592] = {.lex_state = 50, .external_lex_state = 2}, - [593] = {.lex_state = 50, .external_lex_state = 2}, - [594] = {.lex_state = 50, .external_lex_state = 2}, - [595] = {.lex_state = 50, .external_lex_state = 2}, - [596] = {.lex_state = 50, .external_lex_state = 2}, - [597] = {.lex_state = 50, .external_lex_state = 2}, - [598] = {.lex_state = 50, .external_lex_state = 2}, - [599] = {.lex_state = 50, .external_lex_state = 2}, - [600] = {.lex_state = 50, .external_lex_state = 2}, - [601] = {.lex_state = 50, .external_lex_state = 2}, - [602] = {.lex_state = 50, .external_lex_state = 2}, - [603] = {.lex_state = 50, .external_lex_state = 2}, - [604] = {.lex_state = 50, .external_lex_state = 2}, - [605] = {.lex_state = 50, .external_lex_state = 2}, - [606] = {.lex_state = 50, .external_lex_state = 2}, - [607] = {.lex_state = 50, .external_lex_state = 2}, - [608] = {.lex_state = 50, .external_lex_state = 2}, - [609] = {.lex_state = 50, .external_lex_state = 2}, - [610] = {.lex_state = 50, .external_lex_state = 2}, - [611] = {.lex_state = 50, .external_lex_state = 2}, - [612] = {.lex_state = 50, .external_lex_state = 2}, - [613] = {.lex_state = 50, .external_lex_state = 2}, - [614] = {.lex_state = 50, .external_lex_state = 2}, - [615] = {.lex_state = 50, .external_lex_state = 2}, - [616] = {.lex_state = 50, .external_lex_state = 2}, - [617] = {.lex_state = 50, .external_lex_state = 2}, - [618] = {.lex_state = 50, .external_lex_state = 2}, - [619] = {.lex_state = 50, .external_lex_state = 2}, - [620] = {.lex_state = 50, .external_lex_state = 2}, - [621] = {.lex_state = 50, .external_lex_state = 2}, - [622] = {.lex_state = 50, .external_lex_state = 2}, - [623] = {.lex_state = 50, .external_lex_state = 2}, + [142] = {.lex_state = 51, .external_lex_state = 2}, + [143] = {.lex_state = 51, .external_lex_state = 2}, + [144] = {.lex_state = 51, .external_lex_state = 2}, + [145] = {.lex_state = 14, .external_lex_state = 2}, + [146] = {.lex_state = 51, .external_lex_state = 2}, + [147] = {.lex_state = 51, .external_lex_state = 2}, + [148] = {.lex_state = 51, .external_lex_state = 2}, + [149] = {.lex_state = 51, .external_lex_state = 4}, + [150] = {.lex_state = 51, .external_lex_state = 2}, + [151] = {.lex_state = 51, .external_lex_state = 2}, + [152] = {.lex_state = 51, .external_lex_state = 2}, + [153] = {.lex_state = 51, .external_lex_state = 2}, + [154] = {.lex_state = 51, .external_lex_state = 2}, + [155] = {.lex_state = 51, .external_lex_state = 2}, + [156] = {.lex_state = 51, .external_lex_state = 2}, + [157] = {.lex_state = 51, .external_lex_state = 2}, + [158] = {.lex_state = 51, .external_lex_state = 2}, + [159] = {.lex_state = 51, .external_lex_state = 2}, + [160] = {.lex_state = 51, .external_lex_state = 2}, + [161] = {.lex_state = 51, .external_lex_state = 2}, + [162] = {.lex_state = 51, .external_lex_state = 2}, + [163] = {.lex_state = 51, .external_lex_state = 2}, + [164] = {.lex_state = 51, .external_lex_state = 2}, + [165] = {.lex_state = 51, .external_lex_state = 2}, + [166] = {.lex_state = 51, .external_lex_state = 2}, + [167] = {.lex_state = 51, .external_lex_state = 2}, + [168] = {.lex_state = 51, .external_lex_state = 2}, + [169] = {.lex_state = 14, .external_lex_state = 2}, + [170] = {.lex_state = 51, .external_lex_state = 2}, + [171] = {.lex_state = 51, .external_lex_state = 2}, + [172] = {.lex_state = 51, .external_lex_state = 2}, + [173] = {.lex_state = 51, .external_lex_state = 2}, + [174] = {.lex_state = 51, .external_lex_state = 4}, + [175] = {.lex_state = 51, .external_lex_state = 2}, + [176] = {.lex_state = 51, .external_lex_state = 2}, + [177] = {.lex_state = 51, .external_lex_state = 2}, + [178] = {.lex_state = 14, .external_lex_state = 2}, + [179] = {.lex_state = 14, .external_lex_state = 2}, + [180] = {.lex_state = 14, .external_lex_state = 2}, + [181] = {.lex_state = 51, .external_lex_state = 2}, + [182] = {.lex_state = 51, .external_lex_state = 2}, + [183] = {.lex_state = 51, .external_lex_state = 2}, + [184] = {.lex_state = 51, .external_lex_state = 4}, + [185] = {.lex_state = 51, .external_lex_state = 2}, + [186] = {.lex_state = 51, .external_lex_state = 2}, + [187] = {.lex_state = 51, .external_lex_state = 2}, + [188] = {.lex_state = 51, .external_lex_state = 2}, + [189] = {.lex_state = 51, .external_lex_state = 2}, + [190] = {.lex_state = 51, .external_lex_state = 2}, + [191] = {.lex_state = 51, .external_lex_state = 4}, + [192] = {.lex_state = 51, .external_lex_state = 2}, + [193] = {.lex_state = 51, .external_lex_state = 4}, + [194] = {.lex_state = 51, .external_lex_state = 2}, + [195] = {.lex_state = 51, .external_lex_state = 2}, + [196] = {.lex_state = 51, .external_lex_state = 2}, + [197] = {.lex_state = 51, .external_lex_state = 2}, + [198] = {.lex_state = 51, .external_lex_state = 2}, + [199] = {.lex_state = 51, .external_lex_state = 2}, + [200] = {.lex_state = 51, .external_lex_state = 2}, + [201] = {.lex_state = 51, .external_lex_state = 2}, + [202] = {.lex_state = 51, .external_lex_state = 2}, + [203] = {.lex_state = 51, .external_lex_state = 2}, + [204] = {.lex_state = 51, .external_lex_state = 2}, + [205] = {.lex_state = 51, .external_lex_state = 2}, + [206] = {.lex_state = 51, .external_lex_state = 2}, + [207] = {.lex_state = 51, .external_lex_state = 2}, + [208] = {.lex_state = 51, .external_lex_state = 2}, + [209] = {.lex_state = 51, .external_lex_state = 2}, + [210] = {.lex_state = 51, .external_lex_state = 2}, + [211] = {.lex_state = 51, .external_lex_state = 2}, + [212] = {.lex_state = 51, .external_lex_state = 2}, + [213] = {.lex_state = 51, .external_lex_state = 2}, + [214] = {.lex_state = 51, .external_lex_state = 2}, + [215] = {.lex_state = 51, .external_lex_state = 2}, + [216] = {.lex_state = 51, .external_lex_state = 2}, + [217] = {.lex_state = 51, .external_lex_state = 4}, + [218] = {.lex_state = 51, .external_lex_state = 2}, + [219] = {.lex_state = 51, .external_lex_state = 2}, + [220] = {.lex_state = 51, .external_lex_state = 4}, + [221] = {.lex_state = 51, .external_lex_state = 2}, + [222] = {.lex_state = 51, .external_lex_state = 2}, + [223] = {.lex_state = 51, .external_lex_state = 2}, + [224] = {.lex_state = 51, .external_lex_state = 2}, + [225] = {.lex_state = 51, .external_lex_state = 2}, + [226] = {.lex_state = 51, .external_lex_state = 2}, + [227] = {.lex_state = 51, .external_lex_state = 2}, + [228] = {.lex_state = 51, .external_lex_state = 2}, + [229] = {.lex_state = 51, .external_lex_state = 2}, + [230] = {.lex_state = 51, .external_lex_state = 2}, + [231] = {.lex_state = 51, .external_lex_state = 2}, + [232] = {.lex_state = 51, .external_lex_state = 2}, + [233] = {.lex_state = 51, .external_lex_state = 2}, + [234] = {.lex_state = 51, .external_lex_state = 2}, + [235] = {.lex_state = 51, .external_lex_state = 2}, + [236] = {.lex_state = 51, .external_lex_state = 2}, + [237] = {.lex_state = 51, .external_lex_state = 2}, + [238] = {.lex_state = 51, .external_lex_state = 2}, + [239] = {.lex_state = 51, .external_lex_state = 2}, + [240] = {.lex_state = 51, .external_lex_state = 2}, + [241] = {.lex_state = 51, .external_lex_state = 2}, + [242] = {.lex_state = 51, .external_lex_state = 2}, + [243] = {.lex_state = 51, .external_lex_state = 2}, + [244] = {.lex_state = 51, .external_lex_state = 2}, + [245] = {.lex_state = 51, .external_lex_state = 2}, + [246] = {.lex_state = 51, .external_lex_state = 2}, + [247] = {.lex_state = 51, .external_lex_state = 2}, + [248] = {.lex_state = 51, .external_lex_state = 2}, + [249] = {.lex_state = 51, .external_lex_state = 2}, + [250] = {.lex_state = 51, .external_lex_state = 2}, + [251] = {.lex_state = 51, .external_lex_state = 2}, + [252] = {.lex_state = 51, .external_lex_state = 2}, + [253] = {.lex_state = 51, .external_lex_state = 2}, + [254] = {.lex_state = 51, .external_lex_state = 2}, + [255] = {.lex_state = 51, .external_lex_state = 2}, + [256] = {.lex_state = 51, .external_lex_state = 2}, + [257] = {.lex_state = 51, .external_lex_state = 2}, + [258] = {.lex_state = 51, .external_lex_state = 2}, + [259] = {.lex_state = 51, .external_lex_state = 2}, + [260] = {.lex_state = 51, .external_lex_state = 2}, + [261] = {.lex_state = 51, .external_lex_state = 2}, + [262] = {.lex_state = 51, .external_lex_state = 2}, + [263] = {.lex_state = 51, .external_lex_state = 2}, + [264] = {.lex_state = 51, .external_lex_state = 2}, + [265] = {.lex_state = 51, .external_lex_state = 2}, + [266] = {.lex_state = 51, .external_lex_state = 3}, + [267] = {.lex_state = 51, .external_lex_state = 3}, + [268] = {.lex_state = 51, .external_lex_state = 2}, + [269] = {.lex_state = 51, .external_lex_state = 2}, + [270] = {.lex_state = 51, .external_lex_state = 2}, + [271] = {.lex_state = 51, .external_lex_state = 2}, + [272] = {.lex_state = 51, .external_lex_state = 2}, + [273] = {.lex_state = 51, .external_lex_state = 2}, + [274] = {.lex_state = 51, .external_lex_state = 2}, + [275] = {.lex_state = 51, .external_lex_state = 2}, + [276] = {.lex_state = 51, .external_lex_state = 2}, + [277] = {.lex_state = 51, .external_lex_state = 2}, + [278] = {.lex_state = 51, .external_lex_state = 2}, + [279] = {.lex_state = 51, .external_lex_state = 3}, + [280] = {.lex_state = 51, .external_lex_state = 2}, + [281] = {.lex_state = 51, .external_lex_state = 2}, + [282] = {.lex_state = 51, .external_lex_state = 2}, + [283] = {.lex_state = 51, .external_lex_state = 3}, + [284] = {.lex_state = 51, .external_lex_state = 2}, + [285] = {.lex_state = 51, .external_lex_state = 2}, + [286] = {.lex_state = 51, .external_lex_state = 2}, + [287] = {.lex_state = 51, .external_lex_state = 2}, + [288] = {.lex_state = 51, .external_lex_state = 2}, + [289] = {.lex_state = 51, .external_lex_state = 4}, + [290] = {.lex_state = 51, .external_lex_state = 4}, + [291] = {.lex_state = 51, .external_lex_state = 4}, + [292] = {.lex_state = 51, .external_lex_state = 2}, + [293] = {.lex_state = 51, .external_lex_state = 2}, + [294] = {.lex_state = 16}, + [295] = {.lex_state = 51, .external_lex_state = 2}, + [296] = {.lex_state = 51, .external_lex_state = 2}, + [297] = {.lex_state = 51, .external_lex_state = 2}, + [298] = {.lex_state = 51, .external_lex_state = 2}, + [299] = {.lex_state = 51, .external_lex_state = 2}, + [300] = {.lex_state = 51, .external_lex_state = 4}, + [301] = {.lex_state = 51, .external_lex_state = 2}, + [302] = {.lex_state = 51, .external_lex_state = 2}, + [303] = {.lex_state = 51, .external_lex_state = 2}, + [304] = {.lex_state = 51, .external_lex_state = 2}, + [305] = {.lex_state = 51, .external_lex_state = 2}, + [306] = {.lex_state = 51, .external_lex_state = 2}, + [307] = {.lex_state = 16}, + [308] = {.lex_state = 51, .external_lex_state = 2}, + [309] = {.lex_state = 51, .external_lex_state = 2}, + [310] = {.lex_state = 51, .external_lex_state = 2}, + [311] = {.lex_state = 51, .external_lex_state = 2}, + [312] = {.lex_state = 51, .external_lex_state = 2}, + [313] = {.lex_state = 51, .external_lex_state = 3}, + [314] = {.lex_state = 51, .external_lex_state = 3}, + [315] = {.lex_state = 51, .external_lex_state = 2}, + [316] = {.lex_state = 51, .external_lex_state = 2}, + [317] = {.lex_state = 51, .external_lex_state = 2}, + [318] = {.lex_state = 51, .external_lex_state = 2}, + [319] = {.lex_state = 51, .external_lex_state = 3}, + [320] = {.lex_state = 51, .external_lex_state = 3}, + [321] = {.lex_state = 51, .external_lex_state = 2}, + [322] = {.lex_state = 51, .external_lex_state = 2}, + [323] = {.lex_state = 51, .external_lex_state = 2}, + [324] = {.lex_state = 16, .external_lex_state = 6}, + [325] = {.lex_state = 51, .external_lex_state = 2}, + [326] = {.lex_state = 51, .external_lex_state = 3}, + [327] = {.lex_state = 51, .external_lex_state = 3}, + [328] = {.lex_state = 51, .external_lex_state = 2}, + [329] = {.lex_state = 51, .external_lex_state = 2}, + [330] = {.lex_state = 51, .external_lex_state = 3}, + [331] = {.lex_state = 51, .external_lex_state = 3}, + [332] = {.lex_state = 51, .external_lex_state = 2}, + [333] = {.lex_state = 51, .external_lex_state = 3}, + [334] = {.lex_state = 51, .external_lex_state = 2}, + [335] = {.lex_state = 51, .external_lex_state = 3}, + [336] = {.lex_state = 51, .external_lex_state = 3}, + [337] = {.lex_state = 51, .external_lex_state = 2}, + [338] = {.lex_state = 16, .external_lex_state = 6}, + [339] = {.lex_state = 51, .external_lex_state = 2}, + [340] = {.lex_state = 51, .external_lex_state = 2}, + [341] = {.lex_state = 51, .external_lex_state = 2}, + [342] = {.lex_state = 51, .external_lex_state = 2}, + [343] = {.lex_state = 51, .external_lex_state = 2}, + [344] = {.lex_state = 51, .external_lex_state = 2}, + [345] = {.lex_state = 51, .external_lex_state = 2}, + [346] = {.lex_state = 51, .external_lex_state = 2}, + [347] = {.lex_state = 51, .external_lex_state = 2}, + [348] = {.lex_state = 51, .external_lex_state = 2}, + [349] = {.lex_state = 51, .external_lex_state = 2}, + [350] = {.lex_state = 51, .external_lex_state = 2}, + [351] = {.lex_state = 51, .external_lex_state = 2}, + [352] = {.lex_state = 51, .external_lex_state = 2}, + [353] = {.lex_state = 51, .external_lex_state = 2}, + [354] = {.lex_state = 51, .external_lex_state = 2}, + [355] = {.lex_state = 51, .external_lex_state = 2}, + [356] = {.lex_state = 51, .external_lex_state = 2}, + [357] = {.lex_state = 51, .external_lex_state = 2}, + [358] = {.lex_state = 51, .external_lex_state = 2}, + [359] = {.lex_state = 51, .external_lex_state = 2}, + [360] = {.lex_state = 51, .external_lex_state = 2}, + [361] = {.lex_state = 51, .external_lex_state = 2}, + [362] = {.lex_state = 51, .external_lex_state = 2}, + [363] = {.lex_state = 51, .external_lex_state = 2}, + [364] = {.lex_state = 51, .external_lex_state = 2}, + [365] = {.lex_state = 51, .external_lex_state = 2}, + [366] = {.lex_state = 51, .external_lex_state = 2}, + [367] = {.lex_state = 16, .external_lex_state = 7}, + [368] = {.lex_state = 51, .external_lex_state = 2}, + [369] = {.lex_state = 51, .external_lex_state = 2}, + [370] = {.lex_state = 51, .external_lex_state = 2}, + [371] = {.lex_state = 51, .external_lex_state = 2}, + [372] = {.lex_state = 51, .external_lex_state = 2}, + [373] = {.lex_state = 51, .external_lex_state = 2}, + [374] = {.lex_state = 51, .external_lex_state = 2}, + [375] = {.lex_state = 51, .external_lex_state = 2}, + [376] = {.lex_state = 51, .external_lex_state = 2}, + [377] = {.lex_state = 51, .external_lex_state = 2}, + [378] = {.lex_state = 51, .external_lex_state = 2}, + [379] = {.lex_state = 51, .external_lex_state = 2}, + [380] = {.lex_state = 51, .external_lex_state = 2}, + [381] = {.lex_state = 51, .external_lex_state = 2}, + [382] = {.lex_state = 51, .external_lex_state = 2}, + [383] = {.lex_state = 51, .external_lex_state = 2}, + [384] = {.lex_state = 51, .external_lex_state = 2}, + [385] = {.lex_state = 51, .external_lex_state = 2}, + [386] = {.lex_state = 51, .external_lex_state = 2}, + [387] = {.lex_state = 51, .external_lex_state = 2}, + [388] = {.lex_state = 51, .external_lex_state = 2}, + [389] = {.lex_state = 51, .external_lex_state = 2}, + [390] = {.lex_state = 51, .external_lex_state = 2}, + [391] = {.lex_state = 51, .external_lex_state = 2}, + [392] = {.lex_state = 51, .external_lex_state = 2}, + [393] = {.lex_state = 51, .external_lex_state = 2}, + [394] = {.lex_state = 51, .external_lex_state = 2}, + [395] = {.lex_state = 51, .external_lex_state = 2}, + [396] = {.lex_state = 51, .external_lex_state = 2}, + [397] = {.lex_state = 51, .external_lex_state = 2}, + [398] = {.lex_state = 51, .external_lex_state = 2}, + [399] = {.lex_state = 51, .external_lex_state = 3}, + [400] = {.lex_state = 51, .external_lex_state = 2}, + [401] = {.lex_state = 51, .external_lex_state = 2}, + [402] = {.lex_state = 51, .external_lex_state = 2}, + [403] = {.lex_state = 51, .external_lex_state = 2}, + [404] = {.lex_state = 51, .external_lex_state = 2}, + [405] = {.lex_state = 51, .external_lex_state = 2}, + [406] = {.lex_state = 51, .external_lex_state = 2}, + [407] = {.lex_state = 51, .external_lex_state = 2}, + [408] = {.lex_state = 51, .external_lex_state = 2}, + [409] = {.lex_state = 51, .external_lex_state = 2}, + [410] = {.lex_state = 51, .external_lex_state = 2}, + [411] = {.lex_state = 51, .external_lex_state = 2}, + [412] = {.lex_state = 51, .external_lex_state = 2}, + [413] = {.lex_state = 51, .external_lex_state = 2}, + [414] = {.lex_state = 51, .external_lex_state = 2}, + [415] = {.lex_state = 51, .external_lex_state = 2}, + [416] = {.lex_state = 51, .external_lex_state = 2}, + [417] = {.lex_state = 51, .external_lex_state = 2}, + [418] = {.lex_state = 51, .external_lex_state = 2}, + [419] = {.lex_state = 51, .external_lex_state = 2}, + [420] = {.lex_state = 51, .external_lex_state = 2}, + [421] = {.lex_state = 51, .external_lex_state = 2}, + [422] = {.lex_state = 51, .external_lex_state = 2}, + [423] = {.lex_state = 51, .external_lex_state = 2}, + [424] = {.lex_state = 51, .external_lex_state = 2}, + [425] = {.lex_state = 51, .external_lex_state = 2}, + [426] = {.lex_state = 51, .external_lex_state = 2}, + [427] = {.lex_state = 51, .external_lex_state = 2}, + [428] = {.lex_state = 51, .external_lex_state = 2}, + [429] = {.lex_state = 51, .external_lex_state = 2}, + [430] = {.lex_state = 51, .external_lex_state = 2}, + [431] = {.lex_state = 51, .external_lex_state = 2}, + [432] = {.lex_state = 51, .external_lex_state = 2}, + [433] = {.lex_state = 51, .external_lex_state = 2}, + [434] = {.lex_state = 51, .external_lex_state = 2}, + [435] = {.lex_state = 51, .external_lex_state = 2}, + [436] = {.lex_state = 51, .external_lex_state = 2}, + [437] = {.lex_state = 51, .external_lex_state = 3}, + [438] = {.lex_state = 51, .external_lex_state = 3}, + [439] = {.lex_state = 51, .external_lex_state = 3}, + [440] = {.lex_state = 51, .external_lex_state = 3}, + [441] = {.lex_state = 51, .external_lex_state = 3}, + [442] = {.lex_state = 51, .external_lex_state = 2}, + [443] = {.lex_state = 51, .external_lex_state = 3}, + [444] = {.lex_state = 51, .external_lex_state = 3}, + [445] = {.lex_state = 51, .external_lex_state = 3}, + [446] = {.lex_state = 51, .external_lex_state = 3}, + [447] = {.lex_state = 51, .external_lex_state = 3}, + [448] = {.lex_state = 51, .external_lex_state = 2}, + [449] = {.lex_state = 51, .external_lex_state = 2}, + [450] = {.lex_state = 51, .external_lex_state = 2}, + [451] = {.lex_state = 51, .external_lex_state = 2}, + [452] = {.lex_state = 51, .external_lex_state = 3}, + [453] = {.lex_state = 51, .external_lex_state = 2}, + [454] = {.lex_state = 51, .external_lex_state = 2}, + [455] = {.lex_state = 51, .external_lex_state = 2}, + [456] = {.lex_state = 51, .external_lex_state = 2}, + [457] = {.lex_state = 51, .external_lex_state = 2}, + [458] = {.lex_state = 16, .external_lex_state = 6}, + [459] = {.lex_state = 51, .external_lex_state = 2}, + [460] = {.lex_state = 51, .external_lex_state = 3}, + [461] = {.lex_state = 51, .external_lex_state = 2}, + [462] = {.lex_state = 16, .external_lex_state = 6}, + [463] = {.lex_state = 51, .external_lex_state = 2}, + [464] = {.lex_state = 51, .external_lex_state = 2}, + [465] = {.lex_state = 16, .external_lex_state = 6}, + [466] = {.lex_state = 51, .external_lex_state = 3}, + [467] = {.lex_state = 51, .external_lex_state = 2}, + [468] = {.lex_state = 51, .external_lex_state = 2}, + [469] = {.lex_state = 51, .external_lex_state = 3}, + [470] = {.lex_state = 51, .external_lex_state = 3}, + [471] = {.lex_state = 51, .external_lex_state = 2}, + [472] = {.lex_state = 51, .external_lex_state = 2}, + [473] = {.lex_state = 51, .external_lex_state = 3}, + [474] = {.lex_state = 16}, + [475] = {.lex_state = 16, .external_lex_state = 6}, + [476] = {.lex_state = 51, .external_lex_state = 2}, + [477] = {.lex_state = 51, .external_lex_state = 3}, + [478] = {.lex_state = 51, .external_lex_state = 2}, + [479] = {.lex_state = 51, .external_lex_state = 3}, + [480] = {.lex_state = 51, .external_lex_state = 3}, + [481] = {.lex_state = 51, .external_lex_state = 2}, + [482] = {.lex_state = 51, .external_lex_state = 2}, + [483] = {.lex_state = 16, .external_lex_state = 6}, + [484] = {.lex_state = 51, .external_lex_state = 2}, + [485] = {.lex_state = 51, .external_lex_state = 2}, + [486] = {.lex_state = 51, .external_lex_state = 3}, + [487] = {.lex_state = 16}, + [488] = {.lex_state = 51, .external_lex_state = 3}, + [489] = {.lex_state = 51, .external_lex_state = 3}, + [490] = {.lex_state = 51, .external_lex_state = 2}, + [491] = {.lex_state = 51, .external_lex_state = 3}, + [492] = {.lex_state = 51, .external_lex_state = 3}, + [493] = {.lex_state = 51, .external_lex_state = 2}, + [494] = {.lex_state = 16, .external_lex_state = 6}, + [495] = {.lex_state = 51, .external_lex_state = 2}, + [496] = {.lex_state = 51, .external_lex_state = 2}, + [497] = {.lex_state = 51, .external_lex_state = 2}, + [498] = {.lex_state = 51, .external_lex_state = 2}, + [499] = {.lex_state = 51, .external_lex_state = 2}, + [500] = {.lex_state = 51, .external_lex_state = 2}, + [501] = {.lex_state = 51, .external_lex_state = 2}, + [502] = {.lex_state = 16, .external_lex_state = 6}, + [503] = {.lex_state = 51, .external_lex_state = 3}, + [504] = {.lex_state = 51, .external_lex_state = 3}, + [505] = {.lex_state = 51, .external_lex_state = 3}, + [506] = {.lex_state = 51, .external_lex_state = 3}, + [507] = {.lex_state = 51, .external_lex_state = 3}, + [508] = {.lex_state = 51, .external_lex_state = 2}, + [509] = {.lex_state = 16}, + [510] = {.lex_state = 51, .external_lex_state = 2}, + [511] = {.lex_state = 51, .external_lex_state = 2}, + [512] = {.lex_state = 51, .external_lex_state = 2}, + [513] = {.lex_state = 16, .external_lex_state = 6}, + [514] = {.lex_state = 51, .external_lex_state = 2}, + [515] = {.lex_state = 51, .external_lex_state = 2}, + [516] = {.lex_state = 51, .external_lex_state = 2}, + [517] = {.lex_state = 51, .external_lex_state = 2}, + [518] = {.lex_state = 51, .external_lex_state = 2}, + [519] = {.lex_state = 51, .external_lex_state = 2}, + [520] = {.lex_state = 51, .external_lex_state = 2}, + [521] = {.lex_state = 51, .external_lex_state = 2}, + [522] = {.lex_state = 51, .external_lex_state = 2}, + [523] = {.lex_state = 51, .external_lex_state = 2}, + [524] = {.lex_state = 51, .external_lex_state = 2}, + [525] = {.lex_state = 51, .external_lex_state = 2}, + [526] = {.lex_state = 51, .external_lex_state = 2}, + [527] = {.lex_state = 51, .external_lex_state = 2}, + [528] = {.lex_state = 51, .external_lex_state = 2}, + [529] = {.lex_state = 51, .external_lex_state = 2}, + [530] = {.lex_state = 51, .external_lex_state = 2}, + [531] = {.lex_state = 51, .external_lex_state = 2}, + [532] = {.lex_state = 51, .external_lex_state = 2}, + [533] = {.lex_state = 51, .external_lex_state = 2}, + [534] = {.lex_state = 51, .external_lex_state = 2}, + [535] = {.lex_state = 51, .external_lex_state = 2}, + [536] = {.lex_state = 51, .external_lex_state = 2}, + [537] = {.lex_state = 51, .external_lex_state = 2}, + [538] = {.lex_state = 51, .external_lex_state = 2}, + [539] = {.lex_state = 51, .external_lex_state = 2}, + [540] = {.lex_state = 51, .external_lex_state = 2}, + [541] = {.lex_state = 51, .external_lex_state = 2}, + [542] = {.lex_state = 51, .external_lex_state = 2}, + [543] = {.lex_state = 51, .external_lex_state = 2}, + [544] = {.lex_state = 51, .external_lex_state = 2}, + [545] = {.lex_state = 51, .external_lex_state = 2}, + [546] = {.lex_state = 51, .external_lex_state = 2}, + [547] = {.lex_state = 51, .external_lex_state = 2}, + [548] = {.lex_state = 51, .external_lex_state = 2}, + [549] = {.lex_state = 51, .external_lex_state = 2}, + [550] = {.lex_state = 51, .external_lex_state = 2}, + [551] = {.lex_state = 51, .external_lex_state = 2}, + [552] = {.lex_state = 51, .external_lex_state = 3}, + [553] = {.lex_state = 51, .external_lex_state = 3}, + [554] = {.lex_state = 51, .external_lex_state = 3}, + [555] = {.lex_state = 51, .external_lex_state = 3}, + [556] = {.lex_state = 51, .external_lex_state = 3}, + [557] = {.lex_state = 51, .external_lex_state = 3}, + [558] = {.lex_state = 51, .external_lex_state = 3}, + [559] = {.lex_state = 51, .external_lex_state = 3}, + [560] = {.lex_state = 51, .external_lex_state = 3}, + [561] = {.lex_state = 51, .external_lex_state = 3}, + [562] = {.lex_state = 51, .external_lex_state = 3}, + [563] = {.lex_state = 51, .external_lex_state = 3}, + [564] = {.lex_state = 51, .external_lex_state = 3}, + [565] = {.lex_state = 51, .external_lex_state = 3}, + [566] = {.lex_state = 51, .external_lex_state = 3}, + [567] = {.lex_state = 51, .external_lex_state = 3}, + [568] = {.lex_state = 51, .external_lex_state = 3}, + [569] = {.lex_state = 51, .external_lex_state = 3}, + [570] = {.lex_state = 51, .external_lex_state = 3}, + [571] = {.lex_state = 51, .external_lex_state = 3}, + [572] = {.lex_state = 51, .external_lex_state = 3}, + [573] = {.lex_state = 51, .external_lex_state = 3}, + [574] = {.lex_state = 51, .external_lex_state = 3}, + [575] = {.lex_state = 51, .external_lex_state = 3}, + [576] = {.lex_state = 51, .external_lex_state = 3}, + [577] = {.lex_state = 51, .external_lex_state = 3}, + [578] = {.lex_state = 51, .external_lex_state = 3}, + [579] = {.lex_state = 51, .external_lex_state = 3}, + [580] = {.lex_state = 51, .external_lex_state = 3}, + [581] = {.lex_state = 51, .external_lex_state = 2}, + [582] = {.lex_state = 51, .external_lex_state = 3}, + [583] = {.lex_state = 51, .external_lex_state = 3}, + [584] = {.lex_state = 51, .external_lex_state = 3}, + [585] = {.lex_state = 51, .external_lex_state = 3}, + [586] = {.lex_state = 51, .external_lex_state = 3}, + [587] = {.lex_state = 51, .external_lex_state = 3}, + [588] = {.lex_state = 51, .external_lex_state = 2}, + [589] = {.lex_state = 51, .external_lex_state = 3}, + [590] = {.lex_state = 51, .external_lex_state = 3}, + [591] = {.lex_state = 51, .external_lex_state = 3}, + [592] = {.lex_state = 51, .external_lex_state = 3}, + [593] = {.lex_state = 51, .external_lex_state = 3}, + [594] = {.lex_state = 51, .external_lex_state = 3}, + [595] = {.lex_state = 51, .external_lex_state = 3}, + [596] = {.lex_state = 51, .external_lex_state = 2}, + [597] = {.lex_state = 51, .external_lex_state = 2}, + [598] = {.lex_state = 51, .external_lex_state = 3}, + [599] = {.lex_state = 51, .external_lex_state = 3}, + [600] = {.lex_state = 51, .external_lex_state = 3}, + [601] = {.lex_state = 51, .external_lex_state = 3}, + [602] = {.lex_state = 51, .external_lex_state = 3}, + [603] = {.lex_state = 51, .external_lex_state = 3}, + [604] = {.lex_state = 51, .external_lex_state = 3}, + [605] = {.lex_state = 51, .external_lex_state = 2}, + [606] = {.lex_state = 51, .external_lex_state = 2}, + [607] = {.lex_state = 51, .external_lex_state = 2}, + [608] = {.lex_state = 51, .external_lex_state = 2}, + [609] = {.lex_state = 51, .external_lex_state = 2}, + [610] = {.lex_state = 51, .external_lex_state = 2}, + [611] = {.lex_state = 51, .external_lex_state = 2}, + [612] = {.lex_state = 51, .external_lex_state = 2}, + [613] = {.lex_state = 51, .external_lex_state = 2}, + [614] = {.lex_state = 51, .external_lex_state = 2}, + [615] = {.lex_state = 51, .external_lex_state = 2}, + [616] = {.lex_state = 16, .external_lex_state = 8}, + [617] = {.lex_state = 16, .external_lex_state = 9}, + [618] = {.lex_state = 51, .external_lex_state = 2}, + [619] = {.lex_state = 16, .external_lex_state = 8}, + [620] = {.lex_state = 16, .external_lex_state = 9}, + [621] = {.lex_state = 16, .external_lex_state = 8}, + [622] = {.lex_state = 51, .external_lex_state = 2}, + [623] = {.lex_state = 51, .external_lex_state = 2}, [624] = {.lex_state = 16, .external_lex_state = 9}, - [625] = {.lex_state = 50, .external_lex_state = 2}, - [626] = {.lex_state = 50, .external_lex_state = 2}, - [627] = {.lex_state = 50, .external_lex_state = 2}, - [628] = {.lex_state = 50, .external_lex_state = 2}, - [629] = {.lex_state = 16}, - [630] = {.lex_state = 16}, - [631] = {.lex_state = 16}, - [632] = {.lex_state = 16}, - [633] = {.lex_state = 16}, - [634] = {.lex_state = 16}, - [635] = {.lex_state = 16}, - [636] = {.lex_state = 16}, - [637] = {.lex_state = 16}, - [638] = {.lex_state = 16}, - [639] = {.lex_state = 16}, - [640] = {.lex_state = 16}, - [641] = {.lex_state = 16}, - [642] = {.lex_state = 16}, - [643] = {.lex_state = 16}, - [644] = {.lex_state = 16}, - [645] = {.lex_state = 16}, - [646] = {.lex_state = 16}, - [647] = {.lex_state = 16}, - [648] = {.lex_state = 16}, - [649] = {.lex_state = 16}, - [650] = {.lex_state = 16}, - [651] = {.lex_state = 16}, - [652] = {.lex_state = 16}, - [653] = {.lex_state = 16}, - [654] = {.lex_state = 16}, - [655] = {.lex_state = 16}, - [656] = {.lex_state = 16}, - [657] = {.lex_state = 16}, - [658] = {.lex_state = 16}, - [659] = {.lex_state = 16}, - [660] = {.lex_state = 16}, - [661] = {.lex_state = 16}, - [662] = {.lex_state = 16}, - [663] = {.lex_state = 16}, - [664] = {.lex_state = 16}, - [665] = {.lex_state = 16}, - [666] = {.lex_state = 16}, - [667] = {.lex_state = 16}, - [668] = {.lex_state = 16}, - [669] = {.lex_state = 16}, - [670] = {.lex_state = 16}, - [671] = {.lex_state = 16}, - [672] = {.lex_state = 16}, - [673] = {.lex_state = 16}, - [674] = {.lex_state = 16}, - [675] = {.lex_state = 16}, - [676] = {.lex_state = 16}, - [677] = {.lex_state = 16}, - [678] = {.lex_state = 16}, - [679] = {.lex_state = 16}, - [680] = {.lex_state = 16}, - [681] = {.lex_state = 16}, - [682] = {.lex_state = 16}, - [683] = {.lex_state = 16}, - [684] = {.lex_state = 16}, - [685] = {.lex_state = 16}, - [686] = {.lex_state = 16, .external_lex_state = 9}, - [687] = {.lex_state = 15}, - [688] = {.lex_state = 16, .external_lex_state = 8}, - [689] = {.lex_state = 16, .external_lex_state = 9}, - [690] = {.lex_state = 16}, - [691] = {.lex_state = 16, .external_lex_state = 8}, - [692] = {.lex_state = 15}, - [693] = {.lex_state = 15}, - [694] = {.lex_state = 15}, - [695] = {.lex_state = 16}, - [696] = {.lex_state = 16, .external_lex_state = 10}, - [697] = {.lex_state = 16}, - [698] = {.lex_state = 16, .external_lex_state = 7}, - [699] = {.lex_state = 16, .external_lex_state = 7}, - [700] = {.lex_state = 16, .external_lex_state = 10}, - [701] = {.lex_state = 16, .external_lex_state = 10}, - [702] = {.lex_state = 16, .external_lex_state = 6}, + [625] = {.lex_state = 51, .external_lex_state = 2}, + [626] = {.lex_state = 51, .external_lex_state = 2}, + [627] = {.lex_state = 51, .external_lex_state = 2}, + [628] = {.lex_state = 51, .external_lex_state = 2}, + [629] = {.lex_state = 51, .external_lex_state = 2}, + [630] = {.lex_state = 51, .external_lex_state = 2}, + [631] = {.lex_state = 51, .external_lex_state = 2}, + [632] = {.lex_state = 51, .external_lex_state = 2}, + [633] = {.lex_state = 51, .external_lex_state = 2}, + [634] = {.lex_state = 51, .external_lex_state = 2}, + [635] = {.lex_state = 51, .external_lex_state = 2}, + [636] = {.lex_state = 51, .external_lex_state = 2}, + [637] = {.lex_state = 51, .external_lex_state = 2}, + [638] = {.lex_state = 51, .external_lex_state = 2}, + [639] = {.lex_state = 51, .external_lex_state = 2}, + [640] = {.lex_state = 51, .external_lex_state = 2}, + [641] = {.lex_state = 51, .external_lex_state = 2}, + [642] = {.lex_state = 51, .external_lex_state = 2}, + [643] = {.lex_state = 51, .external_lex_state = 2}, + [644] = {.lex_state = 51, .external_lex_state = 2}, + [645] = {.lex_state = 51, .external_lex_state = 2}, + [646] = {.lex_state = 51, .external_lex_state = 2}, + [647] = {.lex_state = 51, .external_lex_state = 2}, + [648] = {.lex_state = 51, .external_lex_state = 2}, + [649] = {.lex_state = 51, .external_lex_state = 2}, + [650] = {.lex_state = 51, .external_lex_state = 2}, + [651] = {.lex_state = 51, .external_lex_state = 2}, + [652] = {.lex_state = 51, .external_lex_state = 2}, + [653] = {.lex_state = 51, .external_lex_state = 2}, + [654] = {.lex_state = 51, .external_lex_state = 2}, + [655] = {.lex_state = 51, .external_lex_state = 2}, + [656] = {.lex_state = 51, .external_lex_state = 2}, + [657] = {.lex_state = 51, .external_lex_state = 2}, + [658] = {.lex_state = 51, .external_lex_state = 2}, + [659] = {.lex_state = 51, .external_lex_state = 2}, + [660] = {.lex_state = 51, .external_lex_state = 2}, + [661] = {.lex_state = 51, .external_lex_state = 2}, + [662] = {.lex_state = 51, .external_lex_state = 2}, + [663] = {.lex_state = 51, .external_lex_state = 2}, + [664] = {.lex_state = 51, .external_lex_state = 2}, + [665] = {.lex_state = 51, .external_lex_state = 2}, + [666] = {.lex_state = 51, .external_lex_state = 2}, + [667] = {.lex_state = 51, .external_lex_state = 2}, + [668] = {.lex_state = 51, .external_lex_state = 2}, + [669] = {.lex_state = 51, .external_lex_state = 2}, + [670] = {.lex_state = 51, .external_lex_state = 2}, + [671] = {.lex_state = 51, .external_lex_state = 2}, + [672] = {.lex_state = 51, .external_lex_state = 2}, + [673] = {.lex_state = 51, .external_lex_state = 2}, + [674] = {.lex_state = 51, .external_lex_state = 2}, + [675] = {.lex_state = 51, .external_lex_state = 2}, + [676] = {.lex_state = 51, .external_lex_state = 2}, + [677] = {.lex_state = 51, .external_lex_state = 2}, + [678] = {.lex_state = 51, .external_lex_state = 2}, + [679] = {.lex_state = 51, .external_lex_state = 2}, + [680] = {.lex_state = 51, .external_lex_state = 2}, + [681] = {.lex_state = 51, .external_lex_state = 2}, + [682] = {.lex_state = 51, .external_lex_state = 2}, + [683] = {.lex_state = 51, .external_lex_state = 2}, + [684] = {.lex_state = 51, .external_lex_state = 2}, + [685] = {.lex_state = 51, .external_lex_state = 2}, + [686] = {.lex_state = 51, .external_lex_state = 2}, + [687] = {.lex_state = 51, .external_lex_state = 2}, + [688] = {.lex_state = 51, .external_lex_state = 2}, + [689] = {.lex_state = 51, .external_lex_state = 2}, + [690] = {.lex_state = 51, .external_lex_state = 2}, + [691] = {.lex_state = 51, .external_lex_state = 2}, + [692] = {.lex_state = 51, .external_lex_state = 2}, + [693] = {.lex_state = 51, .external_lex_state = 2}, + [694] = {.lex_state = 51, .external_lex_state = 2}, + [695] = {.lex_state = 16, .external_lex_state = 8}, + [696] = {.lex_state = 16, .external_lex_state = 9}, + [697] = {.lex_state = 16, .external_lex_state = 8}, + [698] = {.lex_state = 16, .external_lex_state = 9}, + [699] = {.lex_state = 16}, + [700] = {.lex_state = 16}, + [701] = {.lex_state = 16}, + [702] = {.lex_state = 16}, [703] = {.lex_state = 16}, - [704] = {.lex_state = 16, .external_lex_state = 7}, - [705] = {.lex_state = 16, .external_lex_state = 6}, - [706] = {.lex_state = 16, .external_lex_state = 6}, - [707] = {.lex_state = 16, .external_lex_state = 6}, - [708] = {.lex_state = 16, .external_lex_state = 6}, - [709] = {.lex_state = 16, .external_lex_state = 8}, - [710] = {.lex_state = 16, .external_lex_state = 6}, - [711] = {.lex_state = 16, .external_lex_state = 6}, - [712] = {.lex_state = 16, .external_lex_state = 6}, - [713] = {.lex_state = 16, .external_lex_state = 6}, - [714] = {.lex_state = 16, .external_lex_state = 6}, - [715] = {.lex_state = 16, .external_lex_state = 9}, - [716] = {.lex_state = 16, .external_lex_state = 8}, - [717] = {.lex_state = 16, .external_lex_state = 6}, + [704] = {.lex_state = 16}, + [705] = {.lex_state = 16}, + [706] = {.lex_state = 16}, + [707] = {.lex_state = 16}, + [708] = {.lex_state = 16}, + [709] = {.lex_state = 16}, + [710] = {.lex_state = 16}, + [711] = {.lex_state = 16}, + [712] = {.lex_state = 15}, + [713] = {.lex_state = 15}, + [714] = {.lex_state = 16}, + [715] = {.lex_state = 16}, + [716] = {.lex_state = 16}, + [717] = {.lex_state = 16}, [718] = {.lex_state = 16}, - [719] = {.lex_state = 16, .external_lex_state = 9}, - [720] = {.lex_state = 16, .external_lex_state = 8}, - [721] = {.lex_state = 16, .external_lex_state = 6}, - [722] = {.lex_state = 16, .external_lex_state = 9}, - [723] = {.lex_state = 16, .external_lex_state = 6}, + [719] = {.lex_state = 16}, + [720] = {.lex_state = 16}, + [721] = {.lex_state = 16}, + [722] = {.lex_state = 16}, + [723] = {.lex_state = 16}, [724] = {.lex_state = 16}, - [725] = {.lex_state = 16, .external_lex_state = 10}, - [726] = {.lex_state = 16, .external_lex_state = 10}, - [727] = {.lex_state = 15, .external_lex_state = 6}, - [728] = {.lex_state = 50, .external_lex_state = 2}, - [729] = {.lex_state = 15}, - [730] = {.lex_state = 15, .external_lex_state = 6}, + [725] = {.lex_state = 16}, + [726] = {.lex_state = 16}, + [727] = {.lex_state = 16}, + [728] = {.lex_state = 16}, + [729] = {.lex_state = 16}, + [730] = {.lex_state = 16}, [731] = {.lex_state = 16}, [732] = {.lex_state = 16}, - [733] = {.lex_state = 50, .external_lex_state = 2}, + [733] = {.lex_state = 16}, [734] = {.lex_state = 16}, [735] = {.lex_state = 16}, [736] = {.lex_state = 16}, - [737] = {.lex_state = 14, .external_lex_state = 2}, + [737] = {.lex_state = 16}, [738] = {.lex_state = 16}, [739] = {.lex_state = 16}, [740] = {.lex_state = 16}, [741] = {.lex_state = 16}, [742] = {.lex_state = 16}, - [743] = {.lex_state = 16, .external_lex_state = 7}, - [744] = {.lex_state = 16}, - [745] = {.lex_state = 16}, - [746] = {.lex_state = 16}, - [747] = {.lex_state = 15}, + [743] = {.lex_state = 16}, + [744] = {.lex_state = 16, .external_lex_state = 8}, + [745] = {.lex_state = 16, .external_lex_state = 9}, + [746] = {.lex_state = 16, .external_lex_state = 8}, + [747] = {.lex_state = 16, .external_lex_state = 9}, [748] = {.lex_state = 16}, - [749] = {.lex_state = 15}, - [750] = {.lex_state = 14, .external_lex_state = 2}, + [749] = {.lex_state = 16}, + [750] = {.lex_state = 16}, [751] = {.lex_state = 16}, [752] = {.lex_state = 16}, [753] = {.lex_state = 16}, - [754] = {.lex_state = 15}, - [755] = {.lex_state = 16, .external_lex_state = 7}, + [754] = {.lex_state = 16}, + [755] = {.lex_state = 16}, [756] = {.lex_state = 16}, - [757] = {.lex_state = 16, .external_lex_state = 6}, - [758] = {.lex_state = 16, .external_lex_state = 6}, - [759] = {.lex_state = 16, .external_lex_state = 6}, - [760] = {.lex_state = 16, .external_lex_state = 6}, - [761] = {.lex_state = 16, .external_lex_state = 6}, - [762] = {.lex_state = 15}, - [763] = {.lex_state = 16, .external_lex_state = 6}, - [764] = {.lex_state = 16, .external_lex_state = 6}, - [765] = {.lex_state = 50, .external_lex_state = 2}, - [766] = {.lex_state = 50, .external_lex_state = 2}, - [767] = {.lex_state = 16, .external_lex_state = 6}, - [768] = {.lex_state = 50, .external_lex_state = 2}, - [769] = {.lex_state = 16, .external_lex_state = 6}, - [770] = {.lex_state = 16}, - [771] = {.lex_state = 50, .external_lex_state = 2}, - [772] = {.lex_state = 16, .external_lex_state = 6}, - [773] = {.lex_state = 50, .external_lex_state = 2}, - [774] = {.lex_state = 50, .external_lex_state = 2}, - [775] = {.lex_state = 16, .external_lex_state = 6}, - [776] = {.lex_state = 16, .external_lex_state = 6}, - [777] = {.lex_state = 16, .external_lex_state = 6}, - [778] = {.lex_state = 15}, + [757] = {.lex_state = 16}, + [758] = {.lex_state = 16}, + [759] = {.lex_state = 16}, + [760] = {.lex_state = 16}, + [761] = {.lex_state = 16}, + [762] = {.lex_state = 15, .external_lex_state = 9}, + [763] = {.lex_state = 16, .external_lex_state = 10}, + [764] = {.lex_state = 16}, + [765] = {.lex_state = 16, .external_lex_state = 7}, + [766] = {.lex_state = 15}, + [767] = {.lex_state = 15, .external_lex_state = 8}, + [768] = {.lex_state = 15, .external_lex_state = 9}, + [769] = {.lex_state = 15, .external_lex_state = 8}, + [770] = {.lex_state = 15, .external_lex_state = 9}, + [771] = {.lex_state = 15, .external_lex_state = 8}, + [772] = {.lex_state = 16}, + [773] = {.lex_state = 16}, + [774] = {.lex_state = 16}, + [775] = {.lex_state = 16, .external_lex_state = 7}, + [776] = {.lex_state = 16, .external_lex_state = 10}, + [777] = {.lex_state = 16}, + [778] = {.lex_state = 16, .external_lex_state = 10}, [779] = {.lex_state = 16, .external_lex_state = 6}, - [780] = {.lex_state = 16, .external_lex_state = 6}, - [781] = {.lex_state = 16, .external_lex_state = 6}, - [782] = {.lex_state = 16, .external_lex_state = 6}, - [783] = {.lex_state = 16, .external_lex_state = 6}, - [784] = {.lex_state = 16, .external_lex_state = 6}, - [785] = {.lex_state = 16, .external_lex_state = 6}, - [786] = {.lex_state = 16, .external_lex_state = 6}, - [787] = {.lex_state = 16, .external_lex_state = 6}, - [788] = {.lex_state = 16, .external_lex_state = 6}, - [789] = {.lex_state = 16, .external_lex_state = 6}, - [790] = {.lex_state = 16, .external_lex_state = 6}, - [791] = {.lex_state = 16, .external_lex_state = 6}, - [792] = {.lex_state = 16, .external_lex_state = 6}, - [793] = {.lex_state = 16, .external_lex_state = 6}, - [794] = {.lex_state = 16, .external_lex_state = 6}, - [795] = {.lex_state = 16, .external_lex_state = 6}, - [796] = {.lex_state = 16}, - [797] = {.lex_state = 16, .external_lex_state = 6}, - [798] = {.lex_state = 16, .external_lex_state = 6}, + [780] = {.lex_state = 16}, + [781] = {.lex_state = 16}, + [782] = {.lex_state = 16, .external_lex_state = 7}, + [783] = {.lex_state = 15}, + [784] = {.lex_state = 15}, + [785] = {.lex_state = 15}, + [786] = {.lex_state = 15}, + [787] = {.lex_state = 15}, + [788] = {.lex_state = 15}, + [789] = {.lex_state = 15}, + [790] = {.lex_state = 16}, + [791] = {.lex_state = 15}, + [792] = {.lex_state = 15}, + [793] = {.lex_state = 15}, + [794] = {.lex_state = 16, .external_lex_state = 8}, + [795] = {.lex_state = 16, .external_lex_state = 9}, + [796] = {.lex_state = 16, .external_lex_state = 6}, + [797] = {.lex_state = 15}, + [798] = {.lex_state = 15}, [799] = {.lex_state = 16, .external_lex_state = 6}, - [800] = {.lex_state = 16}, - [801] = {.lex_state = 16}, - [802] = {.lex_state = 16}, - [803] = {.lex_state = 15}, - [804] = {.lex_state = 50, .external_lex_state = 2}, - [805] = {.lex_state = 16}, - [806] = {.lex_state = 16}, - [807] = {.lex_state = 50, .external_lex_state = 2}, - [808] = {.lex_state = 16}, - [809] = {.lex_state = 16}, - [810] = {.lex_state = 50, .external_lex_state = 2}, - [811] = {.lex_state = 16}, + [800] = {.lex_state = 16, .external_lex_state = 6}, + [801] = {.lex_state = 16, .external_lex_state = 6}, + [802] = {.lex_state = 16, .external_lex_state = 6}, + [803] = {.lex_state = 16}, + [804] = {.lex_state = 16, .external_lex_state = 6}, + [805] = {.lex_state = 16, .external_lex_state = 6}, + [806] = {.lex_state = 16, .external_lex_state = 8}, + [807] = {.lex_state = 16, .external_lex_state = 9}, + [808] = {.lex_state = 16, .external_lex_state = 8}, + [809] = {.lex_state = 16, .external_lex_state = 9}, + [810] = {.lex_state = 16, .external_lex_state = 6}, + [811] = {.lex_state = 16, .external_lex_state = 6}, [812] = {.lex_state = 16}, [813] = {.lex_state = 16}, [814] = {.lex_state = 16}, @@ -6958,14 +7225,14 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [820] = {.lex_state = 16}, [821] = {.lex_state = 16}, [822] = {.lex_state = 16}, - [823] = {.lex_state = 50, .external_lex_state = 2}, - [824] = {.lex_state = 16}, - [825] = {.lex_state = 15}, - [826] = {.lex_state = 16}, - [827] = {.lex_state = 16}, + [823] = {.lex_state = 16, .external_lex_state = 6}, + [824] = {.lex_state = 16, .external_lex_state = 6}, + [825] = {.lex_state = 16, .external_lex_state = 6}, + [826] = {.lex_state = 16, .external_lex_state = 6}, + [827] = {.lex_state = 16, .external_lex_state = 10}, [828] = {.lex_state = 16}, [829] = {.lex_state = 16}, - [830] = {.lex_state = 16}, + [830] = {.lex_state = 16, .external_lex_state = 10}, [831] = {.lex_state = 16}, [832] = {.lex_state = 16}, [833] = {.lex_state = 16}, @@ -6974,754 +7241,894 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [836] = {.lex_state = 16}, [837] = {.lex_state = 16}, [838] = {.lex_state = 16}, - [839] = {.lex_state = 50, .external_lex_state = 2}, - [840] = {.lex_state = 50, .external_lex_state = 2}, - [841] = {.lex_state = 50, .external_lex_state = 2}, - [842] = {.lex_state = 50, .external_lex_state = 2}, - [843] = {.lex_state = 50, .external_lex_state = 2}, - [844] = {.lex_state = 14}, - [845] = {.lex_state = 14}, - [846] = {.lex_state = 14}, - [847] = {.lex_state = 14}, - [848] = {.lex_state = 14}, - [849] = {.lex_state = 14}, - [850] = {.lex_state = 0, .external_lex_state = 6}, - [851] = {.lex_state = 50, .external_lex_state = 2}, + [839] = {.lex_state = 16}, + [840] = {.lex_state = 15}, + [841] = {.lex_state = 15, .external_lex_state = 8}, + [842] = {.lex_state = 16}, + [843] = {.lex_state = 16}, + [844] = {.lex_state = 16}, + [845] = {.lex_state = 16}, + [846] = {.lex_state = 51, .external_lex_state = 2}, + [847] = {.lex_state = 16, .external_lex_state = 7}, + [848] = {.lex_state = 16}, + [849] = {.lex_state = 16}, + [850] = {.lex_state = 15, .external_lex_state = 8}, + [851] = {.lex_state = 15, .external_lex_state = 9}, [852] = {.lex_state = 16}, - [853] = {.lex_state = 14}, - [854] = {.lex_state = 14}, - [855] = {.lex_state = 50, .external_lex_state = 2}, - [856] = {.lex_state = 0, .external_lex_state = 6}, - [857] = {.lex_state = 14}, - [858] = {.lex_state = 50, .external_lex_state = 2}, - [859] = {.lex_state = 16}, - [860] = {.lex_state = 14}, - [861] = {.lex_state = 14}, - [862] = {.lex_state = 16}, - [863] = {.lex_state = 14}, - [864] = {.lex_state = 14}, - [865] = {.lex_state = 14}, - [866] = {.lex_state = 14}, - [867] = {.lex_state = 14}, - [868] = {.lex_state = 14}, - [869] = {.lex_state = 14}, - [870] = {.lex_state = 50, .external_lex_state = 2}, - [871] = {.lex_state = 0}, - [872] = {.lex_state = 0}, - [873] = {.lex_state = 0}, - [874] = {.lex_state = 14}, - [875] = {.lex_state = 14}, - [876] = {.lex_state = 14}, - [877] = {.lex_state = 0}, - [878] = {.lex_state = 0}, - [879] = {.lex_state = 14}, - [880] = {.lex_state = 14}, - [881] = {.lex_state = 16}, - [882] = {.lex_state = 16}, - [883] = {.lex_state = 14}, - [884] = {.lex_state = 14}, - [885] = {.lex_state = 14}, - [886] = {.lex_state = 14}, - [887] = {.lex_state = 14}, - [888] = {.lex_state = 14}, - [889] = {.lex_state = 14}, - [890] = {.lex_state = 14}, - [891] = {.lex_state = 14, .external_lex_state = 9}, - [892] = {.lex_state = 14, .external_lex_state = 8}, - [893] = {.lex_state = 14}, - [894] = {.lex_state = 16}, - [895] = {.lex_state = 14}, - [896] = {.lex_state = 14}, - [897] = {.lex_state = 14}, - [898] = {.lex_state = 14}, - [899] = {.lex_state = 14}, - [900] = {.lex_state = 14}, - [901] = {.lex_state = 14}, - [902] = {.lex_state = 16}, - [903] = {.lex_state = 0}, - [904] = {.lex_state = 14}, - [905] = {.lex_state = 14}, - [906] = {.lex_state = 18, .external_lex_state = 11}, - [907] = {.lex_state = 18, .external_lex_state = 11}, - [908] = {.lex_state = 0}, - [909] = {.lex_state = 0}, - [910] = {.lex_state = 14}, - [911] = {.lex_state = 0}, - [912] = {.lex_state = 0}, - [913] = {.lex_state = 18, .external_lex_state = 11}, - [914] = {.lex_state = 18, .external_lex_state = 11}, - [915] = {.lex_state = 18, .external_lex_state = 11}, - [916] = {.lex_state = 18, .external_lex_state = 11}, - [917] = {.lex_state = 14}, - [918] = {.lex_state = 18, .external_lex_state = 11}, - [919] = {.lex_state = 18, .external_lex_state = 11}, - [920] = {.lex_state = 18, .external_lex_state = 11}, - [921] = {.lex_state = 0}, - [922] = {.lex_state = 18, .external_lex_state = 11}, - [923] = {.lex_state = 18, .external_lex_state = 11}, - [924] = {.lex_state = 14}, - [925] = {.lex_state = 18, .external_lex_state = 11}, - [926] = {.lex_state = 18, .external_lex_state = 11}, - [927] = {.lex_state = 14}, - [928] = {.lex_state = 0}, - [929] = {.lex_state = 18, .external_lex_state = 11}, - [930] = {.lex_state = 0}, - [931] = {.lex_state = 14}, - [932] = {.lex_state = 18, .external_lex_state = 11}, - [933] = {.lex_state = 0}, - [934] = {.lex_state = 14}, - [935] = {.lex_state = 0}, - [936] = {.lex_state = 0}, - [937] = {.lex_state = 0}, - [938] = {.lex_state = 14}, - [939] = {.lex_state = 14}, - [940] = {.lex_state = 14}, - [941] = {.lex_state = 0}, - [942] = {.lex_state = 0}, - [943] = {.lex_state = 0}, - [944] = {.lex_state = 14}, - [945] = {.lex_state = 0}, - [946] = {.lex_state = 14}, - [947] = {.lex_state = 14}, - [948] = {.lex_state = 14}, - [949] = {.lex_state = 14}, - [950] = {.lex_state = 14}, - [951] = {.lex_state = 0, .external_lex_state = 6}, - [952] = {.lex_state = 14}, - [953] = {.lex_state = 0, .external_lex_state = 6}, - [954] = {.lex_state = 14}, - [955] = {.lex_state = 0, .external_lex_state = 6}, - [956] = {.lex_state = 14}, - [957] = {.lex_state = 14}, - [958] = {.lex_state = 14}, - [959] = {.lex_state = 14}, - [960] = {.lex_state = 0}, - [961] = {.lex_state = 0}, - [962] = {.lex_state = 14}, - [963] = {.lex_state = 0, .external_lex_state = 6}, - [964] = {.lex_state = 14}, - [965] = {.lex_state = 14}, - [966] = {.lex_state = 14}, - [967] = {.lex_state = 0}, - [968] = {.lex_state = 14}, - [969] = {.lex_state = 0, .external_lex_state = 6}, - [970] = {.lex_state = 0, .external_lex_state = 6}, - [971] = {.lex_state = 14}, - [972] = {.lex_state = 0, .external_lex_state = 6}, - [973] = {.lex_state = 0}, - [974] = {.lex_state = 14}, - [975] = {.lex_state = 14}, - [976] = {.lex_state = 0}, - [977] = {.lex_state = 14}, - [978] = {.lex_state = 0}, - [979] = {.lex_state = 0, .external_lex_state = 6}, - [980] = {.lex_state = 14}, + [853] = {.lex_state = 16, .external_lex_state = 6}, + [854] = {.lex_state = 51, .external_lex_state = 2}, + [855] = {.lex_state = 16}, + [856] = {.lex_state = 51, .external_lex_state = 2}, + [857] = {.lex_state = 16}, + [858] = {.lex_state = 16}, + [859] = {.lex_state = 15, .external_lex_state = 9}, + [860] = {.lex_state = 16}, + [861] = {.lex_state = 16, .external_lex_state = 7}, + [862] = {.lex_state = 51, .external_lex_state = 2}, + [863] = {.lex_state = 16}, + [864] = {.lex_state = 16}, + [865] = {.lex_state = 15}, + [866] = {.lex_state = 15}, + [867] = {.lex_state = 16, .external_lex_state = 6}, + [868] = {.lex_state = 15}, + [869] = {.lex_state = 15}, + [870] = {.lex_state = 16}, + [871] = {.lex_state = 16}, + [872] = {.lex_state = 15}, + [873] = {.lex_state = 15}, + [874] = {.lex_state = 15}, + [875] = {.lex_state = 15}, + [876] = {.lex_state = 15}, + [877] = {.lex_state = 15}, + [878] = {.lex_state = 16, .external_lex_state = 6}, + [879] = {.lex_state = 15}, + [880] = {.lex_state = 15}, + [881] = {.lex_state = 15}, + [882] = {.lex_state = 15}, + [883] = {.lex_state = 15}, + [884] = {.lex_state = 15}, + [885] = {.lex_state = 15}, + [886] = {.lex_state = 16, .external_lex_state = 6}, + [887] = {.lex_state = 15}, + [888] = {.lex_state = 15}, + [889] = {.lex_state = 15}, + [890] = {.lex_state = 15}, + [891] = {.lex_state = 16, .external_lex_state = 6}, + [892] = {.lex_state = 15}, + [893] = {.lex_state = 15}, + [894] = {.lex_state = 15}, + [895] = {.lex_state = 15}, + [896] = {.lex_state = 15}, + [897] = {.lex_state = 15}, + [898] = {.lex_state = 15}, + [899] = {.lex_state = 15}, + [900] = {.lex_state = 15}, + [901] = {.lex_state = 16, .external_lex_state = 6}, + [902] = {.lex_state = 16, .external_lex_state = 6}, + [903] = {.lex_state = 16, .external_lex_state = 6}, + [904] = {.lex_state = 16, .external_lex_state = 6}, + [905] = {.lex_state = 16, .external_lex_state = 6}, + [906] = {.lex_state = 15}, + [907] = {.lex_state = 16, .external_lex_state = 6}, + [908] = {.lex_state = 16, .external_lex_state = 6}, + [909] = {.lex_state = 16, .external_lex_state = 6}, + [910] = {.lex_state = 16, .external_lex_state = 6}, + [911] = {.lex_state = 16}, + [912] = {.lex_state = 16}, + [913] = {.lex_state = 16, .external_lex_state = 6}, + [914] = {.lex_state = 16, .external_lex_state = 6}, + [915] = {.lex_state = 16}, + [916] = {.lex_state = 16, .external_lex_state = 6}, + [917] = {.lex_state = 16, .external_lex_state = 6}, + [918] = {.lex_state = 16, .external_lex_state = 6}, + [919] = {.lex_state = 16}, + [920] = {.lex_state = 16, .external_lex_state = 6}, + [921] = {.lex_state = 16, .external_lex_state = 6}, + [922] = {.lex_state = 16, .external_lex_state = 6}, + [923] = {.lex_state = 16, .external_lex_state = 6}, + [924] = {.lex_state = 15}, + [925] = {.lex_state = 16}, + [926] = {.lex_state = 16, .external_lex_state = 6}, + [927] = {.lex_state = 51, .external_lex_state = 2}, + [928] = {.lex_state = 51, .external_lex_state = 2}, + [929] = {.lex_state = 16, .external_lex_state = 6}, + [930] = {.lex_state = 16, .external_lex_state = 6}, + [931] = {.lex_state = 16, .external_lex_state = 6}, + [932] = {.lex_state = 51, .external_lex_state = 2}, + [933] = {.lex_state = 51, .external_lex_state = 2}, + [934] = {.lex_state = 51, .external_lex_state = 2}, + [935] = {.lex_state = 51, .external_lex_state = 2}, + [936] = {.lex_state = 16, .external_lex_state = 6}, + [937] = {.lex_state = 16, .external_lex_state = 6}, + [938] = {.lex_state = 15}, + [939] = {.lex_state = 15}, + [940] = {.lex_state = 16, .external_lex_state = 6}, + [941] = {.lex_state = 16, .external_lex_state = 6}, + [942] = {.lex_state = 16, .external_lex_state = 6}, + [943] = {.lex_state = 16, .external_lex_state = 6}, + [944] = {.lex_state = 16, .external_lex_state = 6}, + [945] = {.lex_state = 16}, + [946] = {.lex_state = 16}, + [947] = {.lex_state = 16}, + [948] = {.lex_state = 16}, + [949] = {.lex_state = 16}, + [950] = {.lex_state = 16}, + [951] = {.lex_state = 16}, + [952] = {.lex_state = 16}, + [953] = {.lex_state = 16}, + [954] = {.lex_state = 16}, + [955] = {.lex_state = 16}, + [956] = {.lex_state = 16}, + [957] = {.lex_state = 16}, + [958] = {.lex_state = 16}, + [959] = {.lex_state = 16}, + [960] = {.lex_state = 16}, + [961] = {.lex_state = 16}, + [962] = {.lex_state = 16}, + [963] = {.lex_state = 16}, + [964] = {.lex_state = 51, .external_lex_state = 2}, + [965] = {.lex_state = 16}, + [966] = {.lex_state = 16}, + [967] = {.lex_state = 16}, + [968] = {.lex_state = 16}, + [969] = {.lex_state = 16}, + [970] = {.lex_state = 16}, + [971] = {.lex_state = 16}, + [972] = {.lex_state = 16}, + [973] = {.lex_state = 16}, + [974] = {.lex_state = 16}, + [975] = {.lex_state = 16}, + [976] = {.lex_state = 16}, + [977] = {.lex_state = 16}, + [978] = {.lex_state = 16}, + [979] = {.lex_state = 51, .external_lex_state = 2}, + [980] = {.lex_state = 51, .external_lex_state = 2}, [981] = {.lex_state = 16}, - [982] = {.lex_state = 14}, - [983] = {.lex_state = 14}, - [984] = {.lex_state = 0, .external_lex_state = 6}, - [985] = {.lex_state = 0, .external_lex_state = 6}, - [986] = {.lex_state = 14}, - [987] = {.lex_state = 0}, - [988] = {.lex_state = 0}, - [989] = {.lex_state = 0, .external_lex_state = 6}, - [990] = {.lex_state = 14}, - [991] = {.lex_state = 14}, + [982] = {.lex_state = 51, .external_lex_state = 2}, + [983] = {.lex_state = 16}, + [984] = {.lex_state = 51, .external_lex_state = 2}, + [985] = {.lex_state = 51, .external_lex_state = 2}, + [986] = {.lex_state = 51, .external_lex_state = 2}, + [987] = {.lex_state = 51, .external_lex_state = 2}, + [988] = {.lex_state = 51, .external_lex_state = 2}, + [989] = {.lex_state = 51}, + [990] = {.lex_state = 0}, + [991] = {.lex_state = 51}, [992] = {.lex_state = 0}, - [993] = {.lex_state = 14}, - [994] = {.lex_state = 14}, - [995] = {.lex_state = 0}, - [996] = {.lex_state = 14}, - [997] = {.lex_state = 0}, - [998] = {.lex_state = 0}, - [999] = {.lex_state = 14}, - [1000] = {.lex_state = 14}, - [1001] = {.lex_state = 14}, + [993] = {.lex_state = 51}, + [994] = {.lex_state = 51, .external_lex_state = 2}, + [995] = {.lex_state = 14}, + [996] = {.lex_state = 51, .external_lex_state = 2}, + [997] = {.lex_state = 51}, + [998] = {.lex_state = 51}, + [999] = {.lex_state = 51}, + [1000] = {.lex_state = 16}, + [1001] = {.lex_state = 16}, [1002] = {.lex_state = 0, .external_lex_state = 6}, [1003] = {.lex_state = 0, .external_lex_state = 6}, - [1004] = {.lex_state = 0}, - [1005] = {.lex_state = 0, .external_lex_state = 6}, - [1006] = {.lex_state = 0}, - [1007] = {.lex_state = 0}, - [1008] = {.lex_state = 0, .external_lex_state = 6}, - [1009] = {.lex_state = 0, .external_lex_state = 6}, - [1010] = {.lex_state = 14}, - [1011] = {.lex_state = 0}, - [1012] = {.lex_state = 0, .external_lex_state = 6}, - [1013] = {.lex_state = 16}, - [1014] = {.lex_state = 14}, - [1015] = {.lex_state = 14}, - [1016] = {.lex_state = 0}, - [1017] = {.lex_state = 0}, - [1018] = {.lex_state = 0}, - [1019] = {.lex_state = 14}, - [1020] = {.lex_state = 0}, - [1021] = {.lex_state = 14}, - [1022] = {.lex_state = 14}, - [1023] = {.lex_state = 0}, - [1024] = {.lex_state = 14}, - [1025] = {.lex_state = 0}, - [1026] = {.lex_state = 0, .external_lex_state = 6}, - [1027] = {.lex_state = 14}, + [1004] = {.lex_state = 51}, + [1005] = {.lex_state = 51}, + [1006] = {.lex_state = 14}, + [1007] = {.lex_state = 51}, + [1008] = {.lex_state = 51, .external_lex_state = 2}, + [1009] = {.lex_state = 51}, + [1010] = {.lex_state = 51}, + [1011] = {.lex_state = 51}, + [1012] = {.lex_state = 16}, + [1013] = {.lex_state = 51}, + [1014] = {.lex_state = 51}, + [1015] = {.lex_state = 51}, + [1016] = {.lex_state = 51}, + [1017] = {.lex_state = 51}, + [1018] = {.lex_state = 51}, + [1019] = {.lex_state = 51}, + [1020] = {.lex_state = 51}, + [1021] = {.lex_state = 51, .external_lex_state = 2}, + [1022] = {.lex_state = 0}, + [1023] = {.lex_state = 51}, + [1024] = {.lex_state = 51}, + [1025] = {.lex_state = 51}, + [1026] = {.lex_state = 0}, + [1027] = {.lex_state = 0}, [1028] = {.lex_state = 0}, - [1029] = {.lex_state = 14}, - [1030] = {.lex_state = 0, .external_lex_state = 6}, - [1031] = {.lex_state = 0, .external_lex_state = 6}, - [1032] = {.lex_state = 0, .external_lex_state = 6}, - [1033] = {.lex_state = 14}, - [1034] = {.lex_state = 14}, + [1029] = {.lex_state = 0}, + [1030] = {.lex_state = 51}, + [1031] = {.lex_state = 51}, + [1032] = {.lex_state = 16}, + [1033] = {.lex_state = 18, .external_lex_state = 11}, + [1034] = {.lex_state = 51}, [1035] = {.lex_state = 18, .external_lex_state = 11}, - [1036] = {.lex_state = 14}, + [1036] = {.lex_state = 18, .external_lex_state = 11}, [1037] = {.lex_state = 18, .external_lex_state = 11}, - [1038] = {.lex_state = 16, .external_lex_state = 6}, - [1039] = {.lex_state = 16}, - [1040] = {.lex_state = 14}, - [1041] = {.lex_state = 16, .external_lex_state = 6}, - [1042] = {.lex_state = 14}, - [1043] = {.lex_state = 0}, + [1038] = {.lex_state = 16}, + [1039] = {.lex_state = 51, .external_lex_state = 8}, + [1040] = {.lex_state = 51, .external_lex_state = 9}, + [1041] = {.lex_state = 0}, + [1042] = {.lex_state = 16}, + [1043] = {.lex_state = 18, .external_lex_state = 11}, [1044] = {.lex_state = 18, .external_lex_state = 11}, - [1045] = {.lex_state = 0}, - [1046] = {.lex_state = 18, .external_lex_state = 11}, - [1047] = {.lex_state = 16, .external_lex_state = 6}, + [1045] = {.lex_state = 18, .external_lex_state = 11}, + [1046] = {.lex_state = 51}, + [1047] = {.lex_state = 18, .external_lex_state = 11}, [1048] = {.lex_state = 18, .external_lex_state = 11}, - [1049] = {.lex_state = 14}, - [1050] = {.lex_state = 14}, - [1051] = {.lex_state = 16}, - [1052] = {.lex_state = 14}, - [1053] = {.lex_state = 0, .external_lex_state = 6}, + [1049] = {.lex_state = 16}, + [1050] = {.lex_state = 18, .external_lex_state = 11}, + [1051] = {.lex_state = 18, .external_lex_state = 11}, + [1052] = {.lex_state = 18, .external_lex_state = 11}, + [1053] = {.lex_state = 18, .external_lex_state = 11}, [1054] = {.lex_state = 18, .external_lex_state = 11}, - [1055] = {.lex_state = 14}, + [1055] = {.lex_state = 18, .external_lex_state = 11}, [1056] = {.lex_state = 18, .external_lex_state = 11}, - [1057] = {.lex_state = 14}, - [1058] = {.lex_state = 14}, - [1059] = {.lex_state = 14}, - [1060] = {.lex_state = 0}, - [1061] = {.lex_state = 14}, - [1062] = {.lex_state = 14}, - [1063] = {.lex_state = 0, .external_lex_state = 6}, - [1064] = {.lex_state = 14}, - [1065] = {.lex_state = 14}, - [1066] = {.lex_state = 14}, - [1067] = {.lex_state = 18, .external_lex_state = 11}, - [1068] = {.lex_state = 0, .external_lex_state = 6}, - [1069] = {.lex_state = 0, .external_lex_state = 6}, - [1070] = {.lex_state = 14}, - [1071] = {.lex_state = 14}, - [1072] = {.lex_state = 8}, - [1073] = {.lex_state = 0, .external_lex_state = 6}, + [1057] = {.lex_state = 18, .external_lex_state = 11}, + [1058] = {.lex_state = 18, .external_lex_state = 11}, + [1059] = {.lex_state = 18, .external_lex_state = 11}, + [1060] = {.lex_state = 51}, + [1061] = {.lex_state = 51}, + [1062] = {.lex_state = 0}, + [1063] = {.lex_state = 51}, + [1064] = {.lex_state = 0}, + [1065] = {.lex_state = 51}, + [1066] = {.lex_state = 0}, + [1067] = {.lex_state = 0}, + [1068] = {.lex_state = 0}, + [1069] = {.lex_state = 0}, + [1070] = {.lex_state = 51}, + [1071] = {.lex_state = 51}, + [1072] = {.lex_state = 51}, + [1073] = {.lex_state = 0}, [1074] = {.lex_state = 0}, [1075] = {.lex_state = 0}, - [1076] = {.lex_state = 14}, - [1077] = {.lex_state = 0}, - [1078] = {.lex_state = 0, .external_lex_state = 6}, + [1076] = {.lex_state = 0}, + [1077] = {.lex_state = 51}, + [1078] = {.lex_state = 51}, [1079] = {.lex_state = 0}, - [1080] = {.lex_state = 0, .external_lex_state = 6}, - [1081] = {.lex_state = 0, .external_lex_state = 6}, - [1082] = {.lex_state = 0, .external_lex_state = 6}, + [1080] = {.lex_state = 0}, + [1081] = {.lex_state = 0}, + [1082] = {.lex_state = 51}, [1083] = {.lex_state = 0}, - [1084] = {.lex_state = 14}, + [1084] = {.lex_state = 0}, [1085] = {.lex_state = 0}, - [1086] = {.lex_state = 14}, + [1086] = {.lex_state = 0}, [1087] = {.lex_state = 0}, - [1088] = {.lex_state = 14}, - [1089] = {.lex_state = 14}, + [1088] = {.lex_state = 0}, + [1089] = {.lex_state = 51}, [1090] = {.lex_state = 0}, - [1091] = {.lex_state = 0, .external_lex_state = 6}, + [1091] = {.lex_state = 51}, [1092] = {.lex_state = 0}, - [1093] = {.lex_state = 0, .external_lex_state = 6}, - [1094] = {.lex_state = 0, .external_lex_state = 6}, - [1095] = {.lex_state = 0}, - [1096] = {.lex_state = 0, .external_lex_state = 6}, - [1097] = {.lex_state = 0, .external_lex_state = 6}, - [1098] = {.lex_state = 8}, + [1093] = {.lex_state = 14}, + [1094] = {.lex_state = 0}, + [1095] = {.lex_state = 14}, + [1096] = {.lex_state = 51}, + [1097] = {.lex_state = 51}, + [1098] = {.lex_state = 0}, [1099] = {.lex_state = 0}, [1100] = {.lex_state = 0}, - [1101] = {.lex_state = 0, .external_lex_state = 6}, - [1102] = {.lex_state = 0}, + [1101] = {.lex_state = 51}, + [1102] = {.lex_state = 51}, [1103] = {.lex_state = 14}, - [1104] = {.lex_state = 8}, - [1105] = {.lex_state = 0, .external_lex_state = 6}, - [1106] = {.lex_state = 0}, - [1107] = {.lex_state = 16, .external_lex_state = 6}, - [1108] = {.lex_state = 0}, + [1104] = {.lex_state = 14}, + [1105] = {.lex_state = 14}, + [1106] = {.lex_state = 14}, + [1107] = {.lex_state = 14}, + [1108] = {.lex_state = 14}, [1109] = {.lex_state = 0, .external_lex_state = 6}, - [1110] = {.lex_state = 0, .external_lex_state = 6}, - [1111] = {.lex_state = 0, .external_lex_state = 6}, + [1110] = {.lex_state = 51}, + [1111] = {.lex_state = 0}, [1112] = {.lex_state = 14}, [1113] = {.lex_state = 0}, - [1114] = {.lex_state = 16}, - [1115] = {.lex_state = 14}, - [1116] = {.lex_state = 0}, - [1117] = {.lex_state = 14}, + [1114] = {.lex_state = 51}, + [1115] = {.lex_state = 51}, + [1116] = {.lex_state = 51}, + [1117] = {.lex_state = 51}, [1118] = {.lex_state = 0}, - [1119] = {.lex_state = 14, .external_lex_state = 9}, - [1120] = {.lex_state = 14, .external_lex_state = 8}, - [1121] = {.lex_state = 14}, - [1122] = {.lex_state = 0}, - [1123] = {.lex_state = 0}, - [1124] = {.lex_state = 0, .external_lex_state = 6}, + [1119] = {.lex_state = 51}, + [1120] = {.lex_state = 51}, + [1121] = {.lex_state = 0, .external_lex_state = 6}, + [1122] = {.lex_state = 0, .external_lex_state = 6}, + [1123] = {.lex_state = 0, .external_lex_state = 6}, + [1124] = {.lex_state = 51}, [1125] = {.lex_state = 14}, - [1126] = {.lex_state = 14}, - [1127] = {.lex_state = 0}, - [1128] = {.lex_state = 14}, - [1129] = {.lex_state = 0}, - [1130] = {.lex_state = 0, .external_lex_state = 6}, - [1131] = {.lex_state = 0, .external_lex_state = 6}, - [1132] = {.lex_state = 0, .external_lex_state = 6}, - [1133] = {.lex_state = 0, .external_lex_state = 6}, - [1134] = {.lex_state = 0, .external_lex_state = 6}, + [1126] = {.lex_state = 51}, + [1127] = {.lex_state = 51}, + [1128] = {.lex_state = 0}, + [1129] = {.lex_state = 14}, + [1130] = {.lex_state = 51}, + [1131] = {.lex_state = 51}, + [1132] = {.lex_state = 51}, + [1133] = {.lex_state = 18, .external_lex_state = 11}, + [1134] = {.lex_state = 51}, [1135] = {.lex_state = 0, .external_lex_state = 6}, [1136] = {.lex_state = 0}, - [1137] = {.lex_state = 0}, - [1138] = {.lex_state = 0}, - [1139] = {.lex_state = 14}, - [1140] = {.lex_state = 0, .external_lex_state = 6}, - [1141] = {.lex_state = 14}, - [1142] = {.lex_state = 0}, - [1143] = {.lex_state = 0, .external_lex_state = 6}, + [1137] = {.lex_state = 51}, + [1138] = {.lex_state = 51}, + [1139] = {.lex_state = 16}, + [1140] = {.lex_state = 51}, + [1141] = {.lex_state = 0, .external_lex_state = 6}, + [1142] = {.lex_state = 51}, + [1143] = {.lex_state = 51}, [1144] = {.lex_state = 0, .external_lex_state = 6}, [1145] = {.lex_state = 0, .external_lex_state = 6}, [1146] = {.lex_state = 0}, - [1147] = {.lex_state = 0}, + [1147] = {.lex_state = 18, .external_lex_state = 11}, [1148] = {.lex_state = 0}, - [1149] = {.lex_state = 0}, - [1150] = {.lex_state = 14}, - [1151] = {.lex_state = 14}, - [1152] = {.lex_state = 14}, - [1153] = {.lex_state = 0}, - [1154] = {.lex_state = 14}, - [1155] = {.lex_state = 0, .external_lex_state = 6}, + [1149] = {.lex_state = 51}, + [1150] = {.lex_state = 51}, + [1151] = {.lex_state = 51}, + [1152] = {.lex_state = 51}, + [1153] = {.lex_state = 51}, + [1154] = {.lex_state = 51}, + [1155] = {.lex_state = 0}, [1156] = {.lex_state = 0, .external_lex_state = 6}, - [1157] = {.lex_state = 14}, - [1158] = {.lex_state = 14}, - [1159] = {.lex_state = 0, .external_lex_state = 6}, - [1160] = {.lex_state = 0}, - [1161] = {.lex_state = 14}, - [1162] = {.lex_state = 14}, - [1163] = {.lex_state = 0}, - [1164] = {.lex_state = 0}, - [1165] = {.lex_state = 0}, - [1166] = {.lex_state = 14}, - [1167] = {.lex_state = 0, .external_lex_state = 6}, - [1168] = {.lex_state = 0, .external_lex_state = 6}, - [1169] = {.lex_state = 14}, + [1157] = {.lex_state = 51}, + [1158] = {.lex_state = 0, .external_lex_state = 6}, + [1159] = {.lex_state = 51}, + [1160] = {.lex_state = 51}, + [1161] = {.lex_state = 51}, + [1162] = {.lex_state = 0}, + [1163] = {.lex_state = 0, .external_lex_state = 6}, + [1164] = {.lex_state = 14}, + [1165] = {.lex_state = 14}, + [1166] = {.lex_state = 51}, + [1167] = {.lex_state = 51}, + [1168] = {.lex_state = 14}, + [1169] = {.lex_state = 0}, [1170] = {.lex_state = 0}, - [1171] = {.lex_state = 16}, - [1172] = {.lex_state = 0}, + [1171] = {.lex_state = 0}, + [1172] = {.lex_state = 51}, [1173] = {.lex_state = 0}, [1174] = {.lex_state = 0}, - [1175] = {.lex_state = 0}, - [1176] = {.lex_state = 0}, - [1177] = {.lex_state = 0}, - [1178] = {.lex_state = 14}, - [1179] = {.lex_state = 14}, - [1180] = {.lex_state = 0}, - [1181] = {.lex_state = 0, .external_lex_state = 6}, + [1175] = {.lex_state = 0, .external_lex_state = 6}, + [1176] = {.lex_state = 51}, + [1177] = {.lex_state = 0, .external_lex_state = 6}, + [1178] = {.lex_state = 0}, + [1179] = {.lex_state = 0, .external_lex_state = 6}, + [1180] = {.lex_state = 0, .external_lex_state = 6}, + [1181] = {.lex_state = 0}, [1182] = {.lex_state = 0}, [1183] = {.lex_state = 14}, - [1184] = {.lex_state = 14}, + [1184] = {.lex_state = 51}, [1185] = {.lex_state = 0, .external_lex_state = 6}, - [1186] = {.lex_state = 14}, + [1186] = {.lex_state = 51}, [1187] = {.lex_state = 0}, - [1188] = {.lex_state = 0}, + [1188] = {.lex_state = 51}, [1189] = {.lex_state = 0}, [1190] = {.lex_state = 0}, - [1191] = {.lex_state = 8}, - [1192] = {.lex_state = 0}, - [1193] = {.lex_state = 0}, - [1194] = {.lex_state = 0}, - [1195] = {.lex_state = 0, .external_lex_state = 6}, - [1196] = {.lex_state = 0, .external_lex_state = 6}, - [1197] = {.lex_state = 0}, - [1198] = {.lex_state = 14}, + [1191] = {.lex_state = 0, .external_lex_state = 6}, + [1192] = {.lex_state = 51}, + [1193] = {.lex_state = 51}, + [1194] = {.lex_state = 51}, + [1195] = {.lex_state = 51}, + [1196] = {.lex_state = 14}, + [1197] = {.lex_state = 0, .external_lex_state = 6}, + [1198] = {.lex_state = 0}, [1199] = {.lex_state = 0, .external_lex_state = 6}, - [1200] = {.lex_state = 0}, - [1201] = {.lex_state = 0}, - [1202] = {.lex_state = 0}, + [1200] = {.lex_state = 51}, + [1201] = {.lex_state = 16}, + [1202] = {.lex_state = 0, .external_lex_state = 6}, [1203] = {.lex_state = 0}, - [1204] = {.lex_state = 0}, - [1205] = {.lex_state = 0}, + [1204] = {.lex_state = 51}, + [1205] = {.lex_state = 51}, [1206] = {.lex_state = 0}, - [1207] = {.lex_state = 0}, - [1208] = {.lex_state = 0}, - [1209] = {.lex_state = 14}, - [1210] = {.lex_state = 14}, - [1211] = {.lex_state = 0, .external_lex_state = 6}, - [1212] = {.lex_state = 0, .external_lex_state = 6}, - [1213] = {.lex_state = 0}, + [1207] = {.lex_state = 51}, + [1208] = {.lex_state = 51}, + [1209] = {.lex_state = 51}, + [1210] = {.lex_state = 51}, + [1211] = {.lex_state = 0}, + [1212] = {.lex_state = 0}, + [1213] = {.lex_state = 0, .external_lex_state = 6}, [1214] = {.lex_state = 0}, - [1215] = {.lex_state = 0}, - [1216] = {.lex_state = 0}, - [1217] = {.lex_state = 0, .external_lex_state = 6}, - [1218] = {.lex_state = 0}, - [1219] = {.lex_state = 0}, - [1220] = {.lex_state = 0}, - [1221] = {.lex_state = 0}, - [1222] = {.lex_state = 14}, - [1223] = {.lex_state = 0}, - [1224] = {.lex_state = 16}, + [1215] = {.lex_state = 14}, + [1216] = {.lex_state = 16}, + [1217] = {.lex_state = 18, .external_lex_state = 11}, + [1218] = {.lex_state = 18, .external_lex_state = 11}, + [1219] = {.lex_state = 16, .external_lex_state = 6}, + [1220] = {.lex_state = 51}, + [1221] = {.lex_state = 14}, + [1222] = {.lex_state = 51}, + [1223] = {.lex_state = 18, .external_lex_state = 11}, + [1224] = {.lex_state = 0, .external_lex_state = 6}, [1225] = {.lex_state = 0}, - [1226] = {.lex_state = 0}, + [1226] = {.lex_state = 0, .external_lex_state = 6}, [1227] = {.lex_state = 0, .external_lex_state = 6}, - [1228] = {.lex_state = 0, .external_lex_state = 6}, - [1229] = {.lex_state = 0}, - [1230] = {.lex_state = 0}, - [1231] = {.lex_state = 0, .external_lex_state = 6}, - [1232] = {.lex_state = 0}, - [1233] = {.lex_state = 0}, - [1234] = {.lex_state = 0}, - [1235] = {.lex_state = 0}, - [1236] = {.lex_state = 0}, - [1237] = {.lex_state = 0}, - [1238] = {.lex_state = 14}, - [1239] = {.lex_state = 14}, - [1240] = {.lex_state = 0}, - [1241] = {.lex_state = 8}, - [1242] = {.lex_state = 0}, - [1243] = {.lex_state = 0}, - [1244] = {.lex_state = 0}, - [1245] = {.lex_state = 8}, - [1246] = {.lex_state = 0}, - [1247] = {.lex_state = 0}, + [1228] = {.lex_state = 51}, + [1229] = {.lex_state = 51}, + [1230] = {.lex_state = 51}, + [1231] = {.lex_state = 51}, + [1232] = {.lex_state = 51}, + [1233] = {.lex_state = 16, .external_lex_state = 6}, + [1234] = {.lex_state = 16, .external_lex_state = 6}, + [1235] = {.lex_state = 51}, + [1236] = {.lex_state = 51}, + [1237] = {.lex_state = 51}, + [1238] = {.lex_state = 0}, + [1239] = {.lex_state = 51}, + [1240] = {.lex_state = 51}, + [1241] = {.lex_state = 16}, + [1242] = {.lex_state = 51}, + [1243] = {.lex_state = 51}, + [1244] = {.lex_state = 51}, + [1245] = {.lex_state = 18, .external_lex_state = 11}, + [1246] = {.lex_state = 51}, + [1247] = {.lex_state = 51}, [1248] = {.lex_state = 0}, - [1249] = {.lex_state = 0}, - [1250] = {.lex_state = 0}, - [1251] = {.lex_state = 0}, - [1252] = {.lex_state = 14}, - [1253] = {.lex_state = 0}, - [1254] = {.lex_state = 8}, - [1255] = {.lex_state = 8}, - [1256] = {.lex_state = 0, .external_lex_state = 6}, + [1249] = {.lex_state = 51}, + [1250] = {.lex_state = 0, .external_lex_state = 6}, + [1251] = {.lex_state = 14}, + [1252] = {.lex_state = 18, .external_lex_state = 11}, + [1253] = {.lex_state = 18, .external_lex_state = 11}, + [1254] = {.lex_state = 51}, + [1255] = {.lex_state = 0, .external_lex_state = 6}, + [1256] = {.lex_state = 51}, [1257] = {.lex_state = 0}, - [1258] = {.lex_state = 0}, + [1258] = {.lex_state = 0, .external_lex_state = 6}, [1259] = {.lex_state = 0}, - [1260] = {.lex_state = 0}, + [1260] = {.lex_state = 0, .external_lex_state = 6}, [1261] = {.lex_state = 0}, - [1262] = {.lex_state = 0, .external_lex_state = 6}, - [1263] = {.lex_state = 0}, + [1262] = {.lex_state = 0}, + [1263] = {.lex_state = 51}, [1264] = {.lex_state = 0}, - [1265] = {.lex_state = 0}, - [1266] = {.lex_state = 14}, - [1267] = {.lex_state = 0}, - [1268] = {.lex_state = 14}, - [1269] = {.lex_state = 0}, - [1270] = {.lex_state = 14}, - [1271] = {.lex_state = 14}, - [1272] = {.lex_state = 14}, - [1273] = {.lex_state = 0}, + [1265] = {.lex_state = 14}, + [1266] = {.lex_state = 0}, + [1267] = {.lex_state = 51}, + [1268] = {.lex_state = 0}, + [1269] = {.lex_state = 0, .external_lex_state = 6}, + [1270] = {.lex_state = 0}, + [1271] = {.lex_state = 0, .external_lex_state = 6}, + [1272] = {.lex_state = 0}, + [1273] = {.lex_state = 14}, [1274] = {.lex_state = 0}, - [1275] = {.lex_state = 0}, - [1276] = {.lex_state = 14}, - [1277] = {.lex_state = 14}, - [1278] = {.lex_state = 14}, - [1279] = {.lex_state = 0}, - [1280] = {.lex_state = 0}, - [1281] = {.lex_state = 0}, - [1282] = {.lex_state = 14}, - [1283] = {.lex_state = 0}, - [1284] = {.lex_state = 14}, - [1285] = {.lex_state = 0}, + [1275] = {.lex_state = 0, .external_lex_state = 6}, + [1276] = {.lex_state = 0}, + [1277] = {.lex_state = 51}, + [1278] = {.lex_state = 0, .external_lex_state = 6}, + [1279] = {.lex_state = 0, .external_lex_state = 6}, + [1280] = {.lex_state = 0, .external_lex_state = 6}, + [1281] = {.lex_state = 51}, + [1282] = {.lex_state = 0}, + [1283] = {.lex_state = 10}, + [1284] = {.lex_state = 10}, + [1285] = {.lex_state = 0, .external_lex_state = 6}, [1286] = {.lex_state = 0}, [1287] = {.lex_state = 14}, - [1288] = {.lex_state = 14}, - [1289] = {.lex_state = 0, .external_lex_state = 6}, + [1288] = {.lex_state = 10}, + [1289] = {.lex_state = 16, .external_lex_state = 6}, [1290] = {.lex_state = 0, .external_lex_state = 6}, [1291] = {.lex_state = 0}, - [1292] = {.lex_state = 14}, + [1292] = {.lex_state = 0, .external_lex_state = 6}, [1293] = {.lex_state = 0}, - [1294] = {.lex_state = 0}, - [1295] = {.lex_state = 0}, - [1296] = {.lex_state = 0}, + [1294] = {.lex_state = 51}, + [1295] = {.lex_state = 51}, + [1296] = {.lex_state = 51}, [1297] = {.lex_state = 0}, - [1298] = {.lex_state = 14}, + [1298] = {.lex_state = 0}, [1299] = {.lex_state = 0, .external_lex_state = 6}, [1300] = {.lex_state = 0}, [1301] = {.lex_state = 0}, - [1302] = {.lex_state = 0}, - [1303] = {.lex_state = 0}, + [1302] = {.lex_state = 14}, + [1303] = {.lex_state = 0, .external_lex_state = 6}, [1304] = {.lex_state = 0}, [1305] = {.lex_state = 0}, - [1306] = {.lex_state = 0}, - [1307] = {.lex_state = 14}, - [1308] = {.lex_state = 0}, - [1309] = {.lex_state = 0}, - [1310] = {.lex_state = 0}, - [1311] = {.lex_state = 0, .external_lex_state = 6}, + [1306] = {.lex_state = 0, .external_lex_state = 6}, + [1307] = {.lex_state = 0}, + [1308] = {.lex_state = 51}, + [1309] = {.lex_state = 0, .external_lex_state = 6}, + [1310] = {.lex_state = 14}, + [1311] = {.lex_state = 0}, [1312] = {.lex_state = 0}, [1313] = {.lex_state = 0}, - [1314] = {.lex_state = 0, .external_lex_state = 6}, - [1315] = {.lex_state = 0, .external_lex_state = 6}, + [1314] = {.lex_state = 0}, + [1315] = {.lex_state = 0}, [1316] = {.lex_state = 0, .external_lex_state = 6}, - [1317] = {.lex_state = 0}, - [1318] = {.lex_state = 0}, - [1319] = {.lex_state = 0}, - [1320] = {.lex_state = 17}, + [1317] = {.lex_state = 51, .external_lex_state = 8}, + [1318] = {.lex_state = 51, .external_lex_state = 9}, + [1319] = {.lex_state = 0, .external_lex_state = 6}, + [1320] = {.lex_state = 0, .external_lex_state = 6}, [1321] = {.lex_state = 0}, - [1322] = {.lex_state = 0}, + [1322] = {.lex_state = 51}, [1323] = {.lex_state = 0}, - [1324] = {.lex_state = 0}, - [1325] = {.lex_state = 0}, - [1326] = {.lex_state = 0}, + [1324] = {.lex_state = 0, .external_lex_state = 6}, + [1325] = {.lex_state = 51}, + [1326] = {.lex_state = 0, .external_lex_state = 6}, [1327] = {.lex_state = 0}, [1328] = {.lex_state = 0}, - [1329] = {.lex_state = 0, .external_lex_state = 6}, - [1330] = {.lex_state = 0, .external_lex_state = 6}, - [1331] = {.lex_state = 14}, - [1332] = {.lex_state = 0}, - [1333] = {.lex_state = 0}, - [1334] = {.lex_state = 17}, - [1335] = {.lex_state = 0, .external_lex_state = 6}, - [1336] = {.lex_state = 0}, - [1337] = {.lex_state = 0}, - [1338] = {.lex_state = 0, .external_lex_state = 6}, + [1329] = {.lex_state = 0}, + [1330] = {.lex_state = 0}, + [1331] = {.lex_state = 51}, + [1332] = {.lex_state = 0, .external_lex_state = 6}, + [1333] = {.lex_state = 0, .external_lex_state = 6}, + [1334] = {.lex_state = 51}, + [1335] = {.lex_state = 0}, + [1336] = {.lex_state = 16}, + [1337] = {.lex_state = 0, .external_lex_state = 6}, + [1338] = {.lex_state = 51}, [1339] = {.lex_state = 0}, [1340] = {.lex_state = 0, .external_lex_state = 6}, - [1341] = {.lex_state = 16}, - [1342] = {.lex_state = 0}, + [1341] = {.lex_state = 51}, + [1342] = {.lex_state = 51}, [1343] = {.lex_state = 0, .external_lex_state = 6}, - [1344] = {.lex_state = 0}, - [1345] = {.lex_state = 14}, - [1346] = {.lex_state = 14}, - [1347] = {.lex_state = 17}, - [1348] = {.lex_state = 17}, - [1349] = {.lex_state = 17}, - [1350] = {.lex_state = 17}, - [1351] = {.lex_state = 0}, - [1352] = {.lex_state = 0, .external_lex_state = 6}, - [1353] = {.lex_state = 17}, - [1354] = {.lex_state = 14}, - [1355] = {.lex_state = 17}, - [1356] = {.lex_state = 0, .external_lex_state = 6}, + [1344] = {.lex_state = 0, .external_lex_state = 6}, + [1345] = {.lex_state = 0}, + [1346] = {.lex_state = 51}, + [1347] = {.lex_state = 51}, + [1348] = {.lex_state = 0, .external_lex_state = 6}, + [1349] = {.lex_state = 51}, + [1350] = {.lex_state = 51}, + [1351] = {.lex_state = 51}, + [1352] = {.lex_state = 51}, + [1353] = {.lex_state = 0, .external_lex_state = 6}, + [1354] = {.lex_state = 0, .external_lex_state = 6}, + [1355] = {.lex_state = 0, .external_lex_state = 6}, + [1356] = {.lex_state = 0}, [1357] = {.lex_state = 0, .external_lex_state = 6}, - [1358] = {.lex_state = 0}, - [1359] = {.lex_state = 17}, - [1360] = {.lex_state = 0}, - [1361] = {.lex_state = 0}, - [1362] = {.lex_state = 0}, - [1363] = {.lex_state = 17}, - [1364] = {.lex_state = 0}, + [1358] = {.lex_state = 0, .external_lex_state = 6}, + [1359] = {.lex_state = 0, .external_lex_state = 6}, + [1360] = {.lex_state = 0, .external_lex_state = 6}, + [1361] = {.lex_state = 51}, + [1362] = {.lex_state = 16}, + [1363] = {.lex_state = 0}, + [1364] = {.lex_state = 51}, [1365] = {.lex_state = 0, .external_lex_state = 6}, [1366] = {.lex_state = 0}, [1367] = {.lex_state = 0}, - [1368] = {.lex_state = 0}, - [1369] = {.lex_state = 0, .external_lex_state = 6}, + [1368] = {.lex_state = 0, .external_lex_state = 6}, + [1369] = {.lex_state = 0}, [1370] = {.lex_state = 0}, [1371] = {.lex_state = 0}, [1372] = {.lex_state = 0}, - [1373] = {.lex_state = 0}, + [1373] = {.lex_state = 0, .external_lex_state = 6}, [1374] = {.lex_state = 0}, [1375] = {.lex_state = 0}, [1376] = {.lex_state = 0}, - [1377] = {.lex_state = 0, .external_lex_state = 6}, + [1377] = {.lex_state = 0}, [1378] = {.lex_state = 0}, - [1379] = {.lex_state = 14}, - [1380] = {.lex_state = 0, .external_lex_state = 6}, - [1381] = {.lex_state = 0, .external_lex_state = 6}, + [1379] = {.lex_state = 51}, + [1380] = {.lex_state = 10}, + [1381] = {.lex_state = 0}, [1382] = {.lex_state = 0}, [1383] = {.lex_state = 0}, [1384] = {.lex_state = 0}, - [1385] = {.lex_state = 14}, + [1385] = {.lex_state = 51}, [1386] = {.lex_state = 0}, [1387] = {.lex_state = 0}, [1388] = {.lex_state = 0}, [1389] = {.lex_state = 0}, - [1390] = {.lex_state = 0}, - [1391] = {.lex_state = 0}, + [1390] = {.lex_state = 51}, + [1391] = {.lex_state = 51}, [1392] = {.lex_state = 0}, - [1393] = {.lex_state = 0}, - [1394] = {.lex_state = 0}, - [1395] = {.lex_state = 14}, + [1393] = {.lex_state = 0, .external_lex_state = 6}, + [1394] = {.lex_state = 51}, + [1395] = {.lex_state = 0}, [1396] = {.lex_state = 0}, - [1397] = {.lex_state = 14}, + [1397] = {.lex_state = 0}, [1398] = {.lex_state = 0}, [1399] = {.lex_state = 0}, [1400] = {.lex_state = 0}, [1401] = {.lex_state = 0}, - [1402] = {.lex_state = 14}, + [1402] = {.lex_state = 0}, [1403] = {.lex_state = 0}, - [1404] = {.lex_state = 0}, + [1404] = {.lex_state = 0, .external_lex_state = 6}, [1405] = {.lex_state = 0}, - [1406] = {.lex_state = 14}, + [1406] = {.lex_state = 0, .external_lex_state = 6}, [1407] = {.lex_state = 0}, [1408] = {.lex_state = 0}, [1409] = {.lex_state = 0}, [1410] = {.lex_state = 0}, [1411] = {.lex_state = 0}, [1412] = {.lex_state = 0}, - [1413] = {.lex_state = 14}, + [1413] = {.lex_state = 0}, [1414] = {.lex_state = 0}, - [1415] = {.lex_state = 14}, + [1415] = {.lex_state = 0}, [1416] = {.lex_state = 0}, [1417] = {.lex_state = 0}, [1418] = {.lex_state = 0}, - [1419] = {.lex_state = 0}, - [1420] = {.lex_state = 0}, - [1421] = {.lex_state = 0}, + [1419] = {.lex_state = 14}, + [1420] = {.lex_state = 0, .external_lex_state = 6}, + [1421] = {.lex_state = 0, .external_lex_state = 6}, [1422] = {.lex_state = 0}, - [1423] = {.lex_state = 14}, + [1423] = {.lex_state = 0}, [1424] = {.lex_state = 0}, - [1425] = {.lex_state = 14}, + [1425] = {.lex_state = 0}, [1426] = {.lex_state = 0}, [1427] = {.lex_state = 0}, [1428] = {.lex_state = 0}, [1429] = {.lex_state = 0}, - [1430] = {.lex_state = 14}, - [1431] = {.lex_state = 14}, - [1432] = {.lex_state = 14}, - [1433] = {.lex_state = 14}, - [1434] = {.lex_state = 0}, - [1435] = {.lex_state = 14}, + [1430] = {.lex_state = 0}, + [1431] = {.lex_state = 0}, + [1432] = {.lex_state = 0}, + [1433] = {.lex_state = 0}, + [1434] = {.lex_state = 51}, + [1435] = {.lex_state = 0}, [1436] = {.lex_state = 0}, - [1437] = {.lex_state = 14}, + [1437] = {.lex_state = 0}, [1438] = {.lex_state = 0}, - [1439] = {.lex_state = 14}, - [1440] = {.lex_state = 14}, + [1439] = {.lex_state = 0}, + [1440] = {.lex_state = 0}, [1441] = {.lex_state = 0}, - [1442] = {.lex_state = 0}, + [1442] = {.lex_state = 51}, [1443] = {.lex_state = 0}, - [1444] = {.lex_state = 14}, - [1445] = {.lex_state = 0}, - [1446] = {.lex_state = 14}, - [1447] = {.lex_state = 0}, - [1448] = {.lex_state = 14}, - [1449] = {.lex_state = 14}, - [1450] = {.lex_state = 14}, - [1451] = {.lex_state = 14}, - [1452] = {.lex_state = 14}, - [1453] = {.lex_state = 14}, + [1444] = {.lex_state = 51}, + [1445] = {.lex_state = 51}, + [1446] = {.lex_state = 51}, + [1447] = {.lex_state = 51}, + [1448] = {.lex_state = 0}, + [1449] = {.lex_state = 0}, + [1450] = {.lex_state = 0}, + [1451] = {.lex_state = 0}, + [1452] = {.lex_state = 51}, + [1453] = {.lex_state = 51}, [1454] = {.lex_state = 0}, - [1455] = {.lex_state = 0}, - [1456] = {.lex_state = 0}, - [1457] = {.lex_state = 0}, - [1458] = {.lex_state = 0}, - [1459] = {.lex_state = 14}, + [1455] = {.lex_state = 10}, + [1456] = {.lex_state = 51}, + [1457] = {.lex_state = 14}, + [1458] = {.lex_state = 14}, + [1459] = {.lex_state = 0}, [1460] = {.lex_state = 0}, - [1461] = {.lex_state = 14}, + [1461] = {.lex_state = 0}, [1462] = {.lex_state = 0}, - [1463] = {.lex_state = 0}, - [1464] = {.lex_state = 14}, - [1465] = {.lex_state = 14}, - [1466] = {.lex_state = 14}, + [1463] = {.lex_state = 0, .external_lex_state = 6}, + [1464] = {.lex_state = 51}, + [1465] = {.lex_state = 51}, + [1466] = {.lex_state = 0}, [1467] = {.lex_state = 0}, [1468] = {.lex_state = 0}, [1469] = {.lex_state = 0}, - [1470] = {.lex_state = 0}, - [1471] = {.lex_state = 14}, - [1472] = {.lex_state = 14}, + [1470] = {.lex_state = 0, .external_lex_state = 6}, + [1471] = {.lex_state = 51}, + [1472] = {.lex_state = 0}, [1473] = {.lex_state = 0}, - [1474] = {.lex_state = 14}, - [1475] = {.lex_state = 0}, + [1474] = {.lex_state = 0}, + [1475] = {.lex_state = 0, .external_lex_state = 6}, [1476] = {.lex_state = 0}, [1477] = {.lex_state = 0}, - [1478] = {.lex_state = 14}, - [1479] = {.lex_state = 14}, + [1478] = {.lex_state = 16}, + [1479] = {.lex_state = 51}, [1480] = {.lex_state = 0}, [1481] = {.lex_state = 0}, - [1482] = {.lex_state = 0}, + [1482] = {.lex_state = 10}, [1483] = {.lex_state = 0}, [1484] = {.lex_state = 0}, [1485] = {.lex_state = 0}, - [1486] = {.lex_state = 0}, + [1486] = {.lex_state = 0, .external_lex_state = 6}, [1487] = {.lex_state = 0}, [1488] = {.lex_state = 0}, [1489] = {.lex_state = 0}, - [1490] = {.lex_state = 14}, + [1490] = {.lex_state = 0}, [1491] = {.lex_state = 0}, [1492] = {.lex_state = 0}, - [1493] = {.lex_state = 0}, - [1494] = {.lex_state = 0}, + [1493] = {.lex_state = 51}, + [1494] = {.lex_state = 14}, [1495] = {.lex_state = 0}, - [1496] = {.lex_state = 14}, - [1497] = {.lex_state = 0}, + [1496] = {.lex_state = 0}, + [1497] = {.lex_state = 10}, [1498] = {.lex_state = 0}, [1499] = {.lex_state = 0}, [1500] = {.lex_state = 0}, - [1501] = {.lex_state = 0}, - [1502] = {.lex_state = 0}, - [1503] = {.lex_state = 14}, + [1501] = {.lex_state = 51}, + [1502] = {.lex_state = 10}, + [1503] = {.lex_state = 0}, [1504] = {.lex_state = 0}, [1505] = {.lex_state = 0}, - [1506] = {.lex_state = 14}, - [1507] = {.lex_state = 0}, - [1508] = {.lex_state = 14}, + [1506] = {.lex_state = 51}, + [1507] = {.lex_state = 0, .external_lex_state = 6}, + [1508] = {.lex_state = 0}, [1509] = {.lex_state = 0}, -}; - -enum { - ts_external_token__newline = 0, - ts_external_token__indent = 1, - ts_external_token__dedent = 2, - ts_external_token__string_start = 3, - ts_external_token__string_content = 4, - ts_external_token__string_end = 5, - ts_external_token__template_string_start = 6, -}; - -static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { - [ts_external_token__newline] = sym__newline, - [ts_external_token__indent] = sym__indent, - [ts_external_token__dedent] = sym__dedent, - [ts_external_token__string_start] = sym__string_start, - [ts_external_token__string_content] = sym__string_content, - [ts_external_token__string_end] = sym__string_end, - [ts_external_token__template_string_start] = sym__template_string_start, -}; - -static const bool ts_external_scanner_states[12][EXTERNAL_TOKEN_COUNT] = { - [1] = { - [ts_external_token__newline] = true, - [ts_external_token__indent] = true, - [ts_external_token__dedent] = true, - [ts_external_token__string_start] = true, - [ts_external_token__string_content] = true, - [ts_external_token__string_end] = true, - [ts_external_token__template_string_start] = true, - }, - [2] = { - [ts_external_token__string_start] = true, - [ts_external_token__template_string_start] = true, - }, - [3] = { - [ts_external_token__dedent] = true, - [ts_external_token__string_start] = true, - [ts_external_token__template_string_start] = true, - }, - [4] = { - [ts_external_token__newline] = true, - [ts_external_token__string_start] = true, - [ts_external_token__template_string_start] = true, - }, - [5] = { - [ts_external_token__newline] = true, - [ts_external_token__indent] = true, - [ts_external_token__string_start] = true, - [ts_external_token__template_string_start] = true, - }, - [6] = { - [ts_external_token__newline] = true, - }, - [7] = { - [ts_external_token__newline] = true, - [ts_external_token__string_start] = true, - }, - [8] = { - [ts_external_token__string_start] = true, - }, - [9] = { - [ts_external_token__template_string_start] = true, - }, - [10] = { - [ts_external_token__newline] = true, - [ts_external_token__template_string_start] = true, - }, - [11] = { - [ts_external_token__string_content] = true, - [ts_external_token__string_end] = true, - }, + [1510] = {.lex_state = 0}, + [1511] = {.lex_state = 17}, + [1512] = {.lex_state = 0}, + [1513] = {.lex_state = 17}, + [1514] = {.lex_state = 0, .external_lex_state = 6}, + [1515] = {.lex_state = 0}, + [1516] = {.lex_state = 0}, + [1517] = {.lex_state = 0, .external_lex_state = 6}, + [1518] = {.lex_state = 0, .external_lex_state = 6}, + [1519] = {.lex_state = 0}, + [1520] = {.lex_state = 51}, + [1521] = {.lex_state = 0}, + [1522] = {.lex_state = 0}, + [1523] = {.lex_state = 0, .external_lex_state = 6}, + [1524] = {.lex_state = 0}, + [1525] = {.lex_state = 0, .external_lex_state = 6}, + [1526] = {.lex_state = 0}, + [1527] = {.lex_state = 0, .external_lex_state = 6}, + [1528] = {.lex_state = 0, .external_lex_state = 6}, + [1529] = {.lex_state = 0}, + [1530] = {.lex_state = 0, .external_lex_state = 6}, + [1531] = {.lex_state = 0, .external_lex_state = 6}, + [1532] = {.lex_state = 0, .external_lex_state = 6}, + [1533] = {.lex_state = 0, .external_lex_state = 6}, + [1534] = {.lex_state = 0}, + [1535] = {.lex_state = 0, .external_lex_state = 6}, + [1536] = {.lex_state = 0}, + [1537] = {.lex_state = 0, .external_lex_state = 6}, + [1538] = {.lex_state = 0}, + [1539] = {.lex_state = 17}, + [1540] = {.lex_state = 0}, + [1541] = {.lex_state = 17}, + [1542] = {.lex_state = 0}, + [1543] = {.lex_state = 17}, + [1544] = {.lex_state = 0}, + [1545] = {.lex_state = 0}, + [1546] = {.lex_state = 17}, + [1547] = {.lex_state = 17}, + [1548] = {.lex_state = 51}, + [1549] = {.lex_state = 0}, + [1550] = {.lex_state = 51}, + [1551] = {.lex_state = 0, .external_lex_state = 6}, + [1552] = {.lex_state = 51}, + [1553] = {.lex_state = 0}, + [1554] = {.lex_state = 17}, + [1555] = {.lex_state = 0}, + [1556] = {.lex_state = 0}, + [1557] = {.lex_state = 0}, + [1558] = {.lex_state = 0}, + [1559] = {.lex_state = 0}, + [1560] = {.lex_state = 0}, + [1561] = {.lex_state = 0}, + [1562] = {.lex_state = 16}, + [1563] = {.lex_state = 0}, + [1564] = {.lex_state = 0}, + [1565] = {.lex_state = 51}, + [1566] = {.lex_state = 0}, + [1567] = {.lex_state = 0}, + [1568] = {.lex_state = 0, .external_lex_state = 6}, + [1569] = {.lex_state = 0}, + [1570] = {.lex_state = 0}, + [1571] = {.lex_state = 17}, + [1572] = {.lex_state = 0, .external_lex_state = 6}, + [1573] = {.lex_state = 0}, + [1574] = {.lex_state = 0}, + [1575] = {.lex_state = 0}, + [1576] = {.lex_state = 0}, + [1577] = {.lex_state = 0}, + [1578] = {.lex_state = 0}, + [1579] = {.lex_state = 0, .external_lex_state = 6}, + [1580] = {.lex_state = 0}, + [1581] = {.lex_state = 0}, + [1582] = {.lex_state = 17}, + [1583] = {.lex_state = 51}, + [1584] = {.lex_state = 0}, + [1585] = {.lex_state = 0}, + [1586] = {.lex_state = 0}, + [1587] = {.lex_state = 0}, + [1588] = {.lex_state = 51}, + [1589] = {.lex_state = 51}, + [1590] = {.lex_state = 51}, + [1591] = {.lex_state = 0}, + [1592] = {.lex_state = 0}, + [1593] = {.lex_state = 51}, + [1594] = {.lex_state = 0}, + [1595] = {.lex_state = 0}, + [1596] = {.lex_state = 0}, + [1597] = {.lex_state = 51}, + [1598] = {.lex_state = 51}, + [1599] = {.lex_state = 0}, + [1600] = {.lex_state = 0}, + [1601] = {.lex_state = 51}, + [1602] = {.lex_state = 0}, + [1603] = {.lex_state = 51}, + [1604] = {.lex_state = 51}, + [1605] = {.lex_state = 0}, + [1606] = {.lex_state = 51}, + [1607] = {.lex_state = 51}, + [1608] = {.lex_state = 51}, + [1609] = {.lex_state = 51}, + [1610] = {.lex_state = 51}, + [1611] = {.lex_state = 0}, + [1612] = {.lex_state = 0}, + [1613] = {.lex_state = 0}, + [1614] = {.lex_state = 0}, + [1615] = {.lex_state = 0}, + [1616] = {.lex_state = 51}, + [1617] = {.lex_state = 51}, + [1618] = {.lex_state = 51}, + [1619] = {.lex_state = 0}, + [1620] = {.lex_state = 51}, + [1621] = {.lex_state = 51}, + [1622] = {.lex_state = 51}, + [1623] = {.lex_state = 0}, + [1624] = {.lex_state = 0}, + [1625] = {.lex_state = 51}, + [1626] = {.lex_state = 0}, + [1627] = {.lex_state = 0}, + [1628] = {.lex_state = 0}, + [1629] = {.lex_state = 0}, + [1630] = {.lex_state = 51}, + [1631] = {.lex_state = 0}, + [1632] = {.lex_state = 0}, + [1633] = {.lex_state = 0}, + [1634] = {.lex_state = 0}, + [1635] = {.lex_state = 0}, + [1636] = {.lex_state = 0}, + [1637] = {.lex_state = 51}, + [1638] = {.lex_state = 0}, + [1639] = {.lex_state = 51}, + [1640] = {.lex_state = 51}, + [1641] = {.lex_state = 0}, + [1642] = {.lex_state = 51}, + [1643] = {.lex_state = 0}, + [1644] = {.lex_state = 0}, + [1645] = {.lex_state = 0}, + [1646] = {.lex_state = 51}, + [1647] = {.lex_state = 0}, + [1648] = {.lex_state = 0}, + [1649] = {.lex_state = 0}, + [1650] = {.lex_state = 0}, + [1651] = {.lex_state = 0}, + [1652] = {.lex_state = 0}, + [1653] = {.lex_state = 0}, + [1654] = {.lex_state = 0}, + [1655] = {.lex_state = 0}, + [1656] = {.lex_state = 0}, + [1657] = {.lex_state = 0}, + [1658] = {.lex_state = 0}, + [1659] = {.lex_state = 0}, + [1660] = {.lex_state = 0}, + [1661] = {.lex_state = 0}, + [1662] = {.lex_state = 0}, + [1663] = {.lex_state = 0}, + [1664] = {.lex_state = 0}, + [1665] = {.lex_state = 0}, + [1666] = {.lex_state = 51}, + [1667] = {.lex_state = 0}, + [1668] = {.lex_state = 51}, + [1669] = {.lex_state = 0}, + [1670] = {.lex_state = 51}, + [1671] = {.lex_state = 0}, + [1672] = {.lex_state = 0}, + [1673] = {.lex_state = 51}, + [1674] = {.lex_state = 0}, + [1675] = {.lex_state = 0}, + [1676] = {.lex_state = 51}, + [1677] = {.lex_state = 0}, + [1678] = {.lex_state = 0}, + [1679] = {.lex_state = 0}, + [1680] = {.lex_state = 0}, + [1681] = {.lex_state = 0}, + [1682] = {.lex_state = 51}, + [1683] = {.lex_state = 0}, + [1684] = {.lex_state = 0}, + [1685] = {.lex_state = 0}, + [1686] = {.lex_state = 0}, + [1687] = {.lex_state = 0}, + [1688] = {.lex_state = 51}, + [1689] = {.lex_state = 51}, + [1690] = {.lex_state = 51}, + [1691] = {.lex_state = 0}, + [1692] = {.lex_state = 0}, + [1693] = {.lex_state = 0}, + [1694] = {.lex_state = 0}, + [1695] = {.lex_state = 0}, + [1696] = {.lex_state = 0}, + [1697] = {.lex_state = 51}, + [1698] = {.lex_state = 0}, + [1699] = {.lex_state = 0}, + [1700] = {.lex_state = 0}, + [1701] = {.lex_state = 0}, + [1702] = {.lex_state = 0}, + [1703] = {.lex_state = 0}, + [1704] = {.lex_state = 0}, + [1705] = {.lex_state = 0}, + [1706] = {.lex_state = 0}, + [1707] = {.lex_state = 0}, + [1708] = {.lex_state = 0}, + [1709] = {.lex_state = 0}, + [1710] = {.lex_state = 51}, + [1711] = {.lex_state = 51}, + [1712] = {.lex_state = 51}, + [1713] = {.lex_state = 0}, + [1714] = {.lex_state = 0}, + [1715] = {.lex_state = 0}, + [1716] = {.lex_state = 0}, + [1717] = {.lex_state = 0}, + [1718] = {.lex_state = 0}, + [1719] = {.lex_state = 0}, + [1720] = {.lex_state = 0}, + [1721] = {.lex_state = 0}, + [1722] = {.lex_state = 51}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { - [0] = { + [STATE(0)] = { [ts_builtin_sym_end] = ACTIONS(1), [sym_identifier] = ACTIONS(1), [anon_sym_import] = ACTIONS(1), @@ -7810,6 +8217,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_yield] = ACTIONS(1), [sym_ellipsis] = ACTIONS(1), [anon_sym_LBRACE2] = ACTIONS(1), + [anon_sym_COLON2] = ACTIONS(1), [sym_type_conversion] = ACTIONS(1), [sym_integer] = ACTIONS(1), [sym_float] = ACTIONS(1), @@ -7818,7 +8226,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(1), [sym_none] = ACTIONS(1), [sym_comment] = ACTIONS(3), - [sym__semicolon] = ACTIONS(1), + [anon_sym_SEMI] = ACTIONS(1), [sym__newline] = ACTIONS(1), [sym__indent] = ACTIONS(1), [sym__dedent] = ACTIONS(1), @@ -7827,140 +8235,23 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_end] = ACTIONS(1), [sym__template_string_start] = ACTIONS(1), }, - [1] = { - [sym_module] = STATE(1488), - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(960), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(960), - [ts_builtin_sym_end] = ACTIONS(5), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(33), - [anon_sym_async] = ACTIONS(35), - [anon_sym_for] = ACTIONS(37), - [anon_sym_while] = ACTIONS(39), - [anon_sym_try] = ACTIONS(41), - [anon_sym_with] = ACTIONS(43), - [anon_sym_match] = ACTIONS(45), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(55), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(65), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [2] = { + [STATE(1)] = { + [sym_module] = STATE(1655), [sym__statement] = STATE(62), [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), [sym_if_statement] = STATE(62), [sym_for_statement] = STATE(62), [sym_while_statement] = STATE(62), @@ -7968,171 +8259,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(62), [sym_match_statement] = STATE(62), [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), [sym_class_definition] = STATE(62), [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(535), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1118), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [3] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(517), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1118), + [ts_builtin_sym_end] = ACTIONS(5), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -8146,24 +8319,24 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), + [anon_sym_if] = ACTIONS(33), + [anon_sym_async] = ACTIONS(35), + [anon_sym_for] = ACTIONS(37), + [anon_sym_while] = ACTIONS(39), + [anon_sym_try] = ACTIONS(41), + [anon_sym_with] = ACTIONS(43), + [anon_sym_match] = ACTIONS(45), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), + [anon_sym_def] = ACTIONS(55), [anon_sym_global] = ACTIONS(57), [anon_sym_nonlocal] = ACTIONS(59), [anon_sym_exec] = ACTIONS(61), [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), + [anon_sym_class] = ACTIONS(65), [anon_sym_AT] = ACTIONS(67), [anon_sym_not] = ACTIONS(69), [anon_sym_TILDE] = ACTIONS(47), @@ -8177,80 +8350,79 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [4] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(407), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(2)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(327), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -8299,76 +8471,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [5] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(392), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(3)] = { + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(1181), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -8417,22 +8589,22 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [6] = { + [STATE(4)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -8440,53 +8612,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(403), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(322), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -8531,80 +8703,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [7] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(485), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(5)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(490), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -8649,80 +8821,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [8] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(291), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(6)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(540), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -8767,26 +8939,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [9] = { + [STATE(7)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -8794,53 +8966,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(427), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(547), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -8885,26 +9057,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [10] = { + [STATE(8)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -8912,53 +9084,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(304), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(605), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9003,26 +9175,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [11] = { + [STATE(9)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -9030,53 +9202,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(516), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(519), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9121,80 +9293,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [12] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(435), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(10)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(522), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9239,80 +9411,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [13] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(497), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(11)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(524), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9357,80 +9529,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [14] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(450), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(12)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(526), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9475,80 +9647,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [15] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(528), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(13)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(484), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9593,80 +9765,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [16] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(398), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(14)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(456), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9711,80 +9883,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [17] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(562), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(15)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(529), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9829,80 +10001,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [18] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(544), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(16)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(532), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9947,80 +10119,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [19] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(444), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(17)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(533), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -10065,26 +10237,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [20] = { + [STATE(18)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -10092,53 +10264,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(514), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(498), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -10183,26 +10355,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [21] = { + [STATE(19)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -10210,53 +10382,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(462), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(476), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -10301,26 +10473,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [22] = { + [STATE(20)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -10328,53 +10500,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(406), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(538), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -10419,26 +10591,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [23] = { + [STATE(21)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -10446,53 +10618,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(503), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(455), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -10537,26 +10709,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [24] = { + [STATE(22)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -10564,171 +10736,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(543), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(499), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [25] = { - [sym__statement] = STATE(61), - [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(61), - [sym_for_statement] = STATE(61), - [sym_while_statement] = STATE(61), - [sym_try_statement] = STATE(61), - [sym_with_statement] = STATE(61), - [sym_match_statement] = STATE(61), - [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(61), - [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(961), - [sym_block] = STATE(998), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -10777,22 +10831,22 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [26] = { + [STATE(23)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -10800,53 +10854,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(419), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(542), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -10891,80 +10945,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [27] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(519), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(24)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(471), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11009,26 +11063,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [28] = { + [STATE(25)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -11036,53 +11090,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(512), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(545), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11127,26 +11181,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [29] = { + [STATE(26)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -11154,53 +11208,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(460), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(457), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11245,80 +11299,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [30] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(454), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(27)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(501), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11363,80 +11417,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [31] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(565), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(28)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(548), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11481,26 +11535,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [32] = { + [STATE(29)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -11508,53 +11562,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(496), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(448), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11599,80 +11653,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [33] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(395), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(30)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(449), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11717,80 +11771,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [34] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(402), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(31)] = { + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(1173), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11839,76 +11893,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [35] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(546), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(32)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(477), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11957,76 +12011,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [36] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(470), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(33)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(563), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12071,80 +12125,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [37] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(556), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(34)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(565), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12193,76 +12247,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [38] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(538), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(35)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(570), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12307,80 +12361,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [39] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(494), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(36)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(576), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12425,80 +12479,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [40] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(436), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(37)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(578), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12543,80 +12597,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [41] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(432), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(38)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(580), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12665,76 +12719,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [42] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(466), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(39)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(583), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12779,80 +12833,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [43] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(457), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(40)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(469), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12901,76 +12955,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [44] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(474), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(41)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(438), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13015,80 +13069,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [45] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(492), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(42)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(586), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13133,80 +13187,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [46] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(475), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(43)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(590), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13251,80 +13305,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [47] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(490), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(44)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(591), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13373,76 +13427,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [48] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(488), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(45)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(492), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13487,80 +13541,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [49] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(400), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(46)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(466), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13609,76 +13663,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [50] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(554), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(47)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(594), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13727,76 +13781,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [51] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(540), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(48)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(441), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13845,76 +13899,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [52] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(506), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(49)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(505), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13963,76 +14017,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [53] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(480), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(50)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(598), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -14077,80 +14131,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [54] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(426), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(51)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(486), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -14199,76 +14253,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [55] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(421), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(52)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(601), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -14313,80 +14367,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [56] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(408), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(53)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(443), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -14431,80 +14485,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [57] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(405), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(54)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(507), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -14553,76 +14607,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [58] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(534), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(55)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(603), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -14671,76 +14725,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [59] = { - [sym__statement] = STATE(61), - [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(61), - [sym_for_statement] = STATE(61), - [sym_while_statement] = STATE(61), - [sym_try_statement] = STATE(61), - [sym_with_statement] = STATE(61), - [sym_match_statement] = STATE(61), - [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(61), - [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(961), - [sym_block] = STATE(1011), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(56)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(604), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -14785,196 +14839,198 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [60] = { - [sym__statement] = STATE(60), - [sym__simple_statements] = STATE(60), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(60), - [sym_for_statement] = STATE(60), - [sym_while_statement] = STATE(60), - [sym_try_statement] = STATE(60), - [sym_with_statement] = STATE(60), - [sym_match_statement] = STATE(60), - [sym_function_definition] = STATE(60), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(60), - [sym_decorated_definition] = STATE(60), - [sym_decorator] = STATE(961), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(60), - [aux_sym_decorated_definition_repeat1] = STATE(961), - [sym_identifier] = ACTIONS(109), - [anon_sym_import] = ACTIONS(112), - [anon_sym_from] = ACTIONS(115), - [anon_sym_LPAREN] = ACTIONS(118), - [anon_sym_STAR] = ACTIONS(121), - [anon_sym_print] = ACTIONS(124), - [anon_sym_assert] = ACTIONS(127), - [anon_sym_return] = ACTIONS(130), - [anon_sym_del] = ACTIONS(133), - [anon_sym_raise] = ACTIONS(136), - [anon_sym_pass] = ACTIONS(139), - [anon_sym_break] = ACTIONS(142), - [anon_sym_continue] = ACTIONS(145), - [anon_sym_if] = ACTIONS(148), - [anon_sym_async] = ACTIONS(151), - [anon_sym_for] = ACTIONS(154), - [anon_sym_while] = ACTIONS(157), - [anon_sym_try] = ACTIONS(160), - [anon_sym_with] = ACTIONS(163), - [anon_sym_match] = ACTIONS(166), - [anon_sym_DASH] = ACTIONS(169), - [anon_sym_PLUS] = ACTIONS(169), - [anon_sym_LBRACK] = ACTIONS(172), - [anon_sym_LBRACE] = ACTIONS(175), - [anon_sym_STAR_STAR] = ACTIONS(178), - [anon_sym_def] = ACTIONS(181), - [anon_sym_global] = ACTIONS(184), - [anon_sym_nonlocal] = ACTIONS(187), - [anon_sym_exec] = ACTIONS(190), - [anon_sym_type] = ACTIONS(193), - [anon_sym_class] = ACTIONS(196), - [anon_sym_AT] = ACTIONS(199), - [anon_sym_not] = ACTIONS(202), - [anon_sym_TILDE] = ACTIONS(169), - [anon_sym_lambda] = ACTIONS(205), - [anon_sym_yield] = ACTIONS(208), - [sym_ellipsis] = ACTIONS(211), - [sym_integer] = ACTIONS(214), - [sym_float] = ACTIONS(211), - [anon_sym_await] = ACTIONS(217), - [sym_true] = ACTIONS(214), - [sym_false] = ACTIONS(214), - [sym_none] = ACTIONS(214), + [STATE(57)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(446), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_identifier] = ACTIONS(7), + [anon_sym_import] = ACTIONS(9), + [anon_sym_from] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_STAR] = ACTIONS(15), + [anon_sym_print] = ACTIONS(17), + [anon_sym_assert] = ACTIONS(19), + [anon_sym_return] = ACTIONS(21), + [anon_sym_del] = ACTIONS(23), + [anon_sym_raise] = ACTIONS(25), + [anon_sym_pass] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(85), + [anon_sym_async] = ACTIONS(87), + [anon_sym_for] = ACTIONS(89), + [anon_sym_while] = ACTIONS(91), + [anon_sym_try] = ACTIONS(93), + [anon_sym_with] = ACTIONS(95), + [anon_sym_match] = ACTIONS(97), + [anon_sym_DASH] = ACTIONS(47), + [anon_sym_PLUS] = ACTIONS(47), + [anon_sym_LBRACK] = ACTIONS(49), + [anon_sym_LBRACE] = ACTIONS(51), + [anon_sym_STAR_STAR] = ACTIONS(53), + [anon_sym_def] = ACTIONS(99), + [anon_sym_global] = ACTIONS(57), + [anon_sym_nonlocal] = ACTIONS(59), + [anon_sym_exec] = ACTIONS(61), + [anon_sym_type] = ACTIONS(63), + [anon_sym_class] = ACTIONS(101), + [anon_sym_AT] = ACTIONS(67), + [anon_sym_not] = ACTIONS(69), + [anon_sym_TILDE] = ACTIONS(47), + [anon_sym_lambda] = ACTIONS(71), + [anon_sym_yield] = ACTIONS(73), + [sym_ellipsis] = ACTIONS(75), + [sym_integer] = ACTIONS(77), + [sym_float] = ACTIONS(75), + [anon_sym_await] = ACTIONS(79), + [sym_true] = ACTIONS(77), + [sym_false] = ACTIONS(77), + [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(220), - [sym__string_start] = ACTIONS(222), - [sym__template_string_start] = ACTIONS(225), + [sym__dedent] = ACTIONS(103), + [sym__string_start] = ACTIONS(81), + [sym__template_string_start] = ACTIONS(83), }, - [61] = { - [sym__statement] = STATE(60), - [sym__simple_statements] = STATE(60), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(60), - [sym_for_statement] = STATE(60), - [sym_while_statement] = STATE(60), - [sym_try_statement] = STATE(60), - [sym_with_statement] = STATE(60), - [sym_match_statement] = STATE(60), - [sym_function_definition] = STATE(60), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(60), - [sym_decorated_definition] = STATE(60), - [sym_decorator] = STATE(961), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(60), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(58)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(447), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -15019,79 +15075,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(228), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [62] = { - [sym__statement] = STATE(60), - [sym__simple_statements] = STATE(60), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(60), - [sym_for_statement] = STATE(60), - [sym_while_statement] = STATE(60), - [sym_try_statement] = STATE(60), - [sym_with_statement] = STATE(60), - [sym_match_statement] = STATE(60), - [sym_function_definition] = STATE(60), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(60), - [sym_decorated_definition] = STATE(60), - [sym_decorator] = STATE(961), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(60), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(59)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(549), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -15136,26 +15193,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(230), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [63] = { + [STATE(60)] = { [sym__statement] = STATE(60), [sym__simple_statements] = STATE(60), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), [sym_if_statement] = STATE(60), [sym_for_statement] = STATE(60), [sym_while_statement] = STATE(60), @@ -15163,52 +15220,169 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(60), [sym_match_statement] = STATE(60), [sym_function_definition] = STATE(60), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), [sym_class_definition] = STATE(60), [sym_decorated_definition] = STATE(60), - [sym_decorator] = STATE(961), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1118), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(60), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1118), + [ts_builtin_sym_end] = ACTIONS(109), + [sym_identifier] = ACTIONS(111), + [anon_sym_import] = ACTIONS(114), + [anon_sym_from] = ACTIONS(117), + [anon_sym_LPAREN] = ACTIONS(120), + [anon_sym_STAR] = ACTIONS(123), + [anon_sym_print] = ACTIONS(126), + [anon_sym_assert] = ACTIONS(129), + [anon_sym_return] = ACTIONS(132), + [anon_sym_del] = ACTIONS(135), + [anon_sym_raise] = ACTIONS(138), + [anon_sym_pass] = ACTIONS(141), + [anon_sym_break] = ACTIONS(144), + [anon_sym_continue] = ACTIONS(147), + [anon_sym_if] = ACTIONS(150), + [anon_sym_async] = ACTIONS(153), + [anon_sym_for] = ACTIONS(156), + [anon_sym_while] = ACTIONS(159), + [anon_sym_try] = ACTIONS(162), + [anon_sym_with] = ACTIONS(165), + [anon_sym_match] = ACTIONS(168), + [anon_sym_DASH] = ACTIONS(171), + [anon_sym_PLUS] = ACTIONS(171), + [anon_sym_LBRACK] = ACTIONS(174), + [anon_sym_LBRACE] = ACTIONS(177), + [anon_sym_STAR_STAR] = ACTIONS(180), + [anon_sym_def] = ACTIONS(183), + [anon_sym_global] = ACTIONS(186), + [anon_sym_nonlocal] = ACTIONS(189), + [anon_sym_exec] = ACTIONS(192), + [anon_sym_type] = ACTIONS(195), + [anon_sym_class] = ACTIONS(198), + [anon_sym_AT] = ACTIONS(201), + [anon_sym_not] = ACTIONS(204), + [anon_sym_TILDE] = ACTIONS(171), + [anon_sym_lambda] = ACTIONS(207), + [anon_sym_yield] = ACTIONS(210), + [sym_ellipsis] = ACTIONS(213), + [sym_integer] = ACTIONS(216), + [sym_float] = ACTIONS(213), + [anon_sym_await] = ACTIONS(219), + [sym_true] = ACTIONS(216), + [sym_false] = ACTIONS(216), + [sym_none] = ACTIONS(216), + [sym_comment] = ACTIONS(3), + [sym__string_start] = ACTIONS(222), + [sym__template_string_start] = ACTIONS(225), + }, + [STATE(61)] = { + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1113), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -15253,80 +15427,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(232), + [sym__dedent] = ACTIONS(228), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [64] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(960), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(960), - [ts_builtin_sym_end] = ACTIONS(234), + [STATE(62)] = { + [sym__statement] = STATE(60), + [sym__simple_statements] = STATE(60), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_if_statement] = STATE(60), + [sym_for_statement] = STATE(60), + [sym_while_statement] = STATE(60), + [sym_try_statement] = STATE(60), + [sym_with_statement] = STATE(60), + [sym_match_statement] = STATE(60), + [sym_function_definition] = STATE(60), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_class_definition] = STATE(60), + [sym_decorated_definition] = STATE(60), + [sym_decorator] = STATE(1118), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(60), + [aux_sym_decorated_definition_repeat1] = STATE(1118), + [ts_builtin_sym_end] = ACTIONS(230), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -15374,154 +15548,388 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [65] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(960), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(960), - [ts_builtin_sym_end] = ACTIONS(220), - [sym_identifier] = ACTIONS(109), - [anon_sym_import] = ACTIONS(112), - [anon_sym_from] = ACTIONS(115), - [anon_sym_LPAREN] = ACTIONS(118), - [anon_sym_STAR] = ACTIONS(121), - [anon_sym_print] = ACTIONS(124), - [anon_sym_assert] = ACTIONS(127), - [anon_sym_return] = ACTIONS(130), - [anon_sym_del] = ACTIONS(133), - [anon_sym_raise] = ACTIONS(136), - [anon_sym_pass] = ACTIONS(139), - [anon_sym_break] = ACTIONS(142), - [anon_sym_continue] = ACTIONS(145), - [anon_sym_if] = ACTIONS(236), - [anon_sym_async] = ACTIONS(239), - [anon_sym_for] = ACTIONS(242), - [anon_sym_while] = ACTIONS(245), - [anon_sym_try] = ACTIONS(248), - [anon_sym_with] = ACTIONS(251), - [anon_sym_match] = ACTIONS(254), - [anon_sym_DASH] = ACTIONS(169), - [anon_sym_PLUS] = ACTIONS(169), - [anon_sym_LBRACK] = ACTIONS(172), - [anon_sym_LBRACE] = ACTIONS(175), - [anon_sym_STAR_STAR] = ACTIONS(178), - [anon_sym_def] = ACTIONS(257), - [anon_sym_global] = ACTIONS(184), - [anon_sym_nonlocal] = ACTIONS(187), - [anon_sym_exec] = ACTIONS(190), - [anon_sym_type] = ACTIONS(193), - [anon_sym_class] = ACTIONS(260), - [anon_sym_AT] = ACTIONS(199), - [anon_sym_not] = ACTIONS(202), - [anon_sym_TILDE] = ACTIONS(169), - [anon_sym_lambda] = ACTIONS(205), - [anon_sym_yield] = ACTIONS(208), - [sym_ellipsis] = ACTIONS(211), - [sym_integer] = ACTIONS(214), - [sym_float] = ACTIONS(211), - [anon_sym_await] = ACTIONS(217), - [sym_true] = ACTIONS(214), - [sym_false] = ACTIONS(214), - [sym_none] = ACTIONS(214), + [STATE(63)] = { + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1113), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_identifier] = ACTIONS(7), + [anon_sym_import] = ACTIONS(9), + [anon_sym_from] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_STAR] = ACTIONS(15), + [anon_sym_print] = ACTIONS(17), + [anon_sym_assert] = ACTIONS(19), + [anon_sym_return] = ACTIONS(21), + [anon_sym_del] = ACTIONS(23), + [anon_sym_raise] = ACTIONS(25), + [anon_sym_pass] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(85), + [anon_sym_async] = ACTIONS(87), + [anon_sym_for] = ACTIONS(89), + [anon_sym_while] = ACTIONS(91), + [anon_sym_try] = ACTIONS(93), + [anon_sym_with] = ACTIONS(95), + [anon_sym_match] = ACTIONS(97), + [anon_sym_DASH] = ACTIONS(47), + [anon_sym_PLUS] = ACTIONS(47), + [anon_sym_LBRACK] = ACTIONS(49), + [anon_sym_LBRACE] = ACTIONS(51), + [anon_sym_STAR_STAR] = ACTIONS(53), + [anon_sym_def] = ACTIONS(99), + [anon_sym_global] = ACTIONS(57), + [anon_sym_nonlocal] = ACTIONS(59), + [anon_sym_exec] = ACTIONS(61), + [anon_sym_type] = ACTIONS(63), + [anon_sym_class] = ACTIONS(101), + [anon_sym_AT] = ACTIONS(67), + [anon_sym_not] = ACTIONS(69), + [anon_sym_TILDE] = ACTIONS(47), + [anon_sym_lambda] = ACTIONS(71), + [anon_sym_yield] = ACTIONS(73), + [sym_ellipsis] = ACTIONS(75), + [sym_integer] = ACTIONS(77), + [sym_float] = ACTIONS(75), + [anon_sym_await] = ACTIONS(79), + [sym_true] = ACTIONS(77), + [sym_false] = ACTIONS(77), + [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), + [sym__dedent] = ACTIONS(232), + [sym__string_start] = ACTIONS(81), + [sym__template_string_start] = ACTIONS(83), + }, + [STATE(64)] = { + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1113), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_identifier] = ACTIONS(111), + [anon_sym_import] = ACTIONS(114), + [anon_sym_from] = ACTIONS(117), + [anon_sym_LPAREN] = ACTIONS(120), + [anon_sym_STAR] = ACTIONS(123), + [anon_sym_print] = ACTIONS(126), + [anon_sym_assert] = ACTIONS(129), + [anon_sym_return] = ACTIONS(132), + [anon_sym_del] = ACTIONS(135), + [anon_sym_raise] = ACTIONS(138), + [anon_sym_pass] = ACTIONS(141), + [anon_sym_break] = ACTIONS(144), + [anon_sym_continue] = ACTIONS(147), + [anon_sym_if] = ACTIONS(234), + [anon_sym_async] = ACTIONS(237), + [anon_sym_for] = ACTIONS(240), + [anon_sym_while] = ACTIONS(243), + [anon_sym_try] = ACTIONS(246), + [anon_sym_with] = ACTIONS(249), + [anon_sym_match] = ACTIONS(252), + [anon_sym_DASH] = ACTIONS(171), + [anon_sym_PLUS] = ACTIONS(171), + [anon_sym_LBRACK] = ACTIONS(174), + [anon_sym_LBRACE] = ACTIONS(177), + [anon_sym_STAR_STAR] = ACTIONS(180), + [anon_sym_def] = ACTIONS(255), + [anon_sym_global] = ACTIONS(186), + [anon_sym_nonlocal] = ACTIONS(189), + [anon_sym_exec] = ACTIONS(192), + [anon_sym_type] = ACTIONS(195), + [anon_sym_class] = ACTIONS(258), + [anon_sym_AT] = ACTIONS(201), + [anon_sym_not] = ACTIONS(204), + [anon_sym_TILDE] = ACTIONS(171), + [anon_sym_lambda] = ACTIONS(207), + [anon_sym_yield] = ACTIONS(210), + [sym_ellipsis] = ACTIONS(213), + [sym_integer] = ACTIONS(216), + [sym_float] = ACTIONS(213), + [anon_sym_await] = ACTIONS(219), + [sym_true] = ACTIONS(216), + [sym_false] = ACTIONS(216), + [sym_none] = ACTIONS(216), + [sym_comment] = ACTIONS(3), + [sym__dedent] = ACTIONS(109), [sym__string_start] = ACTIONS(222), [sym__template_string_start] = ACTIONS(225), }, - [66] = { - [sym_named_expression] = STATE(880), - [sym_list_splat] = STATE(1375), - [sym_dictionary_splat] = STATE(1375), - [sym_expression_list] = STATE(1430), - [sym_expression] = STATE(1066), - [sym_primary_expression] = STATE(652), - [sym_not_operator] = STATE(880), - [sym_boolean_operator] = STATE(880), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_comparison_operator] = STATE(880), - [sym_lambda] = STATE(880), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_conditional_expression] = STATE(880), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(65)] = { + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1113), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_identifier] = ACTIONS(7), + [anon_sym_import] = ACTIONS(9), + [anon_sym_from] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_STAR] = ACTIONS(15), + [anon_sym_print] = ACTIONS(17), + [anon_sym_assert] = ACTIONS(19), + [anon_sym_return] = ACTIONS(21), + [anon_sym_del] = ACTIONS(23), + [anon_sym_raise] = ACTIONS(25), + [anon_sym_pass] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(85), + [anon_sym_async] = ACTIONS(87), + [anon_sym_for] = ACTIONS(89), + [anon_sym_while] = ACTIONS(91), + [anon_sym_try] = ACTIONS(93), + [anon_sym_with] = ACTIONS(95), + [anon_sym_match] = ACTIONS(97), + [anon_sym_DASH] = ACTIONS(47), + [anon_sym_PLUS] = ACTIONS(47), + [anon_sym_LBRACK] = ACTIONS(49), + [anon_sym_LBRACE] = ACTIONS(51), + [anon_sym_STAR_STAR] = ACTIONS(53), + [anon_sym_def] = ACTIONS(99), + [anon_sym_global] = ACTIONS(57), + [anon_sym_nonlocal] = ACTIONS(59), + [anon_sym_exec] = ACTIONS(61), + [anon_sym_type] = ACTIONS(63), + [anon_sym_class] = ACTIONS(101), + [anon_sym_AT] = ACTIONS(67), + [anon_sym_not] = ACTIONS(69), + [anon_sym_TILDE] = ACTIONS(47), + [anon_sym_lambda] = ACTIONS(71), + [anon_sym_yield] = ACTIONS(73), + [sym_ellipsis] = ACTIONS(75), + [sym_integer] = ACTIONS(77), + [sym_float] = ACTIONS(75), + [anon_sym_await] = ACTIONS(79), + [sym_true] = ACTIONS(77), + [sym_false] = ACTIONS(77), + [sym_none] = ACTIONS(77), + [sym_comment] = ACTIONS(3), + [sym__dedent] = ACTIONS(261), + [sym__string_start] = ACTIONS(81), + [sym__template_string_start] = ACTIONS(83), + }, + [STATE(66)] = { + [sym_named_expression] = STATE(1031), + [sym_list_splat] = STATE(1510), + [sym_dictionary_splat] = STATE(1510), + [sym_expression_list] = STATE(1590), + [sym_expression] = STATE(1254), + [sym_primary_expression] = STATE(719), + [sym_not_operator] = STATE(1031), + [sym_boolean_operator] = STATE(1031), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_comparison_operator] = STATE(1031), + [sym_lambda] = STATE(1031), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_conditional_expression] = STATE(1031), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(263), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(267), @@ -15585,42 +15993,42 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(306), [sym_none] = ACTIONS(306), [sym_comment] = ACTIONS(3), - [sym__semicolon] = ACTIONS(298), + [anon_sym_SEMI] = ACTIONS(298), [sym__newline] = ACTIONS(298), [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [67] = { - [sym_named_expression] = STATE(880), - [sym_list_splat] = STATE(1375), - [sym_dictionary_splat] = STATE(1375), - [sym_expression_list] = STATE(1433), - [sym_expression] = STATE(1052), - [sym_primary_expression] = STATE(652), - [sym_not_operator] = STATE(880), - [sym_boolean_operator] = STATE(880), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_comparison_operator] = STATE(880), - [sym_lambda] = STATE(880), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_conditional_expression] = STATE(880), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(67)] = { + [sym_named_expression] = STATE(1031), + [sym_list_splat] = STATE(1510), + [sym_dictionary_splat] = STATE(1510), + [sym_expression_list] = STATE(1676), + [sym_expression] = STATE(1230), + [sym_primary_expression] = STATE(719), + [sym_not_operator] = STATE(1031), + [sym_boolean_operator] = STATE(1031), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_comparison_operator] = STATE(1031), + [sym_lambda] = STATE(1031), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_conditional_expression] = STATE(1031), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(263), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(267), @@ -15684,67 +16092,164 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(306), [sym_none] = ACTIONS(306), [sym_comment] = ACTIONS(3), - [sym__semicolon] = ACTIONS(298), + [anon_sym_SEMI] = ACTIONS(298), [sym__newline] = ACTIONS(298), [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [68] = { - [sym__simple_statements] = STATE(536), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(68)] = { + [sym_chevron] = STATE(1316), + [sym_named_expression] = STATE(1158), + [sym_expression] = STATE(1175), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_attribute] = STATE(908), + [sym_subscript] = STATE(908), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [sym_identifier] = ACTIONS(314), + [anon_sym_DOT] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(298), + [anon_sym_COMMA] = ACTIONS(270), + [anon_sym_STAR] = ACTIONS(265), + [anon_sym_print] = ACTIONS(316), + [anon_sym_GT_GT] = ACTIONS(318), + [anon_sym_COLON_EQ] = ACTIONS(278), + [anon_sym_if] = ACTIONS(265), + [anon_sym_COLON] = ACTIONS(280), + [anon_sym_async] = ACTIONS(316), + [anon_sym_in] = ACTIONS(265), + [anon_sym_match] = ACTIONS(316), + [anon_sym_PIPE] = ACTIONS(265), + [anon_sym_DASH] = ACTIONS(265), + [anon_sym_PLUS] = ACTIONS(265), + [anon_sym_LBRACK] = ACTIONS(298), + [anon_sym_LBRACE] = ACTIONS(51), + [anon_sym_STAR_STAR] = ACTIONS(265), + [anon_sym_EQ] = ACTIONS(280), + [anon_sym_exec] = ACTIONS(316), + [anon_sym_type] = ACTIONS(316), + [anon_sym_AT] = ACTIONS(265), + [anon_sym_not] = ACTIONS(265), + [anon_sym_and] = ACTIONS(265), + [anon_sym_or] = ACTIONS(265), + [anon_sym_SLASH] = ACTIONS(265), + [anon_sym_PERCENT] = ACTIONS(265), + [anon_sym_SLASH_SLASH] = ACTIONS(265), + [anon_sym_AMP] = ACTIONS(265), + [anon_sym_CARET] = ACTIONS(265), + [anon_sym_LT_LT] = ACTIONS(265), + [anon_sym_TILDE] = ACTIONS(47), + [anon_sym_LT] = ACTIONS(265), + [anon_sym_LT_EQ] = ACTIONS(298), + [anon_sym_EQ_EQ] = ACTIONS(298), + [anon_sym_BANG_EQ] = ACTIONS(298), + [anon_sym_GT_EQ] = ACTIONS(298), + [anon_sym_GT] = ACTIONS(265), + [anon_sym_LT_GT] = ACTIONS(298), + [anon_sym_is] = ACTIONS(265), + [anon_sym_lambda] = ACTIONS(71), + [anon_sym_PLUS_EQ] = ACTIONS(302), + [anon_sym_DASH_EQ] = ACTIONS(302), + [anon_sym_STAR_EQ] = ACTIONS(302), + [anon_sym_SLASH_EQ] = ACTIONS(302), + [anon_sym_AT_EQ] = ACTIONS(302), + [anon_sym_SLASH_SLASH_EQ] = ACTIONS(302), + [anon_sym_PERCENT_EQ] = ACTIONS(302), + [anon_sym_STAR_STAR_EQ] = ACTIONS(302), + [anon_sym_GT_GT_EQ] = ACTIONS(302), + [anon_sym_LT_LT_EQ] = ACTIONS(302), + [anon_sym_AMP_EQ] = ACTIONS(302), + [anon_sym_CARET_EQ] = ACTIONS(302), + [anon_sym_PIPE_EQ] = ACTIONS(302), + [sym_ellipsis] = ACTIONS(75), + [sym_integer] = ACTIONS(77), + [sym_float] = ACTIONS(75), + [anon_sym_await] = ACTIONS(320), + [sym_true] = ACTIONS(77), + [sym_false] = ACTIONS(77), + [sym_none] = ACTIONS(77), + [sym_comment] = ACTIONS(3), + [anon_sym_SEMI] = ACTIONS(298), + [sym__newline] = ACTIONS(298), + [sym__string_start] = ACTIONS(81), + [sym__template_string_start] = ACTIONS(83), + }, + [STATE(69)] = { + [sym__simple_statements] = STATE(1171), + [sym_import_statement] = STATE(1373), + [sym_future_import_statement] = STATE(1373), + [sym_import_from_statement] = STATE(1373), + [sym_print_statement] = STATE(1373), + [sym_assert_statement] = STATE(1373), + [sym_expression_statement] = STATE(1373), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1373), + [sym_delete_statement] = STATE(1373), + [sym_raise_statement] = STATE(1373), + [sym_pass_statement] = STATE(1373), + [sym_break_statement] = STATE(1373), + [sym_continue_statement] = STATE(1373), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1373), + [sym_nonlocal_statement] = STATE(1373), + [sym_exec_statement] = STATE(1373), + [sym_type_alias_statement] = STATE(1373), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -15758,8 +16263,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -15781,67 +16286,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(316), - [sym__indent] = ACTIONS(318), + [sym__newline] = ACTIONS(324), + [sym__indent] = ACTIONS(326), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [69] = { - [sym__simple_statements] = STATE(439), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(70)] = { + [sym__simple_statements] = STATE(436), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -15855,8 +16360,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -15878,67 +16383,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(320), - [sym__indent] = ACTIONS(322), + [sym__newline] = ACTIONS(328), + [sym__indent] = ACTIONS(330), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [70] = { - [sym__simple_statements] = STATE(533), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(71)] = { + [sym__simple_statements] = STATE(550), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -15952,8 +16457,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -15975,67 +16480,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(324), - [sym__indent] = ACTIONS(326), + [sym__newline] = ACTIONS(332), + [sym__indent] = ACTIONS(334), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [71] = { - [sym__simple_statements] = STATE(424), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(72)] = { + [sym__simple_statements] = STATE(581), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16049,8 +16554,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16072,67 +16577,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(328), - [sym__indent] = ACTIONS(330), + [sym__newline] = ACTIONS(336), + [sym__indent] = ACTIONS(338), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [72] = { - [sym__simple_statements] = STATE(418), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(73)] = { + [sym__simple_statements] = STATE(442), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16146,8 +16651,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16169,67 +16674,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(332), - [sym__indent] = ACTIONS(334), + [sym__newline] = ACTIONS(340), + [sym__indent] = ACTIONS(342), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [73] = { - [sym__simple_statements] = STATE(413), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(74)] = { + [sym__simple_statements] = STATE(606), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16243,8 +16748,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16266,67 +16771,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(336), - [sym__indent] = ACTIONS(338), + [sym__newline] = ACTIONS(344), + [sym__indent] = ACTIONS(346), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [74] = { - [sym__simple_statements] = STATE(463), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(75)] = { + [sym__simple_statements] = STATE(482), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16340,8 +16845,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16363,67 +16868,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(340), - [sym__indent] = ACTIONS(342), + [sym__newline] = ACTIONS(348), + [sym__indent] = ACTIONS(350), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [75] = { - [sym__simple_statements] = STATE(437), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(76)] = { + [sym__simple_statements] = STATE(319), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16437,8 +16942,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16460,67 +16965,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(344), - [sym__indent] = ACTIONS(346), + [sym__newline] = ACTIONS(352), + [sym__indent] = ACTIONS(354), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [76] = { - [sym__simple_statements] = STATE(461), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(77)] = { + [sym__simple_statements] = STATE(489), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16534,8 +17039,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16557,67 +17062,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(348), - [sym__indent] = ACTIONS(350), + [sym__newline] = ACTIONS(356), + [sym__indent] = ACTIONS(358), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [77] = { - [sym__simple_statements] = STATE(428), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(78)] = { + [sym__simple_statements] = STATE(554), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16631,8 +17136,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16654,67 +17159,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(352), - [sym__indent] = ACTIONS(354), + [sym__newline] = ACTIONS(360), + [sym__indent] = ACTIONS(362), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [78] = { - [sym__simple_statements] = STATE(455), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(79)] = { + [sym__simple_statements] = STATE(557), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16728,202 +17233,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(356), - [sym__indent] = ACTIONS(358), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [79] = { - [sym__simple_statements] = STATE(539), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(360), - [sym__indent] = ACTIONS(362), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [80] = { - [sym__simple_statements] = STATE(493), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16950,62 +17261,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [81] = { - [sym__simple_statements] = STATE(487), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(80)] = { + [sym__simple_statements] = STATE(454), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17019,8 +17330,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17047,62 +17358,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [82] = { - [sym__simple_statements] = STATE(393), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(81)] = { + [sym__simple_statements] = STATE(559), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17116,8 +17427,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17144,62 +17455,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [83] = { - [sym__simple_statements] = STATE(471), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(82)] = { + [sym__simple_statements] = STATE(516), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17213,8 +17524,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17241,62 +17552,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [84] = { - [sym__simple_statements] = STATE(550), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(83)] = { + [sym__simple_statements] = STATE(520), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17310,8 +17621,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17338,62 +17649,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [85] = { - [sym__simple_statements] = STATE(476), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(84)] = { + [sym__simple_statements] = STATE(564), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17407,8 +17718,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17435,62 +17746,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [86] = { - [sym__simple_statements] = STATE(495), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(85)] = { + [sym__simple_statements] = STATE(566), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17504,8 +17815,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17532,62 +17843,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [87] = { - [sym__simple_statements] = STATE(430), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(86)] = { + [sym__simple_statements] = STATE(567), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17601,8 +17912,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17629,62 +17940,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [88] = { - [sym__simple_statements] = STATE(300), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(87)] = { + [sym__simple_statements] = STATE(523), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17698,8 +18009,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17726,62 +18037,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [89] = { - [sym__simple_statements] = STATE(420), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(88)] = { + [sym__simple_statements] = STATE(571), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17795,8 +18106,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17823,62 +18134,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [90] = { - [sym__simple_statements] = STATE(558), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(89)] = { + [sym__simple_statements] = STATE(491), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17892,8 +18203,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17920,62 +18231,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [91] = { - [sym__simple_statements] = STATE(391), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(90)] = { + [sym__simple_statements] = STATE(437), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17989,8 +18300,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18017,62 +18328,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [92] = { - [sym__simple_statements] = STATE(500), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(91)] = { + [sym__simple_statements] = STATE(573), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18086,8 +18397,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18114,62 +18425,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [93] = { - [sym__simple_statements] = STATE(401), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(92)] = { + [sym__simple_statements] = STATE(546), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18183,8 +18494,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18211,62 +18522,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [94] = { - [sym__simple_statements] = STATE(396), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(93)] = { + [sym__simple_statements] = STATE(577), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18280,8 +18591,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18308,62 +18619,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [95] = { - [sym__simple_statements] = STATE(394), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(94)] = { + [sym__simple_statements] = STATE(495), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18377,8 +18688,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18405,62 +18716,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [96] = { - [sym__simple_statements] = STATE(465), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(95)] = { + [sym__simple_statements] = STATE(579), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18474,8 +18785,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18502,62 +18813,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [97] = { - [sym__simple_statements] = STATE(525), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(96)] = { + [sym__simple_statements] = STATE(541), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18571,8 +18882,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18599,62 +18910,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [98] = { - [sym__simple_statements] = STATE(453), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(97)] = { + [sym__simple_statements] = STATE(503), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18668,8 +18979,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18696,62 +19007,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [99] = { - [sym__simple_statements] = STATE(547), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(98)] = { + [sym__simple_statements] = STATE(480), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18765,8 +19076,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18793,62 +19104,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [100] = { - [sym__simple_statements] = STATE(567), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(99)] = { + [sym__simple_statements] = STATE(312), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18862,8 +19173,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18890,62 +19201,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [101] = { - [sym__simple_statements] = STATE(997), - [sym_import_statement] = STATE(1212), - [sym_future_import_statement] = STATE(1212), - [sym_import_from_statement] = STATE(1212), - [sym_print_statement] = STATE(1212), - [sym_assert_statement] = STATE(1212), - [sym_expression_statement] = STATE(1212), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1212), - [sym_delete_statement] = STATE(1212), - [sym_raise_statement] = STATE(1212), - [sym_pass_statement] = STATE(1212), - [sym_break_statement] = STATE(1212), - [sym_continue_statement] = STATE(1212), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1212), - [sym_nonlocal_statement] = STATE(1212), - [sym_exec_statement] = STATE(1212), - [sym_type_alias_statement] = STATE(1212), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(100)] = { + [sym__simple_statements] = STATE(584), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18959,8 +19270,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18987,62 +19298,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [102] = { - [sym__simple_statements] = STATE(477), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(101)] = { + [sym__simple_statements] = STATE(527), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19056,8 +19367,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19084,62 +19395,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [103] = { - [sym__simple_statements] = STATE(472), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(102)] = { + [sym__simple_statements] = STATE(439), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19153,8 +19464,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19181,62 +19492,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [104] = { - [sym__simple_statements] = STATE(411), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(103)] = { + [sym__simple_statements] = STATE(485), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19250,8 +19561,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19278,62 +19589,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [105] = { - [sym__simple_statements] = STATE(438), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(104)] = { + [sym__simple_statements] = STATE(504), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19347,8 +19658,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19375,62 +19686,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [106] = { - [sym__simple_statements] = STATE(518), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(105)] = { + [sym__simple_statements] = STATE(589), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19444,8 +19755,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19472,62 +19783,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [107] = { - [sym__simple_statements] = STATE(464), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(106)] = { + [sym__simple_statements] = STATE(459), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19541,8 +19852,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19569,62 +19880,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [108] = { - [sym__simple_statements] = STATE(302), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(107)] = { + [sym__simple_statements] = STATE(488), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19638,8 +19949,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19666,62 +19977,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [109] = { - [sym__simple_statements] = STATE(509), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(108)] = { + [sym__simple_statements] = STATE(496), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19735,8 +20046,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19763,62 +20074,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [110] = { - [sym__simple_statements] = STATE(552), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(109)] = { + [sym__simple_statements] = STATE(531), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19832,8 +20143,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19860,159 +20171,256 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [111] = { - [sym_chevron] = STATE(1109), - [sym_named_expression] = STATE(955), - [sym_expression] = STATE(1012), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_attribute] = STATE(760), - [sym_subscript] = STATE(760), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [sym_identifier] = ACTIONS(488), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(298), - [anon_sym_COMMA] = ACTIONS(270), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(490), - [anon_sym_GT_GT] = ACTIONS(492), - [anon_sym_COLON_EQ] = ACTIONS(278), - [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(280), - [anon_sym_async] = ACTIONS(490), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(490), - [anon_sym_PIPE] = ACTIONS(265), - [anon_sym_DASH] = ACTIONS(265), - [anon_sym_PLUS] = ACTIONS(265), - [anon_sym_LBRACK] = ACTIONS(298), + [STATE(110)] = { + [sym__simple_statements] = STATE(593), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [sym_identifier] = ACTIONS(7), + [anon_sym_import] = ACTIONS(9), + [anon_sym_from] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_STAR] = ACTIONS(15), + [anon_sym_print] = ACTIONS(17), + [anon_sym_assert] = ACTIONS(19), + [anon_sym_return] = ACTIONS(21), + [anon_sym_del] = ACTIONS(23), + [anon_sym_raise] = ACTIONS(25), + [anon_sym_pass] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), + [anon_sym_DASH] = ACTIONS(47), + [anon_sym_PLUS] = ACTIONS(47), + [anon_sym_LBRACK] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(265), - [anon_sym_EQ] = ACTIONS(280), - [anon_sym_exec] = ACTIONS(490), - [anon_sym_type] = ACTIONS(490), - [anon_sym_AT] = ACTIONS(265), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(265), - [anon_sym_SLASH_SLASH] = ACTIONS(265), - [anon_sym_AMP] = ACTIONS(265), - [anon_sym_CARET] = ACTIONS(265), - [anon_sym_LT_LT] = ACTIONS(265), + [anon_sym_STAR_STAR] = ACTIONS(53), + [anon_sym_global] = ACTIONS(57), + [anon_sym_nonlocal] = ACTIONS(59), + [anon_sym_exec] = ACTIONS(61), + [anon_sym_type] = ACTIONS(63), + [anon_sym_not] = ACTIONS(69), [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), [anon_sym_lambda] = ACTIONS(71), - [anon_sym_PLUS_EQ] = ACTIONS(302), - [anon_sym_DASH_EQ] = ACTIONS(302), - [anon_sym_STAR_EQ] = ACTIONS(302), - [anon_sym_SLASH_EQ] = ACTIONS(302), - [anon_sym_AT_EQ] = ACTIONS(302), - [anon_sym_SLASH_SLASH_EQ] = ACTIONS(302), - [anon_sym_PERCENT_EQ] = ACTIONS(302), - [anon_sym_STAR_STAR_EQ] = ACTIONS(302), - [anon_sym_GT_GT_EQ] = ACTIONS(302), - [anon_sym_LT_LT_EQ] = ACTIONS(302), - [anon_sym_AMP_EQ] = ACTIONS(302), - [anon_sym_CARET_EQ] = ACTIONS(302), - [anon_sym_PIPE_EQ] = ACTIONS(302), + [anon_sym_yield] = ACTIONS(73), [sym_ellipsis] = ACTIONS(75), [sym_integer] = ACTIONS(77), [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(494), + [anon_sym_await] = ACTIONS(79), [sym_true] = ACTIONS(77), [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__semicolon] = ACTIONS(298), - [sym__newline] = ACTIONS(298), + [sym__newline] = ACTIONS(488), + [sym__indent] = ACTIONS(490), + [sym__string_start] = ACTIONS(81), + [sym__template_string_start] = ACTIONS(83), + }, + [STATE(111)] = { + [sym__simple_statements] = STATE(608), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [sym_identifier] = ACTIONS(7), + [anon_sym_import] = ACTIONS(9), + [anon_sym_from] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_STAR] = ACTIONS(15), + [anon_sym_print] = ACTIONS(17), + [anon_sym_assert] = ACTIONS(19), + [anon_sym_return] = ACTIONS(21), + [anon_sym_del] = ACTIONS(23), + [anon_sym_raise] = ACTIONS(25), + [anon_sym_pass] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), + [anon_sym_DASH] = ACTIONS(47), + [anon_sym_PLUS] = ACTIONS(47), + [anon_sym_LBRACK] = ACTIONS(49), + [anon_sym_LBRACE] = ACTIONS(51), + [anon_sym_STAR_STAR] = ACTIONS(53), + [anon_sym_global] = ACTIONS(57), + [anon_sym_nonlocal] = ACTIONS(59), + [anon_sym_exec] = ACTIONS(61), + [anon_sym_type] = ACTIONS(63), + [anon_sym_not] = ACTIONS(69), + [anon_sym_TILDE] = ACTIONS(47), + [anon_sym_lambda] = ACTIONS(71), + [anon_sym_yield] = ACTIONS(73), + [sym_ellipsis] = ACTIONS(75), + [sym_integer] = ACTIONS(77), + [sym_float] = ACTIONS(75), + [anon_sym_await] = ACTIONS(79), + [sym_true] = ACTIONS(77), + [sym_false] = ACTIONS(77), + [sym_none] = ACTIONS(77), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(492), + [sym__indent] = ACTIONS(494), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [112] = { - [sym__simple_statements] = STATE(501), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(112)] = { + [sym__simple_statements] = STATE(440), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20026,8 +20434,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20054,62 +20462,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [113] = { - [sym__simple_statements] = STATE(486), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(113)] = { + [sym__simple_statements] = STATE(611), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20123,8 +20531,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20151,62 +20559,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [114] = { - [sym__simple_statements] = STATE(995), - [sym_import_statement] = STATE(1212), - [sym_future_import_statement] = STATE(1212), - [sym_import_from_statement] = STATE(1212), - [sym_print_statement] = STATE(1212), - [sym_assert_statement] = STATE(1212), - [sym_expression_statement] = STATE(1212), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1212), - [sym_delete_statement] = STATE(1212), - [sym_raise_statement] = STATE(1212), - [sym_pass_statement] = STATE(1212), - [sym_break_statement] = STATE(1212), - [sym_continue_statement] = STATE(1212), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1212), - [sym_nonlocal_statement] = STATE(1212), - [sym_exec_statement] = STATE(1212), - [sym_type_alias_statement] = STATE(1212), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(114)] = { + [sym__simple_statements] = STATE(464), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20220,8 +20628,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20248,62 +20656,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [115] = { - [sym__simple_statements] = STATE(404), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(115)] = { + [sym__simple_statements] = STATE(506), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20317,8 +20725,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20345,62 +20753,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [116] = { - [sym__simple_statements] = STATE(561), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(116)] = { + [sym__simple_statements] = STATE(599), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20414,8 +20822,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20442,62 +20850,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [117] = { - [sym__simple_statements] = STATE(511), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(117)] = { + [sym__simple_statements] = STATE(537), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20511,8 +20919,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20539,62 +20947,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [118] = { - [sym__simple_statements] = STATE(468), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(118)] = { + [sym__simple_statements] = STATE(602), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20608,8 +21016,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20636,62 +21044,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [119] = { - [sym__simple_statements] = STATE(564), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(119)] = { + [sym__simple_statements] = STATE(444), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20705,8 +21113,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20733,62 +21141,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [120] = { - [sym__simple_statements] = STATE(563), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(120)] = { + [sym__simple_statements] = STATE(451), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20802,8 +21210,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20830,62 +21238,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [121] = { - [sym__simple_statements] = STATE(515), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(121)] = { + [sym__simple_statements] = STATE(613), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20899,8 +21307,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20927,62 +21335,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [122] = { - [sym__simple_statements] = STATE(557), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(122)] = { + [sym__simple_statements] = STATE(445), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20996,8 +21404,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21024,62 +21432,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [123] = { - [sym__simple_statements] = STATE(399), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(123)] = { + [sym__simple_statements] = STATE(500), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21093,8 +21501,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21121,62 +21529,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [124] = { - [sym__simple_statements] = STATE(410), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(124)] = { + [sym__simple_statements] = STATE(1187), + [sym_import_statement] = STATE(1373), + [sym_future_import_statement] = STATE(1373), + [sym_import_from_statement] = STATE(1373), + [sym_print_statement] = STATE(1373), + [sym_assert_statement] = STATE(1373), + [sym_expression_statement] = STATE(1373), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1373), + [sym_delete_statement] = STATE(1373), + [sym_raise_statement] = STATE(1373), + [sym_pass_statement] = STATE(1373), + [sym_break_statement] = STATE(1373), + [sym_continue_statement] = STATE(1373), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1373), + [sym_nonlocal_statement] = STATE(1373), + [sym_exec_statement] = STATE(1373), + [sym_type_alias_statement] = STATE(1373), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21190,8 +21598,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21218,62 +21626,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [125] = { - [sym__simple_statements] = STATE(508), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(125)] = { + [sym__simple_statements] = STATE(543), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21287,8 +21695,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21315,62 +21723,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [126] = { - [sym__simple_statements] = STATE(507), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(126)] = { + [sym__simple_statements] = STATE(481), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21384,8 +21792,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21412,61 +21820,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [127] = { - [sym_import_statement] = STATE(1369), - [sym_future_import_statement] = STATE(1369), - [sym_import_from_statement] = STATE(1369), - [sym_print_statement] = STATE(1369), - [sym_assert_statement] = STATE(1369), - [sym_expression_statement] = STATE(1369), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1369), - [sym_delete_statement] = STATE(1369), - [sym_raise_statement] = STATE(1369), - [sym_pass_statement] = STATE(1369), - [sym_break_statement] = STATE(1369), - [sym_continue_statement] = STATE(1369), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1369), - [sym_nonlocal_statement] = STATE(1369), - [sym_exec_statement] = STATE(1369), - [sym_type_alias_statement] = STATE(1369), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(127)] = { + [sym_import_statement] = STATE(1517), + [sym_future_import_statement] = STATE(1517), + [sym_import_from_statement] = STATE(1517), + [sym_print_statement] = STATE(1517), + [sym_assert_statement] = STATE(1517), + [sym_expression_statement] = STATE(1517), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1517), + [sym_delete_statement] = STATE(1517), + [sym_raise_statement] = STATE(1517), + [sym_pass_statement] = STATE(1517), + [sym_break_statement] = STATE(1517), + [sym_continue_statement] = STATE(1517), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1517), + [sym_nonlocal_statement] = STATE(1517), + [sym_exec_statement] = STATE(1517), + [sym_type_alias_statement] = STATE(1517), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21480,8 +21888,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21507,61 +21915,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [128] = { - [sym_import_statement] = STATE(1369), - [sym_future_import_statement] = STATE(1369), - [sym_import_from_statement] = STATE(1369), - [sym_print_statement] = STATE(1369), - [sym_assert_statement] = STATE(1369), - [sym_expression_statement] = STATE(1369), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1369), - [sym_delete_statement] = STATE(1369), - [sym_raise_statement] = STATE(1369), - [sym_pass_statement] = STATE(1369), - [sym_break_statement] = STATE(1369), - [sym_continue_statement] = STATE(1369), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1369), - [sym_nonlocal_statement] = STATE(1369), - [sym_exec_statement] = STATE(1369), - [sym_type_alias_statement] = STATE(1369), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(128)] = { + [sym_import_statement] = STATE(1517), + [sym_future_import_statement] = STATE(1517), + [sym_import_from_statement] = STATE(1517), + [sym_print_statement] = STATE(1517), + [sym_assert_statement] = STATE(1517), + [sym_expression_statement] = STATE(1517), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1517), + [sym_delete_statement] = STATE(1517), + [sym_raise_statement] = STATE(1517), + [sym_pass_statement] = STATE(1517), + [sym_break_statement] = STATE(1517), + [sym_continue_statement] = STATE(1517), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1517), + [sym_nonlocal_statement] = STATE(1517), + [sym_exec_statement] = STATE(1517), + [sym_type_alias_statement] = STATE(1517), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21575,8 +21983,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21602,61 +22010,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [129] = { - [sym_import_statement] = STATE(1369), - [sym_future_import_statement] = STATE(1369), - [sym_import_from_statement] = STATE(1369), - [sym_print_statement] = STATE(1369), - [sym_assert_statement] = STATE(1369), - [sym_expression_statement] = STATE(1369), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1369), - [sym_delete_statement] = STATE(1369), - [sym_raise_statement] = STATE(1369), - [sym_pass_statement] = STATE(1369), - [sym_break_statement] = STATE(1369), - [sym_continue_statement] = STATE(1369), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1369), - [sym_nonlocal_statement] = STATE(1369), - [sym_exec_statement] = STATE(1369), - [sym_type_alias_statement] = STATE(1369), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(129)] = { + [sym_import_statement] = STATE(1517), + [sym_future_import_statement] = STATE(1517), + [sym_import_from_statement] = STATE(1517), + [sym_print_statement] = STATE(1517), + [sym_assert_statement] = STATE(1517), + [sym_expression_statement] = STATE(1517), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1517), + [sym_delete_statement] = STATE(1517), + [sym_raise_statement] = STATE(1517), + [sym_pass_statement] = STATE(1517), + [sym_break_statement] = STATE(1517), + [sym_continue_statement] = STATE(1517), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1517), + [sym_nonlocal_statement] = STATE(1517), + [sym_exec_statement] = STATE(1517), + [sym_type_alias_statement] = STATE(1517), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21670,8 +22078,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21697,61 +22105,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [130] = { - [sym_import_statement] = STATE(1369), - [sym_future_import_statement] = STATE(1369), - [sym_import_from_statement] = STATE(1369), - [sym_print_statement] = STATE(1369), - [sym_assert_statement] = STATE(1369), - [sym_expression_statement] = STATE(1369), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1369), - [sym_delete_statement] = STATE(1369), - [sym_raise_statement] = STATE(1369), - [sym_pass_statement] = STATE(1369), - [sym_break_statement] = STATE(1369), - [sym_continue_statement] = STATE(1369), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1369), - [sym_nonlocal_statement] = STATE(1369), - [sym_exec_statement] = STATE(1369), - [sym_type_alias_statement] = STATE(1369), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(130)] = { + [sym_import_statement] = STATE(1517), + [sym_future_import_statement] = STATE(1517), + [sym_import_from_statement] = STATE(1517), + [sym_print_statement] = STATE(1517), + [sym_assert_statement] = STATE(1517), + [sym_expression_statement] = STATE(1517), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1517), + [sym_delete_statement] = STATE(1517), + [sym_raise_statement] = STATE(1517), + [sym_pass_statement] = STATE(1517), + [sym_break_statement] = STATE(1517), + [sym_continue_statement] = STATE(1517), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1517), + [sym_nonlocal_statement] = STATE(1517), + [sym_exec_statement] = STATE(1517), + [sym_type_alias_statement] = STATE(1517), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21765,8 +22173,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21792,61 +22200,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [131] = { - [sym_import_statement] = STATE(1369), - [sym_future_import_statement] = STATE(1369), - [sym_import_from_statement] = STATE(1369), - [sym_print_statement] = STATE(1369), - [sym_assert_statement] = STATE(1369), - [sym_expression_statement] = STATE(1369), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1369), - [sym_delete_statement] = STATE(1369), - [sym_raise_statement] = STATE(1369), - [sym_pass_statement] = STATE(1369), - [sym_break_statement] = STATE(1369), - [sym_continue_statement] = STATE(1369), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1369), - [sym_nonlocal_statement] = STATE(1369), - [sym_exec_statement] = STATE(1369), - [sym_type_alias_statement] = STATE(1369), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(131)] = { + [sym_import_statement] = STATE(1517), + [sym_future_import_statement] = STATE(1517), + [sym_import_from_statement] = STATE(1517), + [sym_print_statement] = STATE(1517), + [sym_assert_statement] = STATE(1517), + [sym_expression_statement] = STATE(1517), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1517), + [sym_delete_statement] = STATE(1517), + [sym_raise_statement] = STATE(1517), + [sym_pass_statement] = STATE(1517), + [sym_break_statement] = STATE(1517), + [sym_continue_statement] = STATE(1517), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1517), + [sym_nonlocal_statement] = STATE(1517), + [sym_exec_statement] = STATE(1517), + [sym_type_alias_statement] = STATE(1517), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21860,8 +22268,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21887,61 +22295,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [132] = { - [sym_import_statement] = STATE(1369), - [sym_future_import_statement] = STATE(1369), - [sym_import_from_statement] = STATE(1369), - [sym_print_statement] = STATE(1369), - [sym_assert_statement] = STATE(1369), - [sym_expression_statement] = STATE(1369), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1369), - [sym_delete_statement] = STATE(1369), - [sym_raise_statement] = STATE(1369), - [sym_pass_statement] = STATE(1369), - [sym_break_statement] = STATE(1369), - [sym_continue_statement] = STATE(1369), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1369), - [sym_nonlocal_statement] = STATE(1369), - [sym_exec_statement] = STATE(1369), - [sym_type_alias_statement] = STATE(1369), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(132)] = { + [sym_import_statement] = STATE(1517), + [sym_future_import_statement] = STATE(1517), + [sym_import_from_statement] = STATE(1517), + [sym_print_statement] = STATE(1517), + [sym_assert_statement] = STATE(1517), + [sym_expression_statement] = STATE(1517), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1517), + [sym_delete_statement] = STATE(1517), + [sym_raise_statement] = STATE(1517), + [sym_pass_statement] = STATE(1517), + [sym_break_statement] = STATE(1517), + [sym_continue_statement] = STATE(1517), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1517), + [sym_nonlocal_statement] = STATE(1517), + [sym_exec_statement] = STATE(1517), + [sym_type_alias_statement] = STATE(1517), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21955,8 +22363,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21982,61 +22390,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [133] = { - [sym_import_statement] = STATE(1369), - [sym_future_import_statement] = STATE(1369), - [sym_import_from_statement] = STATE(1369), - [sym_print_statement] = STATE(1369), - [sym_assert_statement] = STATE(1369), - [sym_expression_statement] = STATE(1369), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1369), - [sym_delete_statement] = STATE(1369), - [sym_raise_statement] = STATE(1369), - [sym_pass_statement] = STATE(1369), - [sym_break_statement] = STATE(1369), - [sym_continue_statement] = STATE(1369), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1369), - [sym_nonlocal_statement] = STATE(1369), - [sym_exec_statement] = STATE(1369), - [sym_type_alias_statement] = STATE(1369), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(133)] = { + [sym_import_statement] = STATE(1517), + [sym_future_import_statement] = STATE(1517), + [sym_import_from_statement] = STATE(1517), + [sym_print_statement] = STATE(1517), + [sym_assert_statement] = STATE(1517), + [sym_expression_statement] = STATE(1517), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1517), + [sym_delete_statement] = STATE(1517), + [sym_raise_statement] = STATE(1517), + [sym_pass_statement] = STATE(1517), + [sym_break_statement] = STATE(1517), + [sym_continue_statement] = STATE(1517), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1517), + [sym_nonlocal_statement] = STATE(1517), + [sym_exec_statement] = STATE(1517), + [sym_type_alias_statement] = STATE(1517), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -22050,8 +22458,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -22076,27 +22484,27 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [134] = { - [sym_primary_expression] = STATE(711), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_attribute] = STATE(760), - [sym_subscript] = STATE(760), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(134)] = { + [sym_primary_expression] = STATE(810), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_attribute] = STATE(908), + [sym_subscript] = STATE(908), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(77), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(568), @@ -22159,32 +22567,32 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__semicolon] = ACTIONS(298), + [anon_sym_SEMI] = ACTIONS(298), [sym__newline] = ACTIONS(298), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [135] = { - [sym_primary_expression] = STATE(669), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(135)] = { + [sym_primary_expression] = STATE(735), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(578), @@ -22252,27 +22660,27 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [136] = { - [sym_primary_expression] = STATE(669), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(136)] = { + [sym_primary_expression] = STATE(735), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(578), @@ -22319,7 +22727,6 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LT_GT] = ACTIONS(298), [anon_sym_is] = ACTIONS(265), [sym_ellipsis] = ACTIONS(304), - [sym_type_conversion] = ACTIONS(298), [sym_integer] = ACTIONS(306), [sym_float] = ACTIONS(304), [anon_sym_await] = ACTIONS(595), @@ -22330,27 +22737,27 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [137] = { - [sym_primary_expression] = STATE(669), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(137)] = { + [sym_primary_expression] = STATE(735), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(578), @@ -22396,7 +22803,6 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LT_GT] = ACTIONS(298), [anon_sym_is] = ACTIONS(265), [sym_ellipsis] = ACTIONS(304), - [sym_type_conversion] = ACTIONS(298), [sym_integer] = ACTIONS(306), [sym_float] = ACTIONS(304), [anon_sym_await] = ACTIONS(595), @@ -22407,27 +22813,27 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [138] = { - [sym_primary_expression] = STATE(675), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(138)] = { + [sym_primary_expression] = STATE(760), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(597), @@ -22439,7 +22845,6 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_GT_GT] = ACTIONS(298), [anon_sym_COLON_EQ] = ACTIONS(599), [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(265), [anon_sym_async] = ACTIONS(583), [anon_sym_for] = ACTIONS(265), [anon_sym_in] = ACTIONS(265), @@ -22484,75 +22889,74 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [139] = { - [sym_primary_expression] = STATE(675), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(139)] = { + [sym_primary_expression] = STATE(735), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(597), - [anon_sym_RPAREN] = ACTIONS(298), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_as] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(578), + [anon_sym_RPAREN] = ACTIONS(593), + [anon_sym_COMMA] = ACTIONS(593), [anon_sym_STAR] = ACTIONS(265), [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(298), + [anon_sym_GT_GT] = ACTIONS(265), + [anon_sym_COLON] = ACTIONS(593), [anon_sym_async] = ACTIONS(583), - [anon_sym_for] = ACTIONS(265), - [anon_sym_in] = ACTIONS(265), + [anon_sym_in] = ACTIONS(587), [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(601), - [anon_sym_PLUS] = ACTIONS(601), - [anon_sym_LBRACK] = ACTIONS(603), - [anon_sym_RBRACK] = ACTIONS(298), + [anon_sym_PIPE] = ACTIONS(265), + [anon_sym_DASH] = ACTIONS(589), + [anon_sym_PLUS] = ACTIONS(589), + [anon_sym_LBRACK] = ACTIONS(591), + [anon_sym_RBRACK] = ACTIONS(593), [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_RBRACE] = ACTIONS(298), - [anon_sym_STAR_STAR] = ACTIONS(298), + [anon_sym_STAR_STAR] = ACTIONS(265), + [anon_sym_EQ] = ACTIONS(593), [anon_sym_exec] = ACTIONS(583), [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), + [anon_sym_AT] = ACTIONS(265), [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(601), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), + [anon_sym_PERCENT] = ACTIONS(265), + [anon_sym_SLASH_SLASH] = ACTIONS(265), + [anon_sym_AMP] = ACTIONS(265), + [anon_sym_CARET] = ACTIONS(265), + [anon_sym_LT_LT] = ACTIONS(265), + [anon_sym_TILDE] = ACTIONS(296), + [anon_sym_PLUS_EQ] = ACTIONS(593), + [anon_sym_DASH_EQ] = ACTIONS(593), + [anon_sym_STAR_EQ] = ACTIONS(593), + [anon_sym_SLASH_EQ] = ACTIONS(593), + [anon_sym_AT_EQ] = ACTIONS(593), + [anon_sym_SLASH_SLASH_EQ] = ACTIONS(593), + [anon_sym_PERCENT_EQ] = ACTIONS(593), + [anon_sym_STAR_STAR_EQ] = ACTIONS(593), + [anon_sym_GT_GT_EQ] = ACTIONS(593), + [anon_sym_LT_LT_EQ] = ACTIONS(593), + [anon_sym_AMP_EQ] = ACTIONS(593), + [anon_sym_CARET_EQ] = ACTIONS(593), + [anon_sym_PIPE_EQ] = ACTIONS(593), [sym_ellipsis] = ACTIONS(304), [sym_integer] = ACTIONS(306), [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(605), + [anon_sym_await] = ACTIONS(595), [sym_true] = ACTIONS(306), [sym_false] = ACTIONS(306), [sym_none] = ACTIONS(306), @@ -22560,27 +22964,27 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [140] = { - [sym_primary_expression] = STATE(711), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_attribute] = STATE(760), - [sym_subscript] = STATE(760), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(140)] = { + [sym_primary_expression] = STATE(810), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_attribute] = STATE(908), + [sym_subscript] = STATE(908), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(77), [anon_sym_DOT] = ACTIONS(265), [anon_sym_from] = ACTIONS(265), @@ -22630,32 +23034,107 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__semicolon] = ACTIONS(298), + [anon_sym_SEMI] = ACTIONS(298), [sym__newline] = ACTIONS(298), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [141] = { - [sym_primary_expression] = STATE(669), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(141)] = { + [sym_primary_expression] = STATE(785), + [sym_binary_operator] = STATE(924), + [sym_unary_operator] = STATE(924), + [sym_attribute] = STATE(924), + [sym_subscript] = STATE(924), + [sym_call] = STATE(924), + [sym_list] = STATE(924), + [sym_set] = STATE(924), + [sym_tuple] = STATE(924), + [sym_dictionary] = STATE(924), + [sym_list_comprehension] = STATE(924), + [sym_dictionary_comprehension] = STATE(924), + [sym_set_comprehension] = STATE(924), + [sym_generator_expression] = STATE(924), + [sym_parenthesized_expression] = STATE(924), + [sym_concatenated_string] = STATE(924), + [sym_string] = STATE(767), + [sym_concatenated_template_string] = STATE(924), + [sym_template_string] = STATE(768), + [sym_await] = STATE(924), + [sym_identifier] = ACTIONS(607), + [anon_sym_DOT] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(609), + [anon_sym_COMMA] = ACTIONS(298), + [anon_sym_STAR] = ACTIONS(265), + [anon_sym_print] = ACTIONS(611), + [anon_sym_GT_GT] = ACTIONS(298), + [anon_sym_COLON_EQ] = ACTIONS(613), + [anon_sym_if] = ACTIONS(265), + [anon_sym_async] = ACTIONS(611), + [anon_sym_in] = ACTIONS(265), + [anon_sym_match] = ACTIONS(611), + [anon_sym_PIPE] = ACTIONS(298), + [anon_sym_DASH] = ACTIONS(615), + [anon_sym_PLUS] = ACTIONS(615), + [anon_sym_LBRACK] = ACTIONS(617), + [anon_sym_LBRACE] = ACTIONS(619), + [anon_sym_RBRACE] = ACTIONS(298), + [anon_sym_STAR_STAR] = ACTIONS(298), + [anon_sym_EQ] = ACTIONS(265), + [anon_sym_exec] = ACTIONS(611), + [anon_sym_type] = ACTIONS(611), + [anon_sym_AT] = ACTIONS(298), + [anon_sym_not] = ACTIONS(265), + [anon_sym_and] = ACTIONS(265), + [anon_sym_or] = ACTIONS(265), + [anon_sym_SLASH] = ACTIONS(265), + [anon_sym_PERCENT] = ACTIONS(298), + [anon_sym_SLASH_SLASH] = ACTIONS(298), + [anon_sym_AMP] = ACTIONS(298), + [anon_sym_CARET] = ACTIONS(298), + [anon_sym_LT_LT] = ACTIONS(298), + [anon_sym_TILDE] = ACTIONS(615), + [anon_sym_LT] = ACTIONS(265), + [anon_sym_LT_EQ] = ACTIONS(298), + [anon_sym_EQ_EQ] = ACTIONS(298), + [anon_sym_BANG_EQ] = ACTIONS(298), + [anon_sym_GT_EQ] = ACTIONS(298), + [anon_sym_GT] = ACTIONS(265), + [anon_sym_LT_GT] = ACTIONS(298), + [anon_sym_is] = ACTIONS(265), + [sym_ellipsis] = ACTIONS(621), + [anon_sym_COLON2] = ACTIONS(298), + [sym_type_conversion] = ACTIONS(298), + [sym_integer] = ACTIONS(607), + [sym_float] = ACTIONS(621), + [anon_sym_await] = ACTIONS(623), + [sym_true] = ACTIONS(607), + [sym_false] = ACTIONS(607), + [sym_none] = ACTIONS(607), + [sym_comment] = ACTIONS(3), + [sym__string_start] = ACTIONS(625), + [sym__template_string_start] = ACTIONS(627), + }, + [STATE(142)] = { + [sym_primary_expression] = STATE(735), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(578), @@ -22710,74 +23189,74 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [142] = { - [sym_primary_expression] = STATE(669), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(143)] = { + [sym_primary_expression] = STATE(760), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(578), - [anon_sym_RPAREN] = ACTIONS(593), - [anon_sym_COMMA] = ACTIONS(593), + [anon_sym_LPAREN] = ACTIONS(597), + [anon_sym_RPAREN] = ACTIONS(298), + [anon_sym_COMMA] = ACTIONS(298), + [anon_sym_as] = ACTIONS(265), [anon_sym_STAR] = ACTIONS(265), [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(593), + [anon_sym_GT_GT] = ACTIONS(298), + [anon_sym_if] = ACTIONS(265), [anon_sym_async] = ACTIONS(583), - [anon_sym_in] = ACTIONS(587), + [anon_sym_for] = ACTIONS(265), + [anon_sym_in] = ACTIONS(265), [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(265), - [anon_sym_DASH] = ACTIONS(589), - [anon_sym_PLUS] = ACTIONS(589), - [anon_sym_LBRACK] = ACTIONS(591), - [anon_sym_RBRACK] = ACTIONS(593), + [anon_sym_PIPE] = ACTIONS(298), + [anon_sym_DASH] = ACTIONS(601), + [anon_sym_PLUS] = ACTIONS(601), + [anon_sym_LBRACK] = ACTIONS(603), + [anon_sym_RBRACK] = ACTIONS(298), [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_STAR_STAR] = ACTIONS(265), - [anon_sym_EQ] = ACTIONS(593), + [anon_sym_RBRACE] = ACTIONS(298), + [anon_sym_STAR_STAR] = ACTIONS(298), [anon_sym_exec] = ACTIONS(583), [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(265), + [anon_sym_AT] = ACTIONS(298), + [anon_sym_not] = ACTIONS(265), + [anon_sym_and] = ACTIONS(265), + [anon_sym_or] = ACTIONS(265), [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(265), - [anon_sym_SLASH_SLASH] = ACTIONS(265), - [anon_sym_AMP] = ACTIONS(265), - [anon_sym_CARET] = ACTIONS(265), - [anon_sym_LT_LT] = ACTIONS(265), - [anon_sym_TILDE] = ACTIONS(296), - [anon_sym_PLUS_EQ] = ACTIONS(593), - [anon_sym_DASH_EQ] = ACTIONS(593), - [anon_sym_STAR_EQ] = ACTIONS(593), - [anon_sym_SLASH_EQ] = ACTIONS(593), - [anon_sym_AT_EQ] = ACTIONS(593), - [anon_sym_SLASH_SLASH_EQ] = ACTIONS(593), - [anon_sym_PERCENT_EQ] = ACTIONS(593), - [anon_sym_STAR_STAR_EQ] = ACTIONS(593), - [anon_sym_GT_GT_EQ] = ACTIONS(593), - [anon_sym_LT_LT_EQ] = ACTIONS(593), - [anon_sym_AMP_EQ] = ACTIONS(593), - [anon_sym_CARET_EQ] = ACTIONS(593), - [anon_sym_PIPE_EQ] = ACTIONS(593), + [anon_sym_PERCENT] = ACTIONS(298), + [anon_sym_SLASH_SLASH] = ACTIONS(298), + [anon_sym_AMP] = ACTIONS(298), + [anon_sym_CARET] = ACTIONS(298), + [anon_sym_LT_LT] = ACTIONS(298), + [anon_sym_TILDE] = ACTIONS(601), + [anon_sym_LT] = ACTIONS(265), + [anon_sym_LT_EQ] = ACTIONS(298), + [anon_sym_EQ_EQ] = ACTIONS(298), + [anon_sym_BANG_EQ] = ACTIONS(298), + [anon_sym_GT_EQ] = ACTIONS(298), + [anon_sym_GT] = ACTIONS(265), + [anon_sym_LT_GT] = ACTIONS(298), + [anon_sym_is] = ACTIONS(265), [sym_ellipsis] = ACTIONS(304), [sym_integer] = ACTIONS(306), [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(595), + [anon_sym_await] = ACTIONS(605), [sym_true] = ACTIONS(306), [sym_false] = ACTIONS(306), [sym_none] = ACTIONS(306), @@ -22785,39 +23264,109 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [143] = { - [sym_primary_expression] = STATE(748), - [sym_binary_operator] = STATE(809), - [sym_unary_operator] = STATE(809), - [sym_attribute] = STATE(809), - [sym_subscript] = STATE(809), - [sym_call] = STATE(809), - [sym_list] = STATE(809), - [sym_set] = STATE(809), - [sym_tuple] = STATE(809), - [sym_dictionary] = STATE(809), - [sym_list_comprehension] = STATE(809), - [sym_dictionary_comprehension] = STATE(809), - [sym_set_comprehension] = STATE(809), - [sym_generator_expression] = STATE(809), - [sym_parenthesized_expression] = STATE(809), - [sym_concatenated_string] = STATE(809), - [sym_string] = STATE(720), - [sym_concatenated_template_string] = STATE(809), - [sym_template_string] = STATE(722), - [sym_await] = STATE(809), - [sym_identifier] = ACTIONS(607), + [STATE(144)] = { + [sym_primary_expression] = STATE(848), + [sym_binary_operator] = STATE(953), + [sym_unary_operator] = STATE(953), + [sym_attribute] = STATE(953), + [sym_subscript] = STATE(953), + [sym_call] = STATE(953), + [sym_list] = STATE(953), + [sym_set] = STATE(953), + [sym_tuple] = STATE(953), + [sym_dictionary] = STATE(953), + [sym_list_comprehension] = STATE(953), + [sym_dictionary_comprehension] = STATE(953), + [sym_set_comprehension] = STATE(953), + [sym_generator_expression] = STATE(953), + [sym_parenthesized_expression] = STATE(953), + [sym_concatenated_string] = STATE(953), + [sym_string] = STATE(794), + [sym_concatenated_template_string] = STATE(953), + [sym_template_string] = STATE(795), + [sym_await] = STATE(953), + [sym_identifier] = ACTIONS(629), [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(609), + [anon_sym_LPAREN] = ACTIONS(631), [anon_sym_RPAREN] = ACTIONS(298), [anon_sym_COMMA] = ACTIONS(298), [anon_sym_as] = ACTIONS(265), [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(611), + [anon_sym_print] = ACTIONS(633), [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_COLON_EQ] = ACTIONS(613), + [anon_sym_COLON_EQ] = ACTIONS(635), [anon_sym_if] = ACTIONS(265), [anon_sym_COLON] = ACTIONS(265), + [anon_sym_async] = ACTIONS(633), + [anon_sym_in] = ACTIONS(265), + [anon_sym_match] = ACTIONS(633), + [anon_sym_PIPE] = ACTIONS(298), + [anon_sym_DASH] = ACTIONS(637), + [anon_sym_PLUS] = ACTIONS(637), + [anon_sym_LBRACK] = ACTIONS(639), + [anon_sym_LBRACE] = ACTIONS(641), + [anon_sym_STAR_STAR] = ACTIONS(298), + [anon_sym_exec] = ACTIONS(633), + [anon_sym_type] = ACTIONS(633), + [anon_sym_AT] = ACTIONS(298), + [anon_sym_not] = ACTIONS(265), + [anon_sym_and] = ACTIONS(265), + [anon_sym_or] = ACTIONS(265), + [anon_sym_SLASH] = ACTIONS(265), + [anon_sym_PERCENT] = ACTIONS(298), + [anon_sym_SLASH_SLASH] = ACTIONS(298), + [anon_sym_AMP] = ACTIONS(298), + [anon_sym_CARET] = ACTIONS(298), + [anon_sym_LT_LT] = ACTIONS(298), + [anon_sym_TILDE] = ACTIONS(637), + [anon_sym_LT] = ACTIONS(265), + [anon_sym_LT_EQ] = ACTIONS(298), + [anon_sym_EQ_EQ] = ACTIONS(298), + [anon_sym_BANG_EQ] = ACTIONS(298), + [anon_sym_GT_EQ] = ACTIONS(298), + [anon_sym_GT] = ACTIONS(265), + [anon_sym_LT_GT] = ACTIONS(298), + [anon_sym_is] = ACTIONS(265), + [sym_ellipsis] = ACTIONS(643), + [sym_integer] = ACTIONS(629), + [sym_float] = ACTIONS(643), + [anon_sym_await] = ACTIONS(645), + [sym_true] = ACTIONS(629), + [sym_false] = ACTIONS(629), + [sym_none] = ACTIONS(629), + [sym_comment] = ACTIONS(3), + [sym__string_start] = ACTIONS(647), + [sym__template_string_start] = ACTIONS(649), + }, + [STATE(145)] = { + [sym_primary_expression] = STATE(785), + [sym_binary_operator] = STATE(924), + [sym_unary_operator] = STATE(924), + [sym_attribute] = STATE(924), + [sym_subscript] = STATE(924), + [sym_call] = STATE(924), + [sym_list] = STATE(924), + [sym_set] = STATE(924), + [sym_tuple] = STATE(924), + [sym_dictionary] = STATE(924), + [sym_list_comprehension] = STATE(924), + [sym_dictionary_comprehension] = STATE(924), + [sym_set_comprehension] = STATE(924), + [sym_generator_expression] = STATE(924), + [sym_parenthesized_expression] = STATE(924), + [sym_concatenated_string] = STATE(924), + [sym_string] = STATE(767), + [sym_concatenated_template_string] = STATE(924), + [sym_template_string] = STATE(768), + [sym_await] = STATE(924), + [sym_identifier] = ACTIONS(607), + [anon_sym_DOT] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(609), + [anon_sym_COMMA] = ACTIONS(298), + [anon_sym_STAR] = ACTIONS(265), + [anon_sym_print] = ACTIONS(611), + [anon_sym_GT_GT] = ACTIONS(298), + [anon_sym_if] = ACTIONS(265), [anon_sym_async] = ACTIONS(611), [anon_sym_in] = ACTIONS(265), [anon_sym_match] = ACTIONS(611), @@ -22826,7 +23375,9 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_PLUS] = ACTIONS(615), [anon_sym_LBRACK] = ACTIONS(617), [anon_sym_LBRACE] = ACTIONS(619), + [anon_sym_RBRACE] = ACTIONS(298), [anon_sym_STAR_STAR] = ACTIONS(298), + [anon_sym_EQ] = ACTIONS(265), [anon_sym_exec] = ACTIONS(611), [anon_sym_type] = ACTIONS(611), [anon_sym_AT] = ACTIONS(298), @@ -22849,6 +23400,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LT_GT] = ACTIONS(298), [anon_sym_is] = ACTIONS(265), [sym_ellipsis] = ACTIONS(621), + [anon_sym_COLON2] = ACTIONS(298), + [sym_type_conversion] = ACTIONS(298), [sym_integer] = ACTIONS(607), [sym_float] = ACTIONS(621), [anon_sym_await] = ACTIONS(623), @@ -22859,27 +23412,27 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(625), [sym__template_string_start] = ACTIONS(627), }, - [144] = { - [sym_primary_expression] = STATE(675), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(146)] = { + [sym_primary_expression] = STATE(760), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(597), @@ -22900,7 +23453,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LBRACK] = ACTIONS(603), [anon_sym_LBRACE] = ACTIONS(288), [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_EQ] = ACTIONS(629), + [anon_sym_EQ] = ACTIONS(651), [anon_sym_exec] = ACTIONS(583), [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(298), @@ -22933,48 +23486,50 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [145] = { - [sym_primary_expression] = STATE(711), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_attribute] = STATE(760), - [sym_subscript] = STATE(760), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [sym_identifier] = ACTIONS(77), + [STATE(147)] = { + [sym_primary_expression] = STATE(790), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), + [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), - [anon_sym_from] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(568), + [anon_sym_LPAREN] = ACTIONS(653), [anon_sym_COMMA] = ACTIONS(298), [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(570), + [anon_sym_print] = ACTIONS(583), [anon_sym_GT_GT] = ACTIONS(298), + [anon_sym_COLON_EQ] = ACTIONS(655), [anon_sym_if] = ACTIONS(265), - [anon_sym_async] = ACTIONS(570), + [anon_sym_COLON] = ACTIONS(265), + [anon_sym_async] = ACTIONS(583), + [anon_sym_for] = ACTIONS(265), [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(570), + [anon_sym_match] = ACTIONS(583), [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(574), - [anon_sym_LBRACE] = ACTIONS(51), + [anon_sym_DASH] = ACTIONS(657), + [anon_sym_PLUS] = ACTIONS(657), + [anon_sym_LBRACK] = ACTIONS(659), + [anon_sym_LBRACE] = ACTIONS(288), + [anon_sym_RBRACE] = ACTIONS(298), [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_EQ] = ACTIONS(265), - [anon_sym_exec] = ACTIONS(570), - [anon_sym_type] = ACTIONS(570), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(298), [anon_sym_not] = ACTIONS(265), [anon_sym_and] = ACTIONS(265), @@ -22985,7 +23540,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_AMP] = ACTIONS(298), [anon_sym_CARET] = ACTIONS(298), [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(47), + [anon_sym_TILDE] = ACTIONS(657), [anon_sym_LT] = ACTIONS(265), [anon_sym_LT_EQ] = ACTIONS(298), [anon_sym_EQ_EQ] = ACTIONS(298), @@ -22994,40 +23549,38 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_GT] = ACTIONS(265), [anon_sym_LT_GT] = ACTIONS(298), [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(576), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [sym_ellipsis] = ACTIONS(304), + [sym_integer] = ACTIONS(306), + [sym_float] = ACTIONS(304), + [anon_sym_await] = ACTIONS(661), + [sym_true] = ACTIONS(306), + [sym_false] = ACTIONS(306), + [sym_none] = ACTIONS(306), [sym_comment] = ACTIONS(3), - [sym__semicolon] = ACTIONS(298), - [sym__newline] = ACTIONS(298), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__string_start] = ACTIONS(310), + [sym__template_string_start] = ACTIONS(312), }, - [146] = { - [sym_primary_expression] = STATE(675), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(148)] = { + [sym_primary_expression] = STATE(760), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(597), @@ -23081,49 +23634,123 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [147] = { - [sym_primary_expression] = STATE(748), - [sym_binary_operator] = STATE(809), - [sym_unary_operator] = STATE(809), - [sym_attribute] = STATE(809), - [sym_subscript] = STATE(809), - [sym_call] = STATE(809), - [sym_list] = STATE(809), - [sym_set] = STATE(809), - [sym_tuple] = STATE(809), - [sym_dictionary] = STATE(809), - [sym_list_comprehension] = STATE(809), - [sym_dictionary_comprehension] = STATE(809), - [sym_set_comprehension] = STATE(809), - [sym_generator_expression] = STATE(809), - [sym_parenthesized_expression] = STATE(809), - [sym_concatenated_string] = STATE(809), - [sym_string] = STATE(720), - [sym_concatenated_template_string] = STATE(809), - [sym_template_string] = STATE(722), - [sym_await] = STATE(809), - [sym_identifier] = ACTIONS(607), + [STATE(149)] = { + [sym_primary_expression] = STATE(810), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_attribute] = STATE(908), + [sym_subscript] = STATE(908), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [sym_identifier] = ACTIONS(77), [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(609), + [anon_sym_from] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(568), + [anon_sym_COMMA] = ACTIONS(298), + [anon_sym_STAR] = ACTIONS(265), + [anon_sym_print] = ACTIONS(570), + [anon_sym_GT_GT] = ACTIONS(298), + [anon_sym_if] = ACTIONS(265), + [anon_sym_async] = ACTIONS(570), + [anon_sym_in] = ACTIONS(265), + [anon_sym_match] = ACTIONS(570), + [anon_sym_PIPE] = ACTIONS(298), + [anon_sym_DASH] = ACTIONS(47), + [anon_sym_PLUS] = ACTIONS(47), + [anon_sym_LBRACK] = ACTIONS(574), + [anon_sym_LBRACE] = ACTIONS(51), + [anon_sym_STAR_STAR] = ACTIONS(298), + [anon_sym_EQ] = ACTIONS(265), + [anon_sym_exec] = ACTIONS(570), + [anon_sym_type] = ACTIONS(570), + [anon_sym_AT] = ACTIONS(298), + [anon_sym_not] = ACTIONS(265), + [anon_sym_and] = ACTIONS(265), + [anon_sym_or] = ACTIONS(265), + [anon_sym_SLASH] = ACTIONS(265), + [anon_sym_PERCENT] = ACTIONS(298), + [anon_sym_SLASH_SLASH] = ACTIONS(298), + [anon_sym_AMP] = ACTIONS(298), + [anon_sym_CARET] = ACTIONS(298), + [anon_sym_LT_LT] = ACTIONS(298), + [anon_sym_TILDE] = ACTIONS(47), + [anon_sym_LT] = ACTIONS(265), + [anon_sym_LT_EQ] = ACTIONS(298), + [anon_sym_EQ_EQ] = ACTIONS(298), + [anon_sym_BANG_EQ] = ACTIONS(298), + [anon_sym_GT_EQ] = ACTIONS(298), + [anon_sym_GT] = ACTIONS(265), + [anon_sym_LT_GT] = ACTIONS(298), + [anon_sym_is] = ACTIONS(265), + [sym_ellipsis] = ACTIONS(75), + [sym_integer] = ACTIONS(77), + [sym_float] = ACTIONS(75), + [anon_sym_await] = ACTIONS(576), + [sym_true] = ACTIONS(77), + [sym_false] = ACTIONS(77), + [sym_none] = ACTIONS(77), + [sym_comment] = ACTIONS(3), + [anon_sym_SEMI] = ACTIONS(298), + [sym__newline] = ACTIONS(298), + [sym__string_start] = ACTIONS(81), + [sym__template_string_start] = ACTIONS(83), + }, + [STATE(150)] = { + [sym_primary_expression] = STATE(848), + [sym_binary_operator] = STATE(953), + [sym_unary_operator] = STATE(953), + [sym_attribute] = STATE(953), + [sym_subscript] = STATE(953), + [sym_call] = STATE(953), + [sym_list] = STATE(953), + [sym_set] = STATE(953), + [sym_tuple] = STATE(953), + [sym_dictionary] = STATE(953), + [sym_list_comprehension] = STATE(953), + [sym_dictionary_comprehension] = STATE(953), + [sym_set_comprehension] = STATE(953), + [sym_generator_expression] = STATE(953), + [sym_parenthesized_expression] = STATE(953), + [sym_concatenated_string] = STATE(953), + [sym_string] = STATE(794), + [sym_concatenated_template_string] = STATE(953), + [sym_template_string] = STATE(795), + [sym_await] = STATE(953), + [sym_identifier] = ACTIONS(629), + [anon_sym_DOT] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(631), [anon_sym_RPAREN] = ACTIONS(298), [anon_sym_COMMA] = ACTIONS(298), [anon_sym_as] = ACTIONS(265), [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(611), + [anon_sym_print] = ACTIONS(633), [anon_sym_GT_GT] = ACTIONS(298), [anon_sym_if] = ACTIONS(265), [anon_sym_COLON] = ACTIONS(298), - [anon_sym_async] = ACTIONS(611), + [anon_sym_async] = ACTIONS(633), [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(611), + [anon_sym_match] = ACTIONS(633), [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(615), - [anon_sym_PLUS] = ACTIONS(615), - [anon_sym_LBRACK] = ACTIONS(617), - [anon_sym_LBRACE] = ACTIONS(619), + [anon_sym_DASH] = ACTIONS(637), + [anon_sym_PLUS] = ACTIONS(637), + [anon_sym_LBRACK] = ACTIONS(639), + [anon_sym_LBRACE] = ACTIONS(641), [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_exec] = ACTIONS(611), - [anon_sym_type] = ACTIONS(611), + [anon_sym_exec] = ACTIONS(633), + [anon_sym_type] = ACTIONS(633), [anon_sym_AT] = ACTIONS(298), [anon_sym_not] = ACTIONS(265), [anon_sym_and] = ACTIONS(265), @@ -23134,7 +23761,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_AMP] = ACTIONS(298), [anon_sym_CARET] = ACTIONS(298), [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(615), + [anon_sym_TILDE] = ACTIONS(637), [anon_sym_LT] = ACTIONS(265), [anon_sym_LT_EQ] = ACTIONS(298), [anon_sym_EQ_EQ] = ACTIONS(298), @@ -23143,38 +23770,38 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_GT] = ACTIONS(265), [anon_sym_LT_GT] = ACTIONS(298), [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(621), - [sym_integer] = ACTIONS(607), - [sym_float] = ACTIONS(621), - [anon_sym_await] = ACTIONS(623), - [sym_true] = ACTIONS(607), - [sym_false] = ACTIONS(607), - [sym_none] = ACTIONS(607), + [sym_ellipsis] = ACTIONS(643), + [sym_integer] = ACTIONS(629), + [sym_float] = ACTIONS(643), + [anon_sym_await] = ACTIONS(645), + [sym_true] = ACTIONS(629), + [sym_false] = ACTIONS(629), + [sym_none] = ACTIONS(629), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(625), - [sym__template_string_start] = ACTIONS(627), + [sym__string_start] = ACTIONS(647), + [sym__template_string_start] = ACTIONS(649), }, - [148] = { - [sym_primary_expression] = STATE(669), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(151)] = { + [sym_primary_expression] = STATE(735), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(578), @@ -23194,7 +23821,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LBRACK] = ACTIONS(591), [anon_sym_LBRACE] = ACTIONS(288), [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_EQ] = ACTIONS(629), + [anon_sym_EQ] = ACTIONS(651), [anon_sym_exec] = ACTIONS(583), [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(298), @@ -23227,59 +23854,132 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [149] = { - [sym_named_expression] = STATE(955), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_expression_list] = STATE(1357), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1026), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1357), - [sym_augmented_assignment] = STATE(1357), - [sym_pattern_list] = STATE(874), - [sym__right_hand_side] = STATE(1357), - [sym_yield] = STATE(1357), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(152)] = { + [sym_primary_expression] = STATE(790), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), + [sym_identifier] = ACTIONS(306), + [anon_sym_DOT] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(653), + [anon_sym_COMMA] = ACTIONS(298), + [anon_sym_STAR] = ACTIONS(265), + [anon_sym_print] = ACTIONS(583), + [anon_sym_GT_GT] = ACTIONS(298), + [anon_sym_if] = ACTIONS(265), + [anon_sym_COLON] = ACTIONS(298), + [anon_sym_async] = ACTIONS(583), + [anon_sym_for] = ACTIONS(265), + [anon_sym_in] = ACTIONS(265), + [anon_sym_match] = ACTIONS(583), + [anon_sym_PIPE] = ACTIONS(298), + [anon_sym_DASH] = ACTIONS(657), + [anon_sym_PLUS] = ACTIONS(657), + [anon_sym_LBRACK] = ACTIONS(659), + [anon_sym_LBRACE] = ACTIONS(288), + [anon_sym_RBRACE] = ACTIONS(298), + [anon_sym_STAR_STAR] = ACTIONS(298), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), + [anon_sym_AT] = ACTIONS(298), + [anon_sym_not] = ACTIONS(265), + [anon_sym_and] = ACTIONS(265), + [anon_sym_or] = ACTIONS(265), + [anon_sym_SLASH] = ACTIONS(265), + [anon_sym_PERCENT] = ACTIONS(298), + [anon_sym_SLASH_SLASH] = ACTIONS(298), + [anon_sym_AMP] = ACTIONS(298), + [anon_sym_CARET] = ACTIONS(298), + [anon_sym_LT_LT] = ACTIONS(298), + [anon_sym_TILDE] = ACTIONS(657), + [anon_sym_LT] = ACTIONS(265), + [anon_sym_LT_EQ] = ACTIONS(298), + [anon_sym_EQ_EQ] = ACTIONS(298), + [anon_sym_BANG_EQ] = ACTIONS(298), + [anon_sym_GT_EQ] = ACTIONS(298), + [anon_sym_GT] = ACTIONS(265), + [anon_sym_LT_GT] = ACTIONS(298), + [anon_sym_is] = ACTIONS(265), + [sym_ellipsis] = ACTIONS(304), + [sym_integer] = ACTIONS(306), + [sym_float] = ACTIONS(304), + [anon_sym_await] = ACTIONS(661), + [sym_true] = ACTIONS(306), + [sym_false] = ACTIONS(306), + [sym_none] = ACTIONS(306), + [sym_comment] = ACTIONS(3), + [sym__string_start] = ACTIONS(310), + [sym__template_string_start] = ACTIONS(312), + }, + [STATE(153)] = { + [sym_named_expression] = STATE(1158), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_expression_list] = STATE(1535), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1213), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1535), + [sym_augmented_assignment] = STATE(1535), + [sym_pattern_list] = STATE(1024), + [sym__right_hand_side] = STATE(1535), + [sym_yield] = STATE(1535), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_LPAREN] = ACTIONS(13), [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(314), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_print] = ACTIONS(322), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_exec] = ACTIONS(314), - [anon_sym_type] = ACTIONS(314), + [anon_sym_exec] = ACTIONS(322), + [anon_sym_type] = ACTIONS(322), [anon_sym_not] = ACTIONS(69), [anon_sym_TILDE] = ACTIONS(47), [anon_sym_lambda] = ACTIONS(71), @@ -23295,59 +23995,59 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [150] = { - [sym_named_expression] = STATE(955), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_expression_list] = STATE(1356), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1026), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1356), - [sym_augmented_assignment] = STATE(1356), - [sym_pattern_list] = STATE(874), - [sym__right_hand_side] = STATE(1356), - [sym_yield] = STATE(1356), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(154)] = { + [sym_named_expression] = STATE(1158), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_expression_list] = STATE(1518), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1213), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1518), + [sym_augmented_assignment] = STATE(1518), + [sym_pattern_list] = STATE(1024), + [sym__right_hand_side] = STATE(1518), + [sym_yield] = STATE(1518), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_LPAREN] = ACTIONS(13), [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(314), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_print] = ACTIONS(322), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_exec] = ACTIONS(314), - [anon_sym_type] = ACTIONS(314), + [anon_sym_exec] = ACTIONS(322), + [anon_sym_type] = ACTIONS(322), [anon_sym_not] = ACTIONS(69), [anon_sym_TILDE] = ACTIONS(47), [anon_sym_lambda] = ACTIONS(71), @@ -23363,59 +24063,59 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [151] = { - [sym_named_expression] = STATE(955), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_expression_list] = STATE(1365), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1026), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1365), - [sym_augmented_assignment] = STATE(1365), - [sym_pattern_list] = STATE(874), - [sym__right_hand_side] = STATE(1365), - [sym_yield] = STATE(1365), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(155)] = { + [sym_named_expression] = STATE(1158), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_expression_list] = STATE(1530), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1213), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1530), + [sym_augmented_assignment] = STATE(1530), + [sym_pattern_list] = STATE(1024), + [sym__right_hand_side] = STATE(1530), + [sym_yield] = STATE(1530), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_LPAREN] = ACTIONS(13), [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(314), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_print] = ACTIONS(322), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_exec] = ACTIONS(314), - [anon_sym_type] = ACTIONS(314), + [anon_sym_exec] = ACTIONS(322), + [anon_sym_type] = ACTIONS(322), [anon_sym_not] = ACTIONS(69), [anon_sym_TILDE] = ACTIONS(47), [anon_sym_lambda] = ACTIONS(71), @@ -23434,84 +24134,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { }; static const uint16_t ts_small_parse_table[] = { - [0] = 26, + [0] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, + ACTIONS(296), 1, + anon_sym_TILDE, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(631), 1, - anon_sym_from, - ACTIONS(635), 1, + ACTIONS(667), 1, anon_sym_STAR, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, + ACTIONS(673), 1, + anon_sym_in, + ACTIONS(675), 1, + anon_sym_LBRACK, + ACTIONS(677), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(1005), 1, + sym_pattern, + STATE(1012), 1, sym_primary_expression, - STATE(885), 1, - sym_expression, - STATE(1001), 1, - sym_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1375), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(589), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, + STATE(849), 2, + sym_attribute, + sym_subscript, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(669), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - ACTIONS(633), 7, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(671), 15, anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_EQ, - sym_type_conversion, - STATE(649), 17, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + STATE(724), 15, sym_binary_operator, sym_unary_operator, - sym_attribute, - sym_subscript, sym_call, sym_list, sym_set, @@ -23525,7 +24221,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [117] = 30, + [110] = 29, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -23534,76 +24230,75 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(639), 1, + ACTIONS(679), 1, sym_identifier, - ACTIONS(641), 1, + ACTIONS(681), 1, anon_sym_LPAREN, - ACTIONS(643), 1, - anon_sym_RPAREN, - ACTIONS(645), 1, + ACTIONS(683), 1, anon_sym_STAR, - ACTIONS(649), 1, + ACTIONS(687), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(689), 1, + anon_sym_RBRACK, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(657), 1, + ACTIONS(697), 1, anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(935), 1, + STATE(1083), 1, sym_expression, - STATE(1177), 1, + STATE(1356), 1, sym_pattern, - STATE(1197), 1, - sym_yield, - STATE(1409), 1, - sym__collection_elements, - STATE(1416), 1, + STATE(1628), 1, sym__patterns, + STATE(1633), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(770), 2, + STATE(915), 2, sym_attribute, sym_subscript, - STATE(1095), 2, - sym_list_splat, - sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(647), 5, + ACTIONS(685), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 15, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -23619,64 +24314,47 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [241] = 31, + [232] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(296), 1, + anon_sym_TILDE, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(639), 1, + ACTIONS(663), 1, sym_identifier, - ACTIONS(641), 1, + ACTIONS(665), 1, anon_sym_LPAREN, - ACTIONS(645), 1, + ACTIONS(667), 1, anon_sym_STAR, - ACTIONS(649), 1, + ACTIONS(675), 1, anon_sym_LBRACK, - ACTIONS(651), 1, - anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(657), 1, + ACTIONS(677), 1, anon_sym_await, - ACTIONS(659), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(701), 1, + anon_sym_in, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(930), 1, - sym_expression, - STATE(1177), 1, + STATE(1005), 1, sym_pattern, - STATE(1218), 1, - sym_yield, - STATE(1303), 1, - sym_parenthesized_list_splat, - STATE(1304), 1, - sym_list_splat, - STATE(1416), 1, - sym__patterns, - STATE(1480), 1, - sym__collection_elements, + STATE(1012), 1, + sym_primary_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(770), 2, - sym_attribute, - sym_subscript, - ACTIONS(601), 3, + ACTIONS(589), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, + STATE(849), 2, + sym_attribute, + sym_subscript, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, @@ -23685,20 +24363,29 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(647), 5, + ACTIONS(669), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 15, + ACTIONS(699), 15, + anon_sym_COLON, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -23714,7 +24401,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [367] = 29, + [342] = 30, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -23723,75 +24410,76 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(639), 1, + ACTIONS(679), 1, sym_identifier, - ACTIONS(641), 1, + ACTIONS(681), 1, anon_sym_LPAREN, - ACTIONS(645), 1, + ACTIONS(683), 1, anon_sym_STAR, - ACTIONS(649), 1, + ACTIONS(687), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(657), 1, + ACTIONS(697), 1, anon_sym_await, - ACTIONS(661), 1, - anon_sym_RBRACK, - STATE(569), 1, + ACTIONS(703), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(908), 1, + STATE(1066), 1, sym_expression, - STATE(1177), 1, + STATE(1356), 1, sym_pattern, - STATE(1434), 1, - sym__patterns, - STATE(1438), 1, + STATE(1383), 1, + sym_yield, + STATE(1615), 1, sym__collection_elements, + STATE(1643), 1, + sym__patterns, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(770), 2, + STATE(915), 2, sym_attribute, sym_subscript, + STATE(1257), 2, + sym_list_splat, + sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(647), 5, + ACTIONS(685), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 15, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -23807,7 +24495,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [489] = 30, + [466] = 29, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -23816,76 +24504,75 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(639), 1, + ACTIONS(679), 1, sym_identifier, - ACTIONS(641), 1, + ACTIONS(681), 1, anon_sym_LPAREN, - ACTIONS(645), 1, + ACTIONS(683), 1, anon_sym_STAR, - ACTIONS(649), 1, + ACTIONS(687), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(657), 1, + ACTIONS(697), 1, anon_sym_await, - ACTIONS(663), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(705), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(930), 1, + STATE(1081), 1, sym_expression, - STATE(1177), 1, + STATE(1356), 1, sym_pattern, - STATE(1218), 1, - sym_yield, - STATE(1416), 1, + STATE(1628), 1, sym__patterns, - STATE(1480), 1, + STATE(1656), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(770), 2, + STATE(915), 2, sym_attribute, sym_subscript, - STATE(1095), 2, - sym_list_splat, - sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(647), 5, + ACTIONS(685), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 15, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -23901,7 +24588,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [613] = 29, + [588] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -23910,75 +24597,77 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(639), 1, + ACTIONS(679), 1, sym_identifier, - ACTIONS(641), 1, + ACTIONS(681), 1, anon_sym_LPAREN, - ACTIONS(645), 1, + ACTIONS(683), 1, anon_sym_STAR, - ACTIONS(649), 1, + ACTIONS(687), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(657), 1, + ACTIONS(697), 1, anon_sym_await, - ACTIONS(665), 1, - anon_sym_RBRACK, - STATE(569), 1, + ACTIONS(707), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(912), 1, + STATE(1066), 1, sym_expression, - STATE(1177), 1, + STATE(1356), 1, sym_pattern, - STATE(1390), 1, + STATE(1383), 1, + sym_yield, + STATE(1440), 1, + sym_parenthesized_list_splat, + STATE(1474), 1, + sym_list_splat, + STATE(1615), 1, sym__collection_elements, - STATE(1434), 1, + STATE(1643), 1, sym__patterns, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(770), 2, + STATE(915), 2, sym_attribute, sym_subscript, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(647), 5, + ACTIONS(685), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 15, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -23994,47 +24683,63 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [735] = 23, + [714] = 30, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(296), 1, - anon_sym_TILDE, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(667), 1, + ACTIONS(679), 1, sym_identifier, - ACTIONS(669), 1, + ACTIONS(681), 1, anon_sym_LPAREN, - ACTIONS(671), 1, + ACTIONS(683), 1, anon_sym_STAR, - ACTIONS(677), 1, - anon_sym_in, - ACTIONS(679), 1, + ACTIONS(687), 1, anon_sym_LBRACK, - ACTIONS(681), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(697), 1, anon_sym_await, - STATE(569), 1, + ACTIONS(709), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(854), 1, - sym_pattern, - STATE(862), 1, + STATE(725), 1, sym_primary_expression, + STATE(1084), 1, + sym_expression, + STATE(1356), 1, + sym_pattern, + STATE(1489), 1, + sym_yield, + STATE(1626), 1, + sym__collection_elements, + STATE(1643), 1, + sym__patterns, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(589), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(735), 2, + STATE(915), 2, sym_attribute, sym_subscript, - STATE(853), 3, + STATE(1257), 2, + sym_list_splat, + sym_parenthesized_list_splat, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, @@ -24043,29 +24748,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(673), 5, + ACTIONS(685), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - ACTIONS(675), 15, - anon_sym_COLON, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - STATE(649), 15, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24081,7 +24777,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [845] = 29, + [838] = 29, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -24090,53 +24786,53 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(639), 1, + ACTIONS(679), 1, sym_identifier, - ACTIONS(641), 1, + ACTIONS(681), 1, anon_sym_LPAREN, - ACTIONS(645), 1, + ACTIONS(683), 1, anon_sym_STAR, - ACTIONS(649), 1, + ACTIONS(687), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(657), 1, + ACTIONS(697), 1, anon_sym_await, - ACTIONS(683), 1, + ACTIONS(711), 1, anon_sym_RBRACK, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(912), 1, + STATE(1081), 1, sym_expression, - STATE(1177), 1, + STATE(1356), 1, sym_pattern, - STATE(1390), 1, - sym__collection_elements, - STATE(1434), 1, + STATE(1628), 1, sym__patterns, + STATE(1656), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(770), 2, + STATE(915), 2, sym_attribute, sym_subscript, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - STATE(1095), 3, + STATE(1257), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, @@ -24145,20 +24841,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(647), 5, + ACTIONS(685), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 15, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24174,80 +24870,85 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [967] = 23, + [960] = 29, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(296), 1, - anon_sym_TILDE, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(667), 1, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(713), 1, sym_identifier, - ACTIONS(669), 1, + ACTIONS(715), 1, anon_sym_LPAREN, - ACTIONS(671), 1, + ACTIONS(717), 1, + anon_sym_COMMA, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, + ACTIONS(723), 1, + anon_sym_RBRACE, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, anon_sym_await, - ACTIONS(687), 1, - anon_sym_in, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(854), 1, - sym_pattern, - STATE(862), 1, + STATE(772), 1, sym_primary_expression, + STATE(1046), 1, + sym_expression, + STATE(1212), 1, + sym_pair, + STATE(1490), 1, + sym_dictionary_splat, + STATE(1705), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(589), 2, + ACTIONS(657), 3, anon_sym_DASH, anon_sym_PLUS, - STATE(735), 2, - sym_attribute, - sym_subscript, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, + anon_sym_TILDE, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(673), 5, + ACTIONS(721), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - ACTIONS(685), 15, - anon_sym_COLON, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - STATE(649), 15, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -24261,7 +24962,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1077] = 29, + [1081] = 29, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -24272,48 +24973,48 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(659), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(651), 1, - anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(689), 1, + ACTIONS(713), 1, sym_identifier, - ACTIONS(691), 1, + ACTIONS(715), 1, anon_sym_LPAREN, - ACTIONS(693), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + ACTIONS(731), 1, anon_sym_COMMA, - ACTIONS(697), 1, + ACTIONS(733), 1, anon_sym_RBRACE, - ACTIONS(699), 1, - anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(772), 1, sym_primary_expression, - STATE(905), 1, + STATE(1061), 1, sym_expression, - STATE(1017), 1, + STATE(1190), 1, sym_pair, - STATE(1259), 1, + STATE(1403), 1, sym_dictionary_splat, - STATE(1456), 1, + STATE(1687), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(657), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1095), 3, + STATE(1257), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, @@ -24322,20 +25023,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(721), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24353,76 +25054,81 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1198] = 24, + [1202] = 29, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(659), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(715), 1, + anon_sym_LPAREN, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(725), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + ACTIONS(735), 1, + anon_sym_COMMA, + ACTIONS(737), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(772), 1, sym_primary_expression, - STATE(931), 1, + STATE(1060), 1, sym_expression, + STATE(1170), 1, + sym_pair, + STATE(1410), 1, + sym_dictionary_splat, + STATE(1600), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1010), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(657), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(721), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - ACTIONS(701), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24440,7 +25146,99 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1309] = 24, + [1323] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(715), 1, + anon_sym_LPAREN, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + ACTIONS(739), 1, + anon_sym_COMMA, + ACTIONS(741), 1, + anon_sym_RBRACE, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1034), 1, + sym_expression, + STATE(1198), 1, + sym_pair, + STATE(1425), 1, + sym_dictionary_splat, + STATE(1602), 1, + sym__collection_elements, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [1444] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -24461,22 +25259,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(743), 1, + anon_sym_from, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(931), 1, + STATE(1148), 1, sym_expression, + STATE(1196), 1, + sym_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1010), 2, + STATE(1510), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(296), 3, @@ -24488,28 +25290,25 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, + ACTIONS(745), 4, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_RBRACE, ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - ACTIONS(703), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24527,81 +25326,77 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1420] = 29, + [1558] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(651), 1, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(751), 1, + anon_sym_from, + ACTIONS(755), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(757), 1, anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(759), 1, anon_sym_await, - ACTIONS(705), 1, - anon_sym_COMMA, - ACTIONS(707), 1, - anon_sym_RBRACE, - STATE(569), 1, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(887), 1, + STATE(1093), 1, sym_expression, - STATE(1006), 1, - sym_pair, - STATE(1215), 1, - sym_dictionary_splat, - STATE(1396), 1, - sym__collection_elements, - ACTIONS(304), 2, + STATE(1196), 1, + sym_expression_list, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(1567), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, - ACTIONS(306), 4, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(745), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24619,7 +25414,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1541] = 24, + [1672] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -24640,22 +25435,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(931), 1, + STATE(1117), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1010), 2, + STATE(1267), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(296), 3, @@ -24673,22 +25468,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + ACTIONS(761), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - ACTIONS(703), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24706,81 +25499,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1652] = 29, + [1781] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(709), 1, - anon_sym_COMMA, - ACTIONS(711), 1, - anon_sym_RBRACE, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(886), 1, + STATE(1117), 1, sym_expression, - STATE(1025), 1, - sym_pair, - STATE(1225), 1, - sym_dictionary_splat, - STATE(1387), 1, - sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(1267), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + ACTIONS(763), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24798,9 +25584,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1773] = 24, + [1890] = 24, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -24813,39 +25601,32 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(717), 1, + ACTIONS(719), 1, anon_sym_STAR, - STATE(569), 1, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(992), 1, + STATE(1117), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1267), 2, + sym_list_splat, + sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(715), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - STATE(1118), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, @@ -24857,14 +25638,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + ACTIONS(763), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24882,75 +25669,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1881] = 26, + [1999] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(651), 1, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(757), 1, anon_sym_lambda, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(719), 1, - sym_identifier, - ACTIONS(721), 1, - anon_sym_RPAREN, - ACTIONS(723), 1, - anon_sym_COMMA, - ACTIONS(727), 1, + ACTIONS(759), 1, anon_sym_await, - STATE(569), 1, + ACTIONS(765), 1, + anon_sym_yield, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(911), 1, + STATE(1095), 1, sym_expression, - STATE(1261), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(1567), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1260), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + STATE(1265), 3, + sym_expression_list, + sym_yield, + sym__f_expression, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(725), 5, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24968,76 +25754,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1993] = 27, + [2109] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(69), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(689), 1, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(314), 1, sym_identifier, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(320), 1, anon_sym_await, - ACTIONS(717), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(729), 1, - anon_sym_RPAREN, - STATE(569), 1, - sym_string, - STATE(570), 1, + ACTIONS(767), 1, + anon_sym_from, + STATE(763), 1, sym_template_string, - STATE(653), 1, + STATE(779), 1, sym_primary_expression, - STATE(903), 1, + STATE(782), 1, + sym_string, + STATE(1202), 1, sym_expression, - STATE(1220), 1, - sym_yield, - STATE(1274), 1, - sym_with_item, - STATE(1391), 1, - sym__collection_elements, - ACTIONS(304), 2, + STATE(1537), 1, + sym_expression_list, + ACTIONS(75), 2, sym_ellipsis, sym_float, - STATE(1095), 2, + ACTIONS(745), 2, + sym__newline, + anon_sym_SEMI, + STATE(1549), 2, sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(601), 3, + sym_dictionary_splat, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25055,7 +25840,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2107] = 24, + [2221] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -25072,21 +25857,21 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(713), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(717), 1, + ACTIONS(773), 1, anon_sym_STAR, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(992), 1, + STATE(1174), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, @@ -25095,11 +25880,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(715), 3, + ACTIONS(771), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - STATE(1118), 3, + STATE(1315), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, @@ -25114,14 +25899,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25139,53 +25924,53 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2215] = 26, + [2329] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(775), 1, + sym_identifier, + ACTIONS(777), 1, anon_sym_LPAREN, - ACTIONS(721), 1, + ACTIONS(779), 1, anon_sym_RPAREN, - ACTIONS(723), 1, + ACTIONS(781), 1, anon_sym_COMMA, - ACTIONS(731), 1, - sym_identifier, - ACTIONS(735), 1, + ACTIONS(785), 1, anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1060), 1, + STATE(1076), 1, sym_expression, - STATE(1261), 1, + STATE(1388), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1260), 3, + STATE(1387), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -25194,20 +25979,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(783), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25225,74 +26010,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2327] = 25, + [2441] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(655), 1, - anon_sym_yield, - STATE(569), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(789), 1, + anon_sym_RPAREN, + ACTIONS(791), 1, + anon_sym_COMMA, + ACTIONS(795), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(940), 1, + STATE(1225), 1, sym_expression, + STATE(1398), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1375), 2, - sym_list_splat, - sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1076), 3, - sym_expression_list, - sym_yield, - sym__f_expression, + STATE(1397), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25310,74 +26096,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2437] = 25, + [2553] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, - ACTIONS(655), 1, - anon_sym_yield, - STATE(569), 1, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + ACTIONS(797), 1, + anon_sym_STAR, + ACTIONS(799), 1, + anon_sym_STAR_STAR, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(940), 1, + STATE(1164), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(621), 2, sym_ellipsis, sym_float, - STATE(1375), 2, + STATE(1273), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1088), 3, - sym_expression_list, - sym_yield, - sym__f_expression, - ACTIONS(306), 4, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(761), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25395,75 +26180,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2547] = 26, + [2661] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(651), 1, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(757), 1, anon_sym_lambda, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(719), 1, - sym_identifier, - ACTIONS(727), 1, + ACTIONS(759), 1, anon_sym_await, - ACTIONS(737), 1, - anon_sym_RPAREN, - ACTIONS(739), 1, - anon_sym_COMMA, - STATE(569), 1, + ACTIONS(797), 1, + anon_sym_STAR, + ACTIONS(799), 1, + anon_sym_STAR_STAR, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(933), 1, + STATE(1164), 1, sym_expression, - STATE(1204), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(1273), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1205), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(725), 5, + ACTIONS(763), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25481,75 +26264,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2659] = 26, + [2769] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(651), 1, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(757), 1, anon_sym_lambda, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(719), 1, - sym_identifier, - ACTIONS(727), 1, + ACTIONS(759), 1, anon_sym_await, - ACTIONS(741), 1, - anon_sym_RPAREN, - ACTIONS(743), 1, - anon_sym_COMMA, - STATE(569), 1, + ACTIONS(797), 1, + anon_sym_STAR, + ACTIONS(799), 1, + anon_sym_STAR_STAR, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(909), 1, + STATE(1164), 1, sym_expression, - STATE(1230), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(1273), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1223), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(725), 5, + ACTIONS(763), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25567,73 +26348,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2771] = 24, + [2877] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, - ACTIONS(655), 1, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + ACTIONS(765), 1, anon_sym_yield, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(992), 1, + STATE(1095), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1567), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(745), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - STATE(1118), 3, - sym_list_splat, - sym_parenthesized_list_splat, + STATE(1287), 3, + sym_expression_list, sym_yield, - ACTIONS(306), 4, + sym__f_expression, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25651,75 +26433,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2879] = 26, + [2987] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(747), 1, - anon_sym_from, - STATE(698), 1, + ACTIONS(775), 1, + sym_identifier, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(785), 1, + anon_sym_await, + ACTIONS(789), 1, + anon_sym_RPAREN, + ACTIONS(791), 1, + anon_sym_COMMA, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(725), 1, sym_primary_expression, - STATE(989), 1, + STATE(1067), 1, sym_expression, - STATE(1228), 1, - sym_expression_list, - ACTIONS(75), 2, + STATE(1398), 1, + sym_parenthesized_list_splat, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(749), 2, - sym__newline, - sym__semicolon, - STATE(1328), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(47), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + STATE(1397), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(783), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25737,75 +26519,76 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2991] = 26, + [3099] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, anon_sym_STAR, - ACTIONS(751), 1, - anon_sym_from, - STATE(698), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(803), 1, + anon_sym_RPAREN, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(725), 1, sym_primary_expression, - STATE(1030), 1, + STATE(1041), 1, sym_expression, - STATE(1330), 1, - sym_expression_list, - ACTIONS(75), 2, + STATE(1400), 1, + sym_yield, + STATE(1439), 1, + sym_with_item, + STATE(1675), 1, + sym__collection_elements, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(633), 2, - sym__newline, - sym__semicolon, - STATE(1328), 2, + STATE(1257), 2, sym_list_splat, - sym_dictionary_splat, - ACTIONS(47), 3, + sym_parenthesized_list_splat, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25823,73 +26606,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3103] = 25, + [3213] = 26, ACTIONS(3), 1, sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(320), 1, anon_sym_await, - ACTIONS(753), 1, - anon_sym_RPAREN, - STATE(569), 1, - sym_string, - STATE(570), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(809), 1, + anon_sym_from, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(1102), 1, + STATE(782), 1, + sym_string, + STATE(1122), 1, sym_expression, - STATE(1368), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + STATE(1475), 1, + sym_expression_list, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(811), 2, + sym__newline, + anon_sym_SEMI, + STATE(1549), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25907,43 +26692,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3212] = 25, + [3325] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, - sym_identifier, - ACTIONS(735), 1, - anon_sym_await, - ACTIONS(755), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1174), 1, sym_expression, - STATE(1368), 1, - sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, @@ -25951,29 +26732,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + ACTIONS(813), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + STATE(1315), 3, sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25991,71 +26776,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3321] = 23, + [3433] = 24, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(945), 1, + STATE(1174), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1020), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(757), 3, + ACTIONS(813), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - ACTIONS(759), 3, - anon_sym_if, - anon_sym_async, - anon_sym_for, + STATE(1315), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 4, + ACTIONS(276), 5, anon_sym_print, + anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26073,51 +26860,53 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3426] = 25, + [3541] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(775), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(785), 1, anon_sym_await, - ACTIONS(763), 1, + ACTIONS(815), 1, anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(817), 1, + anon_sym_COMMA, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1075), 1, sym_expression, - STATE(1368), 1, + STATE(1412), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1411), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -26126,20 +26915,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(783), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26157,51 +26946,53 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3535] = 25, + [3653] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(775), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(785), 1, anon_sym_await, - ACTIONS(765), 1, + ACTIONS(819), 1, anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(821), 1, + anon_sym_COMMA, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1080), 1, sym_expression, - STATE(1368), 1, + STATE(1430), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1429), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -26210,20 +27001,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(783), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26241,7 +27032,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3644] = 25, + [3765] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -26256,27 +27047,27 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(787), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(767), 1, + ACTIONS(823), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1261), 1, sym_expression, - STATE(1368), 1, + STATE(1577), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, @@ -26285,7 +27076,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1570), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -26294,20 +27085,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26325,73 +27116,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3753] = 25, + [3874] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(801), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(769), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1094), 1, sym_expression, - STATE(1368), 1, - sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1211), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, + ACTIONS(825), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + ACTIONS(827), 3, + anon_sym_if, + anon_sym_async, + anon_sym_for, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(805), 4, anon_sym_print, - anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26409,13 +27198,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3862] = 25, + [3979] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(69), 1, anon_sym_not, ACTIONS(71), 1, @@ -26424,33 +27211,35 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(320), 1, anon_sym_await, ACTIONS(568), 1, anon_sym_LPAREN, ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(831), 1, + anon_sym_from, + ACTIONS(833), 1, anon_sym_STAR, - STATE(698), 1, - sym_string, - STATE(700), 1, + ACTIONS(835), 1, + anon_sym_STAR_STAR, + STATE(763), 1, sym_template_string, - STATE(702), 1, + STATE(779), 1, sym_primary_expression, - STATE(1031), 1, + STATE(782), 1, + sym_string, + STATE(1199), 1, sym_expression, - STATE(1377), 1, - sym_expression_list, ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(771), 2, + ACTIONS(761), 2, sym__newline, - sym__semicolon, - STATE(1328), 2, + anon_sym_SEMI, + STATE(1358), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(47), 3, @@ -26462,20 +27251,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26493,73 +27282,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3971] = 25, + [4088] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(801), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(773), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1094), 1, sym_expression, - STATE(1368), 1, - sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1211), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, + ACTIONS(837), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + ACTIONS(839), 3, + anon_sym_if, + anon_sym_async, + anon_sym_for, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(805), 4, anon_sym_print, - anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26577,7 +27364,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4080] = 25, + [4193] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, @@ -26590,35 +27377,35 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(320), 1, anon_sym_await, ACTIONS(568), 1, anon_sym_LPAREN, ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(775), 1, - anon_sym_from, - ACTIONS(777), 1, + ACTIONS(833), 1, anon_sym_STAR, - ACTIONS(779), 1, + ACTIONS(835), 1, anon_sym_STAR_STAR, - STATE(698), 1, - sym_string, - STATE(700), 1, + ACTIONS(841), 1, + anon_sym_from, + STATE(763), 1, sym_template_string, - STATE(702), 1, + STATE(779), 1, sym_primary_expression, - STATE(1002), 1, + STATE(782), 1, + sym_string, + STATE(1199), 1, sym_expression, ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(703), 2, + ACTIONS(763), 2, sym__newline, - sym__semicolon, - STATE(1168), 2, + anon_sym_SEMI, + STATE(1358), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(47), 3, @@ -26630,20 +27417,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26661,7 +27448,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4189] = 25, + [4302] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -26672,62 +27459,63 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(803), 1, + anon_sym_RPAREN, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(781), 1, - anon_sym_RBRACK, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(912), 1, + STATE(1066), 1, sym_expression, - STATE(1390), 1, + STATE(1383), 1, + sym_yield, + STATE(1615), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1257), 2, + sym_list_splat, + sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26745,73 +27533,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4298] = 25, + [4413] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(775), 1, - anon_sym_from, - ACTIONS(777), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(779), 1, - anon_sym_STAR_STAR, - STATE(698), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + ACTIONS(843), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(1002), 1, + STATE(1261), 1, sym_expression, - ACTIONS(75), 2, + STATE(1577), 1, + sym_parenthesized_list_splat, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(703), 2, - sym__newline, - sym__semicolon, - STATE(1168), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(47), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26829,74 +27617,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4407] = 26, + [4522] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(729), 1, + ACTIONS(845), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(930), 1, + STATE(1261), 1, sym_expression, - STATE(1218), 1, - sym_yield, - STATE(1480), 1, - sym__collection_elements, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1095), 2, - sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26914,7 +27701,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4518] = 23, + [4631] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -26923,62 +27710,64 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(689), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, sym_identifier, - ACTIONS(699), 1, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + ACTIONS(847), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(945), 1, + STATE(1081), 1, sym_expression, + STATE(1656), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1020), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(783), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - ACTIONS(785), 3, - anon_sym_if, - anon_sym_async, - anon_sym_for, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 4, + ACTIONS(805), 5, anon_sym_print, + anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26996,71 +27785,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4623] = 23, + [4740] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(689), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, sym_identifier, - ACTIONS(699), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + ACTIONS(849), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(945), 1, + STATE(1261), 1, sym_expression, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1020), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(787), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - ACTIONS(789), 3, - anon_sym_if, - anon_sym_async, - anon_sym_for, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 4, + ACTIONS(793), 5, anon_sym_print, + anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27078,73 +27869,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4728] = 25, + [4849] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(801), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(791), 1, + ACTIONS(851), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1066), 1, sym_expression, - STATE(1368), 1, + STATE(1383), 1, + sym_yield, + STATE(1440), 1, sym_parenthesized_list_splat, + STATE(1474), 1, + sym_list_splat, + STATE(1615), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27162,7 +27955,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4837] = 25, + [4962] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -27177,27 +27970,27 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(787), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(793), 1, + ACTIONS(853), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1261), 1, sym_expression, - STATE(1368), 1, + STATE(1577), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, @@ -27206,7 +27999,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1570), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -27215,20 +28008,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27246,71 +28039,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4946] = 23, + [5071] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(689), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, sym_identifier, - ACTIONS(699), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + ACTIONS(855), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(945), 1, + STATE(1261), 1, sym_expression, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1020), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(795), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - ACTIONS(797), 3, - anon_sym_if, - anon_sym_async, - anon_sym_for, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 4, + ACTIONS(793), 5, anon_sym_print, + anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27328,7 +28123,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5051] = 25, + [5180] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -27343,27 +28138,27 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(787), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(799), 1, + ACTIONS(857), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1261), 1, sym_expression, - STATE(1368), 1, + STATE(1577), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, @@ -27372,7 +28167,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1570), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -27381,20 +28176,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27412,7 +28207,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5160] = 25, + [5289] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -27427,27 +28222,27 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(787), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(801), 1, + ACTIONS(859), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1261), 1, sym_expression, - STATE(1368), 1, + STATE(1577), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, @@ -27456,7 +28251,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1570), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -27465,20 +28260,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27496,7 +28291,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5269] = 27, + [5398] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -27505,66 +28300,62 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(689), 1, + ACTIONS(801), 1, sym_identifier, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(803), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(930), 1, + STATE(1094), 1, sym_expression, - STATE(1218), 1, - sym_yield, - STATE(1303), 1, - sym_parenthesized_list_splat, - STATE(1304), 1, - sym_list_splat, - STATE(1480), 1, - sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1211), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + ACTIONS(861), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + ACTIONS(863), 3, + anon_sym_if, + anon_sym_async, + anon_sym_for, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 4, anon_sym_print, - anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27582,73 +28373,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5382] = 25, + [5503] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(801), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(805), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1094), 1, sym_expression, - STATE(1368), 1, - sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1211), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, + ACTIONS(865), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + ACTIONS(867), 3, + anon_sym_if, + anon_sym_async, + anon_sym_for, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(805), 4, anon_sym_print, - anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27666,7 +28455,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5491] = 25, + [5608] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -27677,62 +28466,63 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(717), 1, + ACTIONS(773), 1, anon_sym_STAR, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, ACTIONS(807), 1, - anon_sym_RBRACK, - STATE(569), 1, + anon_sym_await, + ACTIONS(869), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(908), 1, + STATE(1084), 1, sym_expression, - STATE(1438), 1, + STATE(1489), 1, + sym_yield, + STATE(1626), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1257), 2, + sym_list_splat, + sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27750,7 +28540,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5600] = 26, + [5719] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -27761,63 +28551,62 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(729), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(871), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(921), 1, + STATE(1083), 1, sym_expression, - STATE(1220), 1, - sym_yield, - STATE(1391), 1, + STATE(1633), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1095), 2, - sym_list_splat, - sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27835,7 +28624,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5711] = 25, + [5828] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -27846,62 +28635,63 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(781), 1, - anon_sym_RBRACK, - STATE(569), 1, + ACTIONS(873), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(928), 1, + STATE(1073), 1, sym_expression, - STATE(1393), 1, + STATE(1423), 1, + sym_yield, + STATE(1591), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1257), 2, + sym_list_splat, + sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27919,7 +28709,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5820] = 25, + [5939] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -27934,27 +28724,27 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(787), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(809), 1, + ACTIONS(875), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1261), 1, sym_expression, - STATE(1368), 1, + STATE(1577), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, @@ -27963,7 +28753,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1570), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -27972,20 +28762,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28003,7 +28793,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5929] = 25, + [6048] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -28014,31 +28804,37 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(803), 1, + anon_sym_RPAREN, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(811), 1, - anon_sym_RBRACK, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(912), 1, + STATE(1066), 1, sym_expression, - STATE(1390), 1, + STATE(1383), 1, + sym_yield, + STATE(1440), 1, + sym_parenthesized_list_splat, + STATE(1474), 1, + sym_list_splat, + STATE(1615), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, @@ -28047,29 +28843,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28087,7 +28879,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6038] = 26, + [6161] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -28098,40 +28890,41 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(813), 1, + ACTIONS(873), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(935), 1, + STATE(1066), 1, sym_expression, - STATE(1197), 1, + STATE(1383), 1, sym_yield, - STATE(1409), 1, + STATE(1440), 1, + sym_parenthesized_list_splat, + STATE(1474), 1, + sym_list_splat, + STATE(1615), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1095), 2, - sym_list_splat, - sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, @@ -28141,20 +28934,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28172,74 +28965,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6149] = 26, + [6274] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(803), 1, + ACTIONS(877), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(930), 1, + STATE(1261), 1, sym_expression, - STATE(1218), 1, - sym_yield, - STATE(1480), 1, - sym__collection_elements, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1095), 2, - sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28257,75 +29049,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6260] = 27, + [6383] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(729), 1, + ACTIONS(879), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(930), 1, + STATE(1261), 1, sym_expression, - STATE(1218), 1, - sym_yield, - STATE(1303), 1, + STATE(1577), 1, sym_parenthesized_list_splat, - STATE(1304), 1, - sym_list_splat, - STATE(1480), 1, - sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28343,7 +29133,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6373] = 25, + [6492] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -28358,27 +29148,27 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(787), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(815), 1, + ACTIONS(881), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1261), 1, sym_expression, - STATE(1368), 1, + STATE(1577), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, @@ -28387,7 +29177,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1570), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -28396,20 +29186,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28427,73 +29217,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6482] = 25, + [6601] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(777), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(779), 1, - anon_sym_STAR_STAR, - ACTIONS(817), 1, - anon_sym_from, - STATE(698), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + ACTIONS(883), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(1002), 1, + STATE(1261), 1, sym_expression, - ACTIONS(75), 2, + STATE(1577), 1, + sym_parenthesized_list_splat, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(701), 2, - sym__newline, - sym__semicolon, - STATE(1168), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(47), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28511,7 +29301,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6591] = 25, + [6710] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -28526,27 +29316,27 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(787), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(819), 1, + ACTIONS(885), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1261), 1, sym_expression, - STATE(1368), 1, + STATE(1577), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, @@ -28555,7 +29345,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1570), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -28564,20 +29354,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28595,71 +29385,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6700] = 24, + [6819] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(719), 1, + anon_sym_STAR, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(1102), 1, + STATE(782), 1, + sym_string, + STATE(1179), 1, sym_expression, - STATE(1368), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + STATE(1572), 1, + sym_expression_list, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(887), 2, + sym__newline, + anon_sym_SEMI, + STATE(1549), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28677,71 +29469,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6806] = 24, + [6928] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(717), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, anon_sym_STAR, - ACTIONS(821), 1, - anon_sym_COLON, - ACTIONS(823), 1, - anon_sym_RBRACK, - STATE(569), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(873), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1042), 1, + STATE(1066), 1, sym_expression, + STATE(1383), 1, + sym_yield, + STATE(1615), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1257), 2, + sym_list_splat, + sym_parenthesized_list_splat, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1371), 3, - sym_list_splat, - sym__index_expression, - sym_slice, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28759,71 +29554,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6912] = 24, + [7039] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(717), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, anon_sym_STAR, - ACTIONS(821), 1, - anon_sym_COLON, - STATE(569), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(889), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1042), 1, + STATE(1088), 1, sym_expression, - STATE(1454), 1, - sym_index_expression_list, + STATE(1594), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1243), 3, + STATE(1257), 3, sym_list_splat, - sym__index_expression, - sym_slice, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28841,71 +29638,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7018] = 24, + [7148] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(717), 1, + ACTIONS(833), 1, anon_sym_STAR, - ACTIONS(821), 1, - anon_sym_COLON, - STATE(569), 1, - sym_string, - STATE(570), 1, + ACTIONS(835), 1, + anon_sym_STAR_STAR, + ACTIONS(841), 1, + anon_sym_from, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(1042), 1, + STATE(782), 1, + sym_string, + STATE(1199), 1, sym_expression, - STATE(1407), 1, - sym_index_expression_list, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(763), 2, + sym__newline, + anon_sym_SEMI, + STATE(1358), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1203), 3, - sym_list_splat, - sym__index_expression, - sym_slice, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28923,65 +29722,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7124] = 18, + [7257] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, anon_sym_await, - STATE(569), 1, + ACTIONS(891), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(669), 1, + STATE(719), 1, sym_primary_expression, + STATE(1261), 1, + sym_expression, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(265), 3, - anon_sym_DOT, - anon_sym_STAR, - anon_sym_SLASH, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(825), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - ACTIONS(306), 5, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(306), 4, sym_integer, - sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - ACTIONS(298), 9, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - STATE(649), 17, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28999,41 +29806,43 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7218] = 24, + [7366] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(715), 1, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + ACTIONS(893), 1, anon_sym_RPAREN, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(992), 1, + STATE(1261), 1, sym_expression, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, @@ -29041,29 +29850,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1118), 3, + STATE(1570), 3, sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29081,41 +29890,43 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7324] = 24, + [7475] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(717), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(821), 1, - anon_sym_COLON, - STATE(569), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + ACTIONS(895), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1042), 1, + STATE(1261), 1, sym_expression, - STATE(1469), 1, - sym_index_expression_list, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, @@ -29123,29 +29934,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1263), 3, + STATE(1570), 3, sym_list_splat, - sym__index_expression, - sym_slice, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29163,41 +29974,43 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7430] = 24, + [7584] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(715), 1, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + ACTIONS(897), 1, anon_sym_RPAREN, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(992), 1, + STATE(1261), 1, sym_expression, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, @@ -29205,29 +30018,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1118), 3, + STATE(1570), 3, sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29245,41 +30058,43 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7536] = 24, + [7693] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(717), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(821), 1, - anon_sym_COLON, - ACTIONS(827), 1, - anon_sym_RBRACK, - STATE(569), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + ACTIONS(899), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1042), 1, + STATE(1261), 1, sym_expression, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, @@ -29287,29 +30102,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1371), 3, + STATE(1570), 3, sym_list_splat, - sym__index_expression, - sym_slice, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29327,48 +30142,52 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7642] = 24, + [7802] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(851), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1055), 1, + STATE(1066), 1, sym_expression, - STATE(1453), 1, - sym_expression_list, + STATE(1383), 1, + sym_yield, + STATE(1615), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1375), 2, + STATE(1257), 2, sym_list_splat, - sym_dictionary_splat, - ACTIONS(296), 3, + sym_parenthesized_list_splat, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -29377,20 +30196,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29408,70 +30227,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7747] = 24, + [7913] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(889), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1065), 1, + STATE(1081), 1, sym_expression, - STATE(1490), 1, - sym_expression_list, + STATE(1656), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1375), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29489,70 +30311,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7852] = 24, + [8022] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + ACTIONS(901), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1040), 1, + STATE(1261), 1, sym_expression, - STATE(1446), 1, - sym_expression_list, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1375), 2, - sym_list_splat, - sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29570,69 +30395,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7957] = 23, + [8131] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(655), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(717), 1, + ACTIONS(773), 1, anon_sym_STAR, - STATE(569), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(803), 1, + anon_sym_RPAREN, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(992), 1, + STATE(1079), 1, sym_expression, + STATE(1400), 1, + sym_yield, + STATE(1675), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1257), 2, + sym_list_splat, + sym_parenthesized_list_splat, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1118), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29650,70 +30480,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8060] = 24, + [8242] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, anon_sym_STAR, - STATE(698), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(847), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(725), 1, sym_primary_expression, - STATE(1005), 1, + STATE(1086), 1, sym_expression, - STATE(1380), 1, - sym_expression_list, - ACTIONS(75), 2, + STATE(1679), 1, + sym__collection_elements, + ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1328), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(47), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29731,69 +30564,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8165] = 23, + [8351] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(717), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, anon_sym_STAR, - ACTIONS(821), 1, - anon_sym_COLON, - STATE(569), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(903), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1042), 1, + STATE(1081), 1, sym_expression, + STATE(1656), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1371), 3, + STATE(1257), 3, sym_list_splat, - sym__index_expression, - sym_slice, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29811,11 +30648,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8268] = 24, + [8460] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -29832,30 +30667,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(905), 1, + anon_sym_COLON, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1050), 1, + STATE(1246), 1, sym_expression, - STATE(1437), 1, - sym_expression_list, + STATE(1693), 1, + sym_index_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1375), 2, - sym_list_splat, - sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1407), 3, + sym_list_splat, + sym__index_expression, + sym_slice, ACTIONS(306), 4, sym_integer, sym_true, @@ -29867,14 +30705,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29892,68 +30730,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8373] = 23, + [8566] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(829), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1261), 1, sym_expression, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29971,11 +30812,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8475] = 23, + [8672] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -29992,28 +30831,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(831), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(905), 1, + anon_sym_COLON, + ACTIONS(907), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1246), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1508), 3, + sym_list_splat, + sym__index_expression, + sym_slice, ACTIONS(306), 4, sym_integer, sym_true, @@ -30025,14 +30869,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30050,68 +30894,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8577] = 23, + [8778] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(777), 1, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(773), 1, anon_sym_STAR, - ACTIONS(779), 1, - anon_sym_STAR_STAR, - STATE(698), 1, + ACTIONS(813), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(1002), 1, + STATE(1174), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1168), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(47), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + STATE(1315), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30129,11 +30976,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8679] = 23, + [8884] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -30150,28 +30995,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(833), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(905), 1, + anon_sym_COLON, + ACTIONS(909), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1246), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1508), 3, + sym_list_splat, + sym__index_expression, + sym_slice, ACTIONS(306), 4, sym_integer, sym_true, @@ -30183,14 +31033,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30208,11 +31058,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8781] = 23, + [8990] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -30225,32 +31073,37 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(835), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(813), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1174), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1315), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, @@ -30262,14 +31115,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30287,11 +31140,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8883] = 23, + [9096] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -30308,28 +31159,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(837), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(905), 1, + anon_sym_COLON, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1246), 1, sym_expression, + STATE(1660), 1, + sym_index_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1377), 3, + sym_list_splat, + sym__index_expression, + sym_slice, ACTIONS(306), 4, sym_integer, sym_true, @@ -30341,14 +31197,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30366,19 +31222,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8985] = 23, + [9202] = 18, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, @@ -30387,47 +31235,52 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(839), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(735), 1, sym_primary_expression, - STATE(1112), 1, - sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, + ACTIONS(265), 3, + anon_sym_DOT, + anon_sym_STAR, + anon_sym_SLASH, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(911), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + ACTIONS(306), 5, sym_integer, + sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(583), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, + ACTIONS(298), 9, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30445,11 +31298,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9087] = 23, + [9296] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -30466,28 +31317,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(905), 1, + anon_sym_COLON, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(931), 1, + STATE(1246), 1, sym_expression, + STATE(1669), 1, + sym_index_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1010), 2, - sym_list_splat, - sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1414), 3, + sym_list_splat, + sym__index_expression, + sym_slice, ACTIONS(306), 4, sym_integer, sym_true, @@ -30499,14 +31355,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30524,11 +31380,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9189] = 23, + [9402] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -30545,28 +31399,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(841), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(905), 1, + anon_sym_COLON, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1246), 1, sym_expression, + STATE(1653), 1, + sym_index_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1432), 3, + sym_list_splat, + sym__index_expression, + sym_slice, ACTIONS(306), 4, sym_integer, sym_true, @@ -30578,14 +31437,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30603,11 +31462,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9291] = 23, + [9508] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -30620,32 +31477,35 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(843), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1174), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1315), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, @@ -30657,14 +31517,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30682,7 +31542,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9393] = 23, + [9611] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -30703,24 +31563,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(845), 1, - anon_sym_RBRACE, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1237), 1, sym_expression, + STATE(1637), 1, + sym_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, + STATE(1510), 2, + sym_list_splat, sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -30736,14 +31598,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30761,71 +31623,88 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9495] = 9, + [9716] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(853), 1, - anon_sym_except, - ACTIONS(855), 1, - anon_sym_finally, - STATE(445), 1, - sym_else_clause, - STATE(520), 1, - sym_finally_clause, - STATE(308), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(847), 13, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, + ACTIONS(83), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(574), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(719), 1, + anon_sym_STAR, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1180), 1, + sym_expression, + STATE(1579), 1, + sym_expression_list, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(849), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + STATE(1549), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(316), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [9568] = 23, + STATE(1158), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [9821] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -30844,22 +31723,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(717), 1, + ACTIONS(773), 1, anon_sym_STAR, - STATE(569), 1, + ACTIONS(905), 1, + anon_sym_COLON, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1246), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1459), 1, - sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, @@ -30867,6 +31744,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1508), 3, + sym_list_splat, + sym__index_expression, + sym_slice, ACTIONS(306), 4, sym_integer, sym_true, @@ -30878,14 +31759,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30903,9 +31784,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9669] = 23, + [9924] = 24, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -30922,25 +31805,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(717), 1, + ACTIONS(719), 1, anon_sym_STAR, - STATE(569), 1, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1240), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1466), 1, - sym_type, + STATE(1625), 1, + sym_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1510), 2, + sym_list_splat, + sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -30956,14 +31840,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30981,9 +31865,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9770] = 23, + [10029] = 24, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -31000,25 +31886,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(717), 1, + ACTIONS(719), 1, anon_sym_STAR, - STATE(569), 1, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1236), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1415), 1, - sym_type, + STATE(1610), 1, + sym_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1510), 2, + sym_list_splat, + sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -31034,14 +31921,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31059,9 +31946,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9871] = 22, + [10134] = 24, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -31078,24 +31967,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(859), 1, - anon_sym_COLON, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1049), 1, + STATE(1235), 1, sym_expression, + STATE(1603), 1, + sym_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(857), 2, - anon_sym_COMMA, - anon_sym_RBRACK, + STATE(1510), 2, + sym_list_splat, + sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -31111,14 +32002,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31136,125 +32027,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9970] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(863), 17, - anon_sym_as, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_EQ, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(861), 36, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - sym_type_conversion, - [10031] = 3, + [10239] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(867), 17, - anon_sym_as, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(53), 1, anon_sym_STAR_STAR, - anon_sym_EQ, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(865), 36, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - sym_type_conversion, - [10092] = 22, - ACTIONS(3), 1, - sym_comment, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -31271,24 +32048,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(871), 1, - anon_sym_COLON, - STATE(569), 1, + ACTIONS(913), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1071), 1, + STATE(1331), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(869), 2, - anon_sym_COMMA, - anon_sym_RBRACK, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -31304,14 +32081,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31329,67 +32106,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10191] = 23, + [10341] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(717), 1, + ACTIONS(833), 1, anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, + ACTIONS(835), 1, + anon_sym_STAR_STAR, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(1022), 1, + STATE(782), 1, + sym_string, + STATE(1199), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1465), 1, - sym_type, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1358), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31407,67 +32185,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10292] = 23, + [10443] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, - ACTIONS(717), 1, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + ACTIONS(797), 1, anon_sym_STAR, - STATE(569), 1, + ACTIONS(799), 1, + anon_sym_STAR_STAR, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1022), 1, + STATE(1164), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1450), 1, - sym_type, - ACTIONS(304), 2, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1273), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31485,9 +32264,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10393] = 23, + [10545] = 23, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -31504,25 +32285,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + ACTIONS(915), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1331), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1282), 1, - sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -31538,14 +32318,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31563,73 +32343,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10494] = 9, + [10647] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(879), 1, - anon_sym_except, - ACTIONS(881), 1, - anon_sym_finally, - STATE(431), 1, - sym_else_clause, - STATE(498), 1, - sym_finally_clause, - STATE(293), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(875), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, + ACTIONS(53), 1, anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(873), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [10567] = 23, - ACTIONS(3), 1, - sym_comment, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -31646,25 +32364,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + ACTIONS(917), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1331), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1121), 1, - sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -31680,14 +32397,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31705,71 +32422,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10668] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(881), 1, - anon_sym_finally, - ACTIONS(883), 1, - anon_sym_except, - STATE(431), 1, - sym_else_clause, - STATE(498), 1, - sym_finally_clause, - STATE(292), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(875), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(873), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [10741] = 22, + [10749] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -31790,20 +32443,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(919), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1331), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, + STATE(1563), 2, sym_dictionary_splat, sym_pair, ACTIONS(296), 3, @@ -31821,14 +32476,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31846,67 +32501,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10840] = 23, + [10851] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(885), 1, - anon_sym_STAR, - STATE(698), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(921), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(1063), 1, + STATE(1331), 1, sym_expression, - STATE(1185), 1, - sym_list_splat, - STATE(1217), 1, - sym_type, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31924,73 +32580,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10941] = 9, + [10953] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(879), 1, - anon_sym_except, - ACTIONS(881), 1, - anon_sym_finally, - STATE(425), 1, - sym_else_clause, - STATE(555), 1, - sym_finally_clause, - STATE(293), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(847), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, + ACTIONS(53), 1, anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(849), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [11014] = 23, - ACTIONS(3), 1, - sym_comment, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -32007,25 +32601,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + ACTIONS(923), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1331), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1461), 1, - sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -32041,14 +32634,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32066,108 +32659,45 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11115] = 9, + [11055] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(881), 1, - anon_sym_finally, - ACTIONS(883), 1, - anon_sym_except, - STATE(425), 1, - sym_else_clause, - STATE(555), 1, - sym_finally_clause, - STATE(292), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(847), 13, - sym__dedent, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(849), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [11188] = 23, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, + ACTIONS(312), 1, sym__template_string_start, ACTIONS(578), 1, anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + ACTIONS(925), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1331), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1406), 1, - sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -32183,14 +32713,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32208,259 +32738,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11289] = 9, + [11157] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(855), 1, - anon_sym_finally, - ACTIONS(887), 1, - anon_sym_except, - STATE(445), 1, - sym_else_clause, - STATE(520), 1, - sym_finally_clause, - STATE(289), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(847), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, + ACTIONS(53), 1, anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(849), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, + ACTIONS(263), 1, sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [11362] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(853), 1, - anon_sym_except, - ACTIONS(855), 1, - anon_sym_finally, - STATE(415), 1, - sym_else_clause, - STATE(542), 1, - sym_finally_clause, - STATE(308), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(875), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, + ACTIONS(288), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(873), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, + ACTIONS(300), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, + ACTIONS(308), 1, anon_sym_await, - sym_true, - sym_false, - sym_none, - [11435] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(855), 1, - anon_sym_finally, - ACTIONS(887), 1, - anon_sym_except, - STATE(415), 1, - sym_else_clause, - STATE(542), 1, - sym_finally_clause, - STATE(289), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(875), 13, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(873), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [11508] = 23, - ACTIONS(3), 1, - sym_comment, - ACTIONS(609), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(891), 1, - anon_sym_STAR, - ACTIONS(895), 1, - anon_sym_COLON, - ACTIONS(897), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, - anon_sym_await, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + ACTIONS(927), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(1000), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1331), 1, sym_expression, - STATE(1354), 1, - sym_exception_list, - ACTIONS(621), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32478,67 +32817,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11609] = 23, + [11259] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, - anon_sym_await, - ACTIONS(903), 1, - anon_sym_STAR, - ACTIONS(905), 1, - anon_sym_COLON, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + ACTIONS(929), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(1034), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1331), 1, sym_expression, - STATE(1346), 1, - sym_exception_list, - ACTIONS(621), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32556,9 +32896,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11710] = 23, + [11361] = 23, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -32575,25 +32917,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + ACTIONS(931), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1331), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1431), 1, - sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -32609,14 +32950,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32634,64 +32975,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11811] = 21, + [11463] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(933), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(1069), 1, + STATE(1331), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(907), 2, - sym__newline, - sym__semicolon, - ACTIONS(47), 3, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32709,42 +33054,46 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11907] = 21, + [11565] = 23, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + ACTIONS(935), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(945), 1, + STATE(1331), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(973), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -32753,20 +33102,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32784,65 +33133,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12003] = 22, + [11667] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(895), 1, - anon_sym_COLON, - ACTIONS(897), 1, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, - anon_sym_await, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(1000), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1117), 1, sym_expression, - STATE(1354), 1, - sym_exception_list, - ACTIONS(621), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + STATE(1267), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32860,7 +33212,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12101] = 21, + [11769] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -32879,22 +33231,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1085), 1, + STATE(1172), 1, sym_expression, + STATE(1308), 1, + sym_list_splat, + STATE(1447), 1, + sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(909), 2, - anon_sym_COMMA, - anon_sym_RBRACK, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -32910,14 +33265,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32935,65 +33290,67 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12197] = 22, + [11870] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(263), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(308), 1, anon_sym_await, - ACTIONS(911), 1, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(999), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1172), 1, sym_expression, - STATE(1238), 1, - sym_with_item, - STATE(1432), 1, - sym_with_clause, - ACTIONS(621), 2, + STATE(1308), 1, + sym_list_splat, + STATE(1583), 1, + sym_type, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33011,214 +33368,258 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12295] = 21, + [11971] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(943), 1, + anon_sym_except, + ACTIONS(945), 1, + anon_sym_finally, + STATE(470), 1, + sym_else_clause, + STATE(575), 1, + sym_finally_clause, + STATE(330), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(939), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(651), 1, - anon_sym_not, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(945), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(1020), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(695), 5, + sym_ellipsis, + sym_float, + ACTIONS(937), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [12391] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, + anon_sym_class, anon_sym_not, - ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(488), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(494), 1, anon_sym_await, - ACTIONS(568), 1, + sym_true, + sym_false, + sym_none, + [12044] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(945), 1, + anon_sym_finally, + ACTIONS(947), 1, + anon_sym_except, + STATE(470), 1, + sym_else_clause, + STATE(575), 1, + sym_finally_clause, + STATE(331), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(939), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(1069), 1, - sym_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(913), 2, - sym__newline, - sym__semicolon, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 4, + sym_ellipsis, + sym_float, + ACTIONS(937), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, + sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + [12117] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(951), 1, + anon_sym_except, + ACTIONS(953), 1, + anon_sym_finally, + STATE(472), 1, + sym_else_clause, + STATE(518), 1, + sym_finally_clause, + STATE(328), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(939), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(937), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [12487] = 21, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [12190] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(957), 1, + anon_sym_COLON, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(1069), 1, + STATE(1247), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(915), 2, - sym__newline, - sym__semicolon, - ACTIONS(47), 3, + ACTIONS(955), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33236,7 +33637,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12583] = 21, + [12289] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -33255,22 +33656,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1087), 1, + STATE(1172), 1, sym_expression, + STATE(1308), 1, + sym_list_splat, + STATE(1697), 1, + sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(917), 2, - anon_sym_COMMA, - anon_sym_RBRACK, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -33286,14 +33690,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33311,42 +33715,45 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12679] = 21, + [12390] = 23, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(945), 1, + STATE(1172), 1, sym_expression, + STATE(1308), 1, + sym_list_splat, + STATE(1639), 1, + sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(987), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -33355,20 +33762,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33386,65 +33793,67 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12775] = 22, + [12491] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - ACTIONS(911), 1, + ACTIONS(568), 1, anon_sym_LPAREN, - STATE(718), 1, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(959), 1, + anon_sym_STAR, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(999), 1, + STATE(1250), 1, sym_expression, - STATE(1238), 1, - sym_with_item, - STATE(1478), 1, - sym_with_clause, - ACTIONS(621), 2, + STATE(1406), 1, + sym_type, + STATE(1463), 1, + sym_list_splat, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33462,65 +33871,67 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12873] = 22, + [12592] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(617), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(961), 1, sym_identifier, - ACTIONS(897), 1, + ACTIONS(963), 1, + anon_sym_STAR, + ACTIONS(967), 1, + anon_sym_COLON, + ACTIONS(969), 1, anon_sym_not, - ACTIONS(899), 1, + ACTIONS(971), 1, anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(973), 1, anon_sym_await, - ACTIONS(911), 1, - anon_sym_LPAREN, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + STATE(794), 1, sym_string, - STATE(722), 1, + STATE(795), 1, sym_template_string, - STATE(999), 1, + STATE(822), 1, + sym_primary_expression, + STATE(1207), 1, sym_expression, - STATE(1238), 1, - sym_with_item, - STATE(1440), 1, - sym_with_clause, - ACTIONS(621), 2, + STATE(1552), 1, + sym_exception_list, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33538,65 +33949,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12971] = 22, + [12693] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, - anon_sym_await, - ACTIONS(905), 1, + ACTIONS(977), 1, anon_sym_COLON, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(1034), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1249), 1, sym_expression, - STATE(1346), 1, - sym_exception_list, - ACTIONS(621), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(975), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33614,65 +34026,131 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13069] = 22, + [12792] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(951), 1, + anon_sym_except, + ACTIONS(953), 1, + anon_sym_finally, + STATE(468), 1, + sym_else_clause, + STATE(534), 1, + sym_finally_clause, + STATE(328), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(979), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(617), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(981), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - ACTIONS(899), 1, anon_sym_lambda, - ACTIONS(901), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(919), 1, - anon_sym_RPAREN, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + sym_true, + sym_false, + sym_none, + [12865] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(999), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1172), 1, sym_expression, - STATE(1298), 1, - sym_with_item, - ACTIONS(621), 2, + STATE(1308), 1, + sym_list_splat, + STATE(1617), 1, + sym_type, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33690,42 +34168,45 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13167] = 21, + [12966] = 23, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(937), 1, + STATE(1172), 1, sym_expression, + STATE(1308), 1, + sym_list_splat, + STATE(1341), 1, + sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1018), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -33734,20 +34215,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33765,7 +34246,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13263] = 21, + [13067] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -33784,22 +34265,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1090), 1, + STATE(1172), 1, sym_expression, + STATE(1308), 1, + sym_list_splat, + STATE(1642), 1, + sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(921), 2, - anon_sym_COMMA, - anon_sym_RBRACK, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -33815,14 +34299,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33840,65 +34324,195 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13359] = 22, + [13168] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(617), 1, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(943), 1, + anon_sym_except, + ACTIONS(945), 1, + anon_sym_finally, + STATE(479), 1, + sym_else_clause, + STATE(561), 1, + sym_finally_clause, + STATE(330), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(979), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(981), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [13241] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(953), 1, + anon_sym_finally, + ACTIONS(983), 1, + anon_sym_except, + STATE(472), 1, + sym_else_clause, + STATE(518), 1, + sym_finally_clause, + STATE(329), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(939), 13, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(937), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - ACTIONS(899), 1, anon_sym_lambda, - ACTIONS(901), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(911), 1, + sym_true, + sym_false, + sym_none, + [13314] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, anon_sym_LPAREN, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + ACTIONS(985), 1, + anon_sym_STAR, + ACTIONS(987), 1, + anon_sym_COLON, + STATE(794), 1, sym_string, - STATE(722), 1, + STATE(795), 1, sym_template_string, - STATE(999), 1, + STATE(822), 1, + sym_primary_expression, + STATE(1204), 1, sym_expression, - STATE(1238), 1, - sym_with_item, - STATE(1385), 1, - sym_with_clause, - ACTIONS(621), 2, + STATE(1548), 1, + sym_exception_list, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33916,42 +34530,44 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13457] = 21, + [13415] = 22, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(941), 1, + STATE(1331), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1023), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -33960,20 +34576,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33991,65 +34607,131 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13553] = 22, + [13514] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(945), 1, + anon_sym_finally, + ACTIONS(947), 1, + anon_sym_except, + STATE(479), 1, + sym_else_clause, + STATE(561), 1, + sym_finally_clause, + STATE(331), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(979), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, anon_sym_LPAREN, - ACTIONS(617), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(981), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - ACTIONS(899), 1, anon_sym_lambda, - ACTIONS(901), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(923), 1, - anon_sym_RPAREN, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + sym_true, + sym_false, + sym_none, + [13587] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(999), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1172), 1, sym_expression, - STATE(1298), 1, - sym_with_item, - ACTIONS(621), 2, + STATE(1308), 1, + sym_list_splat, + STATE(1616), 1, + sym_type, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34067,7 +34749,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13651] = 21, + [13688] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -34086,22 +34768,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1100), 1, + STATE(1172), 1, sym_expression, + STATE(1308), 1, + sym_list_splat, + STATE(1618), 1, + sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(925), 2, - anon_sym_COMMA, - anon_sym_RBRACK, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -34117,14 +34802,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34142,7 +34827,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13747] = 22, + [13789] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -34161,20 +34846,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(717), 1, + ACTIONS(773), 1, anon_sym_STAR, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1075), 1, + STATE(1172), 1, sym_expression, - STATE(1324), 1, + STATE(1308), 1, sym_list_splat, + STATE(1622), 1, + sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, @@ -34193,14 +34880,154 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [13890] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(953), 1, + anon_sym_finally, + ACTIONS(983), 1, + anon_sym_except, + STATE(468), 1, + sym_else_clause, + STATE(534), 1, + sym_finally_clause, + STATE(329), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(979), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(981), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [13963] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + ACTIONS(989), 1, + anon_sym_LPAREN, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(822), 1, + sym_primary_expression, + STATE(1200), 1, + sym_expression, + STATE(1434), 1, + sym_with_item, + STATE(1607), 1, + sym_with_clause, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(965), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34218,7 +35045,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13845] = 21, + [14061] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, @@ -34231,28 +35058,28 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(320), 1, anon_sym_await, ACTIONS(568), 1, anon_sym_LPAREN, ACTIONS(574), 1, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, + STATE(763), 1, sym_template_string, - STATE(702), 1, + STATE(779), 1, sym_primary_expression, - STATE(1069), 1, + STATE(782), 1, + sym_string, + STATE(1224), 1, sym_expression, ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(927), 2, + ACTIONS(991), 2, sym__newline, - sym__semicolon, + anon_sym_SEMI, ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, @@ -34262,20 +35089,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34293,63 +35120,64 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13941] = 21, + [14157] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(718), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(1036), 1, + STATE(1224), 1, sym_expression, - STATE(1379), 1, - sym_exception_list, - ACTIONS(621), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(993), 2, + sym__newline, + anon_sym_SEMI, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34367,63 +35195,64 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14036] = 21, + [14253] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(718), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(999), 1, + STATE(1224), 1, sym_expression, - STATE(1298), 1, - sym_with_item, - ACTIONS(621), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(995), 2, + sym__newline, + anon_sym_SEMI, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34441,887 +35270,574 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14131] = 5, + [14349] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(933), 1, - anon_sym_except, - STATE(289), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(929), 13, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(597), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(603), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(931), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + ACTIONS(691), 1, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, + ACTIONS(801), 1, sym_identifier, + ACTIONS(807), 1, anon_sym_await, - sym_true, - sym_false, - sym_none, - [14194] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(940), 1, - anon_sym_elif, - STATE(382), 1, - aux_sym_if_statement_repeat1, - STATE(417), 1, - sym_elif_clause, - STATE(524), 1, - sym_else_clause, - ACTIONS(936), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(725), 1, + sym_primary_expression, + STATE(1098), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(1203), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(938), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(805), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [14263] = 8, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [14445] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(940), 1, - anon_sym_elif, - STATE(309), 1, - aux_sym_if_statement_repeat1, - STATE(417), 1, - sym_elif_clause, - STATE(521), 1, - sym_else_clause, - ACTIONS(942), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1276), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(944), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(997), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [14332] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [14541] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(950), 1, - anon_sym_except, - STATE(292), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(948), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, + ACTIONS(1001), 17, + anon_sym_as, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, anon_sym_STAR_STAR, + anon_sym_EQ, anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(946), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(999), 35, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_if, + anon_sym_COLON, anon_sym_else, anon_sym_async, anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [14395] = 5, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [14601] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(953), 1, - anon_sym_except, - STATE(293), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(929), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(631), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(639), 1, anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(967), 1, + anon_sym_COLON, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(822), 1, + sym_primary_expression, + STATE(1207), 1, + sym_expression, + STATE(1552), 1, + sym_exception_list, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(931), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(965), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [14458] = 3, + STATE(1176), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [14699] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(956), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1266), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(958), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(1003), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [14517] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [14795] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(960), 13, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(597), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(603), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(962), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + ACTIONS(691), 1, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, + ACTIONS(801), 1, sym_identifier, + ACTIONS(807), 1, anon_sym_await, - sym_true, - sym_false, - sym_none, - [14576] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(956), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(725), 1, + sym_primary_expression, + STATE(1094), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(1211), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(958), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, + ACTIONS(306), 4, sym_integer, - sym_identifier, - anon_sym_await, sym_true, sym_false, sym_none, - [14635] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(964), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(966), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(805), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [14694] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(270), 1, - anon_sym_COMMA, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(968), 1, - anon_sym_for, - ACTIONS(970), 1, - anon_sym_with, - ACTIONS(972), 1, - anon_sym_def, - ACTIONS(280), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(302), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(265), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(298), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [14767] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(270), 1, - anon_sym_COMMA, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(974), 1, - anon_sym_for, - ACTIONS(976), 1, - anon_sym_with, - ACTIONS(978), 1, - anon_sym_def, - ACTIONS(280), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(302), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(265), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(298), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [14840] = 8, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [14891] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(984), 1, - anon_sym_elif, - STATE(312), 1, - aux_sym_if_statement_repeat1, - STATE(433), 1, - sym_elif_clause, - STATE(560), 1, - sym_else_clause, - ACTIONS(982), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(980), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, + ACTIONS(300), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, + ACTIONS(308), 1, anon_sym_await, - sym_true, - sym_false, - sym_none, - [14909] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(960), 13, - sym__dedent, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1264), 1, + sym_expression, + STATE(1519), 1, + sym_list_splat, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(962), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, sym_integer, - sym_identifier, - anon_sym_await, sym_true, sym_false, sym_none, - [14968] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(940), 1, - anon_sym_elif, - STATE(290), 1, - aux_sym_if_statement_repeat1, - STATE(417), 1, - sym_elif_clause, - STATE(502), 1, - sym_else_clause, - ACTIONS(982), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(980), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15037] = 21, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [14989] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(631), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(639), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(961), 1, sym_identifier, - ACTIONS(897), 1, + ACTIONS(969), 1, anon_sym_not, - ACTIONS(899), 1, + ACTIONS(971), 1, anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(973), 1, anon_sym_await, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + ACTIONS(1005), 1, + anon_sym_RPAREN, + STATE(794), 1, sym_string, - STATE(722), 1, + STATE(795), 1, sym_template_string, - STATE(1033), 1, + STATE(822), 1, + sym_primary_expression, + STATE(1200), 1, sym_expression, - STATE(1345), 1, - sym_exception_list, - ACTIONS(621), 2, + STATE(1501), 1, + sym_with_item, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35339,643 +35855,441 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15132] = 8, + [15087] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(984), 1, - anon_sym_elif, - STATE(310), 1, - aux_sym_if_statement_repeat1, - STATE(433), 1, - sym_elif_clause, - STATE(522), 1, - sym_else_clause, - ACTIONS(942), 13, - sym__dedent, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, + ACTIONS(83), 1, sym__template_string_start, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(574), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1224), 1, + sym_expression, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(944), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(1007), 2, + sym__newline, + anon_sym_SEMI, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(316), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15201] = 3, + STATE(1158), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [15183] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(986), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1268), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(988), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(1009), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15260] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [15279] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(986), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(597), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(603), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(725), 1, + sym_primary_expression, + STATE(1090), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(988), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + STATE(1178), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(805), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15319] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [15375] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(992), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(597), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(603), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(725), 1, + sym_primary_expression, + STATE(1094), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(990), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + STATE(1128), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(805), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15378] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [15471] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(994), 1, - anon_sym_except, - STATE(308), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(948), 13, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(647), 1, sym__string_start, + ACTIONS(649), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + ACTIONS(989), 1, anon_sym_LPAREN, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(822), 1, + sym_primary_expression, + STATE(1200), 1, + sym_expression, + STATE(1434), 1, + sym_with_item, + STATE(1589), 1, + sym_with_clause, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(946), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(629), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(965), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15441] = 8, + STATE(1176), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [15569] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(940), 1, - anon_sym_elif, - STATE(382), 1, - aux_sym_if_statement_repeat1, - STATE(417), 1, - sym_elif_clause, - STATE(491), 1, - sym_else_clause, - ACTIONS(997), 13, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(647), 1, sym__string_start, + ACTIONS(649), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + ACTIONS(989), 1, anon_sym_LPAREN, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(822), 1, + sym_primary_expression, + STATE(1200), 1, + sym_expression, + STATE(1434), 1, + sym_with_item, + STATE(1597), 1, + sym_with_clause, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(999), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(629), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(965), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15510] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(984), 1, - anon_sym_elif, - STATE(369), 1, - aux_sym_if_statement_repeat1, - STATE(433), 1, - sym_elif_clause, - STATE(489), 1, - sym_else_clause, - ACTIONS(997), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(999), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15579] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(992), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(990), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15638] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(984), 1, - anon_sym_elif, - STATE(369), 1, - aux_sym_if_statement_repeat1, - STATE(433), 1, - sym_elif_clause, - STATE(526), 1, - sym_else_clause, - ACTIONS(936), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(938), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15707] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(964), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(966), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15766] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(953), 1, - sym_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(490), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(955), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35993,39 +36307,42 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15858] = 20, + [15667] = 21, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(899), 1, + STATE(1291), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(1011), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -36034,20 +36351,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36065,61 +36382,122 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15950] = 20, + [15763] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(1015), 17, + anon_sym_as, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_EQ, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1013), 35, + anon_sym_DOT, anon_sym_LPAREN, - ACTIONS(617), 1, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, anon_sym_LBRACK, - ACTIONS(619), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [15823] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(961), 1, sym_identifier, - ACTIONS(897), 1, + ACTIONS(969), 1, anon_sym_not, - ACTIONS(899), 1, + ACTIONS(971), 1, anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(973), 1, anon_sym_await, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + ACTIONS(1017), 1, + anon_sym_RPAREN, + STATE(794), 1, sym_string, - STATE(722), 1, + STATE(795), 1, sym_template_string, - STATE(994), 1, + STATE(822), 1, + sym_primary_expression, + STATE(1200), 1, sym_expression, - ACTIONS(621), 2, + STATE(1501), 1, + sym_with_item, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36137,61 +36515,64 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16042] = 20, + [15921] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(725), 1, sym_primary_expression, - STATE(972), 1, + STATE(1094), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + STATE(1111), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36209,61 +36590,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16134] = 20, + [16017] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + ACTIONS(989), 1, + anon_sym_LPAREN, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(652), 1, + STATE(822), 1, sym_primary_expression, - STATE(1169), 1, + STATE(1200), 1, sym_expression, - ACTIONS(304), 2, + STATE(1434), 1, + sym_with_item, + STATE(1670), 1, + sym_with_clause, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36281,61 +36666,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16226] = 20, + [16115] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + ACTIONS(987), 1, + anon_sym_COLON, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(652), 1, + STATE(822), 1, sym_primary_expression, - STATE(890), 1, + STATE(1204), 1, sym_expression, - ACTIONS(304), 2, + STATE(1548), 1, + sym_exception_list, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36353,421 +36742,236 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16318] = 20, + [16213] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(1023), 1, + anon_sym_elif, + STATE(321), 1, + aux_sym_if_statement_repeat1, + STATE(463), 1, + sym_elif_clause, + STATE(514), 1, + sym_else_clause, + ACTIONS(1019), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1126), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, + sym_ellipsis, + sym_float, + ACTIONS(1021), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [16410] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, + anon_sym_class, anon_sym_not, - ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(488), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(494), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(963), 1, - sym_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 4, - sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [16502] = 20, + [16282] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1027), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(651), 1, - anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(898), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(695), 5, + sym_ellipsis, + sym_float, + ACTIONS(1025), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [16594] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, + anon_sym_class, anon_sym_not, - ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(488), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(494), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(1053), 1, - sym_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 4, - sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [16686] = 20, + [16341] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(1031), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1166), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, + sym_ellipsis, + sym_float, + ACTIONS(1029), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [16778] = 20, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [16400] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(652), 1, + STATE(822), 1, sym_primary_expression, - STATE(1161), 1, + STATE(1200), 1, sym_expression, - ACTIONS(304), 2, + STATE(1501), 1, + sym_with_item, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36785,493 +36989,475 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16870] = 20, + [16495] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(1023), 1, + anon_sym_elif, + STATE(354), 1, + aux_sym_if_statement_repeat1, + STATE(463), 1, + sym_elif_clause, + STATE(525), 1, + sym_else_clause, + ACTIONS(1033), 13, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(951), 1, - sym_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(490), 5, + sym_ellipsis, + sym_float, + ACTIONS(1035), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [16962] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(651), 1, + anon_sym_class, anon_sym_not, - ACTIONS(653), 1, anon_sym_lambda, - ACTIONS(689), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(699), 1, anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(904), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17054] = 20, + [16564] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(1037), 13, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(574), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(1094), 1, - sym_expression, - ACTIONS(75), 2, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(490), 5, + ACTIONS(1039), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17146] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, + anon_sym_class, + anon_sym_not, anon_sym_lambda, - ACTIONS(308), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(310), 1, + sym_true, + sym_false, + sym_none, + [16623] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1027), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1154), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, + sym_ellipsis, + sym_float, + ACTIONS(1025), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17238] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, + anon_sym_class, + anon_sym_not, anon_sym_lambda, - ACTIONS(308), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(310), 1, + sym_true, + sym_false, + sym_none, + [16682] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(1041), 1, + anon_sym_elif, + STATE(326), 1, + aux_sym_if_statement_repeat1, + STATE(473), 1, + sym_elif_clause, + STATE(558), 1, + sym_else_clause, + ACTIONS(1019), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1150), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, + sym_ellipsis, + sym_float, + ACTIONS(1021), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, + sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + [16751] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1045), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1043), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17330] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, + anon_sym_class, + anon_sym_not, anon_sym_lambda, - ACTIONS(308), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(310), 1, + sym_true, + sym_false, + sym_none, + [16810] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(1023), 1, + anon_sym_elif, + STATE(354), 1, + aux_sym_if_statement_repeat1, + STATE(463), 1, + sym_elif_clause, + STATE(596), 1, + sym_else_clause, + ACTIONS(1047), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1106), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, + sym_ellipsis, + sym_float, + ACTIONS(1049), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, + sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + [16879] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(1023), 1, + anon_sym_elif, + STATE(316), 1, + aux_sym_if_statement_repeat1, + STATE(463), 1, + sym_elif_clause, + STATE(597), 1, + sym_else_clause, + ACTIONS(1051), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1053), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17422] = 20, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [16948] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(652), 1, + STATE(822), 1, sym_primary_expression, - STATE(1092), 1, + STATE(1186), 1, sym_expression, - ACTIONS(304), 2, + STATE(1565), 1, + sym_exception_list, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -37289,709 +37475,821 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [17514] = 20, + [17043] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1151), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17606] = 20, + ACTIONS(270), 1, + anon_sym_COMMA, + ACTIONS(278), 1, + anon_sym_COLON_EQ, + ACTIONS(1055), 1, + anon_sym_for, + ACTIONS(1057), 1, + anon_sym_with, + ACTIONS(1059), 1, + anon_sym_def, + ACTIONS(280), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(302), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(265), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(298), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [17116] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(1045), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1059), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, + sym_ellipsis, + sym_float, + ACTIONS(1043), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17698] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, + anon_sym_class, anon_sym_not, - ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(488), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(494), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(985), 1, - sym_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 4, - sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17790] = 20, + [17175] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(1041), 1, + anon_sym_elif, + STATE(399), 1, + aux_sym_if_statement_repeat1, + STATE(473), 1, + sym_elif_clause, + STATE(568), 1, + sym_else_clause, + ACTIONS(1047), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(889), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, + sym_ellipsis, + sym_float, + ACTIONS(1049), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17882] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, + anon_sym_class, + anon_sym_not, anon_sym_lambda, - ACTIONS(308), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(310), 1, + sym_true, + sym_false, + sym_none, + [17244] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(1041), 1, + anon_sym_elif, + STATE(333), 1, + aux_sym_if_statement_repeat1, + STATE(473), 1, + sym_elif_clause, + STATE(569), 1, + sym_else_clause, + ACTIONS(1051), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(934), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, + sym_ellipsis, + sym_float, + ACTIONS(1053), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17974] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, + anon_sym_class, + anon_sym_not, anon_sym_lambda, - ACTIONS(308), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(310), 1, + sym_true, + sym_false, + sym_none, + [17313] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1065), 1, + anon_sym_except, + STATE(328), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(1061), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(879), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, + sym_ellipsis, + sym_float, + ACTIONS(1063), 35, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [18066] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, + anon_sym_class, anon_sym_not, - ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(488), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(494), 1, anon_sym_await, - ACTIONS(568), 1, + sym_true, + sym_false, + sym_none, + [17376] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1072), 1, + anon_sym_except, + STATE(329), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(1068), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(574), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(1069), 1, - sym_expression, - ACTIONS(75), 2, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(1070), 35, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_finally, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, + sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + [17439] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1075), 1, + anon_sym_except, + STATE(330), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(1061), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1063), 35, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [18158] = 20, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [17502] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(1078), 1, + anon_sym_except, + STATE(331), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(1068), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, anon_sym_LPAREN, - ACTIONS(617), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1070), 35, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_finally, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - ACTIONS(899), 1, anon_sym_lambda, - ACTIONS(901), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(1064), 1, - sym_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + sym_true, + sym_false, + sym_none, + [17565] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1031), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 4, + sym_ellipsis, + sym_float, + ACTIONS(1029), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, + anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, + sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + [17624] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(1041), 1, + anon_sym_elif, + STATE(399), 1, + aux_sym_if_statement_repeat1, + STATE(473), 1, + sym_elif_clause, + STATE(582), 1, + sym_else_clause, + ACTIONS(1033), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1035), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(996), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [18250] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, + anon_sym_class, anon_sym_not, - ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(488), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(494), 1, anon_sym_await, - ACTIONS(568), 1, + sym_true, + sym_false, + sym_none, + [17693] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1081), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(574), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(984), 1, - sym_expression, - ACTIONS(75), 2, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(1083), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, + anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [17752] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1037), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 4, + sym_ellipsis, + sym_float, + ACTIONS(1039), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, + anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, + sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + [17811] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1081), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1083), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [18342] = 20, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [17870] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(961), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, + STATE(794), 1, sym_string, - STATE(700), 1, + STATE(795), 1, sym_template_string, - STATE(702), 1, + STATE(822), 1, sym_primary_expression, - STATE(1081), 1, + STATE(1205), 1, sym_expression, - ACTIONS(75), 2, + STATE(1550), 1, + sym_exception_list, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38009,61 +38307,124 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18434] = 20, + [17965] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(270), 1, + anon_sym_COMMA, + ACTIONS(278), 1, + anon_sym_COLON_EQ, + ACTIONS(1085), 1, + anon_sym_for, + ACTIONS(1087), 1, + anon_sym_with, + ACTIONS(1089), 1, + anon_sym_def, + ACTIONS(280), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(302), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(265), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(298), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, anon_sym_LBRACK, - ACTIONS(619), 1, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [18038] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(718), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(1015), 1, + STATE(1224), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38081,39 +38442,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18526] = 20, + [18130] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1158), 1, + STATE(1030), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -38122,20 +38483,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38153,61 +38514,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18618] = 20, + [18222] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1142), 1, + STATE(1112), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38225,61 +38586,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18710] = 20, + [18314] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(910), 1, + STATE(782), 1, + sym_string, + STATE(1324), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38297,61 +38658,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18802] = 20, + [18406] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(718), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(1021), 1, + STATE(1135), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38369,61 +38730,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18894] = 20, + [18498] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, - anon_sym_await, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(1024), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1071), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38441,61 +38802,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18986] = 20, + [18590] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, - anon_sym_await, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(1027), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1282), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38513,39 +38874,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19078] = 20, + [18682] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1043), 1, + STATE(1155), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -38554,20 +38915,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38585,61 +38946,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19170] = 20, + [18774] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(1140), 1, + STATE(1296), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38657,39 +39018,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19262] = 20, + [18866] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1058), 1, + STATE(1214), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -38698,20 +39059,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38729,61 +39090,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19354] = 20, + [18958] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(718), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(1029), 1, + STATE(1197), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38801,39 +39162,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19446] = 20, + [19050] = 20, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(897), 1, + STATE(1297), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -38842,20 +39203,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38873,61 +39234,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19538] = 20, + [19142] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(718), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(993), 1, + STATE(1121), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38945,7 +39306,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19630] = 20, + [19234] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, @@ -38958,21 +39319,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(320), 1, anon_sym_await, ACTIONS(568), 1, anon_sym_LPAREN, ACTIONS(574), 1, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, + STATE(763), 1, sym_template_string, - STATE(702), 1, + STATE(779), 1, sym_primary_expression, - STATE(1068), 1, + STATE(782), 1, + sym_string, + STATE(1292), 1, sym_expression, ACTIONS(75), 2, sym_ellipsis, @@ -38986,20 +39347,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39017,61 +39378,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19722] = 20, + [19326] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(1170), 1, + STATE(782), 1, + sym_string, + STATE(1123), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39089,61 +39450,119 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19814] = 20, + [19418] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(1095), 1, + anon_sym_elif, + STATE(354), 1, + aux_sym_if_statement_repeat1, + STATE(463), 1, + sym_elif_clause, + ACTIONS(1091), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(901), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 4, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1093), 34, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, + sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + [19482] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1279), 1, + sym_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39161,61 +39580,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19906] = 20, + [19574] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(652), 1, + STATE(822), 1, sym_primary_expression, - STATE(900), 1, + STATE(1188), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39233,61 +39652,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19998] = 20, + [19666] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(725), 1, sym_primary_expression, - STATE(1091), 1, + STATE(1087), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39305,7 +39724,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20090] = 20, + [19758] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -39324,15 +39743,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1160), 1, + STATE(1228), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, @@ -39352,14 +39771,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39377,61 +39796,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20182] = 20, + [19850] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(896), 1, + STATE(782), 1, + sym_string, + STATE(1141), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39449,61 +39868,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20274] = 20, + [19942] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(895), 1, + STATE(782), 1, + sym_string, + STATE(1144), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39521,61 +39940,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20366] = 20, + [20034] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(725), 1, sym_primary_expression, - STATE(1003), 1, + STATE(1064), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39593,7 +40012,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20458] = 20, + [20126] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -39612,15 +40031,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1128), 1, + STATE(1189), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, @@ -39640,14 +40059,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39665,7 +40084,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20550] = 20, + [20218] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, @@ -39678,21 +40097,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(320), 1, anon_sym_await, ACTIONS(568), 1, anon_sym_LPAREN, ACTIONS(574), 1, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, + STATE(763), 1, sym_template_string, - STATE(702), 1, + STATE(779), 1, sym_primary_expression, - STATE(970), 1, + STATE(782), 1, + sym_string, + STATE(1285), 1, sym_expression, ACTIONS(75), 2, sym_ellipsis, @@ -39706,20 +40125,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39737,39 +40156,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20642] = 20, + [20310] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1164), 1, + STATE(1062), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -39778,20 +40197,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39809,7 +40228,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20734] = 20, + [20402] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, @@ -39822,21 +40241,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(320), 1, anon_sym_await, ACTIONS(568), 1, anon_sym_LPAREN, ACTIONS(574), 1, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, + STATE(763), 1, sym_template_string, - STATE(702), 1, + STATE(779), 1, sym_primary_expression, - STATE(969), 1, + STATE(782), 1, + sym_string, + STATE(1226), 1, sym_expression, ACTIONS(75), 2, sym_ellipsis, @@ -39850,20 +40269,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39881,119 +40300,194 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20826] = 6, + [20494] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1005), 1, - anon_sym_elif, - STATE(369), 1, - aux_sym_if_statement_repeat1, - STATE(433), 1, - sym_elif_clause, - ACTIONS(1003), 13, - sym__dedent, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, + ACTIONS(83), 1, sym__template_string_start, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(574), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1145), 1, + sym_expression, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(1001), 34, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(316), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [20890] = 20, + STATE(1158), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [20586] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(270), 1, + anon_sym_COMMA, + ACTIONS(278), 1, + anon_sym_COLON_EQ, + ACTIONS(1098), 1, + sym__string_start, + STATE(1393), 1, + sym_string, + ACTIONS(280), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(302), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(265), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(298), 16, + sym__newline, + anon_sym_DOT, anon_sym_LPAREN, - ACTIONS(617), 1, + anon_sym_if, + anon_sym_in, anon_sym_LBRACK, - ACTIONS(619), 1, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [20656] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(718), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(1019), 1, + STATE(1156), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40011,7 +40505,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20982] = 20, + [20748] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -40024,21 +40518,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(689), 1, + ACTIONS(801), 1, sym_identifier, - ACTIONS(699), 1, + ACTIONS(807), 1, anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(879), 1, + STATE(1068), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, @@ -40052,20 +40546,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40083,7 +40577,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21074] = 20, + [20840] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -40102,15 +40596,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(883), 1, + STATE(1096), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, @@ -40130,14 +40624,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40155,61 +40649,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21166] = 20, + [20932] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(1162), 1, + STATE(782), 1, + sym_string, + STATE(1109), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40227,39 +40721,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21258] = 20, + [21024] = 20, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(884), 1, + STATE(1262), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -40268,20 +40762,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40299,39 +40793,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21350] = 20, + [21116] = 20, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(967), 1, + STATE(1274), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -40340,20 +40834,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40371,61 +40865,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21442] = 20, + [21208] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(725), 1, sym_primary_expression, - STATE(1093), 1, + STATE(1069), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40443,7 +40937,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21534] = 20, + [21300] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, @@ -40456,21 +40950,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(320), 1, anon_sym_await, ACTIONS(568), 1, anon_sym_LPAREN, ACTIONS(574), 1, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, + STATE(763), 1, sym_template_string, - STATE(702), 1, + STATE(779), 1, sym_primary_expression, - STATE(1008), 1, + STATE(782), 1, + sym_string, + STATE(1258), 1, sym_expression, ACTIONS(75), 2, sym_ellipsis, @@ -40484,20 +40978,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40515,7 +41009,79 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21626] = 20, + [21392] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(725), 1, + sym_primary_expression, + STATE(1074), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(805), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [21484] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -40534,15 +41100,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1125), 1, + STATE(1231), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, @@ -40562,14 +41128,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40587,61 +41153,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21718] = 20, + [21576] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(979), 1, + STATE(1166), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40659,61 +41225,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21810] = 20, + [21668] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(961), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, + STATE(794), 1, sym_string, - STATE(700), 1, + STATE(795), 1, sym_template_string, - STATE(702), 1, + STATE(822), 1, sym_primary_expression, - STATE(1073), 1, + STATE(1192), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40731,180 +41297,205 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21902] = 9, + [21760] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(270), 1, - anon_sym_COMMA, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(1008), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - STATE(1256), 1, - sym_string, - ACTIONS(280), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(302), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(265), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(298), 16, - sym__newline, - anon_sym_DOT, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, + ACTIONS(591), 1, anon_sym_LBRACK, + ACTIONS(747), 1, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [21972] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1010), 1, - anon_sym_elif, - STATE(382), 1, - aux_sym_if_statement_repeat1, - STATE(417), 1, - sym_elif_clause, - ACTIONS(1003), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1295), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1001), 34, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [21852] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, + ACTIONS(971), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, + ACTIONS(973), 1, anon_sym_await, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(822), 1, + sym_primary_expression, + STATE(1193), 1, + sym_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 4, + sym_integer, sym_true, sym_false, sym_none, - [22036] = 20, + ACTIONS(965), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1176), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [21944] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(971), 1, anon_sym_lambda, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, + ACTIONS(973), 1, anon_sym_await, - STATE(569), 1, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(653), 1, + STATE(822), 1, sym_primary_expression, - STATE(888), 1, + STATE(1194), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40922,61 +41513,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22128] = 20, + [22036] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(1083), 1, + STATE(782), 1, + sym_string, + STATE(1269), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40994,39 +41585,42 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22220] = 20, + [22128] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(689), 1, + ACTIONS(1100), 1, sym_identifier, - ACTIONS(699), 1, + ACTIONS(1104), 1, anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(1007), 1, + STATE(1096), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(509), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -41035,24 +41629,22 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(1102), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 15, sym_binary_operator, sym_unary_operator, - sym_attribute, - sym_subscript, sym_call, sym_list, sym_set, @@ -41066,7 +41658,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22312] = 20, + [22222] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -41085,15 +41677,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(927), 1, + STATE(1322), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, @@ -41113,14 +41705,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41138,61 +41730,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22404] = 20, + [22314] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(971), 1, anon_sym_lambda, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, + ACTIONS(973), 1, anon_sym_await, - STATE(569), 1, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(653), 1, + STATE(822), 1, sym_primary_expression, - STATE(893), 1, + STATE(1195), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41210,61 +41802,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22496] = 20, + [22406] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(961), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, + STATE(794), 1, sym_string, - STATE(700), 1, + STATE(795), 1, sym_template_string, - STATE(702), 1, + STATE(822), 1, sym_primary_expression, - STATE(1009), 1, + STATE(1208), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41282,66 +41874,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22588] = 21, + [22498] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(1013), 1, + ACTIONS(961), 1, sym_identifier, - ACTIONS(1017), 1, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, anon_sym_await, - STATE(569), 1, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(652), 1, + STATE(822), 1, sym_primary_expression, - STATE(934), 1, + STATE(1209), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(643), 2, sym_ellipsis, sym_float, - STATE(452), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(1015), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 15, + STATE(953), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -41355,665 +41946,736 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22682] = 5, + [22590] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1023), 1, - anon_sym_case, - STATE(412), 2, - sym_case_block, - aux_sym_cases_repeat1, - ACTIONS(1021), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(597), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(603), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(725), 1, + sym_primary_expression, + STATE(1085), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1019), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, sym_integer, - sym_identifier, - anon_sym_await, sym_true, sym_false, sym_none, - [22743] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1025), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1027), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(805), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [22800] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [22682] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1031), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1125), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1029), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [22857] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [22774] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1025), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1030), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1027), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [22914] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [22866] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1033), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1165), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1035), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [22971] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [22958] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1037), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1103), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1039), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23028] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23050] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1041), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1104), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1043), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23085] = 8, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23142] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(270), 1, - anon_sym_COMMA, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(1045), 1, - sym_identifier, - ACTIONS(280), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(298), 10, - sym__newline, - anon_sym_DOT, + ACTIONS(609), 1, anon_sym_LPAREN, + ACTIONS(617), 1, anon_sym_LBRACK, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - sym__semicolon, - ACTIONS(302), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(265), 21, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - anon_sym_is, - [23152] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1047), 13, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(625), 1, sym__string_start, + ACTIONS(627), 1, sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1105), 1, + sym_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1049), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23209] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23234] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1051), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1106), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1053), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23266] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23326] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1055), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1349), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1057), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23323] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23418] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1041), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1107), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1043), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23380] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23510] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1037), 13, + ACTIONS(1106), 1, + anon_sym_elif, + STATE(399), 1, + aux_sym_if_statement_repeat1, + STATE(473), 1, + sym_elif_clause, + ACTIONS(1091), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -42027,7 +42689,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1039), 36, + ACTIONS(1093), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -42045,8 +42707,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -42064,1154 +42724,1145 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [23437] = 3, + [23574] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1055), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1108), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1057), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23494] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23666] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1051), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(631), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(639), 1, anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(822), 1, + sym_primary_expression, + STATE(1210), 1, + sym_expression, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(1053), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(965), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23551] = 3, + STATE(1176), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23758] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1059), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1361), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1061), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23608] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23850] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1047), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1168), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1049), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23665] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23942] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1031), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1307), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1029), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23722] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24034] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1059), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1077), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1061), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23779] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24126] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1067), 1, - anon_sym_case, - STATE(409), 2, - sym_case_block, - aux_sym_cases_repeat1, - ACTIONS(1063), 13, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, + ACTIONS(83), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(574), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1177), 1, + sym_expression, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(1065), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(316), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23840] = 3, + STATE(1158), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24218] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1033), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1334), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1035), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23897] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24310] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1070), 13, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1149), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1072), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23954] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24402] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1074), 1, - anon_sym_case, - STATE(412), 2, - sym_case_block, - aux_sym_cases_repeat1, - ACTIONS(1063), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1150), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1065), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24015] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24494] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1070), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1151), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1072), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24072] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24586] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1077), 1, - anon_sym_case, - STATE(409), 2, - sym_case_block, - aux_sym_cases_repeat1, - ACTIONS(1021), 13, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1152), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1019), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24133] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24678] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(855), 1, - anon_sym_finally, - STATE(523), 1, - sym_finally_clause, - ACTIONS(1079), 13, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1081), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, anon_sym_not, + ACTIONS(727), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, + ACTIONS(729), 1, anon_sym_await, - sym_true, - sym_false, - sym_none, - [24193] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1090), 1, - anon_sym_COLON_EQ, - ACTIONS(1092), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(1085), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1094), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1083), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - ACTIONS(1088), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - [24257] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1096), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1153), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1098), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, + ACTIONS(306), 4, sym_integer, - sym_identifier, - anon_sym_await, sym_true, sym_false, sym_none, - [24313] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(877), 1, - anon_sym_else, - STATE(473), 1, - sym_else_clause, - ACTIONS(1102), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1100), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24373] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24770] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1106), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1104), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, anon_sym_not, + ACTIONS(727), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, + ACTIONS(729), 1, anon_sym_await, - sym_true, - sym_false, - sym_none, - [24429] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(851), 1, - anon_sym_else, - STATE(513), 1, - sym_else_clause, - ACTIONS(1108), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1157), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1110), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24489] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24862] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - STATE(548), 1, - sym_else_clause, - ACTIONS(1114), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1102), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1112), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24549] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(863), 16, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_EQ, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(861), 32, - sym__newline, - anon_sym_DOT, - anon_sym_from, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - sym__semicolon, - [24605] = 21, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24954] = 20, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(679), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(854), 1, - sym_pattern, - STATE(862), 1, + STATE(719), 1, sym_primary_expression, + STATE(1082), 1, + sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1116), 2, - anon_sym_RPAREN, - anon_sym_RBRACK, - STATE(735), 2, - sym_attribute, - sym_subscript, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(673), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(649), 15, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -43225,612 +43876,857 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24697] = 5, + [25046] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - STATE(481), 1, - sym_else_clause, - ACTIONS(1122), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1030), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1120), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24757] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25138] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(881), 1, - anon_sym_finally, - STATE(499), 1, - sym_finally_clause, - ACTIONS(1126), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1335), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1124), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25230] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, + ACTIONS(757), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, + ACTIONS(759), 1, anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1183), 1, + sym_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, sym_true, sym_false, sym_none, - [24817] = 5, + ACTIONS(753), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25322] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - STATE(532), 1, - sym_else_clause, - ACTIONS(1114), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1339), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1112), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24877] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25414] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - STATE(505), 1, - sym_else_clause, - ACTIONS(1130), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1089), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1128), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25506] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(263), 1, sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, anon_sym_await, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1366), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, sym_true, sym_false, sym_none, - [24937] = 3, + ACTIONS(276), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25598] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1132), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1345), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1134), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24993] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(270), 1, - anon_sym_COMMA, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(280), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(302), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(265), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(298), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [25057] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25690] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - STATE(559), 1, - sym_else_clause, - ACTIONS(1108), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1346), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1110), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [25117] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25782] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(881), 1, - anon_sym_finally, - STATE(479), 1, - sym_finally_clause, - ACTIONS(1079), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1347), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1081), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [25177] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25874] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - STATE(545), 1, - sym_else_clause, - ACTIONS(1136), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1238), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1138), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [25237] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25966] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1096), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1063), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1098), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [25293] = 21, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26058] = 20, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(679), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(854), 1, - sym_pattern, - STATE(862), 1, + STATE(719), 1, sym_primary_expression, + STATE(1065), 1, + sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1140), 2, - anon_sym_RPAREN, - anon_sym_RBRACK, - STATE(735), 2, - sym_attribute, - sym_subscript, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(673), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(649), 15, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -43844,124 +44740,586 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25385] = 5, + [26150] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - STATE(510), 1, - sym_else_clause, - ACTIONS(1130), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1070), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, sym_float, - ACTIONS(1128), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26242] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, anon_sym_lambda, - anon_sym_yield, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1350), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26334] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(961), 1, sym_identifier, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, anon_sym_await, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(822), 1, + sym_primary_expression, + STATE(1243), 1, + sym_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 4, + sym_integer, sym_true, sym_false, sym_none, - [25445] = 5, + ACTIONS(965), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1176), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26426] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - STATE(537), 1, - sym_else_clause, - ACTIONS(1136), 13, - sym__dedent, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, + ACTIONS(83), 1, sym__template_string_start, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1191), 1, + sym_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(316), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1158), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26518] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1227), 1, + sym_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(316), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1158), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26610] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1351), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26702] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1352), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1138), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26794] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(69), 1, anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(314), 1, sym_identifier, + ACTIONS(320), 1, anon_sym_await, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1163), 1, + sym_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, sym_true, sym_false, sym_none, - [25505] = 5, + ACTIONS(316), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1158), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26886] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - STATE(566), 1, - sym_else_clause, - ACTIONS(1102), 13, + ACTIONS(1109), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -43975,7 +45333,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1100), 33, + ACTIONS(1111), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -43988,10 +45346,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -44009,17 +45370,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [25565] = 5, + [26943] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - STATE(483), 1, - sym_else_clause, - ACTIONS(1122), 13, + ACTIONS(1115), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -44030,7 +45387,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1120), 33, + ACTIONS(1113), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -44043,10 +45400,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -44064,10 +45424,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [25625] = 3, + [27000] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1132), 13, + ACTIONS(1119), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -44081,7 +45441,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1134), 35, + ACTIONS(1117), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -44094,12 +45454,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -44117,252 +45478,67 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [25681] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1142), 1, - anon_sym_COMMA, - ACTIONS(1145), 1, - anon_sym_COLON_EQ, - ACTIONS(1147), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(1149), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1088), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1083), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [25745] = 22, + [27057] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1123), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, anon_sym_LPAREN, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - ACTIONS(1151), 1, - anon_sym_RPAREN, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - STATE(1177), 1, - sym_pattern, - STATE(1416), 1, - sym__patterns, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(673), 5, + sym_ellipsis, + sym_float, + ACTIONS(1121), 36, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [25839] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(585), 1, - anon_sym_COLON_EQ, - ACTIONS(587), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(580), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(593), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(298), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - ACTIONS(265), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - [25903] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(867), 16, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_EQ, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(865), 32, - sym__newline, - anon_sym_DOT, - anon_sym_from, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_LBRACK, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - sym__semicolon, - [25959] = 3, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [27114] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1106), 13, + ACTIONS(1127), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -44373,7 +45549,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1104), 35, + ACTIONS(1125), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -44386,12 +45562,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -44409,17 +45586,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [26015] = 5, + [27171] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(855), 1, - anon_sym_finally, - STATE(531), 1, - sym_finally_clause, - ACTIONS(1126), 13, + ACTIONS(1131), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -44430,7 +45603,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1124), 33, + ACTIONS(1129), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -44443,10 +45616,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -44464,278 +45640,67 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [26075] = 6, + [27228] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1155), 1, - anon_sym_COMMA, - ACTIONS(1162), 1, - anon_sym_EQ, - ACTIONS(1160), 14, - anon_sym_COLON, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1158), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1153), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [26136] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1133), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - STATE(1237), 1, - sym_pattern, - STATE(1443), 1, - sym_pattern_list, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(673), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [26227] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, - anon_sym_LPAREN, - ACTIONS(679), 1, anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - STATE(1279), 1, - sym_pattern, - STATE(1504), 1, - sym_pattern_list, - ACTIONS(304), 2, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, sym_ellipsis, sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(673), 5, + ACTIONS(1135), 36, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [26318] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(667), 1, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(669), 1, - anon_sym_LPAREN, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - STATE(1306), 1, - sym_pattern, - STATE(1476), 1, - sym_pattern_list, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, sym_true, sym_false, sym_none, - ACTIONS(673), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [26409] = 3, + [27285] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1164), 13, + ACTIONS(1139), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -44746,7 +45711,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1166), 34, + ACTIONS(1137), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -44759,13 +45724,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -44781,123 +45748,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [26464] = 6, + [27342] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1170), 1, - anon_sym_COMMA, - ACTIONS(1177), 1, - anon_sym_EQ, - ACTIONS(1175), 14, - anon_sym_COLON, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1173), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1168), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [26525] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1092), 1, - anon_sym_EQ, - ACTIONS(1085), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1083), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - ACTIONS(1094), 14, - anon_sym_COLON, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1088), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - [26586] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1179), 13, + ACTIONS(1109), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -44908,7 +45765,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1181), 34, + ACTIONS(1111), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -44921,13 +45778,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -44943,13 +45802,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [26641] = 3, + [27399] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1183), 13, + ACTIONS(1133), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -44960,7 +45819,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1185), 34, + ACTIONS(1135), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -44973,13 +45832,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -44995,10 +45856,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [26696] = 3, + [27456] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1179), 13, + ACTIONS(1143), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -45012,7 +45873,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1181), 34, + ACTIONS(1141), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45025,13 +45886,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -45047,83 +45910,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [26751] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, - anon_sym_LPAREN, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - STATE(1233), 1, - sym_pattern, - STATE(1422), 1, - sym_pattern_list, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(673), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [26842] = 3, + [27513] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1187), 13, + ACTIONS(1147), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45134,7 +45927,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1189), 34, + ACTIONS(1145), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45147,10 +45940,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, anon_sym_finally, anon_sym_with, anon_sym_match, @@ -45169,138 +45964,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [26897] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, - anon_sym_LPAREN, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - STATE(1291), 1, - sym_pattern, - STATE(1507), 1, - sym_pattern_list, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(673), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [26988] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1142), 1, - anon_sym_COMMA, - ACTIONS(1147), 1, - anon_sym_EQ, - ACTIONS(1149), 14, - anon_sym_COLON, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1088), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1083), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [27049] = 3, + [27570] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1183), 13, - sym__dedent, + ACTIONS(1143), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45311,7 +45981,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1185), 34, + ACTIONS(1141), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45324,13 +45994,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -45346,10 +46018,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27104] = 3, + [27627] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1191), 13, + ACTIONS(1147), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -45363,7 +46035,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1193), 34, + ACTIONS(1145), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45376,10 +46048,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, anon_sym_finally, anon_sym_with, anon_sym_match, @@ -45398,13 +46072,18 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27159] = 3, + [27684] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1164), 13, - sym__dedent, + ACTIONS(1153), 1, + anon_sym_case, + STATE(450), 2, + sym_case_block, + aux_sym_cases_repeat1, + ACTIONS(1149), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45415,7 +46094,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1166), 34, + ACTIONS(1151), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45434,7 +46113,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -45450,13 +46128,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27214] = 3, + [27745] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1191), 13, - sym__dedent, + ACTIONS(1127), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45467,7 +46145,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1193), 34, + ACTIONS(1125), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45480,10 +46158,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, anon_sym_finally, anon_sym_with, anon_sym_match, @@ -45502,10 +46182,15 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27269] = 3, + [27802] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1197), 13, + ACTIONS(1160), 1, + anon_sym_case, + STATE(460), 2, + sym_case_block, + aux_sym_cases_repeat1, + ACTIONS(1158), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -45519,7 +46204,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1195), 34, + ACTIONS(1156), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45538,7 +46223,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -45554,10 +46238,15 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27324] = 3, + [27863] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1197), 13, + ACTIONS(1162), 1, + anon_sym_case, + STATE(450), 2, + sym_case_block, + aux_sym_cases_repeat1, + ACTIONS(1158), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -45571,7 +46260,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1195), 34, + ACTIONS(1156), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45590,7 +46279,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -45606,13 +46294,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27379] = 3, + [27924] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1187), 13, - sym__dedent, + ACTIONS(1115), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45623,7 +46311,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1189), 34, + ACTIONS(1113), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45636,10 +46324,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, anon_sym_finally, anon_sym_with, anon_sym_match, @@ -45658,83 +46348,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27434] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, - anon_sym_LPAREN, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - STATE(1280), 1, - sym_pattern, - STATE(1428), 1, - sym_pattern_list, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(673), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [27525] = 3, + [27981] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1201), 13, - sym__dedent, + ACTIONS(1131), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45745,7 +46365,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1199), 33, + ACTIONS(1129), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45758,10 +46378,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -45779,10 +46402,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27579] = 3, + [28038] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(875), 13, + ACTIONS(1119), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -45796,7 +46419,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(873), 33, + ACTIONS(1117), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45809,10 +46432,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -45830,13 +46456,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27633] = 3, + [28095] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1205), 13, - sym__dedent, + ACTIONS(1139), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45847,7 +46473,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1203), 33, + ACTIONS(1137), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45860,10 +46486,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -45881,61 +46510,69 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27687] = 3, + [28152] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1209), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(270), 1, + anon_sym_COMMA, + ACTIONS(278), 1, + anon_sym_COLON_EQ, + ACTIONS(1164), 1, + sym_identifier, + ACTIONS(280), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(298), 10, + sym__newline, + anon_sym_DOT, anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_SEMI, + ACTIONS(302), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(265), 21, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1207), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [27741] = 3, + anon_sym_and, + anon_sym_or, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + anon_sym_is, + [28219] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1211), 13, + ACTIONS(1123), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -45949,7 +46586,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1213), 33, + ACTIONS(1121), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45962,10 +46599,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -45983,10 +46623,15 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27795] = 3, + [28276] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1217), 13, + ACTIONS(1166), 1, + anon_sym_case, + STATE(460), 2, + sym_case_block, + aux_sym_cases_repeat1, + ACTIONS(1149), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46000,7 +46645,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1215), 33, + ACTIONS(1151), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46034,64 +46679,141 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27849] = 3, + [28337] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1221), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(675), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1005), 1, + sym_pattern, + STATE(1012), 1, + sym_primary_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1219), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, + ACTIONS(1169), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, + anon_sym_print, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [28429] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1175), 1, + anon_sym_COMMA, + ACTIONS(1180), 1, + anon_sym_COLON_EQ, + ACTIONS(1182), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(1184), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1178), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [27903] = 3, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [28493] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1225), 13, - sym__dedent, + ACTIONS(1186), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46102,7 +46824,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1223), 33, + ACTIONS(1188), 35, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46115,6 +46837,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -46136,10 +46860,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27957] = 3, + [28549] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1227), 13, + ACTIONS(1190), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46153,7 +46877,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1229), 33, + ACTIONS(1192), 35, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46166,6 +46890,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -46187,10 +46913,71 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28011] = 3, + [28605] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1233), 13, + ACTIONS(270), 1, + anon_sym_COMMA, + ACTIONS(278), 1, + anon_sym_COLON_EQ, + ACTIONS(280), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(302), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(265), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(298), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [28669] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(941), 1, + anon_sym_else, + STATE(600), 1, + sym_else_clause, + ACTIONS(1196), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46204,7 +46991,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1231), 33, + ACTIONS(1194), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46238,13 +47025,88 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28065] = 3, + [28729] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(847), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, + anon_sym_LPAREN, + ACTIONS(675), 1, + anon_sym_LBRACK, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1005), 1, + sym_pattern, + STATE(1012), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(1198), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [28821] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(953), 1, + anon_sym_finally, + STATE(517), 1, + sym_finally_clause, + ACTIONS(1200), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46255,7 +47117,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(849), 33, + ACTIONS(1202), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46289,10 +47151,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28119] = 3, + [28881] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1237), 13, + ACTIONS(941), 1, + anon_sym_else, + STATE(595), 1, + sym_else_clause, + ACTIONS(1206), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46306,7 +47172,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1235), 33, + ACTIONS(1204), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46340,10 +47206,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28173] = 3, + [28941] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1241), 13, + ACTIONS(945), 1, + anon_sym_finally, + STATE(587), 1, + sym_finally_clause, + ACTIONS(1210), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46357,7 +47227,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1239), 33, + ACTIONS(1208), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46391,13 +47261,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28227] = 3, + [29001] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1245), 13, - sym__dedent, + ACTIONS(1212), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46408,7 +47278,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1243), 33, + ACTIONS(1214), 35, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46421,6 +47291,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -46442,78 +47314,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28281] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, - anon_sym_LPAREN, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(854), 1, - sym_pattern, - STATE(862), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(673), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [28369] = 3, + [29057] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1245), 13, + ACTIONS(953), 1, + anon_sym_finally, + STATE(530), 1, + sym_finally_clause, + ACTIONS(1210), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46527,7 +47335,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1243), 33, + ACTIONS(1208), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46561,13 +47369,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28423] = 3, + [29117] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1247), 13, + ACTIONS(1186), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46578,7 +47386,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1249), 33, + ACTIONS(1188), 35, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46591,6 +47399,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -46612,10 +47422,124 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28477] = 3, + [29173] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1251), 13, + ACTIONS(1219), 1, + anon_sym_COLON_EQ, + ACTIONS(1221), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(1216), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1223), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1173), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + ACTIONS(1178), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + [29237] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1001), 16, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_EQ, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(999), 32, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_SEMI, + [29293] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(949), 1, + anon_sym_else, + STATE(544), 1, + sym_else_clause, + ACTIONS(1196), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46629,7 +47553,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1253), 33, + ACTIONS(1194), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46663,10 +47587,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28531] = 3, + [29353] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1257), 13, + ACTIONS(941), 1, + anon_sym_else, + STATE(572), 1, + sym_else_clause, + ACTIONS(1227), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46680,7 +47608,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1255), 33, + ACTIONS(1225), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46714,61 +47642,86 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28585] = 3, + [29413] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(1257), 13, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(675), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + ACTIONS(1229), 1, + anon_sym_RPAREN, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + STATE(1356), 1, + sym_pattern, + STATE(1643), 1, + sym__patterns, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1255), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [28639] = 3, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [29507] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1261), 13, + ACTIONS(945), 1, + anon_sym_finally, + STATE(574), 1, + sym_finally_clause, + ACTIONS(1200), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46782,7 +47735,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1259), 33, + ACTIONS(1202), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46816,10 +47769,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28693] = 3, + [29567] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1265), 13, + ACTIONS(941), 1, + anon_sym_else, + STATE(592), 1, + sym_else_clause, + ACTIONS(1233), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46833,7 +47790,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1263), 33, + ACTIONS(1231), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46867,10 +47824,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28747] = 3, + [29627] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1261), 13, + ACTIONS(949), 1, + anon_sym_else, + STATE(536), 1, + sym_else_clause, + ACTIONS(1233), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46884,7 +47845,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1259), 33, + ACTIONS(1231), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46918,10 +47879,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28801] = 3, + [29687] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1265), 13, + ACTIONS(949), 1, + anon_sym_else, + STATE(528), 1, + sym_else_clause, + ACTIONS(1235), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46935,7 +47900,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1263), 33, + ACTIONS(1237), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46969,64 +47934,70 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28855] = 3, + [29747] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1269), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, + ACTIONS(1015), 16, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, anon_sym_STAR_STAR, + anon_sym_EQ, anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1267), 33, - anon_sym_import, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1013), 32, + sym__newline, + anon_sym_DOT, anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, + anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + anon_sym_COLON, + anon_sym_in, + anon_sym_LBRACK, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [28909] = 3, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_SEMI, + [29803] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1273), 13, - sym__dedent, + ACTIONS(949), 1, + anon_sym_else, + STATE(539), 1, + sym_else_clause, + ACTIONS(1206), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47037,7 +48008,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1271), 33, + ACTIONS(1204), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47071,13 +48042,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28963] = 3, + [29863] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1277), 13, - sym__dedent, + ACTIONS(949), 1, + anon_sym_else, + STATE(588), 1, + sym_else_clause, + ACTIONS(1239), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47088,7 +48063,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1275), 33, + ACTIONS(1241), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47122,10 +48097,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29017] = 3, + [29923] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1281), 13, + ACTIONS(1212), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47139,7 +48114,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1279), 33, + ACTIONS(1214), 35, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47152,6 +48127,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -47173,10 +48150,67 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29071] = 3, + [29979] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1285), 13, + ACTIONS(585), 1, + anon_sym_COLON_EQ, + ACTIONS(587), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(580), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(593), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(298), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + ACTIONS(265), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + [30043] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1190), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47190,7 +48224,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1283), 33, + ACTIONS(1192), 35, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47203,6 +48237,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -47224,13 +48260,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29125] = 3, + [30099] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1287), 13, + ACTIONS(941), 1, + anon_sym_else, + STATE(560), 1, + sym_else_clause, + ACTIONS(1239), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47241,7 +48281,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1289), 33, + ACTIONS(1241), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47275,13 +48315,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29179] = 3, + [30159] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1079), 13, - sym__dedent, + ACTIONS(949), 1, + anon_sym_else, + STATE(515), 1, + sym_else_clause, + ACTIONS(1227), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47292,7 +48336,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1081), 33, + ACTIONS(1225), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47326,10 +48370,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29233] = 3, + [30219] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1293), 13, + ACTIONS(941), 1, + anon_sym_else, + STATE(585), 1, + sym_else_clause, + ACTIONS(1235), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47343,7 +48391,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1291), 33, + ACTIONS(1237), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47377,10 +48425,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29287] = 3, + [30279] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1211), 13, + ACTIONS(1245), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47394,7 +48442,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1213), 33, + ACTIONS(1243), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47411,6 +48459,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -47428,61 +48477,135 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29341] = 3, + [30334] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1297), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(675), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + STATE(1504), 1, + sym_pattern, + STATE(1716), 1, + sym_pattern_list, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1295), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [30425] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1175), 1, + anon_sym_COMMA, + ACTIONS(1182), 1, + anon_sym_EQ, + ACTIONS(1184), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1178), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [29395] = 3, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [30486] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1299), 13, + ACTIONS(1247), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -47496,7 +48619,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1301), 33, + ACTIONS(1249), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47513,6 +48636,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -47530,13 +48654,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29449] = 3, + [30541] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1305), 13, - sym__dedent, + ACTIONS(1251), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47547,7 +48671,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1303), 33, + ACTIONS(1253), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47566,6 +48690,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -47581,7 +48706,7 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29503] = 20, + [30596] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -47590,35 +48715,37 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(667), 1, + ACTIONS(663), 1, sym_identifier, - ACTIONS(669), 1, + ACTIONS(665), 1, anon_sym_LPAREN, - ACTIONS(679), 1, + ACTIONS(675), 1, anon_sym_LBRACK, - ACTIONS(681), 1, + ACTIONS(677), 1, anon_sym_await, - ACTIONS(1118), 1, + ACTIONS(1171), 1, anon_sym_STAR, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(862), 1, + STATE(1012), 1, sym_primary_expression, - STATE(1307), 1, + STATE(1461), 1, sym_pattern, + STATE(1657), 1, + sym_pattern_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(735), 2, + STATE(849), 2, sym_attribute, sym_subscript, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, @@ -47627,13 +48754,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(673), 5, + ACTIONS(669), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(649), 15, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -47649,13 +48776,13 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [29591] = 3, + [30687] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1309), 13, - sym__dedent, + ACTIONS(1245), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47666,7 +48793,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1307), 33, + ACTIONS(1243), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47683,6 +48810,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -47700,10 +48828,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29645] = 3, + [30742] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1311), 13, + ACTIONS(1255), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -47717,7 +48845,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1313), 33, + ACTIONS(1257), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47736,6 +48864,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -47751,10 +48880,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29699] = 3, + [30797] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1315), 13, + ACTIONS(1259), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -47768,7 +48897,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1317), 33, + ACTIONS(1261), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47787,6 +48916,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -47802,10 +48932,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29753] = 3, + [30852] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1319), 13, + ACTIONS(1263), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -47819,7 +48949,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1321), 33, + ACTIONS(1265), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47838,6 +48968,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -47853,10 +48984,65 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29807] = 3, + [30907] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1325), 13, + ACTIONS(1269), 1, + anon_sym_COMMA, + ACTIONS(1276), 1, + anon_sym_EQ, + ACTIONS(1274), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1272), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1267), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [30968] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1247), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47870,7 +49056,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1323), 33, + ACTIONS(1249), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47887,6 +49073,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -47904,13 +49091,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29861] = 3, + [31023] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1309), 13, + ACTIONS(1251), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47921,7 +49108,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1307), 33, + ACTIONS(1253), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47940,6 +49127,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -47955,10 +49143,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29915] = 3, + [31078] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1329), 13, + ACTIONS(1255), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47972,7 +49160,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1327), 33, + ACTIONS(1257), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47991,6 +49179,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -48006,10 +49195,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29969] = 3, + [31133] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1311), 13, + ACTIONS(1259), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -48023,7 +49212,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1313), 33, + ACTIONS(1261), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48042,6 +49231,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -48057,13 +49247,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30023] = 3, + [31188] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1331), 13, + ACTIONS(1263), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48074,7 +49264,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1333), 33, + ACTIONS(1265), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48093,6 +49283,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -48108,13 +49299,403 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30077] = 3, + [31243] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1287), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, + anon_sym_LPAREN, + ACTIONS(675), 1, + anon_sym_LBRACK, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + STATE(1496), 1, + sym_pattern, + STATE(1661), 1, + sym_pattern_list, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [31334] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1221), 1, + anon_sym_EQ, + ACTIONS(1216), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1173), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + ACTIONS(1223), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1178), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + [31395] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, + anon_sym_LPAREN, + ACTIONS(675), 1, + anon_sym_LBRACK, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + STATE(1500), 1, + sym_pattern, + STATE(1707), 1, + sym_pattern_list, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [31486] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, + anon_sym_LPAREN, + ACTIONS(675), 1, + anon_sym_LBRACK, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + STATE(1473), 1, + sym_pattern, + STATE(1672), 1, + sym_pattern_list, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [31577] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, + anon_sym_LPAREN, + ACTIONS(675), 1, + anon_sym_LBRACK, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + STATE(1505), 1, + sym_pattern, + STATE(1719), 1, + sym_pattern_list, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [31668] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1280), 1, + anon_sym_COMMA, + ACTIONS(1287), 1, + anon_sym_EQ, + ACTIONS(1285), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1283), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1278), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [31729] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1289), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48125,7 +49706,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1289), 33, + ACTIONS(1291), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48159,10 +49740,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30131] = 3, + [31783] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1297), 13, + ACTIONS(1293), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48210,13 +49791,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30185] = 3, + [31837] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1337), 13, - sym__dedent, + ACTIONS(1297), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48227,7 +49808,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1335), 33, + ACTIONS(1299), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48261,13 +49842,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30239] = 3, + [31891] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1251), 13, - sym__dedent, + ACTIONS(1301), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48278,7 +49859,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1253), 33, + ACTIONS(1303), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48312,10 +49893,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30293] = 3, + [31945] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1329), 13, + ACTIONS(1210), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48329,7 +49910,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1327), 33, + ACTIONS(1208), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48363,10 +49944,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30347] = 3, + [31999] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1337), 13, + ACTIONS(1305), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48380,7 +49961,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1335), 33, + ACTIONS(1307), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48414,10 +49995,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30401] = 3, + [32053] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1126), 13, + ACTIONS(1309), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48431,7 +50012,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1124), 33, + ACTIONS(1311), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48465,10 +50046,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30455] = 3, + [32107] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1339), 13, + ACTIONS(1313), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48482,7 +50063,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1341), 33, + ACTIONS(1315), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48516,13 +50097,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30509] = 3, + [32161] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1339), 13, - sym__dedent, + ACTIONS(1317), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48533,7 +50114,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1341), 33, + ACTIONS(1319), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48567,10 +50148,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30563] = 3, + [32215] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1237), 13, + ACTIONS(1321), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48584,7 +50165,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1235), 33, + ACTIONS(1323), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48618,10 +50199,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30617] = 3, + [32269] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1343), 13, + ACTIONS(1325), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48635,7 +50216,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1345), 33, + ACTIONS(1327), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48669,13 +50250,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30671] = 3, + [32323] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1319), 13, - sym__dedent, + ACTIONS(1329), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48686,7 +50267,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1321), 33, + ACTIONS(1331), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48720,13 +50301,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30725] = 3, + [32377] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1343), 13, - sym__dedent, + ACTIONS(1333), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48737,7 +50318,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1345), 33, + ACTIONS(1335), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48771,10 +50352,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30779] = 3, + [32431] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1347), 13, + ACTIONS(1337), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48788,7 +50369,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1349), 33, + ACTIONS(1339), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48822,10 +50403,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30833] = 3, + [32485] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1351), 13, + ACTIONS(1341), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48839,7 +50420,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1353), 33, + ACTIONS(1343), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48873,13 +50454,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30887] = 3, + [32539] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1357), 13, - sym__dedent, + ACTIONS(1345), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48890,7 +50471,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1355), 33, + ACTIONS(1347), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48924,13 +50505,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30941] = 3, + [32593] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1247), 13, - sym__dedent, + ACTIONS(1349), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48941,7 +50522,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1249), 33, + ACTIONS(1351), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48975,10 +50556,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30995] = 3, + [32647] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1293), 13, + ACTIONS(1353), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48992,7 +50573,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1291), 33, + ACTIONS(1355), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49026,10 +50607,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31049] = 3, + [32701] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1359), 13, + ACTIONS(1357), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49043,7 +50624,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1361), 33, + ACTIONS(1359), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49077,10 +50658,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31103] = 3, + [32755] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1233), 13, + ACTIONS(1361), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49094,7 +50675,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1231), 33, + ACTIONS(1363), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49128,10 +50709,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31157] = 3, + [32809] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1241), 13, + ACTIONS(1200), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49145,7 +50726,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1239), 33, + ACTIONS(1202), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49179,10 +50760,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31211] = 3, + [32863] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1285), 13, + ACTIONS(939), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49196,7 +50777,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1283), 33, + ACTIONS(937), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49230,13 +50811,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31265] = 3, + [32917] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1365), 13, - sym__dedent, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49247,7 +50828,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1363), 33, + ACTIONS(1367), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49281,13 +50862,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31319] = 3, + [32971] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1369), 13, - sym__dedent, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49298,7 +50879,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1367), 33, + ACTIONS(1371), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49332,13 +50913,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31373] = 3, + [33025] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1373), 13, - sym__dedent, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49349,7 +50930,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1371), 33, + ACTIONS(1375), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49383,13 +50964,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31427] = 3, + [33079] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1377), 13, - sym__dedent, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49400,7 +50981,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1375), 33, + ACTIONS(1379), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49434,10 +51015,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31481] = 3, + [33133] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1225), 13, + ACTIONS(1381), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49451,7 +51032,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1223), 33, + ACTIONS(1383), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49485,10 +51066,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31535] = 3, + [33187] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1357), 13, + ACTIONS(1385), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49502,7 +51083,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1355), 33, + ACTIONS(1387), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49536,10 +51117,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31589] = 3, + [33241] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1079), 13, + ACTIONS(1389), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49553,7 +51134,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1081), 33, + ACTIONS(1391), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49587,13 +51168,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31643] = 3, + [33295] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1351), 13, - sym__dedent, + ACTIONS(1393), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49604,7 +51185,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1353), 33, + ACTIONS(1395), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49638,10 +51219,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31697] = 3, + [33349] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1305), 13, + ACTIONS(1397), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49655,7 +51236,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1303), 33, + ACTIONS(1399), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49689,10 +51270,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31751] = 3, + [33403] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1369), 13, + ACTIONS(1401), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49706,7 +51287,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1367), 33, + ACTIONS(1403), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49740,10 +51321,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31805] = 3, + [33457] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1269), 13, + ACTIONS(1405), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49757,7 +51338,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1267), 33, + ACTIONS(1407), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49791,10 +51372,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31859] = 3, + [33511] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1281), 13, + ACTIONS(1409), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49808,7 +51389,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1279), 33, + ACTIONS(1411), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49842,13 +51423,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31913] = 3, + [33565] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1359), 13, - sym__dedent, + ACTIONS(1413), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49859,7 +51440,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1361), 33, + ACTIONS(1415), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49893,10 +51474,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31967] = 3, + [33619] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(847), 13, + ACTIONS(1417), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49910,7 +51491,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(849), 33, + ACTIONS(1419), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49944,13 +51525,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32021] = 3, + [33673] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1227), 13, - sym__dedent, + ACTIONS(1421), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49961,7 +51542,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1229), 33, + ACTIONS(1423), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49995,214 +51576,78 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32075] = 3, + [33727] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(875), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, + ACTIONS(288), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(873), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [32129] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1325), 13, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(675), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + STATE(1445), 1, + sym_pattern, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1323), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [32183] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1347), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1349), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, sym_integer, - sym_identifier, - anon_sym_await, sym_true, sym_false, sym_none, - [32237] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1221), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1219), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(669), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [32291] = 3, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [33815] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1126), 13, + ACTIONS(1313), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -50216,7 +51661,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1124), 33, + ACTIONS(1315), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50250,13 +51695,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32345] = 3, + [33869] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1205), 13, + ACTIONS(979), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50267,7 +51712,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1203), 33, + ACTIONS(981), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50301,13 +51746,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32399] = 3, + [33923] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1377), 13, + ACTIONS(1427), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50318,7 +51763,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1375), 33, + ACTIONS(1425), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50352,13 +51797,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32453] = 3, + [33977] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1273), 13, + ACTIONS(1431), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50369,7 +51814,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1271), 33, + ACTIONS(1429), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50403,10 +51848,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32507] = 3, + [34031] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1331), 13, + ACTIONS(1435), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -50420,7 +51865,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1333), 33, + ACTIONS(1433), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50454,10 +51899,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32561] = 3, + [34085] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1299), 13, + ACTIONS(1439), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -50471,7 +51916,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1301), 33, + ACTIONS(1437), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50505,10 +51950,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32615] = 3, + [34139] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1315), 13, + ACTIONS(1289), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -50522,7 +51967,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1317), 33, + ACTIONS(1291), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50556,13 +52001,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32669] = 3, + [34193] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1373), 13, + ACTIONS(1443), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50573,7 +52018,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1371), 33, + ACTIONS(1441), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50607,13 +52052,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32723] = 3, + [34247] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1201), 13, + ACTIONS(1447), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50624,7 +52069,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1199), 33, + ACTIONS(1445), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50658,13 +52103,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32777] = 3, + [34301] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1365), 13, + ACTIONS(1200), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50675,7 +52120,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1363), 33, + ACTIONS(1202), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50709,13 +52154,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32831] = 3, + [34355] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1277), 13, + ACTIONS(939), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50726,7 +52171,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1275), 33, + ACTIONS(937), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50760,13 +52205,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32885] = 3, + [34409] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1217), 13, + ACTIONS(1381), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50777,7 +52222,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1215), 33, + ACTIONS(1383), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50811,13 +52256,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32939] = 3, + [34463] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1209), 13, + ACTIONS(1385), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50828,7 +52273,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1207), 33, + ACTIONS(1387), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50862,2839 +52307,2404 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32993] = 18, + [34517] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1409), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(1379), 1, - sym_identifier, - ACTIONS(1385), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(740), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(1381), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(1383), 5, + sym_ellipsis, + sym_float, + ACTIONS(1411), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [33075] = 5, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34571] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(310), 1, + ACTIONS(1421), 13, + sym__dedent, sym__string_start, - STATE(573), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1088), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1083), 34, - anon_sym_DOT, + sym__template_string_start, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1423), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33130] = 5, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34625] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(312), 1, + ACTIONS(1451), 13, + sym__dedent, + sym__string_start, sym__template_string_start, - STATE(572), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1088), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1083), 34, - anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1449), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33185] = 5, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34679] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1391), 1, + ACTIONS(1455), 13, + sym__dedent, + sym__string_start, sym__template_string_start, - STATE(571), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1389), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1387), 34, - anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1453), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33240] = 5, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34733] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(312), 1, + ACTIONS(1459), 13, + sym__dedent, + sym__string_start, sym__template_string_start, - STATE(571), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1396), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1394), 34, - anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1457), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33295] = 5, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34787] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(310), 1, + ACTIONS(1463), 13, + sym__dedent, sym__string_start, - STATE(574), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1400), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1398), 34, - anon_sym_DOT, + sym__template_string_start, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1461), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33350] = 5, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34841] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1406), 1, + ACTIONS(1467), 13, + sym__dedent, sym__string_start, - STATE(574), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1404), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1402), 34, - anon_sym_DOT, + sym__template_string_start, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33405] = 16, - ACTIONS(3), 1, - sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1409), 1, - anon_sym_not, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(751), 1, - sym_primary_expression, - ACTIONS(621), 2, + anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(615), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + ACTIONS(1465), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [33481] = 16, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34895] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1293), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - ACTIONS(1411), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(663), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1295), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [33557] = 16, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34949] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1297), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - ACTIONS(1413), 1, - anon_sym_not, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(717), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1299), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [33633] = 16, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35003] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1301), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - ACTIONS(1415), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(667), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1303), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [33709] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35057] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1210), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(672), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1208), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [33782] = 3, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35111] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1419), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1417), 35, + ACTIONS(1305), 13, + sym__dedent, sym__string_start, - anon_sym_DOT, + sym__template_string_start, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33831] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1423), 6, - anon_sym_as, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1307), 33, + anon_sym_import, + anon_sym_from, anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1421), 35, - sym__template_string_start, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33880] = 15, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35165] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1309), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(706), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1311), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [33953] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35219] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1317), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(663), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1319), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34026] = 3, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35273] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1427), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1425), 35, + ACTIONS(1321), 13, + sym__dedent, sym__string_start, - anon_sym_DOT, + sym__template_string_start, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [34075] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(713), 1, - sym_primary_expression, - ACTIONS(75), 2, + anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + ACTIONS(1323), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34148] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35327] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1325), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(664), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1327), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34221] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35381] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(1451), 13, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(739), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + ts_builtin_sym_end, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + sym_ellipsis, + sym_float, + ACTIONS(1449), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34294] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35435] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1329), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(673), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1331), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34367] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35489] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1333), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(712), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34440] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(736), 1, - sym_primary_expression, - ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + ACTIONS(1335), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34513] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35543] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1337), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(683), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1339), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34586] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35597] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(1341), 13, + sym__dedent, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(734), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + sym_ellipsis, + sym_float, + ACTIONS(1343), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34659] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35651] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1345), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(677), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1347), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34732] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35705] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(1349), 13, + sym__dedent, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(741), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + sym_ellipsis, + sym_float, + ACTIONS(1351), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34805] = 17, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35759] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1447), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(1429), 1, - sym_identifier, - ACTIONS(1433), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(859), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(1431), 5, + sym_ellipsis, + sym_float, + ACTIONS(1445), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34882] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35813] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1353), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(667), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34955] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(745), 1, - sym_primary_expression, - ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + ACTIONS(1355), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35028] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35867] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(1357), 13, + sym__dedent, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(751), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + sym_ellipsis, + sym_float, + ACTIONS(1359), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35101] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35921] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(1361), 13, + sym__dedent, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(752), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + sym_ellipsis, + sym_float, + ACTIONS(1363), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35174] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35975] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1365), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(670), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1367), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35247] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36029] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(1369), 13, + sym__dedent, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(753), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + sym_ellipsis, + sym_float, + ACTIONS(1371), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35320] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36083] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1373), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(723), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1375), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35393] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36137] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1377), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(682), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1379), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35466] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36191] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1455), 13, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(721), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1453), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35539] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36245] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1459), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(668), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1457), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35612] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36299] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1389), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(678), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1391), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35685] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36353] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1393), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(717), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1395), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35758] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36407] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(1397), 13, + sym__dedent, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(742), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + sym_ellipsis, + sym_float, + ACTIONS(1399), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35831] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36461] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1401), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(714), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1403), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35904] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36515] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1405), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(674), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1407), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35977] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36569] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1413), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(707), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1415), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36050] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36623] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1417), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(708), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1419), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36123] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36677] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1463), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(685), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1461), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36196] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36731] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1467), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(662), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1465), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36269] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36785] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(979), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(671), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(981), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36342] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36839] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1427), 13, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(705), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1425), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36415] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36893] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(1431), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(617), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(623), 1, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1429), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(625), 1, + sym_true, + sym_false, + sym_none, + [36947] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1435), 13, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(746), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + ts_builtin_sym_end, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, + sym_ellipsis, + sym_float, + ACTIONS(1433), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(611), 5, + [37001] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1439), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1437), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36488] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [37055] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -53703,42 +54713,52 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(675), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(677), 1, anon_sym_await, - STATE(569), 1, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(681), 1, + STATE(1005), 1, + sym_pattern, + STATE(1012), 1, sym_primary_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(849), 2, + sym_attribute, + sym_subscript, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, sym_integer, - sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(669), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(649), 17, + STATE(724), 15, sym_binary_operator, sym_unary_operator, - sym_attribute, - sym_subscript, sym_call, sym_list, sym_set, @@ -53752,51 +54772,108 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [36561] = 15, + [37143] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(1443), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, anon_sym_LBRACE, - ACTIONS(81), 1, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1441), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [37197] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(568), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(576), 1, + ACTIONS(1469), 1, + sym_identifier, + ACTIONS(1475), 1, anon_sym_await, - STATE(698), 1, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(710), 1, + STATE(1012), 1, sym_primary_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + STATE(834), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 5, + ACTIONS(1471), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + ACTIONS(306), 4, sym_integer, - sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(570), 5, + ACTIONS(1473), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(760), 17, + STATE(724), 15, sym_binary_operator, sym_unary_operator, - sym_attribute, - sym_subscript, sym_call, sym_list, sym_set, @@ -53810,47 +54887,49 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [36634] = 15, + [37279] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(312), 1, sym__template_string_start, - STATE(720), 1, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + ACTIONS(1477), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(744), 1, + STATE(738), 1, sym_primary_expression, - ACTIONS(621), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 5, + ACTIONS(306), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(611), 5, + ACTIONS(583), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -53868,47 +54947,147 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [36707] = 15, + [37355] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, ACTIONS(310), 1, sym__string_start, + STATE(619), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1481), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1479), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [37409] = 5, + ACTIONS(3), 1, + sym_comment, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + STATE(620), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1485), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1483), 33, + anon_sym_DOT, anon_sym_LPAREN, - ACTIONS(603), 1, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(605), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [37463] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, + ACTIONS(1487), 1, + anon_sym_not, + STATE(763), 1, sym_template_string, - STATE(679), 1, + STATE(782), 1, + sym_string, + STATE(800), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(77), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(570), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -53926,146 +55105,8132 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [36780] = 15, + [37539] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1493), 1, sym__string_start, - ACTIONS(312), 1, + STATE(619), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1491), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1489), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [37593] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1500), 1, sym__template_string_start, - ACTIONS(578), 1, + STATE(620), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1498), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1496), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [37647] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(310), 1, + sym__string_start, + STATE(616), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1178), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [37701] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1503), 1, + anon_sym_not, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(831), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [37777] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(1505), 1, + anon_sym_not, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(788), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [37853] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(312), 1, + sym__template_string_start, + STATE(617), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1178), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [37907] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + ACTIONS(1507), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(752), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [37983] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + ACTIONS(1509), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(814), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38059] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(843), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38132] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(736), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38205] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(737), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38278] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(738), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38351] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(748), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38424] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(749), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38497] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(804), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38570] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(805), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38643] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(796), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38716] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(799), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38789] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(828), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38862] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(829), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38935] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(831), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39008] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(832), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39081] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(833), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39154] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(835), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39227] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(836), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39300] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(837), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39373] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(844), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39446] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(786), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39519] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(787), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39592] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(788), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39665] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(789), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39738] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(743), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39811] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(791), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39884] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(792), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39957] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(793), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40030] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(739), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40103] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(797), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40176] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(798), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40249] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(759), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40322] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(823), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40395] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(824), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40468] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(740), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40541] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(800), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40614] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(1469), 1, + sym_identifier, + ACTIONS(1475), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(834), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(1473), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40691] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(750), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40764] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(751), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40837] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(752), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40910] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(753), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40983] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(734), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41056] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(754), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41129] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(755), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41202] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(756), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41275] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(741), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41348] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(801), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41421] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(757), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41494] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(758), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41567] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(761), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41640] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(811), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41713] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(845), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41786] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(1511), 1, + sym_identifier, + ACTIONS(1515), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(1000), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(1513), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41863] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(784), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41936] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(802), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42009] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(812), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42082] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(813), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42155] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(814), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42228] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(815), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42301] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(816), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42374] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(817), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42447] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(818), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42520] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(819), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42593] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(742), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42666] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(820), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42739] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(821), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42812] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(803), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42885] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(825), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42958] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(783), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [43031] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1519), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1517), 34, + sym__string_start, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43079] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1523), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1521), 34, + sym__template_string_start, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43127] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1527), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1525), 34, + sym__string_start, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43175] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1531), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1529), 34, + sym__template_string_start, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43223] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1535), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1533), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43270] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1539), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1537), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43317] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1543), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1541), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43364] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1547), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1545), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43411] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1551), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1549), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43458] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1543), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1541), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43505] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1555), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1553), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43552] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1559), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1557), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43599] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1563), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1561), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43646] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1567), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1565), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43693] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1571), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1569), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43740] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1575), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1573), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43787] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1579), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1577), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43834] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1272), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1267), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [43881] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1283), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1278), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [43928] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1583), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1581), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43975] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1587), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1585), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44022] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1591), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1589), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44069] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1583), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1581), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44116] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1579), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1577), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44163] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1605), 1, + anon_sym_PIPE, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1613), 1, + anon_sym_EQ, + ACTIONS(1617), 1, + anon_sym_not, + ACTIONS(1619), 1, + anon_sym_AMP, + ACTIONS(1621), 1, + anon_sym_CARET, + ACTIONS(1625), 1, + anon_sym_is, + STATE(991), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1601), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1623), 2, + anon_sym_LT, + anon_sym_GT, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1603), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1597), 9, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + [44244] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1629), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1627), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44291] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1633), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1631), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44338] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1637), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1635), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44385] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(265), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(298), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44432] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1178), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44479] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1613), 1, + anon_sym_as, + ACTIONS(1645), 1, + anon_sym_PIPE, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1653), 1, + anon_sym_not, + ACTIONS(1655), 1, + anon_sym_AMP, + ACTIONS(1657), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_is, + STATE(992), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1641), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_LT, + anon_sym_GT, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1643), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1597), 9, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + [44560] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1665), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1663), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44607] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1669), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1667), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44654] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1673), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1671), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44701] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1677), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1675), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44748] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1679), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44795] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1673), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1671), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44842] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1685), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1683), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44889] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1689), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1687), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44936] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 24, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44996] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1697), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1695), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45052] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 5, + anon_sym_as, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45108] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 22, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45170] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1645), 1, + anon_sym_PIPE, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1655), 1, + anon_sym_AMP, + ACTIONS(1657), 1, + anon_sym_CARET, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1641), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1701), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1699), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45240] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1655), 1, + anon_sym_AMP, + ACTIONS(1657), 1, + anon_sym_CARET, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1641), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 18, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45308] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 24, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45368] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 5, + anon_sym_as, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45424] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1657), 1, + anon_sym_CARET, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1641), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45490] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1641), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 20, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45554] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + STATE(746), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1481), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1479), 31, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45604] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(649), 1, + sym__template_string_start, + STATE(747), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1485), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1483), 31, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45654] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1703), 1, + sym__string_start, + STATE(746), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1491), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1489), 31, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45704] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1706), 1, + sym__template_string_start, + STATE(747), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1498), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1496), 31, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45754] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1645), 1, + anon_sym_PIPE, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1655), 1, + anon_sym_AMP, + ACTIONS(1657), 1, + anon_sym_CARET, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1641), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1711), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1709), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45824] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1645), 1, + anon_sym_PIPE, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1655), 1, + anon_sym_AMP, + ACTIONS(1657), 1, + anon_sym_CARET, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1641), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1715), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1713), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45894] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45950] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 22, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46012] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1605), 1, + anon_sym_PIPE, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1619), 1, + anon_sym_AMP, + ACTIONS(1621), 1, + anon_sym_CARET, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1601), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1701), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1699), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46082] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1619), 1, + anon_sym_AMP, + ACTIONS(1621), 1, + anon_sym_CARET, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1601), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 18, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46150] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46206] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1621), 1, + anon_sym_CARET, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1601), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46272] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1601), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 20, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46336] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1605), 1, + anon_sym_PIPE, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1619), 1, + anon_sym_AMP, + ACTIONS(1621), 1, + anon_sym_CARET, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1601), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1711), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1709), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46406] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1605), 1, + anon_sym_PIPE, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1619), 1, + anon_sym_AMP, + ACTIONS(1621), 1, + anon_sym_CARET, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1601), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1715), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1713), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46476] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1719), 5, + anon_sym_as, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1717), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46532] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1697), 5, + anon_sym_as, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1695), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46588] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1719), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1717), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46644] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1721), 1, + sym__template_string_start, + STATE(762), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1498), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1496), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [46693] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(83), 1, + sym__template_string_start, + STATE(778), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1178), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [46742] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1283), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1278), 32, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46787] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(81), 1, + sym__string_start, + STATE(775), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1481), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1479), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [46836] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1613), 1, + anon_sym_EQ, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1734), 1, + anon_sym_PIPE, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1744), 1, + anon_sym_not, + ACTIONS(1746), 1, + anon_sym_AMP, + ACTIONS(1748), 1, + anon_sym_CARET, + ACTIONS(1752), 1, + anon_sym_is, + STATE(1006), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1728), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1730), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1750), 2, + anon_sym_LT, + anon_sym_GT, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1732), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1597), 7, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + anon_sym_COLON2, + sym_type_conversion, + [46915] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(625), 1, + sym__string_start, + STATE(769), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1178), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [46964] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(627), 1, + sym__template_string_start, + STATE(770), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1178), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [47013] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(625), 1, + sym__string_start, + STATE(771), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1481), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1479), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [47062] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(627), 1, + sym__template_string_start, + STATE(762), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1485), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1483), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [47111] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1754), 1, + sym__string_start, + STATE(771), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1491), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1489), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [47160] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(1609), 1, anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(680), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, + ACTIONS(1763), 1, + anon_sym_PIPE, + ACTIONS(1767), 1, + anon_sym_STAR_STAR, + ACTIONS(1771), 1, + anon_sym_not, + ACTIONS(1773), 1, + anon_sym_AMP, + ACTIONS(1775), 1, + anon_sym_CARET, + ACTIONS(1779), 1, + anon_sym_is, + STATE(997), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1757), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1759), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1765), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, + ACTIONS(1777), 2, + anon_sym_LT, + anon_sym_GT, + STATE(733), 2, + sym_argument_list, sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36853] = 17, + ACTIONS(1769), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1761), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1597), 8, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + [47237] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(585), 1, + anon_sym_COLON_EQ, + ACTIONS(265), 6, + anon_sym_STAR, + anon_sym_COLON, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(298), 30, + anon_sym_DOT, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(1379), 1, - sym_identifier, - ACTIONS(1385), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(740), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(1383), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36930] = 3, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [47284] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1437), 6, - anon_sym_as, + ACTIONS(1219), 1, + anon_sym_COLON_EQ, + ACTIONS(1178), 6, anon_sym_STAR, + anon_sym_COLON, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1435), 35, - sym__template_string_start, + ACTIONS(1173), 30, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -54089,258 +63254,257 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [36979] = 15, + [47331] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1781), 1, sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, + STATE(775), 2, sym_string, - STATE(570), 1, - sym_template_string, - STATE(666), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, + aux_sym_concatenated_string_repeat1, + ACTIONS(1491), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1489), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [37052] = 15, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [47380] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, + ACTIONS(1784), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, + STATE(776), 2, sym_template_string, - STATE(676), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1498), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1496), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [37125] = 15, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [47429] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(1272), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1267), 32, + anon_sym_DOT, anon_sym_LPAREN, - ACTIONS(591), 1, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [47474] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(83), 1, + sym__template_string_start, + STATE(776), 2, sym_template_string, - STATE(665), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1485), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1483), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [37198] = 15, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [47523] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(1613), 1, + anon_sym_EQ, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(1797), 1, + anon_sym_PIPE, + ACTIONS(1801), 1, anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(684), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + ACTIONS(1807), 1, + anon_sym_not, + ACTIONS(1809), 1, + anon_sym_AMP, + ACTIONS(1811), 1, + anon_sym_CARET, + ACTIONS(1815), 1, + anon_sym_is, + STATE(1002), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1791), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1793), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1799), 2, anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, + anon_sym_PLUS, + ACTIONS(1813), 2, + anon_sym_LT, + anon_sym_GT, + STATE(904), 2, + sym_argument_list, sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [37271] = 3, + ACTIONS(1805), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1795), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1597), 7, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_if, + anon_sym_and, + anon_sym_or, + anon_sym_SEMI, + [47602] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1441), 6, + ACTIONS(599), 1, + anon_sym_COLON_EQ, + ACTIONS(265), 5, anon_sym_as, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1439), 34, + ACTIONS(298), 31, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, @@ -54366,26 +63530,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37319] = 3, + [47649] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1445), 6, + ACTIONS(1817), 1, + anon_sym_COLON_EQ, + ACTIONS(1178), 5, anon_sym_as, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1443), 34, + ACTIONS(1173), 31, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, @@ -54411,35 +63573,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37367] = 3, + [47696] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1449), 6, - anon_sym_as, + ACTIONS(81), 1, + sym__string_start, + STATE(765), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1178), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1447), 34, + ACTIONS(1173), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -54456,42 +63616,44 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37415] = 3, + anon_sym_SEMI, + [47745] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1453), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1728), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1451), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 22, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -54501,36 +63663,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [37463] = 3, + [47803] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1457), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1719), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1455), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1717), 25, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -54546,36 +63709,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [37511] = 3, + [47857] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1461), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1697), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1459), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1695), 25, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -54591,36 +63755,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [37559] = 3, + [47911] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1465), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1691), 25, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -54636,42 +63801,46 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [37607] = 3, + [47965] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1469), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1728), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1467), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 20, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -54681,36 +63850,144 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [37655] = 3, + [48025] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1473), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1734), 1, + anon_sym_PIPE, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1746), 1, + anon_sym_AMP, + ACTIONS(1748), 1, + anon_sym_CARET, + ACTIONS(1728), 2, anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1730), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1701), 3, anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1699), 15, + anon_sym_COMMA, + anon_sym_if, + anon_sym_in, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [48093] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1746), 1, + anon_sym_AMP, + ACTIONS(1748), 1, + anon_sym_CARET, + ACTIONS(1728), 2, + anon_sym_STAR, anon_sym_SLASH, + ACTIONS(1730), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1471), 34, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 16, + anon_sym_COMMA, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [48159] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, anon_sym_DOT, + ACTIONS(1595), 1, anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1767), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1697), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1695), 26, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -54726,36 +64003,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37703] = 3, + [48213] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1477), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1475), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1691), 25, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -54771,35 +64047,136 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [37751] = 3, + [48267] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1465), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1748), 1, + anon_sym_CARET, + ACTIONS(1728), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1730), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 17, + anon_sym_COMMA, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [48331] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1728), 2, anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1730), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 18, + anon_sym_COMMA, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [48393] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + STATE(744), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1178), 4, + anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 34, + ACTIONS(1173), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -54816,35 +64193,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37799] = 3, + [48441] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1481), 6, - anon_sym_as, + ACTIONS(649), 1, + sym__template_string_start, + STATE(745), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1178), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1479), 34, + ACTIONS(1173), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -54861,36 +64236,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37847] = 3, + [48489] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1485), 6, - anon_sym_as, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, + anon_sym_LPAREN, + ACTIONS(1801), 1, + anon_sym_LBRACK, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1483), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1691), 25, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -54906,132 +64281,305 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37895] = 3, + anon_sym_SEMI, + [48543] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1489), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1734), 1, + anon_sym_PIPE, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1746), 1, + anon_sym_AMP, + ACTIONS(1748), 1, + anon_sym_CARET, + ACTIONS(1728), 2, anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1730), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1711), 3, anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1709), 15, + anon_sym_COMMA, + anon_sym_if, + anon_sym_in, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [48611] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1734), 1, + anon_sym_PIPE, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1746), 1, + anon_sym_AMP, + ACTIONS(1748), 1, + anon_sym_CARET, + ACTIONS(1728), 2, + anon_sym_STAR, anon_sym_SLASH, + ACTIONS(1730), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1715), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1487), 34, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1713), 15, + anon_sym_COMMA, + anon_sym_if, + anon_sym_in, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [48679] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1787), 1, anon_sym_DOT, + ACTIONS(1789), 1, anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1801), 1, + anon_sym_LBRACK, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + ACTIONS(1791), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1799), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1805), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 20, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [48739] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, + anon_sym_LPAREN, + ACTIONS(1797), 1, + anon_sym_PIPE, + ACTIONS(1801), 1, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + ACTIONS(1803), 1, anon_sym_STAR_STAR, + ACTIONS(1809), 1, + anon_sym_AMP, + ACTIONS(1811), 1, + anon_sym_CARET, + ACTIONS(1791), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1793), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1799), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1701), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1805), 3, anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1699), 15, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_if, + anon_sym_in, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37943] = 3, + anon_sym_SEMI, + [48807] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1453), 6, - anon_sym_as, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, + anon_sym_LPAREN, + ACTIONS(1801), 1, + anon_sym_LBRACK, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + ACTIONS(1809), 1, + anon_sym_AMP, + ACTIONS(1811), 1, + anon_sym_CARET, + ACTIONS(1791), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + ACTIONS(1793), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1799), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1451), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1805), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 16, + sym__newline, + anon_sym_from, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37991] = 3, + anon_sym_SEMI, + [48873] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1493), 6, - anon_sym_as, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, + anon_sym_LPAREN, + ACTIONS(1801), 1, + anon_sym_LBRACK, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + ACTIONS(1791), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1491), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1805), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 22, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -55041,36 +64589,38 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38039] = 3, + anon_sym_SEMI, + [48931] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1497), 6, - anon_sym_as, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1767), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1719), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1495), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1717), 26, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -55086,118 +64636,125 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38087] = 3, + [48985] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1497), 6, - anon_sym_as, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, + anon_sym_LPAREN, + ACTIONS(1801), 1, + anon_sym_LBRACK, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + ACTIONS(1811), 1, + anon_sym_CARET, + ACTIONS(1791), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + ACTIONS(1793), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1799), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1495), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1805), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 17, + sym__newline, + anon_sym_from, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38135] = 3, + anon_sym_SEMI, + [49049] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1501), 6, - anon_sym_as, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, + anon_sym_LPAREN, + ACTIONS(1801), 1, + anon_sym_LBRACK, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + ACTIONS(1791), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + ACTIONS(1793), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1799), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1499), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1805), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 18, + sym__newline, + anon_sym_from, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38183] = 3, + anon_sym_SEMI, + [49111] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1449), 6, - anon_sym_as, + ACTIONS(1519), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1447), 34, + ACTIONS(1517), 32, + sym__string_start, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -55221,28 +64778,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38231] = 3, + [49155] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1088), 6, - anon_sym_as, + ACTIONS(1523), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 34, + ACTIONS(1521), 32, + sym__template_string_start, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -55266,28 +64819,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38279] = 3, + [49199] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1505), 6, - anon_sym_as, + ACTIONS(1527), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1503), 34, + ACTIONS(1525), 32, + sym__string_start, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -55311,28 +64860,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38327] = 3, + [49243] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1509), 6, - anon_sym_as, + ACTIONS(1531), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1507), 34, + ACTIONS(1529), 32, + sym__template_string_start, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -55356,160 +64901,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38375] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1511), 1, - anon_sym_DOT, - ACTIONS(1513), 1, - anon_sym_LPAREN, - ACTIONS(1523), 1, - anon_sym_PIPE, - ACTIONS(1527), 1, - anon_sym_LBRACK, - ACTIONS(1529), 1, - anon_sym_STAR_STAR, - ACTIONS(1531), 1, - anon_sym_EQ, - ACTIONS(1535), 1, - anon_sym_not, - ACTIONS(1537), 1, - anon_sym_AMP, - ACTIONS(1539), 1, - anon_sym_CARET, - ACTIONS(1543), 1, - anon_sym_is, - STATE(846), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1517), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1519), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1525), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(1541), 2, - anon_sym_LT, - anon_sym_GT, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1533), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1521), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1515), 10, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_and, - anon_sym_or, - sym_type_conversion, - [38457] = 20, + [49287] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1787), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1789), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1801), 1, anon_sym_LBRACK, - ACTIONS(1531), 1, - anon_sym_as, - ACTIONS(1551), 1, - anon_sym_PIPE, - ACTIONS(1555), 1, + ACTIONS(1803), 1, anon_sym_STAR_STAR, - ACTIONS(1559), 1, - anon_sym_not, - ACTIONS(1561), 1, - anon_sym_AMP, - ACTIONS(1563), 1, - anon_sym_CARET, - ACTIONS(1567), 1, - anon_sym_is, - STATE(845), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1545), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1547), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1553), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(1565), 2, - anon_sym_LT, - anon_sym_GT, - STATE(642), 2, + STATE(904), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1557), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1549), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1515), 10, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_and, - anon_sym_or, - [38539] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1571), 6, - anon_sym_as, + ACTIONS(1697), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1569), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1695), 25, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -55525,36 +64946,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38587] = 3, + anon_sym_SEMI, + [49341] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1575), 6, - anon_sym_as, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, + anon_sym_LPAREN, + ACTIONS(1801), 1, + anon_sym_LBRACK, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1719), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1573), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1717), 25, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -55570,36 +64992,38 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38635] = 3, + anon_sym_SEMI, + [49395] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(265), 6, - anon_sym_as, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1767), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1691), 26, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -55615,42 +65039,46 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38683] = 3, + [49449] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1579), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1577), 34, + ACTIONS(1593), 1, anon_sym_DOT, + ACTIONS(1595), 1, anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1767), 1, + anon_sym_STAR_STAR, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1757), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1765), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1769), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 21, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -55660,177 +65088,150 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38731] = 3, + [49509] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1583), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1581), 34, + ACTIONS(1593), 1, anon_sym_DOT, + ACTIONS(1595), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1609), 1, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + ACTIONS(1763), 1, + anon_sym_PIPE, + ACTIONS(1767), 1, anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, + ACTIONS(1773), 1, anon_sym_AMP, + ACTIONS(1775), 1, anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [38779] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1587), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, + ACTIONS(1701), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1585), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(1757), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1759), 2, anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1765), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1769), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1699), 16, + anon_sym_COMMA, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38827] = 3, + [49577] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1591), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1589), 34, + ACTIONS(1593), 1, anon_sym_DOT, + ACTIONS(1595), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1767), 1, + anon_sym_STAR_STAR, + ACTIONS(1773), 1, + anon_sym_AMP, + ACTIONS(1775), 1, + anon_sym_CARET, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1757), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1759), 2, anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1765), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1769), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 17, + anon_sym_COMMA, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38875] = 3, + [49643] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1595), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1593), 34, + ACTIONS(1593), 1, anon_sym_DOT, + ACTIONS(1595), 1, anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1767), 1, + anon_sym_STAR_STAR, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1757), 2, + anon_sym_STAR, + anon_sym_SLASH, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1769), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 23, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, + anon_sym_or, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -55840,39 +65241,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38923] = 8, + [49701] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1593), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1595), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1609), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1767), 1, anon_sym_STAR_STAR, - STATE(642), 2, + STATE(733), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1599), 5, + ACTIONS(1693), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 28, - anon_sym_RPAREN, + ACTIONS(1691), 26, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_AT, anon_sym_not, @@ -55889,164 +65287,150 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38980] = 15, + [49755] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1593), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1595), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1609), 1, anon_sym_LBRACK, - ACTIONS(1551), 1, - anon_sym_PIPE, - ACTIONS(1555), 1, + ACTIONS(1767), 1, anon_sym_STAR_STAR, - ACTIONS(1561), 1, - anon_sym_AMP, - ACTIONS(1563), 1, + ACTIONS(1775), 1, anon_sym_CARET, - ACTIONS(1545), 2, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1757), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1547), 2, + ACTIONS(1759), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1553), 2, + ACTIONS(1765), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(733), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1557), 3, + ACTIONS(1769), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1603), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1601), 18, - anon_sym_RPAREN, + ACTIONS(1691), 18, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_in, - anon_sym_RBRACK, + anon_sym_PIPE, anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [39051] = 15, + [49819] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1593), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1595), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1609), 1, anon_sym_LBRACK, - ACTIONS(1551), 1, - anon_sym_PIPE, - ACTIONS(1555), 1, + ACTIONS(1767), 1, anon_sym_STAR_STAR, - ACTIONS(1561), 1, - anon_sym_AMP, - ACTIONS(1563), 1, - anon_sym_CARET, - ACTIONS(1545), 2, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1757), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1547), 2, + ACTIONS(1759), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1553), 2, + ACTIONS(1765), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(733), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1557), 3, + ACTIONS(1769), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1607), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1605), 18, - anon_sym_RPAREN, + ACTIONS(1691), 19, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_in, - anon_sym_RBRACK, + anon_sym_PIPE, anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [39122] = 15, + [49881] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1593), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1595), 1, anon_sym_LPAREN, - ACTIONS(1523), 1, - anon_sym_PIPE, - ACTIONS(1527), 1, + ACTIONS(1609), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1763), 1, + anon_sym_PIPE, + ACTIONS(1767), 1, anon_sym_STAR_STAR, - ACTIONS(1537), 1, + ACTIONS(1773), 1, anon_sym_AMP, - ACTIONS(1539), 1, + ACTIONS(1775), 1, anon_sym_CARET, - ACTIONS(1517), 2, + ACTIONS(1711), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1757), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1519), 2, + ACTIONS(1759), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1525), 2, + ACTIONS(1765), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(733), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1533), 3, + ACTIONS(1769), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1607), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1605), 18, - anon_sym_RPAREN, + ACTIONS(1709), 16, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_not, anon_sym_and, @@ -56057,52 +65441,49 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [39193] = 15, + [49949] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1593), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1595), 1, anon_sym_LPAREN, - ACTIONS(1523), 1, - anon_sym_PIPE, - ACTIONS(1527), 1, + ACTIONS(1609), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1763), 1, + anon_sym_PIPE, + ACTIONS(1767), 1, anon_sym_STAR_STAR, - ACTIONS(1537), 1, + ACTIONS(1773), 1, anon_sym_AMP, - ACTIONS(1539), 1, + ACTIONS(1775), 1, anon_sym_CARET, - ACTIONS(1517), 2, + ACTIONS(1715), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1757), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1519), 2, + ACTIONS(1759), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1525), 2, + ACTIONS(1765), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(733), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1533), 3, + ACTIONS(1769), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1611), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1609), 18, - anon_sym_RPAREN, + ACTIONS(1713), 16, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_not, anon_sym_and, @@ -56113,247 +65494,199 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [39264] = 15, + [50017] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1523), 1, + ACTIONS(1829), 1, anon_sym_PIPE, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - ACTIONS(1537), 1, + ACTIONS(1839), 1, + anon_sym_not, + ACTIONS(1841), 1, anon_sym_AMP, - ACTIONS(1539), 1, + ACTIONS(1843), 1, anon_sym_CARET, - ACTIONS(1517), 2, + ACTIONS(1847), 1, + anon_sym_is, + STATE(1009), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1823), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1519), 2, + ACTIONS(1825), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1525), 2, + ACTIONS(1831), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + ACTIONS(1845), 2, + anon_sym_LT, + anon_sym_GT, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1533), 3, + ACTIONS(1837), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1603), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1601), 18, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, + ACTIONS(1827), 6, anon_sym_in, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [39335] = 12, + ACTIONS(1597), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_and, + anon_sym_or, + [50093] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1787), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1789), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1797), 1, + anon_sym_PIPE, + ACTIONS(1801), 1, anon_sym_LBRACK, - ACTIONS(1555), 1, + ACTIONS(1803), 1, anon_sym_STAR_STAR, - ACTIONS(1545), 2, + ACTIONS(1809), 1, + anon_sym_AMP, + ACTIONS(1811), 1, + anon_sym_CARET, + ACTIONS(1791), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1547), 2, + ACTIONS(1793), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1553), 2, + ACTIONS(1799), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(904), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1557), 3, + ACTIONS(1711), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1805), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1597), 21, - anon_sym_RPAREN, + ACTIONS(1709), 15, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, - anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [39400] = 8, + anon_sym_SEMI, + [50161] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1787), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1789), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1797), 1, + anon_sym_PIPE, + ACTIONS(1801), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1803), 1, anon_sym_STAR_STAR, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1615), 5, + ACTIONS(1809), 1, + anon_sym_AMP, + ACTIONS(1811), 1, + anon_sym_CARET, + ACTIONS(1791), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1613), 28, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(1793), 2, anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_in, - anon_sym_PIPE, + anon_sym_LT_LT, + ACTIONS(1799), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [39457] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1511), 1, - anon_sym_DOT, - ACTIONS(1513), 1, - anon_sym_LPAREN, - ACTIONS(1527), 1, - anon_sym_LBRACK, - ACTIONS(1555), 1, - anon_sym_STAR_STAR, - STATE(642), 2, + STATE(904), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1619), 5, - anon_sym_as, - anon_sym_STAR, - anon_sym_SLASH, + ACTIONS(1715), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1617), 28, - anon_sym_RPAREN, + ACTIONS(1805), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1713), 15, + sym__newline, + anon_sym_from, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [39514] = 8, + anon_sym_SEMI, + [50229] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1787), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1789), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1801), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1803), 1, anon_sym_STAR_STAR, - STATE(642), 2, + STATE(904), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1619), 5, + ACTIONS(1693), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1617), 28, - anon_sym_RPAREN, + ACTIONS(1691), 25, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -56369,40 +65702,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [39571] = 8, + anon_sym_SEMI, + [50283] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, - anon_sym_DOT, - ACTIONS(1513), 1, - anon_sym_LPAREN, - ACTIONS(1527), 1, - anon_sym_LBRACK, - ACTIONS(1529), 1, - anon_sym_STAR_STAR, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 5, + ACTIONS(278), 1, + anon_sym_COLON_EQ, + ACTIONS(265), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 28, - anon_sym_RPAREN, + ACTIONS(298), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACK, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -56418,152 +65743,31 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [39628] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1511), 1, - anon_sym_DOT, - ACTIONS(1513), 1, - anon_sym_LPAREN, - ACTIONS(1527), 1, - anon_sym_LBRACK, - ACTIONS(1551), 1, - anon_sym_PIPE, - ACTIONS(1555), 1, - anon_sym_STAR_STAR, - ACTIONS(1561), 1, - anon_sym_AMP, - ACTIONS(1563), 1, - anon_sym_CARET, - ACTIONS(1545), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1547), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1553), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1557), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1611), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1609), 18, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [39699] = 14, + anon_sym_SEMI, + [50328] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, - anon_sym_DOT, - ACTIONS(1513), 1, - anon_sym_LPAREN, - ACTIONS(1527), 1, - anon_sym_LBRACK, - ACTIONS(1529), 1, - anon_sym_STAR_STAR, - ACTIONS(1537), 1, - anon_sym_AMP, - ACTIONS(1539), 1, - anon_sym_CARET, - ACTIONS(1517), 2, + ACTIONS(1523), 5, anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1519), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1525), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1533), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, anon_sym_EQ, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_in, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [39768] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1511), 1, + ACTIONS(1521), 30, + sym__newline, + sym__template_string_start, anon_sym_DOT, - ACTIONS(1513), 1, + anon_sym_from, anon_sym_LPAREN, - ACTIONS(1527), 1, - anon_sym_LBRACK, - ACTIONS(1555), 1, - anon_sym_STAR_STAR, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1615), 5, - anon_sym_as, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1613), 28, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACK, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -56579,40 +65783,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [39825] = 8, + anon_sym_SEMI, + [50371] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1555), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - STATE(642), 2, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1599), 5, - anon_sym_as, + ACTIONS(1693), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 28, + ACTIONS(1691), 25, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -56628,46 +65829,42 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [39882] = 11, + [50424] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1555), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - ACTIONS(1545), 2, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1823), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1553), 2, + ACTIONS(1831), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1557), 3, + ACTIONS(1837), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1597), 23, + ACTIONS(1691), 20, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, @@ -56680,48 +65877,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [39945] = 11, + [50483] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, - anon_sym_DOT, - ACTIONS(1513), 1, - anon_sym_LPAREN, - ACTIONS(1527), 1, - anon_sym_LBRACK, - ACTIONS(1529), 1, - anon_sym_STAR_STAR, - ACTIONS(1517), 2, + ACTIONS(1531), 5, anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1525), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1533), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, anon_sym_EQ, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 23, - anon_sym_RPAREN, + ACTIONS(1529), 30, + sym__newline, + sym__template_string_start, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -56731,265 +65916,234 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [40008] = 13, + anon_sym_SEMI, + [50526] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1829), 1, + anon_sym_PIPE, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1555), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - ACTIONS(1563), 1, + ACTIONS(1841), 1, + anon_sym_AMP, + ACTIONS(1843), 1, anon_sym_CARET, - ACTIONS(1545), 2, + ACTIONS(1701), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1823), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1547), 2, + ACTIONS(1825), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1553), 2, + ACTIONS(1831), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1557), 3, + ACTIONS(1837), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1597), 20, + ACTIONS(1699), 15, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40075] = 12, + [50593] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - ACTIONS(1517), 2, + ACTIONS(1841), 1, + anon_sym_AMP, + ACTIONS(1843), 1, + anon_sym_CARET, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1823), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1519), 2, + ACTIONS(1825), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1525), 2, + ACTIONS(1831), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1533), 3, + ACTIONS(1837), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1597), 21, + ACTIONS(1691), 16, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, - anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [40140] = 13, + [50658] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - ACTIONS(1539), 1, - anon_sym_CARET, - ACTIONS(1517), 2, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1823), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1519), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1525), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(642), 2, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1533), 3, + ACTIONS(1837), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1597), 20, + ACTIONS(1691), 22, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_not, anon_sym_and, anon_sym_or, anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [40207] = 14, + [50715] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1173), 3, anon_sym_DOT, - ACTIONS(1513), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, anon_sym_LBRACK, - ACTIONS(1555), 1, - anon_sym_STAR_STAR, - ACTIONS(1561), 1, - anon_sym_AMP, - ACTIONS(1563), 1, - anon_sym_CARET, - ACTIONS(1545), 2, + ACTIONS(1178), 13, anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1547), 2, anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1553), 2, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1557), 3, + anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_SLASH, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1597), 19, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + ACTIONS(1223), 19, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, - anon_sym_PIPE, anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [40276] = 10, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [50760] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1555), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - ACTIONS(1545), 2, - anon_sym_STAR, - anon_sym_SLASH, - STATE(642), 2, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1557), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_as, + ACTIONS(1693), 4, + anon_sym_STAR, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 25, + ACTIONS(1691), 25, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -56999,135 +66153,172 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40337] = 8, + [50813] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1555), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 5, - anon_sym_as, - anon_sym_STAR, - anon_sym_SLASH, + ACTIONS(1843), 1, + anon_sym_CARET, + ACTIONS(1693), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 28, + ACTIONS(1823), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1825), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1831), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(977), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1837), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 17, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_GT_GT, + anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40394] = 10, + [50876] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - ACTIONS(1517), 2, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1823), 2, anon_sym_STAR, anon_sym_SLASH, - STATE(642), 2, + ACTIONS(1825), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1831), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1533), 3, + ACTIONS(1837), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1597), 25, + ACTIONS(1691), 18, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_GT_GT, + anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, anon_sym_AMP, anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [40455] = 5, + [50937] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1621), 1, - sym__template_string_start, - STATE(686), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1389), 4, + ACTIONS(1267), 3, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_LBRACK, + ACTIONS(1272), 13, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + ACTIONS(1274), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [50982] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(599), 1, + anon_sym_COLON_EQ, + ACTIONS(651), 1, + anon_sym_EQ, + ACTIONS(265), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1387), 31, + ACTIONS(298), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -57144,32 +66335,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40505] = 4, + [51029] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1090), 1, + ACTIONS(613), 1, anon_sym_COLON_EQ, - ACTIONS(1088), 6, + ACTIONS(265), 5, anon_sym_STAR, - anon_sym_COLON, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 31, + ACTIONS(298), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -57187,35 +66374,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [40553] = 5, + [51074] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1624), 1, - sym__string_start, - STATE(688), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1404), 4, + ACTIONS(1527), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1402), 31, + ACTIONS(1525), 30, + sym__string_start, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -57233,34 +66414,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40603] = 5, + anon_sym_COLON2, + sym_type_conversion, + [51117] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(627), 1, - sym__template_string_start, - STATE(686), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1396), 4, + ACTIONS(1849), 1, + anon_sym_COLON_EQ, + ACTIONS(1178), 5, anon_sym_STAR, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1394), 31, + ACTIONS(1173), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -57278,65 +66457,130 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40653] = 3, + [51162] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1158), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1153), 33, + ACTIONS(1819), 1, anon_sym_DOT, + ACTIONS(1821), 1, anon_sym_LPAREN, + ACTIONS(1829), 1, + anon_sym_PIPE, + ACTIONS(1833), 1, + anon_sym_LBRACK, + ACTIONS(1835), 1, + anon_sym_STAR_STAR, + ACTIONS(1841), 1, + anon_sym_AMP, + ACTIONS(1843), 1, + anon_sym_CARET, + ACTIONS(1711), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1823), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1825), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1831), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(977), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1837), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1709), 15, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_in, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [51229] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1819), 1, + anon_sym_DOT, + ACTIONS(1821), 1, + anon_sym_LPAREN, + ACTIONS(1829), 1, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1833), 1, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + ACTIONS(1835), 1, anon_sym_STAR_STAR, + ACTIONS(1841), 1, + anon_sym_AMP, + ACTIONS(1843), 1, + anon_sym_CARET, + ACTIONS(1715), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1823), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1825), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1831), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(977), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1837), 3, anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1713), 15, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [40699] = 5, + [51296] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - STATE(688), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1400), 4, + ACTIONS(1819), 1, + anon_sym_DOT, + ACTIONS(1821), 1, + anon_sym_LPAREN, + ACTIONS(1833), 1, + anon_sym_LBRACK, + ACTIONS(1835), 1, + anon_sym_STAR_STAR, + STATE(977), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1719), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1398), 31, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(1717), 25, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -57347,10 +66591,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -57366,34 +66606,88 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40749] = 4, + [51349] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(1627), 1, - anon_sym_COLON_EQ, - ACTIONS(1088), 6, - anon_sym_as, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, anon_sym_STAR, + ACTIONS(1857), 1, + anon_sym_if, + ACTIONS(1859), 1, anon_sym_COLON, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1277), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [51430] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1519), 5, + anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 31, + ACTIONS(1517), 30, + sym__newline, + sym__string_start, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -57410,35 +66704,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40797] = 4, + anon_sym_SEMI, + [51473] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(599), 1, - anon_sym_COLON_EQ, - ACTIONS(265), 6, - anon_sym_as, + ACTIONS(1819), 1, + anon_sym_DOT, + ACTIONS(1821), 1, + anon_sym_LPAREN, + ACTIONS(1833), 1, + anon_sym_LBRACK, + ACTIONS(1835), 1, + anon_sym_STAR_STAR, + STATE(977), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1697), 4, anon_sym_STAR, - anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 31, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(1695), 25, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -57454,75 +66750,68 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40845] = 4, + [51526] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(585), 1, - anon_sym_COLON_EQ, - ACTIONS(265), 6, - anon_sym_STAR, - anon_sym_COLON, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(298), 31, + ACTIONS(1173), 3, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, + anon_sym_LBRACK, + ACTIONS(1178), 13, + anon_sym_STAR, anon_sym_GT_GT, - anon_sym_if, - anon_sym_else, - anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, + anon_sym_SLASH, anon_sym_PERCENT, anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [40893] = 3, + ACTIONS(1184), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [51571] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1173), 5, + ACTIONS(1519), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1168), 33, + ACTIONS(1517), 30, + sym__string_start, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -57540,25 +66829,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [40939] = 5, + [51614] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1629), 1, - sym__template_string_start, - STATE(696), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1389), 5, + ACTIONS(1531), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1387), 29, - sym__newline, + ACTIONS(1529), 30, + sym__template_string_start, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -57568,6 +66852,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -57584,24 +66869,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [40988] = 3, + anon_sym_COLON2, + sym_type_conversion, + [51657] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1158), 5, - anon_sym_as, + ACTIONS(1817), 1, + anon_sym_COLON_EQ, + ACTIONS(1875), 1, + anon_sym_EQ, + ACTIONS(1178), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1153), 32, + ACTIONS(1173), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_in, @@ -57609,8 +66897,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -57627,21 +66913,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [41033] = 5, + [51704] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(81), 1, - sym__string_start, - STATE(699), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1088), 5, + ACTIONS(1180), 1, + anon_sym_COLON_EQ, + ACTIONS(1178), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, + ACTIONS(1173), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -57670,73 +66953,228 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41082] = 5, + anon_sym_SEMI, + [51749] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(81), 1, + ACTIONS(647), 1, sym__string_start, - STATE(704), 2, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1877), 1, + anon_sym_if, + ACTIONS(1879), 1, + anon_sym_COLON, + STATE(1039), 1, sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1400), 5, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1277), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [51830] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(298), 3, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_LBRACK, + ACTIONS(265), 13, anon_sym_STAR, - anon_sym_EQ, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1398), 29, - sym__newline, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + ACTIONS(302), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [51875] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1390), 2, + sym__match_patterns, + sym_open_sequence_match_pattern, + STATE(1391), 2, + sym__match_pattern, + sym_match_as_pattern, + STATE(1509), 2, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [51956] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1278), 3, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, - anon_sym_COMMA, + anon_sym_LBRACK, + ACTIONS(1283), 13, + anon_sym_STAR, anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, + anon_sym_SLASH, anon_sym_PERCENT, anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [41131] = 5, + ACTIONS(1285), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [52001] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(83), 1, - sym__template_string_start, - STATE(701), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1088), 5, + ACTIONS(1817), 1, + anon_sym_COLON_EQ, + ACTIONS(1175), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1178), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, - sym__newline, + ACTIONS(1173), 27, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -57758,25 +67196,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41180] = 5, + [52048] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(83), 1, - sym__template_string_start, - STATE(696), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1396), 5, + ACTIONS(1523), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1394), 29, - sym__newline, + ACTIONS(1521), 30, + sym__template_string_start, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -57786,6 +67217,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -57802,92 +67234,72 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41229] = 20, + anon_sym_COLON2, + sym_type_conversion, + [52091] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1531), 1, - anon_sym_EQ, - ACTIONS(1632), 1, + ACTIONS(298), 3, anon_sym_DOT, - ACTIONS(1634), 1, anon_sym_LPAREN, - ACTIONS(1642), 1, - anon_sym_PIPE, - ACTIONS(1646), 1, anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1652), 1, - anon_sym_not, - ACTIONS(1654), 1, - anon_sym_AMP, - ACTIONS(1656), 1, - anon_sym_CARET, - ACTIONS(1660), 1, - anon_sym_is, - STATE(850), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1636), 2, + ACTIONS(265), 13, anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1638), 2, anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1644), 2, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(1658), 2, - anon_sym_LT, - anon_sym_GT, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1650), 3, + anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_SLASH, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1640), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1515), 7, - sym__newline, - anon_sym_from, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + ACTIONS(593), 19, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, - anon_sym_and, - anon_sym_or, - sym__semicolon, - [41308] = 3, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [52136] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1173), 5, - anon_sym_as, + ACTIONS(1527), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1168), 32, + ACTIONS(1525), 30, + sym__newline, + sym__string_start, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -57904,33 +67316,91 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [41353] = 5, + anon_sym_SEMI, + [52179] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(1662), 1, + ACTIONS(647), 1, sym__string_start, - STATE(704), 2, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + STATE(1039), 1, sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1404), 5, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1391), 2, + sym__match_pattern, + sym_match_as_pattern, + STATE(1456), 2, + sym__match_patterns, + sym_open_sequence_match_pattern, + STATE(1509), 2, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [52260] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(655), 1, + anon_sym_COLON_EQ, + ACTIONS(265), 5, anon_sym_STAR, - anon_sym_EQ, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1402), 29, - sym__newline, + ACTIONS(298), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -57947,149 +67417,39 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41402] = 13, + [52305] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1656), 1, - anon_sym_CARET, - ACTIONS(1636), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1638), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1644), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 17, - sym__newline, - anon_sym_from, + ACTIONS(599), 1, + anon_sym_COLON_EQ, + ACTIONS(270), 3, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_AMP, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [41466] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1642), 1, - anon_sym_PIPE, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1654), 1, - anon_sym_AMP, - ACTIONS(1656), 1, - anon_sym_CARET, - ACTIONS(1636), 2, + anon_sym_RBRACK, + ACTIONS(265), 4, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1638), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1644), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1607), 3, - anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1605), 15, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_in, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [41534] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1632), 1, + ACTIONS(298), 27, anon_sym_DOT, - ACTIONS(1634), 1, anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1636), 2, - anon_sym_STAR, - anon_sym_SLASH, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 22, - sym__newline, - anon_sym_from, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -58099,30 +67459,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41592] = 8, + [52352] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 5, + ACTIONS(1881), 1, + anon_sym_COLON_EQ, + ACTIONS(1178), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 25, - sym__newline, - anon_sym_from, + ACTIONS(1173), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, @@ -58130,6 +67480,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -58145,31 +67498,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41646] = 3, + anon_sym_COLON2, + sym_type_conversion, + [52397] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1427), 4, + ACTIONS(1629), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1425), 32, - sym__string_start, + ACTIONS(1627), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -58187,79 +67537,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [41690] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1636), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1638), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1644), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 18, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [41752] = 8, + anon_sym_COLON2, + sym_type_conversion, + [52439] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1615), 5, + ACTIONS(1591), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1613), 25, + ACTIONS(1589), 29, sym__newline, + anon_sym_DOT, anon_sym_from, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, @@ -58267,6 +67560,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -58282,30 +67577,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41806] = 8, + anon_sym_SEMI, + [52481] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1619), 5, + ACTIONS(1575), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1617), 25, - sym__newline, - anon_sym_from, + ACTIONS(1573), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, @@ -58313,6 +67597,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -58328,136 +67615,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41860] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1642), 1, - anon_sym_PIPE, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1654), 1, - anon_sym_AMP, - ACTIONS(1656), 1, - anon_sym_CARET, - ACTIONS(1636), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1638), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1644), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1611), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1609), 15, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_in, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [41928] = 14, + anon_sym_COLON2, + sym_type_conversion, + [52523] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1654), 1, - anon_sym_AMP, - ACTIONS(1656), 1, - anon_sym_CARET, - ACTIONS(1636), 2, + ACTIONS(1555), 5, anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1638), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1644), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 3, anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 16, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [41994] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1423), 4, - anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1421), 32, - sym__template_string_start, + ACTIONS(1553), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -58475,30 +67654,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [42038] = 3, + anon_sym_COLON2, + sym_type_conversion, + [52565] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1419), 4, + ACTIONS(1272), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1417), 32, - sym__string_start, + ACTIONS(1267), 30, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -58515,141 +67694,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - anon_sym_is, - [42082] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1642), 1, - anon_sym_PIPE, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1654), 1, - anon_sym_AMP, - ACTIONS(1656), 1, - anon_sym_CARET, - ACTIONS(1636), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1638), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1644), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1603), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1601), 15, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_in, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [42150] = 19, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1675), 1, - anon_sym_PIPE, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1685), 1, - anon_sym_not, - ACTIONS(1687), 1, - anon_sym_AMP, - ACTIONS(1689), 1, - anon_sym_CARET, - ACTIONS(1693), 1, - anon_sym_is, - STATE(863), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1669), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1671), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1677), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(1691), 2, - anon_sym_LT, - anon_sym_GT, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1673), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1515), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_and, - anon_sym_or, - [42226] = 3, + anon_sym_is, + [52607] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1437), 4, + ACTIONS(1283), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1435), 32, - sym__template_string_start, + ACTIONS(1278), 30, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -58667,33 +67734,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [42270] = 5, + [52649] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - STATE(691), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1088), 4, + ACTIONS(1559), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, + ACTIONS(1557), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -58710,45 +67771,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [42318] = 11, + anon_sym_COLON2, + sym_type_conversion, + [52691] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1636), 2, + ACTIONS(1563), 5, anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1644), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 3, anon_sym_EQ, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 20, - sym__newline, - anon_sym_from, + ACTIONS(1561), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -58758,34 +67810,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [42378] = 5, + anon_sym_COLON2, + sym_type_conversion, + [52733] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(627), 1, - sym__template_string_start, - STATE(689), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1088), 4, + ACTIONS(1567), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, + ACTIONS(1565), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -58802,29 +67849,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [42426] = 8, + anon_sym_COLON2, + sym_type_conversion, + [52775] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 5, + ACTIONS(1571), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 25, - sym__newline, - anon_sym_from, + ACTIONS(1569), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, @@ -58832,6 +67870,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -58847,62 +67888,58 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [42480] = 4, + anon_sym_COLON2, + sym_type_conversion, + [52817] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1153), 3, + ACTIONS(1001), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(999), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(1158), 13, - anon_sym_STAR, + anon_sym_COMMA, anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_SLASH, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(1160), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [42525] = 3, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [52859] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1437), 5, + ACTIONS(1535), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1435), 30, - sym__newline, - sym__template_string_start, + ACTIONS(1533), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -58912,6 +67949,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -58928,19 +67966,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [42568] = 3, + anon_sym_COLON2, + sym_type_conversion, + [52901] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1423), 5, + ACTIONS(1685), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1421), 30, + ACTIONS(1683), 29, sym__newline, - sym__template_string_start, anon_sym_DOT, anon_sym_from, anon_sym_LPAREN, @@ -58968,22 +68006,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [42611] = 4, + anon_sym_SEMI, + [52943] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(265), 5, + ACTIONS(1633), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 29, - sym__newline, + ACTIONS(1631), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -58993,6 +68027,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -59009,92 +68044,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [42656] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, - anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1183), 2, - sym__match_patterns, - sym_open_sequence_match_pattern, - STATE(1184), 2, - sym__match_pattern, - sym_match_as_pattern, - STATE(1362), 2, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [42737] = 5, + anon_sym_COLON2, + sym_type_conversion, + [52985] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(599), 1, - anon_sym_COLON_EQ, - ACTIONS(270), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(265), 4, + ACTIONS(1665), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 27, + ACTIONS(1663), 29, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -59111,21 +68083,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [42784] = 4, + anon_sym_COLON2, + sym_type_conversion, + [53027] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1145), 1, - anon_sym_COLON_EQ, - ACTIONS(1088), 5, + ACTIONS(1669), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, - sym__newline, + ACTIONS(1667), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -59135,6 +68105,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -59151,563 +68122,225 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [42829] = 4, + anon_sym_COLON2, + sym_type_conversion, + [53069] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(298), 3, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(265), 13, + ACTIONS(1673), 5, anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - ACTIONS(302), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [42874] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(298), 3, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1671), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(265), 13, - anon_sym_STAR, + anon_sym_COMMA, anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_SLASH, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(593), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [42919] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, - anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1184), 2, - sym__match_pattern, - sym_match_as_pattern, - STATE(1277), 2, - sym__match_patterns, - sym_open_sequence_match_pattern, - STATE(1362), 2, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [43000] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1675), 1, - anon_sym_PIPE, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1687), 1, - anon_sym_AMP, - ACTIONS(1689), 1, - anon_sym_CARET, - ACTIONS(1611), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1669), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1671), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1677), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1609), 15, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_not, - anon_sym_and, - anon_sym_or, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43067] = 4, + anon_sym_COLON2, + sym_type_conversion, + [53111] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1083), 3, + ACTIONS(1677), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1675), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(1088), 13, - anon_sym_STAR, + anon_sym_COMMA, anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_SLASH, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(1149), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [43112] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1675), 1, - anon_sym_PIPE, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1687), 1, - anon_sym_AMP, - ACTIONS(1689), 1, - anon_sym_CARET, - ACTIONS(1607), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1669), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1671), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1677), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1605), 15, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_not, - anon_sym_and, - anon_sym_or, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43179] = 22, + anon_sym_COLON2, + sym_type_conversion, + [53153] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, + ACTIONS(1681), 5, anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1715), 1, - anon_sym_if, - ACTIONS(1717), 1, - anon_sym_COLON, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1089), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [43260] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1168), 3, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1679), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(1173), 13, - anon_sym_STAR, + anon_sym_COMMA, anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - ACTIONS(1175), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [43305] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, anon_sym_LBRACK, - ACTIONS(1681), 1, + anon_sym_RBRACE, anon_sym_STAR_STAR, - ACTIONS(1599), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1669), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1671), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1677), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 18, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_PIPE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43366] = 4, + anon_sym_COLON2, + sym_type_conversion, + [53195] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1083), 3, + ACTIONS(1673), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1671), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(1088), 13, - anon_sym_STAR, + anon_sym_COMMA, anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_SLASH, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(1094), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [43411] = 13, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [53237] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1689), 1, - anon_sym_CARET, - ACTIONS(1599), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1669), 2, + ACTIONS(1559), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - ACTIONS(1671), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1677), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 17, - anon_sym_RPAREN, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1557), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, + anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43474] = 8, + anon_sym_SEMI, + [53279] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 4, + ACTIONS(1637), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 25, - anon_sym_RPAREN, + ACTIONS(1635), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -59723,20 +68356,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43527] = 3, + anon_sym_COLON2, + sym_type_conversion, + [53321] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1419), 5, + ACTIONS(1539), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1417), 30, - sym__newline, - sym__string_start, + ACTIONS(1537), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -59746,6 +68378,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -59762,45 +68395,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [43570] = 10, + anon_sym_COLON2, + sym_type_conversion, + [53363] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1599), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1669), 2, + ACTIONS(1547), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 22, - anon_sym_RPAREN, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1545), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -59810,87 +68434,70 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43627] = 14, + anon_sym_COLON2, + sym_type_conversion, + [53405] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1687), 1, - anon_sym_AMP, - ACTIONS(1689), 1, - anon_sym_CARET, - ACTIONS(1599), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1669), 2, + ACTIONS(1015), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - ACTIONS(1671), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1677), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 16, - anon_sym_RPAREN, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1013), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, + anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43692] = 8, + anon_sym_COLON2, + sym_type_conversion, + [53447] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1619), 4, + ACTIONS(1555), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1617), 25, - anon_sym_RPAREN, + ACTIONS(1553), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -59906,32 +68513,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43745] = 5, + anon_sym_SEMI, + [53489] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(599), 1, - anon_sym_COLON_EQ, - ACTIONS(629), 1, - anon_sym_EQ, - ACTIONS(265), 4, + ACTIONS(1583), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 29, + ACTIONS(1581), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -59948,36 +68551,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43792] = 8, + anon_sym_COLON2, + sym_type_conversion, + [53531] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1615), 4, + ACTIONS(1583), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1613), 25, - anon_sym_RPAREN, + ACTIONS(1581), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -59993,32 +68590,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43845] = 5, + anon_sym_COLON2, + sym_type_conversion, + [53573] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1627), 1, - anon_sym_COLON_EQ, - ACTIONS(1719), 1, - anon_sym_EQ, - ACTIONS(1088), 4, + ACTIONS(1591), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, + ACTIONS(1589), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -60035,156 +68629,75 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43892] = 22, + anon_sym_COLON2, + sym_type_conversion, + [53615] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, + ACTIONS(1579), 5, anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1721), 1, - anon_sym_if, - ACTIONS(1723), 1, - anon_sym_COLON, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1089), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [43973] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1675), 1, - anon_sym_PIPE, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1687), 1, - anon_sym_AMP, - ACTIONS(1689), 1, - anon_sym_CARET, - ACTIONS(1603), 2, + anon_sym_EQ, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1669), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1671), 2, + ACTIONS(1577), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1677), 2, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1601), 15, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44040] = 11, + anon_sym_COLON2, + sym_type_conversion, + [53657] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1599), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1669), 2, + ACTIONS(1685), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - ACTIONS(1677), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 20, - anon_sym_RPAREN, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1683), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -60194,36 +68707,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44099] = 8, + anon_sym_COLON2, + sym_type_conversion, + [53699] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 4, + ACTIONS(1579), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 25, - anon_sym_RPAREN, + ACTIONS(1577), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -60239,32 +68746,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44152] = 5, + anon_sym_COLON2, + sym_type_conversion, + [53741] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1627), 1, - anon_sym_COLON_EQ, - ACTIONS(1142), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1088), 4, + ACTIONS(1543), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 27, + ACTIONS(1541), 29, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -60281,20 +68785,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44199] = 3, + anon_sym_COLON2, + sym_type_conversion, + [53783] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1427), 5, + ACTIONS(1551), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1425), 30, - sym__newline, - sym__string_start, + ACTIONS(1549), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -60304,6 +68807,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -60320,31 +68824,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44242] = 4, + anon_sym_COLON2, + sym_type_conversion, + [53825] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1170), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1173), 4, + ACTIONS(1543), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1168), 27, + ACTIONS(1541), 29, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -60361,16 +68863,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44286] = 3, + anon_sym_COLON2, + sym_type_conversion, + [53867] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1505), 5, + ACTIONS(1575), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1503), 29, + ACTIONS(1573), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60399,17 +68903,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44328] = 3, + anon_sym_SEMI, + [53909] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1465), 5, + ACTIONS(1567), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 29, + ACTIONS(1565), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60438,17 +68942,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44370] = 3, + anon_sym_SEMI, + [53951] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(265), 5, + ACTIONS(1579), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 29, + ACTIONS(1577), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60477,17 +68981,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44412] = 3, + anon_sym_SEMI, + [53993] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1088), 5, + ACTIONS(1689), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, + ACTIONS(1687), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60516,17 +69020,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44454] = 3, + anon_sym_SEMI, + [54035] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1579), 5, + ACTIONS(1272), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1577), 29, + ACTIONS(1267), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60555,24 +69059,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44496] = 4, + anon_sym_SEMI, + [54077] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(613), 1, - anon_sym_COLON_EQ, - ACTIONS(265), 5, + ACTIONS(1689), 5, anon_sym_STAR, - anon_sym_COLON, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 28, + ACTIONS(1687), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_in, @@ -60580,6 +69080,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -60596,16 +69097,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44540] = 3, + anon_sym_COLON2, + sym_type_conversion, + [54119] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1575), 5, + ACTIONS(1633), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1573), 29, + ACTIONS(1631), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60634,17 +69137,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44582] = 3, + anon_sym_SEMI, + [54161] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1571), 5, + ACTIONS(1178), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1569), 29, + ACTIONS(1173), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60673,132 +69176,56 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44624] = 22, + anon_sym_SEMI, + [54203] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, + ACTIONS(1583), 5, anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1725), 1, - anon_sym_RPAREN, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1376), 2, - sym__match_pattern, - sym_match_as_pattern, - STATE(1382), 2, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [44704] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1581), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - ACTIONS(1699), 1, - anon_sym_STAR, - ACTIONS(1701), 1, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1725), 1, - anon_sym_RBRACK, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1206), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [44782] = 3, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [54245] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1449), 5, + ACTIONS(1665), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1447), 29, + ACTIONS(1663), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60827,79 +69254,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44824] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, - anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1727), 1, - anon_sym_RBRACK, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1089), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [44902] = 3, + anon_sym_SEMI, + [54287] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1469), 5, + ACTIONS(635), 1, + anon_sym_COLON_EQ, + ACTIONS(265), 5, anon_sym_STAR, - anon_sym_EQ, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1467), 29, - sym__newline, + ACTIONS(298), 28, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_in, @@ -60923,26 +69295,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44944] = 4, + [54331] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1142), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1088), 4, + ACTIONS(1883), 1, + anon_sym_COLON_EQ, + ACTIONS(1178), 5, anon_sym_STAR, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 27, + ACTIONS(1173), 28, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -60964,73 +69335,55 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44988] = 21, + [54375] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, + ACTIONS(1669), 5, anon_sym_STAR, - ACTIONS(1701), 1, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1667), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1727), 1, - anon_sym_RPAREN, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1089), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [45066] = 3, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [54417] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1465), 5, + ACTIONS(1543), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 29, + ACTIONS(1541), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61059,138 +69412,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45108] = 21, + anon_sym_SEMI, + [54459] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, - anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1729), 1, + ACTIONS(1175), 3, anon_sym_RPAREN, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1089), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [45186] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, - anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1729), 1, + anon_sym_COMMA, anon_sym_RBRACK, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1089), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [45264] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1497), 5, + ACTIONS(1178), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1495), 29, - sym__newline, + ACTIONS(1173), 27, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -61212,17 +69453,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45306] = 3, + [54503] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1497), 5, + ACTIONS(1551), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1495), 29, + ACTIONS(1549), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61251,17 +69491,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45348] = 3, + anon_sym_SEMI, + [54545] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1477), 5, + ACTIONS(1543), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1475), 29, + ACTIONS(1541), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61290,24 +69530,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45390] = 4, + anon_sym_SEMI, + [54587] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1731), 1, - anon_sym_COLON_EQ, - ACTIONS(1088), 5, + ACTIONS(1283), 5, anon_sym_STAR, - anon_sym_COLON, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 28, + ACTIONS(1278), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_in, @@ -61331,23 +69569,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45434] = 3, + anon_sym_SEMI, + [54629] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1158), 5, + ACTIONS(1269), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1272), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1153), 29, - sym__newline, + ACTIONS(1267), 27, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -61369,17 +69610,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45476] = 3, + [54673] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1461), 5, + ACTIONS(1673), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1459), 29, + ACTIONS(1671), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61408,17 +69648,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45518] = 3, + anon_sym_SEMI, + [54715] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1473), 5, + ACTIONS(1677), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1471), 29, + ACTIONS(1675), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61447,17 +69687,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45560] = 3, + anon_sym_SEMI, + [54757] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1485), 5, + ACTIONS(1681), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1483), 29, + ACTIONS(1679), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61486,17 +69726,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45602] = 3, + anon_sym_SEMI, + [54799] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1481), 5, + ACTIONS(1673), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1479), 29, + ACTIONS(1671), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61525,20 +69765,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45644] = 3, + anon_sym_SEMI, + [54841] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1173), 5, + ACTIONS(1178), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1168), 29, - sym__newline, + ACTIONS(1173), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -61548,6 +69786,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -61564,24 +69803,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45686] = 3, + anon_sym_COLON2, + sym_type_conversion, + [54883] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1453), 5, + ACTIONS(1280), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1283), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1451), 29, - sym__newline, + ACTIONS(1278), 27, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -61603,17 +69845,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45728] = 3, + [54927] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1509), 5, + ACTIONS(265), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1507), 29, + ACTIONS(298), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61642,17 +69883,131 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45770] = 3, + anon_sym_SEMI, + [54969] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1583), 5, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1885), 1, + anon_sym_RPAREN, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1277), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [55047] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1885), 1, + anon_sym_RBRACK, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1277), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [55125] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1637), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1581), 29, + ACTIONS(1635), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61681,17 +70036,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45812] = 3, + anon_sym_SEMI, + [55167] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1489), 5, + ACTIONS(1539), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1487), 29, + ACTIONS(1537), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61720,17 +70075,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45854] = 3, + anon_sym_SEMI, + [55209] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1587), 5, + ACTIONS(1535), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1585), 29, + ACTIONS(1533), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61759,17 +70114,246 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45896] = 3, + anon_sym_SEMI, + [55251] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1887), 1, + anon_sym_RPAREN, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1553), 2, + sym__match_pattern, + sym_match_as_pattern, + STATE(1556), 2, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [55331] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1887), 1, + anon_sym_RBRACK, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1469), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [55409] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1889), 1, + anon_sym_RPAREN, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1277), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [55487] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1889), 1, + anon_sym_RBRACK, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1277), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [55565] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1501), 5, + ACTIONS(1547), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1499), 29, + ACTIONS(1545), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61798,17 +70382,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45938] = 3, + anon_sym_SEMI, + [55607] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1441), 5, + ACTIONS(1563), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1439), 29, + ACTIONS(1561), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61837,20 +70421,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45980] = 3, + anon_sym_SEMI, + [55649] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1595), 5, + ACTIONS(265), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1593), 29, - sym__newline, + ACTIONS(298), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -61860,6 +70442,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -61876,20 +70459,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [46022] = 3, + anon_sym_COLON2, + sym_type_conversion, + [55691] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1449), 5, + ACTIONS(1587), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1447), 29, - sym__newline, + ACTIONS(1585), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -61899,6 +70481,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -61915,17 +70498,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [46064] = 3, + anon_sym_COLON2, + sym_type_conversion, + [55733] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1493), 5, + ACTIONS(1583), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1491), 29, + ACTIONS(1581), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61954,17 +70538,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [46106] = 3, + anon_sym_SEMI, + [55775] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1453), 5, + ACTIONS(1629), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1451), 29, + ACTIONS(1627), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61993,57 +70577,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [46148] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1155), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1158), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1153), 27, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [46192] = 3, + anon_sym_SEMI, + [55817] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1445), 5, + ACTIONS(1587), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1443), 29, + ACTIONS(1585), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -62072,17 +70616,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [46234] = 3, + anon_sym_SEMI, + [55859] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1591), 5, + ACTIONS(1579), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1589), 29, + ACTIONS(1577), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -62111,17 +70655,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [46276] = 3, + anon_sym_SEMI, + [55901] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1457), 5, + ACTIONS(1571), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1455), 29, + ACTIONS(1569), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -62150,16 +70694,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [46318] = 3, + anon_sym_SEMI, + [55943] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1595), 4, + ACTIONS(1559), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1593), 29, + ACTIONS(1557), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62189,7 +70733,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46359] = 3, + [55984] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1575), 4, @@ -62227,15 +70771,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46400] = 3, + [56025] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(265), 4, + ACTIONS(1001), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 29, + ACTIONS(999), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62265,112 +70809,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46441] = 5, + [56066] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(585), 1, - anon_sym_COLON_EQ, - ACTIONS(629), 1, - anon_sym_EQ, - ACTIONS(265), 4, + ACTIONS(1637), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 27, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [46486] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1733), 1, - sym_identifier, - ACTIONS(1735), 1, - anon_sym_RPAREN, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1192), 1, - sym_match_keyword_pattern, - STATE(1200), 1, - sym_match_positional_pattern, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1373), 2, - sym__match_pattern, - sym_match_as_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [46565] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1449), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1447), 29, + ACTIONS(1635), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62400,108 +70847,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46606] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1501), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1499), 29, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [46647] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, - anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1089), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [46722] = 3, + [56107] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1449), 4, + ACTIONS(1535), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1447), 29, + ACTIONS(1533), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62531,15 +70885,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46763] = 3, + [56148] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1088), 4, + ACTIONS(1547), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, + ACTIONS(1545), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62569,72 +70923,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46804] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1733), 1, - sym_identifier, - ACTIONS(1737), 1, - anon_sym_RPAREN, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1213), 1, - sym_match_keyword_pattern, - STATE(1332), 1, - sym_match_positional_pattern, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1373), 2, - sym__match_pattern, - sym_match_as_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [46883] = 3, + [56189] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1509), 4, + ACTIONS(1015), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1507), 29, + ACTIONS(1013), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62664,15 +70961,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46924] = 3, + [56230] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1453), 4, + ACTIONS(1587), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1451), 29, + ACTIONS(1585), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62702,15 +70999,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46965] = 3, + [56271] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1489), 4, + ACTIONS(1178), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1487), 29, + ACTIONS(1173), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62740,15 +71037,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47006] = 3, + [56312] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1481), 4, + ACTIONS(1583), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1479), 29, + ACTIONS(1581), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62778,15 +71075,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47047] = 3, + [56353] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1485), 4, + ACTIONS(1583), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1483), 29, + ACTIONS(1581), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62816,15 +71113,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47088] = 3, + [56394] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1453), 4, + ACTIONS(1591), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1451), 29, + ACTIONS(1589), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62854,15 +71151,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47129] = 3, + [56435] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1591), 4, + ACTIONS(1579), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1589), 29, + ACTIONS(1577), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62892,15 +71189,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47170] = 3, + [56476] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1493), 4, + ACTIONS(1629), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1491), 29, + ACTIONS(1627), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62930,15 +71227,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47211] = 3, + [56517] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1497), 4, + ACTIONS(1685), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1495), 29, + ACTIONS(1683), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62968,15 +71265,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47252] = 3, + [56558] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1445), 4, + ACTIONS(1579), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1443), 29, + ACTIONS(1577), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63006,15 +71303,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47293] = 3, + [56599] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1497), 4, + ACTIONS(1543), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1495), 29, + ACTIONS(1541), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63044,15 +71341,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47334] = 3, + [56640] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(863), 4, + ACTIONS(1551), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(861), 29, + ACTIONS(1549), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63082,55 +71379,93 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47375] = 22, + [56681] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, + ACTIONS(265), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(298), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [56722] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(1697), 1, + ACTIONS(1853), 1, anon_sym_LPAREN, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1703), 1, + ACTIONS(1863), 1, sym_match_wildcard_pattern, - ACTIONS(1705), 1, + ACTIONS(1865), 1, anon_sym_LBRACK, - ACTIONS(1707), 1, + ACTIONS(1867), 1, anon_sym_LBRACE, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - ACTIONS(1733), 1, + ACTIONS(1891), 1, sym_identifier, - ACTIONS(1739), 1, + ACTIONS(1893), 1, anon_sym_RPAREN, - STATE(891), 1, - sym_template_string, - STATE(892), 1, + STATE(1039), 1, sym_string, - STATE(1242), 1, + STATE(1040), 1, + sym_template_string, + STATE(1459), 1, sym_match_keyword_pattern, - STATE(1332), 1, + STATE(1534), 1, sym_match_positional_pattern, - STATE(1419), 1, + STATE(1680), 1, sym_pattern_class_name, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1014), 2, + STATE(1184), 2, sym__match_or_pattern, sym_match_or_pattern, - STATE(1373), 2, + STATE(1526), 2, sym__match_pattern, sym_match_as_pattern, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - STATE(980), 8, + STATE(1142), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -63139,15 +71474,15 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [47454] = 3, + [56801] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1571), 4, + ACTIONS(1543), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1569), 29, + ACTIONS(1541), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63177,25 +71512,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47495] = 5, + [56842] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1090), 1, - anon_sym_COLON_EQ, - ACTIONS(1719), 1, - anon_sym_EQ, - ACTIONS(1088), 4, + ACTIONS(1563), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 27, + ACTIONS(1561), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -63217,15 +71550,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47540] = 3, + [56883] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1579), 4, + ACTIONS(1633), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1577), 29, + ACTIONS(1631), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63255,15 +71588,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47581] = 3, + [56924] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1465), 4, + ACTIONS(1567), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 29, + ACTIONS(1565), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63293,15 +71626,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47622] = 3, + [56965] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1441), 4, + ACTIONS(1555), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1439), 29, + ACTIONS(1553), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63331,15 +71664,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47663] = 3, + [57006] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1587), 4, + ACTIONS(1665), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1585), 29, + ACTIONS(1663), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63369,15 +71702,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47704] = 3, + [57047] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1477), 4, + ACTIONS(1669), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1475), 29, + ACTIONS(1667), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63407,15 +71740,95 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47745] = 3, + [57088] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1583), 4, + ACTIONS(585), 1, + anon_sym_COLON_EQ, + ACTIONS(651), 1, + anon_sym_EQ, + ACTIONS(265), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1581), 29, + ACTIONS(298), 27, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [57133] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1219), 1, + anon_sym_COLON_EQ, + ACTIONS(1875), 1, + anon_sym_EQ, + ACTIONS(1178), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 27, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [57178] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1673), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1671), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63445,15 +71858,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47786] = 3, + [57219] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1469), 4, + ACTIONS(1571), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1467), 29, + ACTIONS(1569), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63483,15 +71896,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47827] = 3, + [57260] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1465), 4, + ACTIONS(1677), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 29, + ACTIONS(1675), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63521,15 +71934,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47868] = 3, + [57301] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1461), 4, + ACTIONS(1689), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1459), 29, + ACTIONS(1687), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63559,15 +71972,165 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47909] = 3, + [57342] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1679), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [57383] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1277), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [57458] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1891), 1, + sym_identifier, + ACTIONS(1895), 1, + anon_sym_RPAREN, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1438), 1, + sym_match_keyword_pattern, + STATE(1534), 1, + sym_match_positional_pattern, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1526), 2, + sym__match_pattern, + sym_match_as_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [57537] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1457), 4, + ACTIONS(1673), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1455), 29, + ACTIONS(1671), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63597,91 +72160,72 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47950] = 3, + [57578] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(867), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(865), 29, - anon_sym_DOT, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1853), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_PIPE, + ACTIONS(1861), 1, anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [47991] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1473), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1471), 29, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1891), 1, + sym_identifier, + ACTIONS(1897), 1, anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [48032] = 3, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1381), 1, + sym_match_keyword_pattern, + STATE(1466), 1, + sym_match_positional_pattern, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1526), 2, + sym__match_pattern, + sym_match_as_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [57657] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1505), 4, + ACTIONS(1539), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1503), 29, + ACTIONS(1537), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63711,51 +72255,51 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [48073] = 20, + [57698] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(1695), 1, + ACTIONS(1851), 1, sym_identifier, - ACTIONS(1697), 1, + ACTIONS(1853), 1, anon_sym_LPAREN, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1703), 1, + ACTIONS(1863), 1, sym_match_wildcard_pattern, - ACTIONS(1705), 1, + ACTIONS(1865), 1, anon_sym_LBRACK, - ACTIONS(1707), 1, + ACTIONS(1867), 1, anon_sym_LBRACE, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - STATE(891), 1, - sym_template_string, - STATE(892), 1, + STATE(1039), 1, sym_string, - STATE(1332), 1, + STATE(1040), 1, + sym_template_string, + STATE(1534), 1, sym_match_positional_pattern, - STATE(1419), 1, + STATE(1680), 1, sym_pattern_class_name, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1014), 2, + STATE(1184), 2, sym__match_or_pattern, sym_match_or_pattern, - STATE(1373), 2, + STATE(1526), 2, sym__match_pattern, sym_match_as_pattern, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - STATE(980), 8, + STATE(1142), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -63764,49 +72308,49 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [48146] = 19, + [57771] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(1695), 1, + ACTIONS(1851), 1, sym_identifier, - ACTIONS(1697), 1, + ACTIONS(1853), 1, anon_sym_LPAREN, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1703), 1, + ACTIONS(1863), 1, sym_match_wildcard_pattern, - ACTIONS(1705), 1, + ACTIONS(1865), 1, anon_sym_LBRACK, - ACTIONS(1707), 1, + ACTIONS(1867), 1, anon_sym_LBRACE, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - STATE(891), 1, - sym_template_string, - STATE(892), 1, + STATE(1039), 1, sym_string, - STATE(1419), 1, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, sym_pattern_class_name, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1014), 2, + STATE(1184), 2, sym__match_or_pattern, sym_match_or_pattern, - STATE(1384), 2, + STATE(1542), 2, sym__match_pattern, sym_match_as_pattern, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - STATE(980), 8, + STATE(1142), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -63815,49 +72359,49 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [48216] = 19, + [57841] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(1695), 1, + ACTIONS(1851), 1, sym_identifier, - ACTIONS(1697), 1, + ACTIONS(1853), 1, anon_sym_LPAREN, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1703), 1, + ACTIONS(1863), 1, sym_match_wildcard_pattern, - ACTIONS(1705), 1, + ACTIONS(1865), 1, anon_sym_LBRACK, - ACTIONS(1707), 1, + ACTIONS(1867), 1, anon_sym_LBRACE, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - STATE(891), 1, - sym_template_string, - STATE(892), 1, + STATE(1039), 1, sym_string, - STATE(1419), 1, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, sym_pattern_class_name, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1014), 2, + STATE(1184), 2, sym__match_or_pattern, sym_match_or_pattern, - STATE(1326), 2, + STATE(1575), 2, sym__match_pattern, sym_match_as_pattern, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - STATE(980), 8, + STATE(1142), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -63866,43 +72410,43 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [48286] = 17, + [57911] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(1695), 1, + ACTIONS(1851), 1, sym_identifier, - ACTIONS(1697), 1, + ACTIONS(1853), 1, anon_sym_LPAREN, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1705), 1, + ACTIONS(1865), 1, anon_sym_LBRACK, - ACTIONS(1707), 1, + ACTIONS(1867), 1, anon_sym_LBRACE, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - ACTIONS(1741), 1, + ACTIONS(1899), 1, sym_match_wildcard_pattern, - STATE(891), 1, - sym_template_string, - STATE(892), 1, + STATE(1039), 1, sym_string, - STATE(1419), 1, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, sym_pattern_class_name, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - STATE(956), 8, + STATE(1116), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -63911,43 +72455,43 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [48348] = 17, + [57973] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(1695), 1, + ACTIONS(1851), 1, sym_identifier, - ACTIONS(1697), 1, + ACTIONS(1853), 1, anon_sym_LPAREN, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1705), 1, + ACTIONS(1865), 1, anon_sym_LBRACK, - ACTIONS(1707), 1, + ACTIONS(1867), 1, anon_sym_LBRACE, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - ACTIONS(1743), 1, + ACTIONS(1901), 1, sym_match_wildcard_pattern, - STATE(891), 1, - sym_template_string, - STATE(892), 1, + STATE(1039), 1, sym_string, - STATE(1419), 1, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, sym_pattern_class_name, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - STATE(939), 8, + STATE(1091), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -63956,28 +72500,28 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [48410] = 8, + [58035] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1750), 1, + ACTIONS(1908), 1, anon_sym_EQ, - ACTIONS(1752), 1, + ACTIONS(1910), 1, anon_sym_not, - ACTIONS(1758), 1, + ACTIONS(1916), 1, anon_sym_is, - STATE(844), 1, + STATE(989), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1755), 2, + ACTIONS(1913), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1747), 6, + ACTIONS(1905), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1745), 10, + ACTIONS(1903), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -63987,61 +72531,59 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, anon_sym_and, anon_sym_or, - sym_type_conversion, - [48450] = 8, + [58074] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1559), 1, + ACTIONS(1908), 1, + anon_sym_as, + ACTIONS(1922), 1, anon_sym_not, - ACTIONS(1567), 1, + ACTIONS(1928), 1, anon_sym_is, - ACTIONS(1763), 1, - anon_sym_as, - STATE(847), 1, + STATE(990), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1565), 2, + ACTIONS(1925), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1549), 6, + ACTIONS(1919), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1761), 10, + ACTIONS(1903), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [48490] = 8, + [58113] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1535), 1, + ACTIONS(1617), 1, anon_sym_not, - ACTIONS(1543), 1, + ACTIONS(1625), 1, anon_sym_is, - ACTIONS(1763), 1, + ACTIONS(1933), 1, anon_sym_EQ, - STATE(844), 1, + STATE(989), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1541), 2, + ACTIONS(1623), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1521), 6, + ACTIONS(1603), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1761), 10, + ACTIONS(1931), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -64051,47 +72593,45 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, anon_sym_and, anon_sym_or, - sym_type_conversion, - [48530] = 8, + [58152] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1750), 1, - anon_sym_as, - ACTIONS(1768), 1, + ACTIONS(1653), 1, anon_sym_not, - ACTIONS(1774), 1, + ACTIONS(1661), 1, anon_sym_is, - STATE(847), 1, + ACTIONS(1933), 1, + anon_sym_as, + STATE(990), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1771), 2, + ACTIONS(1659), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1765), 6, + ACTIONS(1643), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1745), 10, + ACTIONS(1931), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [48570] = 4, + [58191] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1779), 1, + ACTIONS(1937), 1, anon_sym_COMMA, - STATE(848), 1, + STATE(993), 1, aux_sym__patterns_repeat1, - ACTIONS(1777), 18, + ACTIONS(1935), 18, anon_sym_RPAREN, anon_sym_COLON, anon_sym_in, @@ -64110,124 +72650,141 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [48600] = 2, + [58221] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(1782), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [48625] = 8, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1940), 1, + sym_identifier, + ACTIONS(1942), 1, + anon_sym_RBRACE, + ACTIONS(1944), 1, + anon_sym_STAR_STAR, + STATE(1317), 1, + sym_string, + STATE(1318), 1, + sym_template_string, + STATE(1477), 1, + sym_match_key_value_pattern, + STATE(1564), 1, + sym_match_double_star_pattern, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1722), 2, + sym_match_literal_pattern, + sym_match_value_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + [58274] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1652), 1, + ACTIONS(1908), 1, + anon_sym_EQ, + ACTIONS(1949), 1, anon_sym_not, - ACTIONS(1660), 1, + ACTIONS(1955), 1, anon_sym_is, - ACTIONS(1763), 1, - anon_sym_EQ, - STATE(856), 1, + STATE(995), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1658), 2, + ACTIONS(1952), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1640), 6, + ACTIONS(1946), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1761), 7, - sym__newline, - anon_sym_from, + ACTIONS(1903), 7, anon_sym_COMMA, anon_sym_if, + anon_sym_RBRACE, anon_sym_and, anon_sym_or, - sym__semicolon, - [48662] = 16, + anon_sym_COLON2, + sym_type_conversion, + [58311] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - ACTIONS(1784), 1, + ACTIONS(1940), 1, sym_identifier, - ACTIONS(1786), 1, - anon_sym_RBRACE, - ACTIONS(1788), 1, + ACTIONS(1944), 1, anon_sym_STAR_STAR, - STATE(1119), 1, - sym_template_string, - STATE(1120), 1, + ACTIONS(1958), 1, + anon_sym_RBRACE, + STATE(1317), 1, sym_string, - STATE(1273), 1, - sym_match_key_value_pattern, - STATE(1337), 1, + STATE(1318), 1, + sym_template_string, + STATE(1569), 1, sym_match_double_star_pattern, - STATE(977), 2, + STATE(1573), 1, + sym_match_key_value_pattern, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1471), 2, + STATE(1722), 2, sym_match_literal_pattern, sym_match_value_pattern, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - [48715] = 4, + [58364] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(265), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(825), 3, - anon_sym_RPAREN, + ACTIONS(1771), 1, + anon_sym_not, + ACTIONS(1779), 1, + anon_sym_is, + STATE(1007), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1777), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1761), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1931), 8, anon_sym_COMMA, + anon_sym_if, anon_sym_COLON, - ACTIONS(298), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - [48744] = 2, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + [58399] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1149), 19, + ACTIONS(1960), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -64247,10 +72804,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [48769] = 2, + [58424] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1790), 19, + ACTIONS(1184), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -64270,76 +72827,141 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [48794] = 16, + [58449] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(1701), 1, + ACTIONS(1178), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1962), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + ACTIONS(1173), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_GT_GT, + anon_sym_PIPE, anon_sym_DASH, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1784), 1, - sym_identifier, - ACTIONS(1788), 1, + anon_sym_PLUS, + anon_sym_LBRACK, anon_sym_STAR_STAR, - ACTIONS(1792), 1, - anon_sym_RBRACE, - STATE(1119), 1, - sym_template_string, - STATE(1120), 1, - sym_string, - STATE(1339), 1, - sym_match_double_star_pattern, - STATE(1344), 1, - sym_match_key_value_pattern, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1471), 2, - sym_match_literal_pattern, - sym_match_value_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - [48847] = 8, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + [58478] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(265), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(911), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + ACTIONS(298), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + [58507] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1750), 1, + ACTIONS(1807), 1, + anon_sym_not, + ACTIONS(1815), 1, + anon_sym_is, + ACTIONS(1933), 1, anon_sym_EQ, - ACTIONS(1797), 1, + STATE(1003), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1813), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1795), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1931), 7, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_if, + anon_sym_and, + anon_sym_or, + anon_sym_SEMI, + [58544] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1908), 1, + anon_sym_EQ, + ACTIONS(1967), 1, anon_sym_not, - ACTIONS(1803), 1, + ACTIONS(1973), 1, anon_sym_is, - STATE(856), 1, + STATE(1003), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1800), 2, + ACTIONS(1970), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1794), 6, + ACTIONS(1964), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1745), 7, + ACTIONS(1903), 7, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_if, anon_sym_and, anon_sym_or, - sym__semicolon, - [48884] = 2, + anon_sym_SEMI, + [58581] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1976), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [58606] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1806), 19, + ACTIONS(1978), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -64359,88 +72981,120 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [48909] = 16, + [58631] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1744), 1, + anon_sym_not, + ACTIONS(1752), 1, + anon_sym_is, + ACTIONS(1933), 1, + anon_sym_EQ, + STATE(995), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1750), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1732), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1931), 7, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + anon_sym_COLON2, + sym_type_conversion, + [58668] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1983), 1, + anon_sym_not, + ACTIONS(1989), 1, + anon_sym_is, + STATE(1007), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1986), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1980), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1903), 8, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + [58703] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - ACTIONS(1784), 1, + ACTIONS(1940), 1, sym_identifier, - ACTIONS(1788), 1, + ACTIONS(1944), 1, anon_sym_STAR_STAR, - ACTIONS(1808), 1, + ACTIONS(1992), 1, anon_sym_RBRACE, - STATE(1119), 1, - sym_template_string, - STATE(1120), 1, + STATE(1317), 1, sym_string, - STATE(1313), 1, + STATE(1318), 1, + sym_template_string, + STATE(1544), 1, sym_match_double_star_pattern, - STATE(1344), 1, + STATE(1573), 1, sym_match_key_value_pattern, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1471), 2, + STATE(1722), 2, sym_match_literal_pattern, sym_match_value_pattern, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - [48962] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1088), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1810), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - ACTIONS(1083), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - [48991] = 7, + [58756] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1815), 1, + ACTIONS(1839), 1, anon_sym_not, - ACTIONS(1821), 1, + ACTIONS(1847), 1, anon_sym_is, - STATE(860), 1, + STATE(1011), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1818), 2, + ACTIONS(1845), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1812), 6, + ACTIONS(1827), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1745), 7, + ACTIONS(1931), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -64448,14 +73102,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_and, anon_sym_or, - [49025] = 4, + [58790] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1824), 1, + ACTIONS(1994), 1, anon_sym_COMMA, - STATE(848), 1, + STATE(993), 1, aux_sym__patterns_repeat1, - ACTIONS(1826), 16, + ACTIONS(1996), 16, anon_sym_COLON, anon_sym_in, anon_sym_EQ, @@ -64472,368 +73126,403 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [49053] = 13, + [58818] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(2001), 1, + anon_sym_not, + ACTIONS(2007), 1, + anon_sym_is, + STATE(1011), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(2004), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1998), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1903), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_and, + anon_sym_or, + [58852] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1595), 1, anon_sym_LPAREN, - ACTIONS(1523), 1, + ACTIONS(1605), 1, anon_sym_PIPE, - ACTIONS(1527), 1, + ACTIONS(1609), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1611), 1, anon_sym_STAR_STAR, - ACTIONS(1537), 1, + ACTIONS(1619), 1, anon_sym_AMP, - ACTIONS(1539), 1, + ACTIONS(1621), 1, anon_sym_CARET, - ACTIONS(1517), 2, + ACTIONS(1599), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1519), 2, + ACTIONS(1601), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1525), 2, + ACTIONS(1607), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(733), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1533), 3, + ACTIONS(1615), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - [49099] = 7, + [58898] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1685), 1, - anon_sym_not, - ACTIONS(1693), 1, - anon_sym_is, - STATE(860), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1691), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1673), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1761), 7, - anon_sym_RPAREN, + ACTIONS(2010), 1, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, + ACTIONS(2012), 1, anon_sym_COLON, - anon_sym_and, - anon_sym_or, - [49133] = 12, + ACTIONS(2014), 1, + anon_sym_EQ, + STATE(1010), 1, + aux_sym__patterns_repeat1, + ACTIONS(2016), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [58929] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(2018), 1, sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1834), 1, + ACTIONS(2024), 1, anon_sym_COLON, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - STATE(1276), 1, + STATE(1385), 1, sym_parameter, - STATE(1448), 1, + STATE(1593), 1, sym_lambda_parameters, - STATE(1474), 1, + STATE(1598), 1, sym__parameters, - STATE(1331), 2, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49176] = 12, + [58972] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(2018), 1, sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1840), 1, + ACTIONS(2030), 1, anon_sym_COLON, - STATE(1276), 1, + STATE(1385), 1, sym_parameter, - STATE(1435), 1, - sym_lambda_parameters, - STATE(1474), 1, + STATE(1598), 1, sym__parameters, - STATE(1331), 2, + STATE(1690), 1, + sym_lambda_parameters, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49219] = 12, + [59015] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(2018), 1, sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1842), 1, + ACTIONS(2032), 1, anon_sym_COLON, - STATE(1276), 1, + STATE(1385), 1, sym_parameter, - STATE(1423), 1, - sym_lambda_parameters, - STATE(1474), 1, + STATE(1598), 1, sym__parameters, - STATE(1331), 2, + STATE(1668), 1, + sym_lambda_parameters, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49262] = 6, + [59058] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1844), 1, - anon_sym_COMMA, - ACTIONS(1846), 1, + ACTIONS(2018), 1, + sym_identifier, + ACTIONS(2020), 1, + anon_sym_LPAREN, + ACTIONS(2022), 1, + anon_sym_STAR, + ACTIONS(2026), 1, + anon_sym_STAR_STAR, + ACTIONS(2028), 1, + anon_sym_SLASH, + ACTIONS(2034), 1, anon_sym_COLON, - ACTIONS(1848), 1, - anon_sym_EQ, - STATE(861), 1, - aux_sym__patterns_repeat1, - ACTIONS(1850), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [49293] = 12, + STATE(1385), 1, + sym_parameter, + STATE(1598), 1, + sym__parameters, + STATE(1604), 1, + sym_lambda_parameters, + STATE(1520), 2, + sym_list_splat_pattern, + sym_dictionary_splat_pattern, + STATE(1394), 6, + sym_tuple_pattern, + sym_default_parameter, + sym_typed_default_parameter, + sym_typed_parameter, + sym_positional_separator, + sym_keyword_separator, + [59101] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(2018), 1, sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1852), 1, + ACTIONS(2036), 1, anon_sym_COLON, - STATE(1276), 1, + STATE(1385), 1, sym_parameter, - STATE(1397), 1, - sym_lambda_parameters, - STATE(1474), 1, + STATE(1598), 1, sym__parameters, - STATE(1331), 2, + STATE(1673), 1, + sym_lambda_parameters, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49336] = 12, + [59144] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(2018), 1, sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1854), 1, + ACTIONS(2038), 1, anon_sym_COLON, - STATE(1276), 1, + STATE(1385), 1, sym_parameter, - STATE(1472), 1, + STATE(1598), 1, + sym__parameters, + STATE(1682), 1, sym_lambda_parameters, - STATE(1474), 1, + STATE(1520), 2, + sym_list_splat_pattern, + sym_dictionary_splat_pattern, + STATE(1394), 6, + sym_tuple_pattern, + sym_default_parameter, + sym_typed_default_parameter, + sym_typed_parameter, + sym_positional_separator, + sym_keyword_separator, + [59187] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2018), 1, + sym_identifier, + ACTIONS(2020), 1, + anon_sym_LPAREN, + ACTIONS(2022), 1, + anon_sym_STAR, + ACTIONS(2026), 1, + anon_sym_STAR_STAR, + ACTIONS(2028), 1, + anon_sym_SLASH, + ACTIONS(2040), 1, + anon_sym_COLON, + STATE(1385), 1, + sym_parameter, + STATE(1598), 1, sym__parameters, - STATE(1331), 2, + STATE(1711), 1, + sym_lambda_parameters, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49379] = 13, + [59230] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - ACTIONS(1784), 1, + ACTIONS(1940), 1, sym_identifier, - STATE(1119), 1, - sym_template_string, - STATE(1120), 1, + STATE(1317), 1, sym_string, - STATE(1344), 1, + STATE(1318), 1, + sym_template_string, + STATE(1573), 1, sym_match_key_value_pattern, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1471), 2, + STATE(1722), 2, sym_match_literal_pattern, sym_match_value_pattern, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - [49423] = 11, + [59274] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1856), 1, + ACTIONS(2042), 1, sym_identifier, - ACTIONS(1858), 1, + ACTIONS(2044), 1, anon_sym_RPAREN, - STATE(1229), 1, + STATE(1428), 1, sym_parameter, - STATE(1473), 1, + STATE(1684), 1, sym__parameters, - STATE(1222), 2, + STATE(1442), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49463] = 10, + [59314] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1830), 1, - anon_sym_LPAREN, - ACTIONS(1832), 1, - anon_sym_STAR, - ACTIONS(1836), 1, - anon_sym_STAR_STAR, - ACTIONS(1838), 1, - anon_sym_SLASH, - ACTIONS(1856), 1, + ACTIONS(2018), 1, sym_identifier, - ACTIONS(1860), 1, - anon_sym_RPAREN, - STATE(1288), 1, - sym_parameter, - STATE(1222), 2, - sym_list_splat_pattern, - sym_dictionary_splat_pattern, - STATE(1278), 6, - sym_tuple_pattern, - sym_default_parameter, - sym_typed_default_parameter, - sym_typed_parameter, - sym_positional_separator, - sym_keyword_separator, - [49500] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1856), 1, - sym_identifier, - ACTIONS(1862), 1, - anon_sym_RPAREN, - STATE(1288), 1, + ACTIONS(2046), 1, + anon_sym_COLON, + STATE(1444), 1, sym_parameter, - STATE(1222), 2, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49537] = 4, + [59351] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1846), 1, + ACTIONS(2012), 1, anon_sym_COLON, - ACTIONS(1848), 1, + ACTIONS(2014), 1, anon_sym_EQ, - ACTIONS(1850), 13, + ACTIONS(2016), 13, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, @@ -64847,116 +73536,143 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [49562] = 10, + [59376] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(2018), 1, sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1862), 1, + ACTIONS(2048), 1, anon_sym_COLON, - STATE(1288), 1, + STATE(1444), 1, sym_parameter, - STATE(1331), 2, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49599] = 10, + [59413] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, - sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1860), 1, - anon_sym_COLON, - STATE(1288), 1, + ACTIONS(2042), 1, + sym_identifier, + ACTIONS(2048), 1, + anon_sym_RPAREN, + STATE(1444), 1, sym_parameter, - STATE(1331), 2, + STATE(1442), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49636] = 9, + [59450] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, - sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - STATE(1288), 1, + ACTIONS(2042), 1, + sym_identifier, + ACTIONS(2046), 1, + anon_sym_RPAREN, + STATE(1444), 1, sym_parameter, - STATE(1331), 2, + STATE(1442), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49670] = 9, + [59487] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1856), 1, + ACTIONS(2042), 1, sym_identifier, - STATE(1288), 1, + STATE(1444), 1, + sym_parameter, + STATE(1442), 2, + sym_list_splat_pattern, + sym_dictionary_splat_pattern, + STATE(1394), 6, + sym_tuple_pattern, + sym_default_parameter, + sym_typed_default_parameter, + sym_typed_parameter, + sym_positional_separator, + sym_keyword_separator, + [59521] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2018), 1, + sym_identifier, + ACTIONS(2020), 1, + anon_sym_LPAREN, + ACTIONS(2022), 1, + anon_sym_STAR, + ACTIONS(2026), 1, + anon_sym_STAR_STAR, + ACTIONS(2028), 1, + anon_sym_SLASH, + STATE(1444), 1, sym_parameter, - STATE(1222), 2, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49704] = 3, + [59555] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1866), 1, + ACTIONS(2052), 1, anon_sym_as, - ACTIONS(1864), 13, + ACTIONS(2050), 12, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -64969,13 +73685,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ, anon_sym_and, anon_sym_or, - sym_type_conversion, - [49726] = 3, + [59576] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1531), 1, + ACTIONS(1613), 1, anon_sym_as, - ACTIONS(1515), 13, + ACTIONS(1597), 12, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -64988,15 +73703,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ, anon_sym_and, anon_sym_or, - sym_type_conversion, - [49748] = 4, + [59597] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1870), 1, + ACTIONS(2056), 1, anon_sym_DOT, - STATE(881), 1, + STATE(1032), 1, aux_sym_match_value_pattern_repeat1, - ACTIONS(1868), 10, + ACTIONS(2054), 10, anon_sym_import, anon_sym_LPAREN, anon_sym_RPAREN, @@ -65007,16 +73721,129 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [49770] = 5, + [59619] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2067), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [59650] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(2071), 1, + anon_sym_if, + ACTIONS(2073), 1, + anon_sym_COLON, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2079), 1, + anon_sym_RBRACE, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + STATE(1100), 1, + sym_for_in_clause, + STATE(1270), 1, + aux_sym__collection_elements_repeat1, + STATE(1627), 1, + sym__comprehension_clauses, + [59687] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2085), 1, + sym__string_end, + STATE(1043), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [59718] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2087), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [59749] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2089), 1, + sym__string_end, + STATE(1036), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [59780] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1873), 1, + ACTIONS(2091), 1, anon_sym_DOT, - ACTIONS(1875), 1, + ACTIONS(2093), 1, anon_sym_LPAREN, - STATE(902), 1, + STATE(1042), 1, aux_sym_match_value_pattern_repeat1, - ACTIONS(1877), 8, + ACTIONS(2095), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -65025,365 +73852,689 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [49793] = 4, + [59803] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1879), 9, + ACTIONS(647), 1, + sym__string_start, + STATE(744), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(2097), 8, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_else, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [49814] = 5, + [59824] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1885), 1, - anon_sym_as, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1879), 8, + ACTIONS(649), 1, + sym__template_string_start, + STATE(745), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(2097), 8, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_async, - anon_sym_for, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [49837] = 7, + [59845] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2099), 1, + anon_sym_RPAREN, + ACTIONS(2101), 1, + anon_sym_COMMA, + ACTIONS(2104), 1, + anon_sym_as, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1893), 1, + STATE(1100), 1, + sym_for_in_clause, + STATE(1270), 1, + aux_sym__collection_elements_repeat1, + STATE(1706), 1, + sym__comprehension_clauses, + [59882] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2091), 1, + anon_sym_DOT, + ACTIONS(2112), 1, + anon_sym_LPAREN, + STATE(1032), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2114), 8, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(1895), 1, + anon_sym_as, anon_sym_if, - STATE(982), 1, - aux_sym_expression_list_repeat1, - ACTIONS(1891), 6, - anon_sym_RPAREN, anon_sym_COLON, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [49864] = 12, + [59905] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2116), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [59936] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2118), 1, + sym__string_end, + STATE(1047), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [59967] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2120), 1, + sym__string_end, + STATE(1048), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [59998] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(2071), 1, + anon_sym_if, + ACTIONS(2073), 1, + anon_sym_COLON, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2079), 1, + anon_sym_RBRACE, + ACTIONS(2081), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2083), 1, anon_sym_or, - ACTIONS(1897), 1, + STATE(1100), 1, + sym_for_in_clause, + STATE(1270), 1, + aux_sym__collection_elements_repeat1, + STATE(1645), 1, + sym__comprehension_clauses, + [60035] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2122), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60066] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2124), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60097] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2054), 11, + anon_sym_import, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [60114] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2126), 1, + sym__string_end, + STATE(1053), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60145] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2128), 1, + sym__string_end, + STATE(1054), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60176] = 9, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2130), 1, + anon_sym_LBRACE2, + ACTIONS(2136), 1, + anon_sym_BSLASH, + ACTIONS(2139), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2133), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60207] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2141), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60238] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2143), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60269] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2145), 1, + sym__string_end, + STATE(1057), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60300] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2147), 1, + sym__string_end, + STATE(1058), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60331] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2149), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60362] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2151), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60393] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2153), 1, + sym__string_end, + STATE(1033), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60424] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(1899), 1, + ACTIONS(2071), 1, anon_sym_if, - ACTIONS(1901), 1, + ACTIONS(2073), 1, anon_sym_COLON, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(1907), 1, + ACTIONS(2079), 1, anon_sym_RBRACE, - STATE(936), 1, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + STATE(1100), 1, sym_for_in_clause, - STATE(1079), 1, + STATE(1270), 1, aux_sym__collection_elements_repeat1, - STATE(1455), 1, + STATE(1649), 1, sym__comprehension_clauses, - [49901] = 12, + [60461] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1897), 1, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(1899), 1, + ACTIONS(2071), 1, anon_sym_if, - ACTIONS(1901), 1, + ACTIONS(2073), 1, anon_sym_COLON, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(1907), 1, + ACTIONS(2079), 1, anon_sym_RBRACE, - STATE(936), 1, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + STATE(1100), 1, sym_for_in_clause, - STATE(1079), 1, + STATE(1270), 1, aux_sym__collection_elements_repeat1, - STATE(1403), 1, + STATE(1715), 1, sym__comprehension_clauses, - [49938] = 6, + [60498] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1911), 1, + ACTIONS(2157), 1, anon_sym_as, - ACTIONS(1909), 7, + ACTIONS(2155), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, + anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [49963] = 5, + [60520] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(1913), 8, + ACTIONS(2159), 9, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, - anon_sym_else, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [49986] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, anon_sym_if, - ACTIONS(1915), 8, - anon_sym_RPAREN, - anon_sym_COMMA, anon_sym_COLON, anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - sym_type_conversion, - [50009] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(627), 1, - sym__template_string_start, - STATE(689), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1917), 8, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [50030] = 4, + anon_sym_or, + [60538] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - STATE(691), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1917), 8, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, + ACTIONS(2106), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [50051] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1921), 1, + ACTIONS(2165), 1, anon_sym_as, - ACTIONS(1919), 8, + ACTIONS(2163), 6, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [50074] = 2, + [60562] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1868), 11, - anon_sym_import, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2159), 8, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_PIPE, + anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, - [50091] = 5, + anon_sym_EQ, + [60582] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(1909), 8, + ACTIONS(2169), 1, anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_else, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [50114] = 4, + STATE(1100), 1, + sym_for_in_clause, + STATE(1270), 1, + aux_sym__collection_elements_repeat1, + STATE(1686), 1, + sym__comprehension_clauses, + [60616] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1919), 9, + ACTIONS(2171), 1, anon_sym_RPAREN, + ACTIONS(2173), 1, anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [50135] = 4, + STATE(1100), 1, + sym_for_in_clause, + STATE(1451), 1, + aux_sym_argument_list_repeat1, + STATE(1686), 1, + sym__comprehension_clauses, + [60650] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1925), 1, + ACTIONS(2175), 1, anon_sym_as, - ACTIONS(1923), 9, + ACTIONS(2159), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_or, - [50156] = 6, + [60670] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1927), 1, + ACTIONS(2175), 1, anon_sym_as, - ACTIONS(1915), 7, + ACTIONS(2159), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, + anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [50181] = 5, + [60692] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1925), 1, - anon_sym_as, - ACTIONS(1923), 8, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(2179), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [50204] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1923), 10, + ACTIONS(2177), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, anon_sym_COLON, anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - anon_sym_or, - sym_type_conversion, - [50223] = 4, + [60714] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1923), 9, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2181), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, anon_sym_COLON, anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - sym_type_conversion, - [50244] = 5, + [60736] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1873), 1, - anon_sym_DOT, - ACTIONS(1929), 1, - anon_sym_LPAREN, - STATE(881), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(1931), 8, + ACTIONS(2185), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2183), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -65392,317 +74543,116 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [50267] = 12, + [60754] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1903), 1, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(1933), 1, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + ACTIONS(2187), 1, anon_sym_RPAREN, - ACTIONS(1935), 1, - anon_sym_COMMA, - ACTIONS(1938), 1, - anon_sym_as, - STATE(936), 1, + STATE(1100), 1, sym_for_in_clause, - STATE(1079), 1, + STATE(1270), 1, aux_sym__collection_elements_repeat1, - STATE(1400), 1, + STATE(1613), 1, sym__comprehension_clauses, - [50304] = 6, + [60788] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1940), 1, + ACTIONS(2189), 1, anon_sym_as, - ACTIONS(1913), 7, + ACTIONS(2177), 6, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [50329] = 12, + [60812] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1897), 1, - anon_sym_COMMA, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1901), 1, - anon_sym_COLON, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(1907), 1, - anon_sym_RBRACE, - STATE(936), 1, - sym_for_in_clause, - STATE(1079), 1, - aux_sym__collection_elements_repeat1, - STATE(1463), 1, - sym__comprehension_clauses, - [50366] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1950), 1, - sym__string_end, - STATE(919), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50396] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1952), 1, - sym__string_end, - STATE(914), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50426] = 11, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1897), 1, - anon_sym_COMMA, - ACTIONS(1899), 1, + ACTIONS(2106), 1, anon_sym_if, - ACTIONS(1903), 1, - anon_sym_async, - ACTIONS(1905), 1, - anon_sym_for, - ACTIONS(1907), 1, - anon_sym_RBRACK, - STATE(936), 1, - sym_for_in_clause, - STATE(1079), 1, - aux_sym__collection_elements_repeat1, - STATE(1467), 1, - sym__comprehension_clauses, - [50460] = 11, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1903), 1, - anon_sym_async, - ACTIONS(1905), 1, - anon_sym_for, - ACTIONS(1954), 1, + ACTIONS(2191), 1, anon_sym_RPAREN, - ACTIONS(1956), 1, + ACTIONS(2193), 1, anon_sym_COMMA, - STATE(936), 1, + STATE(1100), 1, sym_for_in_clause, - STATE(1264), 1, + STATE(1418), 1, aux_sym_argument_list_repeat1, - STATE(1499), 1, + STATE(1706), 1, sym__comprehension_clauses, - [50494] = 5, + [60846] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2106), 1, anon_sym_if, - ACTIONS(1958), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [50516] = 11, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1903), 1, - anon_sym_async, - ACTIONS(1905), 1, - anon_sym_for, - ACTIONS(1960), 1, + ACTIONS(2195), 1, anon_sym_RPAREN, - ACTIONS(1962), 1, + ACTIONS(2197), 1, anon_sym_COMMA, - STATE(936), 1, + STATE(1100), 1, sym_for_in_clause, - STATE(1286), 1, + STATE(1483), 1, aux_sym_argument_list_repeat1, - STATE(1426), 1, + STATE(1592), 1, sym__comprehension_clauses, - [50550] = 11, + [60880] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1897), 1, + ACTIONS(2199), 8, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(1899), 1, anon_sym_if, - ACTIONS(1903), 1, - anon_sym_async, - ACTIONS(1905), 1, - anon_sym_for, - ACTIONS(1907), 1, + anon_sym_COLON, + anon_sym_else, anon_sym_RBRACK, - STATE(936), 1, - sym_for_in_clause, - STATE(1079), 1, - aux_sym__collection_elements_repeat1, - STATE(1441), 1, - sym__comprehension_clauses, - [50584] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1964), 1, - sym__string_end, - STATE(922), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50614] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1966), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50644] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1968), 1, - sym__string_end, - STATE(920), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50674] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1970), 1, - sym__string_end, - STATE(923), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50704] = 3, + anon_sym_RBRACE, + anon_sym_EQ, + [60900] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1974), 2, + ACTIONS(2203), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(1972), 8, + ACTIONS(2201), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -65711,401 +74661,308 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [50722] = 9, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1976), 1, - anon_sym_LBRACE2, - ACTIONS(1982), 1, - sym__not_escape_sequence, - ACTIONS(1985), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1979), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50752] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1987), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50782] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1989), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50812] = 11, + [60918] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1897), 1, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(1933), 1, + ACTIONS(2099), 1, anon_sym_RPAREN, - STATE(936), 1, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + STATE(1100), 1, sym_for_in_clause, - STATE(1079), 1, + STATE(1270), 1, aux_sym__collection_elements_repeat1, - STATE(1400), 1, + STATE(1706), 1, sym__comprehension_clauses, - [50846] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1991), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50876] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1993), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50906] = 3, + [60952] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1997), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(1995), 8, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + ACTIONS(2205), 1, anon_sym_RPAREN, + ACTIONS(2207), 1, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [50924] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1999), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50954] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, + STATE(1100), 1, + sym_for_in_clause, + STATE(1437), 1, + aux_sym_argument_list_repeat1, + STATE(1613), 1, + sym__comprehension_clauses, + [60986] = 11, + ACTIONS(3), 1, sym_comment, - ACTIONS(2001), 1, - sym__string_end, - STATE(929), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50984] = 5, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2079), 1, + anon_sym_RBRACK, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + STATE(1100), 1, + sym_for_in_clause, + STATE(1270), 1, + aux_sym__collection_elements_repeat1, + STATE(1624), 1, + sym__comprehension_clauses, + [61020] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2003), 7, + ACTIONS(2163), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, + anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - sym_type_conversion, - [51006] = 11, + [61042] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1897), 1, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(1907), 1, + ACTIONS(2079), 1, anon_sym_RBRACK, - STATE(936), 1, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + STATE(1100), 1, sym_for_in_clause, - STATE(1079), 1, + STATE(1270), 1, aux_sym__collection_elements_repeat1, - STATE(1401), 1, + STATE(1677), 1, sym__comprehension_clauses, - [51040] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(2005), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [51070] = 11, + [61076] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1897), 1, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(2007), 1, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + ACTIONS(2209), 1, anon_sym_RPAREN, - STATE(936), 1, + STATE(1100), 1, sym_for_in_clause, - STATE(1079), 1, + STATE(1270), 1, aux_sym__collection_elements_repeat1, - STATE(1426), 1, + STATE(1592), 1, sym__comprehension_clauses, - [51104] = 5, + [61110] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2009), 7, + ACTIONS(2211), 1, + anon_sym_as, + ACTIONS(2181), 6, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [51126] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, + [61134] = 11, + ACTIONS(3), 1, sym_comment, - ACTIONS(2011), 1, - sym__string_end, - STATE(925), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [51156] = 11, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2079), 1, + anon_sym_RBRACK, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + STATE(1100), 1, + sym_for_in_clause, + STATE(1270), 1, + aux_sym__collection_elements_repeat1, + STATE(1708), 1, + sym__comprehension_clauses, + [61168] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1899), 1, + ACTIONS(2213), 1, + anon_sym_as, + ACTIONS(2199), 7, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_if, - ACTIONS(1903), 1, anon_sym_async, - ACTIONS(1905), 1, anon_sym_for, - ACTIONS(2013), 1, - anon_sym_RPAREN, - ACTIONS(2015), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, + [61190] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2069), 1, anon_sym_COMMA, - STATE(936), 1, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2079), 1, + anon_sym_RBRACK, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + STATE(1100), 1, sym_for_in_clause, - STATE(1188), 1, - aux_sym_argument_list_repeat1, - STATE(1400), 1, + STATE(1270), 1, + aux_sym__collection_elements_repeat1, + STATE(1614), 1, sym__comprehension_clauses, - [51190] = 5, + [61224] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2017), 7, + ACTIONS(2155), 8, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_if, anon_sym_COLON, + anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - sym_type_conversion, - [51212] = 11, + [61244] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1897), 1, + ACTIONS(2215), 7, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(1899), 1, anon_sym_if, - ACTIONS(1903), 1, anon_sym_async, - ACTIONS(1905), 1, anon_sym_for, - ACTIONS(2019), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, + [61263] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2219), 1, + anon_sym_PIPE, + STATE(1101), 1, + aux_sym_match_or_pattern_repeat1, + ACTIONS(2217), 7, anon_sym_RPAREN, - STATE(936), 1, - sym_for_in_clause, - STATE(1079), 1, - aux_sym__collection_elements_repeat1, - STATE(1499), 1, - sym__comprehension_clauses, - [51246] = 6, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [61282] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1903), 1, + ACTIONS(2223), 1, + anon_sym_if, + ACTIONS(2226), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2229), 1, anon_sym_for, - ACTIONS(2023), 1, - anon_sym_if, - ACTIONS(2021), 3, + ACTIONS(2221), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - STATE(943), 3, + STATE(1092), 3, sym_for_in_clause, sym_if_clause, aux_sym__comprehension_clauses_repeat1, - [51269] = 4, + [61305] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2232), 1, + anon_sym_COMMA, + ACTIONS(2234), 1, + anon_sym_if, + ACTIONS(2238), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2240), 1, + anon_sym_or, + STATE(1215), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2236), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61330] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(2025), 7, + ACTIONS(2215), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -66113,62 +74970,63 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [51288] = 4, + [61349] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2029), 1, - anon_sym_PIPE, - STATE(944), 1, - aux_sym_match_or_pattern_repeat1, - ACTIONS(2027), 7, - anon_sym_RPAREN, + ACTIONS(2232), 1, anon_sym_COMMA, - anon_sym_as, + ACTIONS(2234), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_RBRACK, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + STATE(1215), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2242), 4, anon_sym_RBRACE, - [51307] = 4, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61374] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2029), 1, - anon_sym_PIPE, - STATE(938), 1, - aux_sym_match_or_pattern_repeat1, - ACTIONS(2031), 7, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2244), 6, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [51326] = 7, + anon_sym_EQ, + [61395] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1893), 1, + ACTIONS(2248), 1, + anon_sym_PIPE, + STATE(1097), 1, + aux_sym_match_or_pattern_repeat1, + ACTIONS(2246), 7, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(1895), 1, + anon_sym_as, anon_sym_if, - STATE(982), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2033), 4, anon_sym_COLON, + anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [51351] = 4, + [61414] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(2025), 7, + ACTIONS(2215), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -66176,48 +75034,48 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [51370] = 6, + [61433] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2037), 1, - anon_sym_if, - ACTIONS(2040), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(2043), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(2035), 3, + ACTIONS(2253), 1, + anon_sym_if, + ACTIONS(2251), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - STATE(942), 3, + STATE(1092), 3, sym_for_in_clause, sym_if_clause, aux_sym__comprehension_clauses_repeat1, - [51393] = 6, + [61456] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(2023), 1, + ACTIONS(2253), 1, anon_sym_if, - ACTIONS(2046), 3, + ACTIONS(2255), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - STATE(942), 3, + STATE(1099), 3, sym_for_in_clause, sym_if_clause, aux_sym__comprehension_clauses_repeat1, - [51416] = 4, + [61479] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2050), 1, + ACTIONS(2219), 1, anon_sym_PIPE, - STATE(944), 1, + STATE(1097), 1, aux_sym_match_or_pattern_repeat1, - ACTIONS(2048), 7, + ACTIONS(2257), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66225,25 +75083,184 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [51435] = 4, + [61498] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2071), 1, + anon_sym_if, + ACTIONS(2081), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2083), 1, + anon_sym_or, + ACTIONS(2181), 5, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + [61518] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2234), 1, + anon_sym_if, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2163), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61538] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2155), 6, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61556] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2159), 7, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_or, + anon_sym_COLON2, + sym_type_conversion, + [61572] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, anon_sym_or, - ACTIONS(2025), 7, + ACTIONS(2159), 6, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61590] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2234), 1, + anon_sym_if, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2177), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61610] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2234), 1, + anon_sym_if, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2181), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61630] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2181), 5, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_SEMI, + [61650] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2265), 8, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [61664] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2269), 1, + anon_sym_COMMA, + STATE(1136), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2267), 6, + anon_sym_RPAREN, anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [51454] = 2, + [61682] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2234), 1, + anon_sym_if, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2244), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61702] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(67), 1, + anon_sym_AT, + ACTIONS(2271), 1, + anon_sym_async, + ACTIONS(2273), 1, + anon_sym_def, + ACTIONS(2275), 1, + anon_sym_class, + STATE(552), 2, + sym_function_definition, + sym_class_definition, + STATE(1248), 2, + sym_decorator, + aux_sym_decorated_definition_repeat1, + [61726] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2053), 8, + ACTIONS(2277), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66252,10 +75269,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51468] = 2, + [61740] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2055), 8, + ACTIONS(2279), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66264,10 +75281,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51482] = 2, + [61754] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2057), 8, + ACTIONS(2246), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66276,10 +75293,42 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51496] = 2, + [61768] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2281), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [61788] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(67), 1, + anon_sym_AT, + ACTIONS(2283), 1, + anon_sym_async, + ACTIONS(2285), 1, + anon_sym_def, + ACTIONS(2287), 1, + anon_sym_class, + STATE(521), 2, + sym_function_definition, + sym_class_definition, + STATE(1248), 2, + sym_decorator, + aux_sym_decorated_definition_repeat1, + [61812] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2059), 8, + ACTIONS(2289), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66288,10 +75337,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51510] = 2, + [61826] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2061), 8, + ACTIONS(2291), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66300,51 +75349,55 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51524] = 4, + [61840] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(1879), 6, + ACTIONS(2159), 7, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_if, anon_sym_EQ, - sym__semicolon, - [51542] = 2, + anon_sym_or, + anon_sym_SEMI, + [61856] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2067), 8, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, + ACTIONS(2259), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [51556] = 5, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2293), 1, + anon_sym_from, + ACTIONS(2295), 1, + anon_sym_COMMA, + STATE(1260), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2297), 2, + sym__newline, + anon_sym_SEMI, + [61882] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(1913), 5, + ACTIONS(2159), 6, sym__newline, anon_sym_from, anon_sym_COMMA, + anon_sym_if, anon_sym_EQ, - sym__semicolon, - [51576] = 2, + anon_sym_SEMI, + [61900] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2071), 8, + ACTIONS(2299), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66353,22 +75406,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51590] = 2, + [61914] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1515), 8, - sym__newline, - anon_sym_from, - anon_sym_COMMA, + ACTIONS(2234), 1, anon_sym_if, - anon_sym_EQ, + ACTIONS(2238), 1, anon_sym_and, + ACTIONS(2240), 1, anon_sym_or, - sym__semicolon, - [51604] = 2, + ACTIONS(2301), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61934] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2048), 8, + ACTIONS(2303), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66377,10 +75433,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51618] = 2, + [61948] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2073), 8, + ACTIONS(2305), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66389,24 +75445,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51632] = 4, + [61962] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2077), 1, + ACTIONS(2309), 1, anon_sym_COMMA, - STATE(958), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2075), 6, + STATE(1146), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2307), 6, anon_sym_RPAREN, - anon_sym_COLON, + anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, + [61980] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1597), 8, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, anon_sym_EQ, + anon_sym_and, + anon_sym_or, + anon_sym_COLON2, sym_type_conversion, - [51650] = 2, + [61994] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2080), 8, + ACTIONS(2311), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66415,44 +75483,50 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51664] = 7, + [62008] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(67), 1, - anon_sym_AT, - ACTIONS(2082), 1, - anon_sym_async, - ACTIONS(2084), 1, - anon_sym_def, - ACTIONS(2086), 1, - anon_sym_class, - STATE(527), 2, - sym_function_definition, - sym_class_definition, - STATE(1045), 2, - sym_decorator, - aux_sym_decorated_definition_repeat1, - [51688] = 7, + ACTIONS(2313), 8, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62022] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(67), 1, - anon_sym_AT, - ACTIONS(2088), 1, - anon_sym_async, - ACTIONS(2090), 1, - anon_sym_def, - ACTIONS(2092), 1, - anon_sym_class, - STATE(553), 2, - sym_function_definition, - sym_class_definition, - STATE(1045), 2, - sym_decorator, - aux_sym_decorated_definition_repeat1, - [51712] = 2, + ACTIONS(2315), 8, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62036] = 6, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2317), 1, + anon_sym_LBRACE2, + ACTIONS(2322), 1, + anon_sym_BSLASH, + ACTIONS(2325), 1, + sym__string_end, + STATE(1133), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2319), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [62058] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2094), 8, + ACTIONS(2327), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66461,25 +75535,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51726] = 5, + [62072] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(1909), 5, + ACTIONS(2050), 8, sym__newline, anon_sym_from, anon_sym_COMMA, + anon_sym_if, anon_sym_EQ, - sym__semicolon, - [51746] = 2, + anon_sym_and, + anon_sym_or, + anon_sym_SEMI, + [62086] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2331), 1, + anon_sym_COMMA, + STATE(1162), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2329), 6, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62104] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2096), 8, + ACTIONS(2333), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66488,10 +75573,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51760] = 2, + [62118] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2098), 8, + ACTIONS(2335), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66500,10 +75585,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51774] = 2, + [62132] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2091), 1, + anon_sym_DOT, + ACTIONS(2093), 1, + anon_sym_LPAREN, + ACTIONS(2337), 1, + anon_sym_EQ, + STATE(1042), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2095), 4, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_PIPE, + [62154] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2100), 8, + ACTIONS(2097), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66512,24 +75613,38 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51788] = 4, + [62168] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2102), 6, + ACTIONS(2244), 5, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_SEMI, + [62188] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2341), 1, + anon_sym_PIPE, + ACTIONS(2339), 7, anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [51806] = 2, + [62204] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2104), 8, + ACTIONS(2343), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66538,113 +75653,156 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51820] = 4, + [62218] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(1923), 6, + ACTIONS(2177), 5, sym__newline, anon_sym_from, anon_sym_COMMA, - anon_sym_if, anon_sym_EQ, - sym__semicolon, - [51838] = 3, + anon_sym_SEMI, + [62238] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(1923), 7, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2199), 6, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_if, anon_sym_EQ, - anon_sym_or, - sym__semicolon, - [51854] = 2, + anon_sym_SEMI, + [62256] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2106), 8, - anon_sym_RPAREN, + ACTIONS(2347), 1, anon_sym_COMMA, - anon_sym_as, + STATE(1162), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2345), 6, + anon_sym_RPAREN, anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [51868] = 2, + [62274] = 6, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2349), 1, + anon_sym_LBRACE2, + ACTIONS(2353), 1, + anon_sym_BSLASH, + ACTIONS(2355), 1, + sym__string_end, + STATE(1133), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2351), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [62296] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1864), 8, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_EQ, + ACTIONS(2161), 1, anon_sym_and, + ACTIONS(2167), 1, anon_sym_or, - sym__semicolon, - [51882] = 4, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2357), 1, + anon_sym_COMMA, + STATE(1232), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2236), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62320] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2110), 1, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + ACTIONS(2199), 6, anon_sym_COMMA, - STATE(988), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2108), 6, - anon_sym_RPAREN, anon_sym_if, + anon_sym_COLON, anon_sym_async, anon_sym_for, - anon_sym_RBRACK, anon_sym_RBRACE, - [51900] = 2, + [62338] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2112), 8, - anon_sym_RPAREN, + ACTIONS(2071), 1, + anon_sym_if, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + ACTIONS(2163), 5, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + [62358] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + ACTIONS(2155), 6, anon_sym_COMMA, - anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, + anon_sym_async, + anon_sym_for, anon_sym_RBRACE, - [51914] = 2, + [62376] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2114), 8, - anon_sym_RPAREN, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2159), 7, anon_sym_COMMA, - anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, + anon_sym_async, + anon_sym_for, anon_sym_RBRACE, - [51928] = 4, + anon_sym_or, + [62392] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2118), 1, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + ACTIONS(2159), 6, anon_sym_COMMA, - STATE(976), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2116), 6, - anon_sym_RPAREN, anon_sym_if, + anon_sym_COLON, anon_sym_async, anon_sym_for, - anon_sym_RBRACK, anon_sym_RBRACE, - [51946] = 2, + [62410] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1917), 8, + ACTIONS(2359), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66653,82 +75811,90 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51960] = 4, + [62424] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2123), 1, - anon_sym_COMMA, - STATE(976), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2121), 6, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + ACTIONS(2361), 6, anon_sym_RPAREN, anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [51978] = 5, + [62442] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2017), 5, + ACTIONS(2163), 5, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_EQ, - sym__semicolon, - [51998] = 3, + anon_sym_SEMI, + [62462] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2127), 1, - anon_sym_PIPE, - ACTIONS(2125), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, + ACTIONS(2071), 1, anon_sym_if, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + ACTIONS(2177), 5, + anon_sym_COMMA, anon_sym_COLON, - anon_sym_RBRACK, + anon_sym_async, + anon_sym_for, anon_sym_RBRACE, - [52014] = 6, + [62482] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1873), 1, - anon_sym_DOT, - ACTIONS(1875), 1, - anon_sym_LPAREN, - ACTIONS(2129), 1, + ACTIONS(1597), 8, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_if, anon_sym_EQ, - STATE(902), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(1877), 4, + anon_sym_and, + anon_sym_or, + anon_sym_SEMI, + [62496] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2363), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, + anon_sym_if, + anon_sym_COLON, anon_sym_PIPE, - [52036] = 4, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62510] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2133), 1, - anon_sym_COMMA, - STATE(958), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2131), 6, + ACTIONS(2365), 8, anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, anon_sym_COLON, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [52054] = 2, + [62524] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2135), 8, + ACTIONS(2367), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66737,111 +75903,82 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [52068] = 4, + [62538] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(1919), 6, - sym__newline, - anon_sym_from, + ACTIONS(2371), 1, anon_sym_COMMA, + STATE(1162), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2369), 6, + anon_sym_RPAREN, anon_sym_if, - anon_sym_EQ, - sym__semicolon, - [52086] = 5, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62556] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(1915), 5, + ACTIONS(2155), 6, sym__newline, anon_sym_from, anon_sym_COMMA, + anon_sym_if, anon_sym_EQ, - sym__semicolon, - [52106] = 4, + anon_sym_SEMI, + [62574] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2137), 1, + ACTIONS(2234), 1, + anon_sym_if, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2281), 5, anon_sym_COMMA, - STATE(958), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2131), 6, - anon_sym_RPAREN, - anon_sym_COLON, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, + anon_sym_COLON2, sym_type_conversion, - [52124] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2141), 1, - anon_sym_COMMA, - STATE(978), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2139), 6, - anon_sym_RPAREN, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [52142] = 4, + [62594] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2145), 1, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2199), 6, anon_sym_COMMA, - STATE(976), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2143), 6, - anon_sym_RPAREN, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, anon_sym_RBRACE, - [52160] = 8, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [62612] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(2069), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2147), 1, - anon_sym_from, - ACTIONS(2149), 1, - anon_sym_COMMA, - STATE(1082), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2151), 2, - sym__newline, - sym__semicolon, - [52186] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2153), 8, + ACTIONS(2301), 5, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, anon_sym_COLON, - anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [52200] = 2, + [62632] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2155), 8, + ACTIONS(2374), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66850,7412 +75987,8144 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [52214] = 5, + [62646] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2157), 4, - anon_sym_RPAREN, + ACTIONS(2050), 8, anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - [52233] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2159), 1, anon_sym_if, - ACTIONS(2161), 1, + anon_sym_RBRACE, + anon_sym_EQ, anon_sym_and, - ACTIONS(2163), 1, anon_sym_or, - ACTIONS(1915), 4, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_COLON, - [52252] = 4, + anon_sym_COLON2, + sym_type_conversion, + [62660] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2163), 1, - anon_sym_or, - ACTIONS(1879), 5, - anon_sym_RPAREN, + ACTIONS(2376), 1, + sym_identifier, + ACTIONS(2378), 1, + anon_sym_LPAREN, + ACTIONS(2380), 1, + anon_sym_STAR, + STATE(1290), 1, + sym_dotted_name, + STATE(1368), 1, + sym_aliased_import, + STATE(1532), 1, + sym__import_list, + STATE(1533), 1, + sym_wildcard_import, + [62685] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2382), 1, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - [52269] = 6, + ACTIONS(2384), 1, + anon_sym_RBRACE, + STATE(1100), 1, + sym_for_in_clause, + STATE(1491), 1, + aux_sym_dictionary_repeat1, + STATE(1650), 1, + sym__comprehension_clauses, + [62710] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2165), 1, + ACTIONS(2386), 1, anon_sym_except, - ACTIONS(2167), 1, + ACTIONS(2388), 1, anon_sym_finally, - STATE(549), 1, + STATE(553), 1, sym_finally_clause, - STATE(239), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - STATE(259), 2, + STATE(279), 2, sym_except_clause, aux_sym_try_statement_repeat1, - [52290] = 2, + STATE(283), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + [62731] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1515), 7, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2390), 4, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, anon_sym_COLON, - anon_sym_and, - anon_sym_or, - [52303] = 6, + anon_sym_EQ, + [62750] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2169), 1, + ACTIONS(2386), 1, anon_sym_except, - ACTIONS(2171), 1, + ACTIONS(2388), 1, anon_sym_finally, - STATE(478), 1, + STATE(562), 1, sym_finally_clause, - STATE(255), 2, + STATE(266), 2, sym_except_clause, aux_sym_try_statement_repeat1, - STATE(257), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - [52324] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2165), 1, - anon_sym_except, - ACTIONS(2167), 1, - anon_sym_finally, - STATE(469), 1, - sym_finally_clause, - STATE(260), 2, + STATE(267), 2, sym_except_group_clause, aux_sym_try_statement_repeat2, - STATE(261), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - [52345] = 6, + [62771] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, - anon_sym_if, ACTIONS(2161), 1, anon_sym_and, - ACTIONS(2163), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(2175), 1, - anon_sym_as, - ACTIONS(2173), 3, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2392), 4, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, - [52366] = 8, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62790] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, + ACTIONS(2259), 1, anon_sym_if, - ACTIONS(2161), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2163), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2177), 1, + ACTIONS(2394), 1, anon_sym_COMMA, - ACTIONS(2179), 1, - anon_sym_as, - ACTIONS(2181), 1, - anon_sym_COLON, - STATE(1178), 1, - aux_sym_exception_list_repeat1, - [52391] = 2, + STATE(1360), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2396), 2, + sym__newline, + anon_sym_SEMI, + [62813] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1891), 7, + ACTIONS(1597), 7, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_if, anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [52404] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2063), 1, anon_sym_and, - ACTIONS(2065), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2009), 4, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - sym__semicolon, - [52423] = 5, + [62826] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, + ACTIONS(2259), 1, anon_sym_if, - ACTIONS(1958), 4, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - sym__semicolon, - [52442] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2183), 1, - sym_identifier, - ACTIONS(2185), 1, - anon_sym_STAR, - ACTIONS(2187), 1, - anon_sym_STAR_STAR, - STATE(1327), 4, - sym_typevar_parameter, - sym_typevartuple_parameter, - sym_paramspec_parameter, - sym__type_parameter, - [52461] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2063), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2149), 1, + ACTIONS(2398), 1, anon_sym_COMMA, - STATE(1082), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2189), 2, + STATE(1365), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2400), 2, sym__newline, - sym__semicolon, - [52484] = 8, + anon_sym_SEMI, + [62849] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1903), 1, - anon_sym_async, - ACTIONS(1905), 1, - anon_sym_for, - ACTIONS(2191), 1, + ACTIONS(2402), 7, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(2193), 1, - anon_sym_RBRACE, - STATE(936), 1, - sym_for_in_clause, - STATE(1207), 1, - aux_sym_dictionary_repeat1, - STATE(1404), 1, - sym__comprehension_clauses, - [52509] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1899), 1, anon_sym_if, - ACTIONS(2195), 4, - anon_sym_COMMA, anon_sym_async, anon_sym_for, + anon_sym_RBRACK, anon_sym_RBRACE, - [52528] = 7, + [62862] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2197), 1, + ACTIONS(2295), 1, anon_sym_COMMA, - STATE(1167), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2199), 2, + STATE(1260), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2404), 2, sym__newline, - sym__semicolon, - [52551] = 7, + anon_sym_SEMI, + [62885] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2197), 1, + ACTIONS(2295), 1, anon_sym_COMMA, - STATE(1134), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2201), 2, + STATE(1260), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2406), 2, sym__newline, - sym__semicolon, - [52574] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2009), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [52587] = 6, + anon_sym_SEMI, + [62908] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2169), 1, + ACTIONS(2408), 1, anon_sym_except, - ACTIONS(2171), 1, + ACTIONS(2410), 1, anon_sym_finally, - STATE(551), 1, + STATE(535), 1, sym_finally_clause, - STATE(250), 2, + STATE(268), 2, sym_except_clause, aux_sym_try_statement_repeat1, - STATE(252), 2, + STATE(280), 2, sym_except_group_clause, aux_sym_try_statement_repeat2, - [52608] = 7, + [62929] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2203), 1, - anon_sym_COMMA, - STATE(1130), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2205), 2, - sym__newline, - sym__semicolon, - [52631] = 7, + ACTIONS(2412), 1, + sym_identifier, + ACTIONS(2414), 1, + anon_sym_STAR, + ACTIONS(2416), 1, + anon_sym_STAR_STAR, + STATE(1524), 4, + sym_typevar_parameter, + sym_typevartuple_parameter, + sym_paramspec_parameter, + sym__type_parameter, + [62948] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2207), 1, - sym_identifier, - ACTIONS(2209), 1, - anon_sym_DOT, - ACTIONS(2211), 1, - anon_sym___future__, - STATE(1171), 1, - aux_sym_import_prefix_repeat1, - STATE(1219), 1, - sym_import_prefix, - STATE(1420), 2, - sym_relative_import, - sym_dotted_name, - [52654] = 3, + ACTIONS(2234), 1, + anon_sym_if, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2418), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [62967] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2215), 1, + ACTIONS(2422), 1, anon_sym_as, - ACTIONS(2213), 6, + ACTIONS(2420), 6, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [52669] = 5, + [62982] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, + ACTIONS(2259), 1, anon_sym_if, - ACTIONS(2161), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2163), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(1909), 4, - anon_sym_RPAREN, + ACTIONS(2295), 1, + anon_sym_COMMA, + STATE(1260), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2424), 2, + sym__newline, + anon_sym_SEMI, + [63005] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2426), 1, anon_sym_COMMA, + ACTIONS(2428), 1, anon_sym_as, + ACTIONS(2430), 1, + anon_sym_if, + ACTIONS(2432), 1, anon_sym_COLON, - [52688] = 5, + ACTIONS(2434), 1, + anon_sym_and, + ACTIONS(2436), 1, + anon_sym_or, + STATE(1338), 1, + aux_sym_exception_list_repeat1, + [63030] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2183), 1, - sym_identifier, - ACTIONS(2185), 1, - anon_sym_STAR, - ACTIONS(2187), 1, - anon_sym_STAR_STAR, - STATE(1240), 4, - sym_typevar_parameter, - sym_typevartuple_parameter, - sym_paramspec_parameter, - sym__type_parameter, - [52707] = 8, + ACTIONS(2408), 1, + anon_sym_except, + ACTIONS(2410), 1, + anon_sym_finally, + STATE(607), 1, + sym_finally_clause, + STATE(275), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + STATE(287), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + [63051] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2434), 1, + anon_sym_and, + ACTIONS(2436), 1, + anon_sym_or, + ACTIONS(2199), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + [63068] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2418), 4, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63087] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(2217), 1, + ACTIONS(2438), 1, anon_sym_COMMA, - ACTIONS(2219), 1, + ACTIONS(2440), 1, anon_sym_RBRACE, - STATE(936), 1, + STATE(1100), 1, sym_for_in_clause, - STATE(1246), 1, + STATE(1409), 1, aux_sym_dictionary_repeat1, - STATE(1445), 1, + STATE(1718), 1, sym__comprehension_clauses, - [52732] = 2, + [63112] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2221), 7, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(2259), 1, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [52745] = 2, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2301), 4, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_SEMI, + [63131] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1864), 7, + ACTIONS(2430), 1, + anon_sym_if, + ACTIONS(2434), 1, + anon_sym_and, + ACTIONS(2436), 1, + anon_sym_or, + ACTIONS(2163), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - anon_sym_if, anon_sym_COLON, - anon_sym_and, - anon_sym_or, - [52758] = 2, + [63150] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2116), 7, + ACTIONS(2434), 1, + anon_sym_and, + ACTIONS(2436), 1, + anon_sym_or, + ACTIONS(2155), 5, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [52771] = 4, + anon_sym_COLON, + [63167] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2434), 1, anon_sym_and, - ACTIONS(2163), 1, - anon_sym_or, - ACTIONS(1919), 5, + ACTIONS(2159), 6, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, anon_sym_if, anon_sym_COLON, - [52788] = 5, + anon_sym_or, + [63182] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2434), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2436), 1, anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2223), 4, + ACTIONS(2159), 5, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_if, anon_sym_COLON, - anon_sym_EQ, - [52807] = 2, + [63199] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2225), 7, + ACTIONS(2236), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [52820] = 3, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [63212] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(1923), 6, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, + ACTIONS(2259), 1, anon_sym_if, - anon_sym_COLON, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, anon_sym_or, - [52835] = 8, + ACTIONS(2398), 1, + anon_sym_COMMA, + STATE(1344), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2442), 2, + sym__newline, + anon_sym_SEMI, + [63235] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(2227), 1, + ACTIONS(2444), 1, anon_sym_COMMA, - ACTIONS(2229), 1, + ACTIONS(2446), 1, anon_sym_RBRACE, - STATE(936), 1, + STATE(1100), 1, sym_for_in_clause, - STATE(1251), 1, + STATE(1427), 1, aux_sym_dictionary_repeat1, - STATE(1462), 1, + STATE(1631), 1, sym__comprehension_clauses, - [52860] = 7, + [63260] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2149), 1, - anon_sym_COMMA, - STATE(1082), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2231), 2, + ACTIONS(2281), 4, sym__newline, - sym__semicolon, - [52883] = 4, + anon_sym_from, + anon_sym_COMMA, + anon_sym_SEMI, + [63279] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2430), 1, + anon_sym_if, + ACTIONS(2434), 1, anon_sym_and, - ACTIONS(2163), 1, + ACTIONS(2436), 1, anon_sym_or, - ACTIONS(1923), 5, + ACTIONS(2450), 1, + anon_sym_as, + ACTIONS(2448), 3, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, anon_sym_COLON, - [52900] = 8, + [63300] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2233), 1, + ACTIONS(2452), 1, sym_identifier, - ACTIONS(2235), 1, - anon_sym_LPAREN, - ACTIONS(2237), 1, - anon_sym_STAR, - STATE(1105), 1, + ACTIONS(2454), 1, + anon_sym_DOT, + ACTIONS(2456), 1, + anon_sym___future__, + STATE(1336), 1, + aux_sym_import_prefix_repeat1, + STATE(1402), 1, + sym_import_prefix, + STATE(1709), 2, + sym_relative_import, sym_dotted_name, - STATE(1159), 1, - sym_aliased_import, - STATE(1335), 1, - sym_wildcard_import, - STATE(1338), 1, - sym__import_list, - [52925] = 5, + [63323] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, + ACTIONS(2259), 1, anon_sym_if, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2163), 1, - anon_sym_or, - ACTIONS(1913), 4, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_COLON, - [52944] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2063), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2149), 1, + ACTIONS(2295), 1, anon_sym_COMMA, - STATE(1082), 1, + STATE(1260), 1, aux_sym_expression_list_repeat1, - ACTIONS(1891), 2, + ACTIONS(2236), 2, sym__newline, - sym__semicolon, - [52967] = 7, + anon_sym_SEMI, + [63346] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2149), 1, + ACTIONS(2458), 7, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(1082), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2239), 2, - sym__newline, - sym__semicolon, - [52990] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, anon_sym_if, - ACTIONS(2149), 1, - anon_sym_COMMA, - STATE(1082), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2241), 2, - sym__newline, - sym__semicolon, - [53013] = 8, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63359] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, + ACTIONS(2426), 1, + anon_sym_COMMA, + ACTIONS(2430), 1, anon_sym_if, - ACTIONS(2161), 1, + ACTIONS(2434), 1, anon_sym_and, - ACTIONS(2163), 1, + ACTIONS(2436), 1, anon_sym_or, - ACTIONS(2177), 1, - anon_sym_COMMA, - ACTIONS(2243), 1, + ACTIONS(2460), 1, anon_sym_as, - ACTIONS(2245), 1, + ACTIONS(2462), 1, anon_sym_COLON, - STATE(1178), 1, + STATE(1338), 1, aux_sym_exception_list_repeat1, - [53038] = 8, + [63384] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, + ACTIONS(2426), 1, + anon_sym_COMMA, + ACTIONS(2430), 1, anon_sym_if, - ACTIONS(2161), 1, + ACTIONS(2434), 1, anon_sym_and, - ACTIONS(2163), 1, + ACTIONS(2436), 1, anon_sym_or, - ACTIONS(2177), 1, - anon_sym_COMMA, - ACTIONS(2247), 1, + ACTIONS(2464), 1, anon_sym_as, - ACTIONS(2249), 1, + ACTIONS(2466), 1, anon_sym_COLON, - STATE(1178), 1, + STATE(1338), 1, aux_sym_exception_list_repeat1, - [53063] = 6, - ACTIONS(1948), 1, + [63409] = 5, + ACTIONS(3), 1, sym_comment, - ACTIONS(2251), 1, - anon_sym_LBRACE2, - ACTIONS(2256), 1, - sym__not_escape_sequence, - ACTIONS(2259), 1, - sym__string_end, - STATE(1035), 1, - aux_sym_string_content_repeat1, - ACTIONS(2253), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [53084] = 8, + ACTIONS(2412), 1, + sym_identifier, + ACTIONS(2414), 1, + anon_sym_STAR, + ACTIONS(2416), 1, + anon_sym_STAR_STAR, + STATE(1416), 4, + sym_typevar_parameter, + sym_typevartuple_parameter, + sym_paramspec_parameter, + sym__type_parameter, + [63428] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, + ACTIONS(2426), 1, + anon_sym_COMMA, + ACTIONS(2430), 1, anon_sym_if, - ACTIONS(2161), 1, + ACTIONS(2434), 1, anon_sym_and, - ACTIONS(2163), 1, + ACTIONS(2436), 1, anon_sym_or, - ACTIONS(2177), 1, - anon_sym_COMMA, - ACTIONS(2261), 1, + ACTIONS(2468), 1, anon_sym_as, - ACTIONS(2263), 1, + ACTIONS(2470), 1, anon_sym_COLON, - STATE(1178), 1, + STATE(1338), 1, aux_sym_exception_list_repeat1, - [53109] = 6, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(2265), 1, - anon_sym_LBRACE2, - ACTIONS(2269), 1, - sym__not_escape_sequence, - ACTIONS(2271), 1, - sym__string_end, - STATE(1035), 1, - aux_sym_string_content_repeat1, - ACTIONS(2267), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [53130] = 4, + [63453] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2273), 1, - anon_sym_DOT, - STATE(1038), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(1868), 4, - sym__newline, + ACTIONS(2430), 1, + anon_sym_if, + ACTIONS(2434), 1, + anon_sym_and, + ACTIONS(2436), 1, + anon_sym_or, + ACTIONS(2177), 4, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - sym__semicolon, - [53146] = 4, + anon_sym_COLON, + [63472] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1873), 1, - anon_sym_DOT, - STATE(1051), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2276), 4, - anon_sym_import, + ACTIONS(2430), 1, + anon_sym_if, + ACTIONS(2434), 1, + anon_sym_and, + ACTIONS(2436), 1, + anon_sym_or, + ACTIONS(2181), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - [53162] = 7, + anon_sym_COLON, + [63491] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2050), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, anon_sym_and, - ACTIONS(1883), 1, anon_sym_or, - ACTIONS(1893), 1, + [63504] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2369), 7, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(1895), 1, anon_sym_if, - ACTIONS(2278), 1, - anon_sym_COLON, - STATE(982), 1, - aux_sym_expression_list_repeat1, - [53184] = 4, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63517] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2280), 1, - anon_sym_DOT, - STATE(1047), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2276), 4, - sym__newline, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2472), 1, anon_sym_COMMA, - anon_sym_as, - sym__semicolon, - [53200] = 6, + ACTIONS(2474), 1, + anon_sym_RBRACE, + STATE(1100), 1, + sym_for_in_clause, + STATE(1433), 1, + aux_sym_dictionary_repeat1, + STATE(1721), 1, + sym__comprehension_clauses, + [63542] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2284), 1, - anon_sym_COLON, - ACTIONS(2282), 2, + ACTIONS(2295), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [53220] = 5, + STATE(1260), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2476), 2, + sym__newline, + anon_sym_SEMI, + [63565] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2286), 3, + ACTIONS(2478), 4, anon_sym_COMMA, - anon_sym_RBRACK, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + [63584] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2480), 1, + anon_sym_COMMA, + STATE(1221), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2482), 4, + anon_sym_RBRACE, anon_sym_EQ, - [53238] = 3, - ACTIONS(1948), 1, + anon_sym_COLON2, + sym_type_conversion, + [63600] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2091), 1, + anon_sym_DOT, + STATE(1241), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2484), 4, + anon_sym_import, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + [63616] = 3, + ACTIONS(2065), 1, sym_comment, - ACTIONS(2288), 2, + ACTIONS(2486), 2, anon_sym_LBRACE2, - sym__not_escape_sequence, - ACTIONS(2290), 4, + anon_sym_BSLASH, + ACTIONS(2488), 4, sym__string_content, sym__string_end, sym__escape_interpolation, sym_escape_sequence, - [53252] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2294), 1, - anon_sym_AT, - STATE(1045), 2, - sym_decorator, - aux_sym_decorated_definition_repeat1, - ACTIONS(2292), 3, - anon_sym_async, - anon_sym_def, - anon_sym_class, - [53268] = 3, - ACTIONS(1948), 1, + [63630] = 3, + ACTIONS(2065), 1, sym_comment, - ACTIONS(2297), 2, + ACTIONS(2490), 2, anon_sym_LBRACE2, - sym__not_escape_sequence, - ACTIONS(2299), 4, + anon_sym_BSLASH, + ACTIONS(2492), 4, sym__string_content, sym__string_end, sym__escape_interpolation, sym_escape_sequence, - [53282] = 4, + [63644] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2280), 1, + ACTIONS(2494), 1, anon_sym_DOT, - STATE(1038), 1, + STATE(1233), 1, aux_sym_match_value_pattern_repeat1, - ACTIONS(2301), 4, + ACTIONS(2484), 4, sym__newline, anon_sym_COMMA, anon_sym_as, - sym__semicolon, - [53298] = 3, - ACTIONS(1948), 1, + anon_sym_SEMI, + [63660] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2498), 1, + anon_sym_COLON, + ACTIONS(2500), 1, + anon_sym_EQ, + STATE(1327), 1, + sym__type_bound, + STATE(1529), 1, + sym__type_param_default, + ACTIONS(2496), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [63680] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2502), 1, + anon_sym_COMMA, + STATE(1221), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2505), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [63696] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2507), 1, + anon_sym_COMMA, + STATE(1222), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2505), 4, + anon_sym_RPAREN, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63712] = 3, + ACTIONS(2065), 1, sym_comment, - ACTIONS(2303), 2, + ACTIONS(2510), 2, anon_sym_LBRACE2, - sym__not_escape_sequence, - ACTIONS(2305), 4, + anon_sym_BSLASH, + ACTIONS(2512), 4, sym__string_content, sym__string_end, sym__escape_interpolation, sym_escape_sequence, - [53312] = 6, + [63726] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2309), 1, - anon_sym_COLON, - ACTIONS(2307), 2, + ACTIONS(2514), 3, + sym__newline, anon_sym_COMMA, - anon_sym_RBRACK, - [53332] = 7, + anon_sym_SEMI, + [63744] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1893), 1, + ACTIONS(2171), 1, + anon_sym_RPAREN, + ACTIONS(2173), 1, anon_sym_COMMA, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2311), 1, - anon_sym_COLON, - STATE(982), 1, - aux_sym_expression_list_repeat1, - [53354] = 4, + STATE(1451), 1, + aux_sym_argument_list_repeat1, + [63766] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1873), 1, - anon_sym_DOT, - STATE(881), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2301), 4, - anon_sym_import, - anon_sym_RPAREN, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2516), 3, + sym__newline, anon_sym_COMMA, - anon_sym_as, - [53370] = 7, + anon_sym_SEMI, + [63784] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(1893), 1, + ACTIONS(2518), 3, + sym__newline, anon_sym_COMMA, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2313), 1, - anon_sym_COLON, - STATE(982), 1, - aux_sym_expression_list_repeat1, - [53392] = 5, + anon_sym_SEMI, + [63802] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(2069), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2315), 3, - sym__newline, + ACTIONS(2520), 3, + anon_sym_RPAREN, anon_sym_COMMA, - sym__semicolon, - [53410] = 3, - ACTIONS(1948), 1, + anon_sym_COLON, + [63820] = 4, + ACTIONS(3), 1, sym_comment, - ACTIONS(2317), 2, - anon_sym_LBRACE2, - sym__not_escape_sequence, - ACTIONS(2319), 4, - sym__string_content, - sym__string_end, - sym__escape_interpolation, - sym_escape_sequence, - [53424] = 7, + ACTIONS(2522), 1, + anon_sym_COMMA, + STATE(1222), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2482), 4, + anon_sym_RPAREN, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63836] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1893), 1, - anon_sym_COMMA, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2321), 1, + ACTIONS(2357), 1, + anon_sym_COMMA, + ACTIONS(2524), 1, anon_sym_COLON, - STATE(982), 1, + STATE(1232), 1, aux_sym_expression_list_repeat1, - [53446] = 3, - ACTIONS(1948), 1, + [63858] = 5, + ACTIONS(3), 1, sym_comment, - ACTIONS(2323), 2, - anon_sym_LBRACE2, - sym__not_escape_sequence, - ACTIONS(2325), 4, - sym__string_content, - sym__string_end, - sym__escape_interpolation, - sym_escape_sequence, - [53460] = 4, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2526), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + [63876] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2329), 1, + ACTIONS(2528), 1, anon_sym_COMMA, - STATE(1057), 1, - aux_sym_open_sequence_match_pattern_repeat1, - ACTIONS(2327), 4, + STATE(1222), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2482), 4, anon_sym_RPAREN, - anon_sym_if, anon_sym_COLON, anon_sym_RBRACK, - [53476] = 5, + anon_sym_RBRACE, + [63892] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2494), 1, + anon_sym_DOT, + STATE(1234), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2530), 4, + sym__newline, + anon_sym_COMMA, + anon_sym_as, + anon_sym_SEMI, + [63908] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2532), 1, + anon_sym_DOT, + STATE(1234), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2054), 4, + sym__newline, + anon_sym_COMMA, + anon_sym_as, + anon_sym_SEMI, + [63924] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2332), 3, - anon_sym_RPAREN, + ACTIONS(2357), 1, anon_sym_COMMA, + ACTIONS(2535), 1, anon_sym_COLON, - [53494] = 5, + STATE(1232), 1, + aux_sym_expression_list_repeat1, + [63946] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2334), 3, - anon_sym_RPAREN, + ACTIONS(2357), 1, anon_sym_COMMA, + ACTIONS(2537), 1, anon_sym_COLON, - [53512] = 7, + STATE(1232), 1, + aux_sym_expression_list_repeat1, + [63968] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(1960), 1, - anon_sym_RPAREN, - ACTIONS(1962), 1, + ACTIONS(2357), 1, anon_sym_COMMA, - STATE(1286), 1, - aux_sym_argument_list_repeat1, - [53534] = 2, + ACTIONS(2539), 1, + anon_sym_COLON, + STATE(1232), 1, + aux_sym_expression_list_repeat1, + [63990] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2336), 6, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, anon_sym_if, - anon_sym_COLON, + ACTIONS(2541), 3, + anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_RBRACE, - [53546] = 6, + anon_sym_EQ, + [64008] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2340), 1, - anon_sym_COLON, - ACTIONS(2342), 1, - anon_sym_EQ, - STATE(1176), 1, - sym__type_bound, - STATE(1364), 1, - sym__type_param_default, - ACTIONS(2338), 2, + ACTIONS(2095), 6, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, anon_sym_RBRACK, - [53566] = 5, + anon_sym_RBRACE, + [64020] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(2069), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2223), 3, - sym__newline, - anon_sym_EQ, - sym__semicolon, - [53584] = 5, + ACTIONS(2357), 1, + anon_sym_COMMA, + ACTIONS(2543), 1, + anon_sym_COLON, + STATE(1232), 1, + aux_sym_expression_list_repeat1, + [64042] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, - anon_sym_if, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2163), 1, - anon_sym_or, - ACTIONS(2344), 3, + ACTIONS(2091), 1, + anon_sym_DOT, + STATE(1032), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2530), 4, + anon_sym_import, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - anon_sym_COLON, - [53602] = 7, + [64058] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1893), 1, + ACTIONS(2547), 1, anon_sym_COMMA, - ACTIONS(1895), 1, + STATE(1242), 1, + aux_sym_open_sequence_match_pattern_repeat1, + ACTIONS(2545), 4, + anon_sym_RPAREN, anon_sym_if, - ACTIONS(2346), 1, anon_sym_COLON, - STATE(982), 1, - aux_sym_expression_list_repeat1, - [53624] = 7, + anon_sym_RBRACK, + [64074] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2430), 1, + anon_sym_if, + ACTIONS(2434), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2436), 1, anon_sym_or, - ACTIONS(1893), 1, + ACTIONS(2550), 3, + anon_sym_COMMA, + anon_sym_as, + anon_sym_COLON, + [64092] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2552), 6, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(1895), 1, anon_sym_if, - ACTIONS(2348), 1, anon_sym_COLON, - STATE(982), 1, - aux_sym_expression_list_repeat1, - [53646] = 3, - ACTIONS(1948), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, + [64104] = 3, + ACTIONS(2065), 1, sym_comment, - ACTIONS(2350), 2, + ACTIONS(2554), 2, anon_sym_LBRACE2, - sym__not_escape_sequence, - ACTIONS(2352), 4, + anon_sym_BSLASH, + ACTIONS(2556), 4, sym__string_content, sym__string_end, sym__escape_interpolation, sym_escape_sequence, - [53660] = 5, + [64118] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(2069), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2354), 3, - sym__newline, + ACTIONS(2560), 1, + anon_sym_COLON, + ACTIONS(2558), 2, anon_sym_COMMA, - sym__semicolon, - [53678] = 5, + anon_sym_RBRACK, + [64138] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(2069), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2356), 3, - sym__newline, + ACTIONS(2564), 1, + anon_sym_COLON, + ACTIONS(2562), 2, anon_sym_COMMA, - sym__semicolon, - [53696] = 2, + anon_sym_RBRACK, + [64158] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1877), 6, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - [53708] = 6, + ACTIONS(2568), 1, + anon_sym_AT, + STATE(1248), 2, + sym_decorator, + aux_sym_decorated_definition_repeat1, + ACTIONS(2566), 3, + anon_sym_async, + anon_sym_def, + anon_sym_class, + [64174] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2360), 1, + ACTIONS(2573), 1, anon_sym_COLON, - ACTIONS(2358), 2, + ACTIONS(2571), 2, anon_sym_COMMA, anon_sym_RBRACK, - [53728] = 6, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(2362), 1, - anon_sym_RBRACE, - ACTIONS(2364), 1, - anon_sym_LBRACE2, - ACTIONS(2367), 1, - aux_sym_format_specifier_token1, - STATE(1072), 1, - aux_sym_format_specifier_repeat1, - STATE(1255), 1, - sym_interpolation, - [53747] = 5, + [64194] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2003), 2, + ACTIONS(2390), 3, sym__newline, - sym__semicolon, - [53764] = 6, + anon_sym_EQ, + anon_sym_SEMI, + [64212] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2233), 1, - sym_identifier, - ACTIONS(2370), 1, - anon_sym_LPAREN, - STATE(1105), 1, - sym_dotted_name, - STATE(1159), 1, - sym_aliased_import, - STATE(1343), 1, - sym__import_list, - [53783] = 5, + ACTIONS(2575), 1, + anon_sym_COMMA, + STATE(1221), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2482), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [64228] = 3, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2577), 2, + anon_sym_LBRACE2, + anon_sym_BSLASH, + ACTIONS(2579), 4, + sym__string_content, + sym__string_end, + sym__escape_interpolation, + sym_escape_sequence, + [64242] = 3, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2581), 2, + anon_sym_LBRACE2, + anon_sym_BSLASH, + ACTIONS(2583), 4, + sym__string_content, + sym__string_end, + sym__escape_interpolation, + sym_escape_sequence, + [64256] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2372), 2, + ACTIONS(2357), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [53800] = 6, + ACTIONS(2585), 1, + anon_sym_COLON, + STATE(1232), 1, + aux_sym_expression_list_repeat1, + [64278] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2374), 1, - anon_sym_COLON, ACTIONS(2376), 1, - anon_sym_RBRACE, - ACTIONS(2378), 1, - anon_sym_EQ, - ACTIONS(2380), 1, - sym_type_conversion, - STATE(1460), 1, - sym_format_specifier, - [53819] = 4, + sym_identifier, + STATE(1306), 1, + sym_dotted_name, + STATE(1486), 1, + sym_aliased_import, + ACTIONS(2587), 2, + sym__newline, + anon_sym_SEMI, + [64295] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2384), 1, + ACTIONS(2589), 1, + anon_sym_LPAREN, + ACTIONS(2591), 1, + anon_sym_COLON, + ACTIONS(2593), 1, + anon_sym_LBRACK, + STATE(1453), 1, + sym_type_parameters, + STATE(1601), 1, + sym_argument_list, + [64314] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2069), 1, anon_sym_COMMA, - STATE(1099), 1, + STATE(1259), 1, aux_sym__collection_elements_repeat1, - ACTIONS(2382), 3, + ACTIONS(2079), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - [53834] = 4, + [64329] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2386), 1, - anon_sym_COMMA, - STATE(1096), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2131), 3, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2418), 2, sym__newline, - anon_sym_from, - sym__semicolon, - [53849] = 4, + anon_sym_SEMI, + [64346] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2388), 1, + ACTIONS(2597), 1, anon_sym_COMMA, - STATE(1099), 1, + STATE(1286), 1, aux_sym__collection_elements_repeat1, - ACTIONS(2382), 3, + ACTIONS(2595), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - [53864] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2233), 1, - sym_identifier, - STATE(1132), 1, - sym_dotted_name, - STATE(1289), 1, - sym_aliased_import, - ACTIONS(2390), 2, - sym__newline, - sym__semicolon, - [53881] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2392), 2, - sym__newline, - sym__semicolon, - [53898] = 4, + [64361] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2394), 1, + ACTIONS(2599), 1, anon_sym_COMMA, - STATE(1096), 1, + STATE(1280), 1, aux_sym_expression_list_repeat1, - ACTIONS(2131), 3, + ACTIONS(2482), 3, sym__newline, anon_sym_from, - sym__semicolon, - [53913] = 5, + anon_sym_SEMI, + [64376] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2195), 2, + ACTIONS(2601), 2, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACE, - [53930] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2396), 1, - anon_sym_LPAREN, - ACTIONS(2398), 1, - anon_sym_COLON, - ACTIONS(2400), 1, - anon_sym_LBRACK, - STATE(1210), 1, - sym_type_parameters, - STATE(1402), 1, - sym_argument_list, - [53949] = 5, + [64393] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2402), 2, + ACTIONS(2603), 2, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACK, - [53966] = 2, + [64410] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2404), 5, + ACTIONS(2605), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, anon_sym_RBRACK, - [53977] = 5, + [64421] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2406), 2, + ACTIONS(2607), 2, anon_sym_COMMA, anon_sym_RBRACK, - [53994] = 6, + [64438] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2374), 1, - anon_sym_COLON, - ACTIONS(2408), 1, + ACTIONS(2609), 1, anon_sym_RBRACE, - ACTIONS(2410), 1, + ACTIONS(2611), 1, anon_sym_EQ, - ACTIONS(2412), 1, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(2615), 1, sym_type_conversion, - STATE(1470), 1, + STATE(1652), 1, sym_format_specifier, - [54013] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2327), 5, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_RBRACK, - [54024] = 5, + [64457] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2414), 2, + ACTIONS(2617), 2, anon_sym_COMMA, anon_sym_RBRACK, - [54041] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2416), 2, - sym__newline, - sym__semicolon, - [54058] = 5, + [64474] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2418), 2, + ACTIONS(2281), 5, anon_sym_RPAREN, anon_sym_COMMA, - [54075] = 5, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [64485] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(2069), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2420), 2, - sym__newline, - sym__semicolon, - [54092] = 5, + ACTIONS(2619), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [64502] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2422), 2, + ACTIONS(2621), 2, sym__newline, - sym__semicolon, - [54109] = 4, + anon_sym_SEMI, + [64519] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1897), 1, + ACTIONS(2623), 1, anon_sym_COMMA, - STATE(1077), 1, + STATE(1286), 1, aux_sym__collection_elements_repeat1, - ACTIONS(1907), 3, + ACTIONS(2595), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - [54124] = 4, + [64534] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2424), 1, - anon_sym_COMMA, - STATE(1096), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2075), 3, + ACTIONS(2376), 1, + sym_identifier, + STATE(1306), 1, + sym_dotted_name, + STATE(1486), 1, + sym_aliased_import, + ACTIONS(2625), 2, sym__newline, - anon_sym_from, - sym__semicolon, - [54139] = 5, + anon_sym_SEMI, + [64551] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2233), 1, + ACTIONS(2376), 1, sym_identifier, - STATE(1132), 1, + ACTIONS(2627), 1, + anon_sym_LPAREN, + STATE(1290), 1, sym_dotted_name, - STATE(1289), 1, + STATE(1368), 1, sym_aliased_import, - ACTIONS(2427), 2, - sym__newline, - sym__semicolon, - [54156] = 6, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(2429), 1, - anon_sym_RBRACE, - ACTIONS(2431), 1, - anon_sym_LBRACE2, - ACTIONS(2433), 1, - aux_sym_format_specifier_token1, - STATE(1104), 1, - aux_sym_format_specifier_repeat1, - STATE(1255), 1, - sym_interpolation, - [54175] = 4, + STATE(1527), 1, + sym__import_list, + [64570] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2437), 1, + ACTIONS(2281), 5, anon_sym_COMMA, - STATE(1099), 1, - aux_sym__collection_elements_repeat1, - ACTIONS(2435), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, anon_sym_RBRACE, - [54190] = 5, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [64581] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2440), 2, + ACTIONS(2629), 2, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACK, - [54207] = 5, + [64598] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2233), 1, + ACTIONS(2376), 1, sym_identifier, - STATE(1132), 1, + STATE(1306), 1, sym_dotted_name, - STATE(1289), 1, + STATE(1486), 1, sym_aliased_import, - ACTIONS(2427), 2, + ACTIONS(2625), 2, sym__newline, - sym__semicolon, - [54224] = 5, + anon_sym_SEMI, + [64615] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2442), 2, + ACTIONS(2631), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [64632] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2545), 5, anon_sym_RPAREN, anon_sym_COMMA, - [54241] = 6, + anon_sym_if, + anon_sym_COLON, + anon_sym_RBRACK, + [64643] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2633), 1, + anon_sym_COMMA, + STATE(1280), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2482), 3, + sym__newline, + anon_sym_from, + anon_sym_SEMI, + [64658] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2635), 2, + sym__newline, + anon_sym_SEMI, + [64675] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2637), 1, + anon_sym_COMMA, + STATE(1280), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2505), 3, + sym__newline, + anon_sym_from, + anon_sym_SEMI, + [64690] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2396), 1, + ACTIONS(2589), 1, anon_sym_LPAREN, - ACTIONS(2400), 1, + ACTIONS(2593), 1, anon_sym_LBRACK, - ACTIONS(2444), 1, + ACTIONS(2640), 1, anon_sym_COLON, - STATE(1239), 1, + STATE(1493), 1, sym_type_parameters, - STATE(1444), 1, + STATE(1710), 1, sym_argument_list, - [54260] = 6, - ACTIONS(1948), 1, + [64709] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2478), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [64726] = 6, + ACTIONS(2065), 1, sym_comment, - ACTIONS(2431), 1, + ACTIONS(2642), 1, + anon_sym_RBRACE, + ACTIONS(2644), 1, anon_sym_LBRACE2, - ACTIONS(2446), 1, + ACTIONS(2646), 1, + aux_sym_format_specifier_token1, + STATE(1288), 1, + aux_sym_format_specifier_repeat1, + STATE(1497), 1, + sym_interpolation, + [64745] = 6, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2648), 1, anon_sym_RBRACE, - ACTIONS(2448), 1, + ACTIONS(2650), 1, + anon_sym_LBRACE2, + ACTIONS(2653), 1, aux_sym_format_specifier_token1, - STATE(1072), 1, + STATE(1284), 1, aux_sym_format_specifier_repeat1, - STATE(1255), 1, + STATE(1497), 1, sym_interpolation, - [54279] = 5, + [64764] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2450), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2656), 2, + sym__newline, + anon_sym_SEMI, + [64781] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2660), 1, + anon_sym_COMMA, + STATE(1286), 1, + aux_sym__collection_elements_repeat1, + ACTIONS(2658), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + [64796] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(2663), 1, + anon_sym_RBRACE, + ACTIONS(2665), 1, + anon_sym_EQ, + ACTIONS(2667), 1, + sym_type_conversion, + STATE(1587), 1, + sym_format_specifier, + [64815] = 6, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2644), 1, + anon_sym_LBRACE2, + ACTIONS(2669), 1, + anon_sym_RBRACE, + ACTIONS(2671), 1, + aux_sym_format_specifier_token1, + STATE(1284), 1, + aux_sym_format_specifier_repeat1, + STATE(1497), 1, + sym_interpolation, + [64834] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2054), 5, + sym__newline, + anon_sym_DOT, anon_sym_COMMA, - ACTIONS(2452), 1, anon_sym_as, - STATE(1145), 1, + anon_sym_SEMI, + [64845] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2673), 1, + anon_sym_COMMA, + ACTIONS(2675), 1, + anon_sym_as, + STATE(1359), 1, aux_sym__import_list_repeat1, - ACTIONS(2454), 2, + ACTIONS(2677), 2, sym__newline, - sym__semicolon, - [54296] = 5, + anon_sym_SEMI, + [64862] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2679), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [64879] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2681), 2, + sym__newline, + anon_sym_SEMI, + [64896] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2685), 1, + anon_sym_COMMA, + STATE(993), 1, + aux_sym__patterns_repeat1, + ACTIONS(2683), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + [64910] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2687), 1, + anon_sym_COMMA, + STATE(1242), 1, + aux_sym_open_sequence_match_pattern_repeat1, + ACTIONS(1859), 2, + anon_sym_if, + anon_sym_COLON, + [64924] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2689), 1, + anon_sym_COLON, + [64940] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2691), 1, + anon_sym_COLON, + [64956] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2456), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [54313] = 2, + ACTIONS(2693), 1, + anon_sym_else, + [64972] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1868), 5, - sym__newline, - anon_sym_DOT, + ACTIONS(2695), 1, + anon_sym_case, + STATE(610), 1, + sym_cases, + STATE(453), 2, + sym_case_block, + aux_sym_cases_repeat1, + [64986] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2697), 1, anon_sym_COMMA, - anon_sym_as, - sym__semicolon, - [54324] = 5, + STATE(1355), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2699), 2, + sym__newline, + anon_sym_SEMI, + [65000] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2701), 4, + anon_sym_async, + anon_sym_def, + anon_sym_class, + anon_sym_AT, + [65010] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2400), 1, + ACTIONS(2593), 1, anon_sym_LBRACK, - ACTIONS(2458), 1, + ACTIONS(2703), 1, anon_sym_LPAREN, - STATE(1359), 1, + STATE(1554), 1, sym_parameters, - STATE(1367), 1, + STATE(1557), 1, sym_type_parameters, - [54340] = 4, + [65026] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2460), 1, - anon_sym_COMMA, - STATE(1124), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2462), 2, - sym__newline, - sym__semicolon, - [54354] = 4, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(2705), 1, + anon_sym_RBRACE, + ACTIONS(2707), 1, + sym_type_conversion, + STATE(1692), 1, + sym_format_specifier, + [65042] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2464), 1, - anon_sym_COMMA, - STATE(1110), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2354), 2, + ACTIONS(562), 1, sym__newline, + ACTIONS(2709), 1, + anon_sym_SEMI, + STATE(129), 1, sym__semicolon, - [54368] = 4, + STATE(1357), 1, + aux_sym__simple_statements_repeat1, + [65058] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2467), 1, - anon_sym_COMMA, - STATE(1111), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2470), 2, + ACTIONS(2711), 1, + anon_sym_case, + STATE(555), 1, + sym_cases, + STATE(452), 2, + sym_case_block, + aux_sym_cases_repeat1, + [65072] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2711), 1, + anon_sym_case, + STATE(556), 1, + sym_cases, + STATE(452), 2, + sym_case_block, + aux_sym_cases_repeat1, + [65086] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2675), 1, + anon_sym_as, + ACTIONS(2713), 3, sym__newline, - sym__semicolon, - [54382] = 5, + anon_sym_COMMA, + anon_sym_SEMI, + [65098] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2472), 1, + ACTIONS(2715), 1, + anon_sym_else, + [65114] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2390), 4, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_COLON, - [54398] = 5, + anon_sym_EQ, + [65124] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2717), 1, + anon_sym_COMMA, + STATE(1309), 1, + aux_sym__import_list_repeat1, + ACTIONS(2720), 2, + sym__newline, + anon_sym_SEMI, + [65138] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(2722), 1, + anon_sym_RBRACE, + ACTIONS(2724), 1, + sym_type_conversion, + STATE(1641), 1, + sym_format_specifier, + [65154] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2233), 1, + ACTIONS(2726), 1, sym_identifier, - STATE(1105), 1, + STATE(1330), 1, sym_dotted_name, - STATE(1159), 1, + STATE(1395), 1, sym_aliased_import, - STATE(1352), 1, + STATE(1701), 1, sym__import_list, - [54414] = 4, + [65170] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2476), 1, - anon_sym_DOT, - STATE(1114), 1, - aux_sym_import_prefix_repeat1, - ACTIONS(2474), 2, - anon_sym_import, + ACTIONS(2726), 1, sym_identifier, - [54428] = 4, + STATE(1330), 1, + sym_dotted_name, + STATE(1395), 1, + sym_aliased_import, + STATE(1702), 1, + sym__import_list, + [65186] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2481), 1, - anon_sym_COMMA, - STATE(1115), 1, - aux_sym_with_clause_repeat1, - ACTIONS(2479), 2, + ACTIONS(2728), 4, anon_sym_RPAREN, - anon_sym_COLON, - [54442] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2486), 1, anon_sym_COMMA, - STATE(848), 1, - aux_sym__patterns_repeat1, - ACTIONS(2484), 2, - anon_sym_RPAREN, anon_sym_RBRACK, - [54456] = 2, + anon_sym_RBRACE, + [65196] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2223), 4, + ACTIONS(2730), 4, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, - anon_sym_EQ, - [54466] = 2, + anon_sym_RBRACK, + anon_sym_RBRACE, + [65206] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2157), 4, + ACTIONS(2392), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [54476] = 4, + [65216] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(1917), 1, - anon_sym_COLON, - STATE(572), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - [54490] = 4, + ACTIONS(2732), 1, + anon_sym_COMMA, + STATE(1340), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2734), 2, + sym__newline, + anon_sym_SEMI, + [65230] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(310), 1, sym__string_start, - ACTIONS(1917), 1, + ACTIONS(2097), 1, anon_sym_COLON, - STATE(573), 2, + STATE(616), 2, sym_string, aux_sym_concatenated_string_repeat1, - [54504] = 3, + [65244] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2490), 1, - anon_sym_EQ, - ACTIONS(2488), 3, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(2097), 1, anon_sym_COLON, - [54516] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2492), 4, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - [54526] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2494), 4, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - [54536] = 4, + STATE(617), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + [65258] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2496), 1, + ACTIONS(2736), 1, anon_sym_COMMA, - STATE(1111), 1, + STATE(1319), 1, aux_sym_print_statement_repeat1, - ACTIONS(2498), 2, + ACTIONS(2739), 2, sym__newline, - sym__semicolon, - [54550] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2500), 1, - anon_sym_COLON, - [54566] = 5, + anon_sym_SEMI, + [65272] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2502), 1, - anon_sym_COLON, - [54582] = 5, + ACTIONS(2741), 1, + anon_sym_COMMA, + STATE(1320), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2518), 2, + sym__newline, + anon_sym_SEMI, + [65286] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2504), 1, + ACTIONS(2376), 1, sym_identifier, - STATE(1172), 1, + STATE(1290), 1, sym_dotted_name, - STATE(1182), 1, + STATE(1368), 1, sym_aliased_import, - STATE(1447), 1, + STATE(1507), 1, sym__import_list, - [54598] = 5, + [65302] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2506), 1, + ACTIONS(2744), 1, anon_sym_COLON, - [54614] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2504), 1, - sym_identifier, - STATE(1172), 1, - sym_dotted_name, - STATE(1182), 1, - sym_aliased_import, - STATE(1386), 1, - sym__import_list, - [54630] = 4, + [65318] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2508), 1, - anon_sym_COMMA, - STATE(1111), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2510), 2, - sym__newline, - sym__semicolon, - [54644] = 4, + ACTIONS(2593), 1, + anon_sym_LBRACK, + ACTIONS(2703), 1, + anon_sym_LPAREN, + STATE(1511), 1, + sym_parameters, + STATE(1512), 1, + sym_type_parameters, + [65334] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2512), 1, - anon_sym_COMMA, - STATE(1131), 1, - aux_sym__import_list_repeat1, - ACTIONS(2515), 2, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2746), 1, sym__newline, - sym__semicolon, - [54658] = 3, + [65350] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2452), 1, - anon_sym_as, - ACTIONS(2517), 3, - sym__newline, + ACTIONS(2750), 1, anon_sym_COMMA, - sym__semicolon, - [54670] = 4, + STATE(1325), 1, + aux_sym_with_clause_repeat1, + ACTIONS(2748), 2, + anon_sym_RPAREN, + anon_sym_COLON, + [65364] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2519), 1, + ACTIONS(2697), 1, anon_sym_COMMA, - STATE(1131), 1, - aux_sym__import_list_repeat1, - ACTIONS(2521), 2, + STATE(1354), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2753), 2, sym__newline, - sym__semicolon, - [54684] = 4, + anon_sym_SEMI, + [65378] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2197), 1, + ACTIONS(2500), 1, + anon_sym_EQ, + STATE(1522), 1, + sym__type_param_default, + ACTIONS(2755), 2, anon_sym_COMMA, - STATE(1110), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2523), 2, - sym__newline, - sym__semicolon, - [54698] = 4, + anon_sym_RBRACK, + [65392] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2525), 1, - anon_sym_COMMA, - STATE(1135), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2528), 2, - sym__newline, - sym__semicolon, - [54712] = 5, + ACTIONS(2625), 1, + anon_sym_RPAREN, + ACTIONS(2726), 1, + sym_identifier, + STATE(1382), 1, + sym_dotted_name, + STATE(1540), 1, + sym_aliased_import, + [65408] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2400), 1, - anon_sym_LBRACK, - ACTIONS(2458), 1, - anon_sym_LPAREN, - STATE(1322), 1, - sym_type_parameters, - STATE(1355), 1, - sym_parameters, - [54728] = 4, + ACTIONS(2625), 1, + anon_sym_RPAREN, + ACTIONS(2726), 1, + sym_identifier, + STATE(1382), 1, + sym_dotted_name, + STATE(1540), 1, + sym_aliased_import, + [65424] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2530), 1, - anon_sym_case, - STATE(541), 1, - sym_cases, - STATE(414), 2, - sym_case_block, - aux_sym_cases_repeat1, - [54742] = 4, + ACTIONS(2677), 1, + anon_sym_RPAREN, + ACTIONS(2757), 1, + anon_sym_COMMA, + ACTIONS(2759), 1, + anon_sym_as, + STATE(1488), 1, + aux_sym__import_list_repeat1, + [65440] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2530), 1, - anon_sym_case, - STATE(484), 1, - sym_cases, - STATE(414), 2, - sym_case_block, - aux_sym_cases_repeat1, - [54756] = 5, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2761), 1, + anon_sym_COLON, + [65456] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2374), 1, - anon_sym_COLON, - ACTIONS(2532), 1, - anon_sym_RBRACE, - ACTIONS(2534), 1, - sym_type_conversion, - STATE(1410), 1, - sym_format_specifier, - [54772] = 5, + ACTIONS(2763), 1, + anon_sym_SEMI, + ACTIONS(2765), 1, + sym__newline, + STATE(132), 1, + sym__semicolon, + STATE(1333), 1, + aux_sym__simple_statements_repeat1, + [65472] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2536), 1, + ACTIONS(566), 1, sym__newline, - [54788] = 4, + ACTIONS(2767), 1, + anon_sym_SEMI, + STATE(131), 1, + sym__semicolon, + STATE(1357), 1, + aux_sym__simple_statements_repeat1, + [65488] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2538), 1, - anon_sym_COMMA, - STATE(1057), 1, - aux_sym_open_sequence_match_pattern_repeat1, - ACTIONS(1723), 2, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, anon_sym_if, + ACTIONS(2769), 1, anon_sym_COLON, - [54802] = 5, + [65504] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2540), 1, + ACTIONS(2771), 1, anon_sym_else, - [54818] = 4, + [65520] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2542), 1, + ACTIONS(2775), 1, + anon_sym_DOT, + STATE(1362), 1, + aux_sym_import_prefix_repeat1, + ACTIONS(2773), 2, + anon_sym_import, + sym_identifier, + [65534] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2777), 1, anon_sym_COMMA, - STATE(1156), 1, + STATE(1337), 1, aux_sym_global_statement_repeat1, - ACTIONS(2544), 2, + ACTIONS(2780), 2, sym__newline, - sym__semicolon, - [54832] = 4, + anon_sym_SEMI, + [65548] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2542), 1, + ACTIONS(2426), 1, anon_sym_COMMA, - STATE(1155), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2546), 2, - sym__newline, - sym__semicolon, - [54846] = 4, + STATE(1364), 1, + aux_sym_exception_list_repeat1, + ACTIONS(2782), 2, + anon_sym_as, + anon_sym_COLON, + [65562] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2784), 1, + anon_sym_else, + [65578] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2548), 1, + ACTIONS(2786), 1, anon_sym_COMMA, - STATE(1131), 1, - aux_sym__import_list_repeat1, - ACTIONS(2521), 2, + STATE(1319), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2788), 2, sym__newline, - sym__semicolon, - [54860] = 5, + anon_sym_SEMI, + [65592] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2390), 1, + ACTIONS(2792), 1, + anon_sym_EQ, + ACTIONS(2790), 3, anon_sym_RPAREN, - ACTIONS(2504), 1, - sym_identifier, - STATE(1226), 1, - sym_dotted_name, - STATE(1358), 1, - sym_aliased_import, - [54876] = 4, + anon_sym_COMMA, + anon_sym_COLON, + [65604] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2550), 1, - anon_sym_case, - STATE(530), 1, - sym_cases, - STATE(390), 2, - sym_case_block, - aux_sym_cases_repeat1, - [54890] = 4, + ACTIONS(2796), 1, + anon_sym_COLON, + ACTIONS(2798), 1, + anon_sym_EQ, + ACTIONS(2794), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [65618] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2550), 1, - anon_sym_case, - STATE(529), 1, - sym_cases, - STATE(390), 2, - sym_case_block, - aux_sym_cases_repeat1, - [54904] = 5, + ACTIONS(556), 1, + sym__newline, + ACTIONS(2800), 1, + anon_sym_SEMI, + STATE(128), 1, + sym__semicolon, + STATE(1357), 1, + aux_sym__simple_statements_repeat1, + [65634] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2400), 1, - anon_sym_LBRACK, - ACTIONS(2458), 1, - anon_sym_LPAREN, - STATE(1317), 1, - sym_type_parameters, - STATE(1349), 1, - sym_parameters, - [54920] = 5, + ACTIONS(2398), 1, + anon_sym_COMMA, + STATE(1320), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2802), 2, + sym__newline, + anon_sym_SEMI, + [65648] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2552), 1, - anon_sym_COLON, - [54936] = 5, + ACTIONS(2804), 1, + anon_sym_else, + [65664] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2554), 1, - anon_sym_COLON, - [54952] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2556), 1, - anon_sym_COMMA, - STATE(1152), 1, - aux_sym_exception_list_repeat1, - ACTIONS(2559), 2, - anon_sym_as, + ACTIONS(2806), 1, anon_sym_COLON, - [54966] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2400), 1, - anon_sym_LBRACK, - ACTIONS(2458), 1, - anon_sym_LPAREN, - STATE(1319), 1, - sym_type_parameters, - STATE(1350), 1, - sym_parameters, - [54982] = 5, + [65680] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2561), 1, + ACTIONS(2808), 1, anon_sym_COLON, - [54998] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2542), 1, - anon_sym_COMMA, - STATE(1135), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2563), 2, - sym__newline, - sym__semicolon, - [55012] = 4, + [65696] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2542), 1, - anon_sym_COMMA, - STATE(1135), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2565), 2, + ACTIONS(2810), 1, + anon_sym_SEMI, + ACTIONS(2812), 1, sym__newline, + STATE(127), 1, sym__semicolon, - [55026] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2569), 1, - anon_sym_COLON, - ACTIONS(2571), 1, - anon_sym_EQ, - ACTIONS(2567), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [55040] = 5, + STATE(1343), 1, + aux_sym__simple_statements_repeat1, + [65712] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2573), 1, + ACTIONS(2814), 1, anon_sym_COLON, - [55056] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2450), 1, - anon_sym_COMMA, - STATE(1133), 1, - aux_sym__import_list_repeat1, - ACTIONS(2454), 2, - sym__newline, - sym__semicolon, - [55070] = 5, + [65728] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2575), 1, - anon_sym_else, - [55086] = 5, + ACTIONS(2816), 1, + anon_sym_COLON, + [65744] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2577), 1, + ACTIONS(2818), 1, anon_sym_COLON, - [55102] = 5, + [65760] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2579), 1, + ACTIONS(2820), 1, anon_sym_COLON, - [55118] = 5, + [65776] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2427), 1, - anon_sym_RPAREN, - ACTIONS(2504), 1, - sym_identifier, - STATE(1226), 1, - sym_dotted_name, - STATE(1358), 1, - sym_aliased_import, - [55134] = 5, + ACTIONS(2822), 1, + anon_sym_COMMA, + STATE(1309), 1, + aux_sym__import_list_repeat1, + ACTIONS(2824), 2, + sym__newline, + anon_sym_SEMI, + [65790] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2581), 1, - anon_sym_else, - [55150] = 5, + ACTIONS(2697), 1, + anon_sym_COMMA, + STATE(1337), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2826), 2, + sym__newline, + anon_sym_SEMI, + [65804] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2427), 1, - anon_sym_RPAREN, - ACTIONS(2504), 1, - sym_identifier, - STATE(1226), 1, - sym_dotted_name, - STATE(1358), 1, - sym_aliased_import, - [55166] = 5, + ACTIONS(2697), 1, + anon_sym_COMMA, + STATE(1337), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2828), 2, + sym__newline, + anon_sym_SEMI, + [65818] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2583), 1, - anon_sym_COLON, - [55182] = 4, + ACTIONS(2832), 1, + anon_sym_COMMA, + STATE(1293), 1, + aux_sym__patterns_repeat1, + ACTIONS(2830), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + [65832] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2197), 1, - anon_sym_COMMA, - STATE(1110), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2585), 2, + ACTIONS(2834), 1, + anon_sym_SEMI, + ACTIONS(2837), 1, sym__newline, + STATE(133), 1, sym__semicolon, - [55196] = 2, + STATE(1357), 1, + aux_sym__simple_statements_repeat1, + [65848] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2009), 4, + ACTIONS(2281), 4, sym__newline, anon_sym_from, anon_sym_COMMA, - sym__semicolon, - [55206] = 5, + anon_sym_SEMI, + [65858] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2587), 1, - anon_sym_COLON, - [55222] = 5, + ACTIONS(2839), 1, + anon_sym_COMMA, + STATE(1309), 1, + aux_sym__import_list_repeat1, + ACTIONS(2824), 2, + sym__newline, + anon_sym_SEMI, + [65872] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2841), 1, + anon_sym_COMMA, + STATE(1319), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2843), 2, + sym__newline, + anon_sym_SEMI, + [65886] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2589), 1, - anon_sym_else, - [55238] = 4, + ACTIONS(2845), 1, + anon_sym_COLON, + [65902] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2593), 1, + ACTIONS(2849), 1, anon_sym_DOT, - STATE(1114), 1, + STATE(1362), 1, aux_sym_import_prefix_repeat1, - ACTIONS(2591), 2, + ACTIONS(2847), 2, anon_sym_import, sym_identifier, - [55252] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2454), 1, - anon_sym_RPAREN, - ACTIONS(2595), 1, - anon_sym_COMMA, - ACTIONS(2597), 1, - anon_sym_as, - STATE(1305), 1, - aux_sym__import_list_repeat1, - [55268] = 2, + [65916] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2599), 4, - anon_sym_async, - anon_sym_def, - anon_sym_class, - anon_sym_AT, - [55278] = 4, + ACTIONS(2695), 1, + anon_sym_case, + STATE(609), 1, + sym_cases, + STATE(453), 2, + sym_case_block, + aux_sym_cases_repeat1, + [65930] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2342), 1, - anon_sym_EQ, - STATE(1321), 1, - sym__type_param_default, - ACTIONS(2601), 2, + ACTIONS(2852), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [55292] = 4, + STATE(1364), 1, + aux_sym_exception_list_repeat1, + ACTIONS(2855), 2, + anon_sym_as, + anon_sym_COLON, + [65944] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2342), 1, - anon_sym_EQ, - STATE(1323), 1, - sym__type_param_default, - ACTIONS(2603), 2, + ACTIONS(2398), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [55306] = 4, + STATE(1320), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2857), 2, + sym__newline, + anon_sym_SEMI, + [65958] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2342), 1, - anon_sym_EQ, - STATE(1325), 1, - sym__type_param_default, - ACTIONS(2605), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [55320] = 4, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2859), 1, + anon_sym_else, + [65974] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2609), 1, - anon_sym_COMMA, - STATE(1116), 1, - aux_sym__patterns_repeat1, - ACTIONS(2607), 2, + ACTIONS(2587), 1, anon_sym_RPAREN, - anon_sym_RBRACK, - [55334] = 4, + ACTIONS(2726), 1, + sym_identifier, + STATE(1382), 1, + sym_dotted_name, + STATE(1540), 1, + sym_aliased_import, + [65990] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2177), 1, + ACTIONS(2673), 1, anon_sym_COMMA, - STATE(1152), 1, - aux_sym_exception_list_repeat1, - ACTIONS(2611), 2, - anon_sym_as, - anon_sym_COLON, - [55348] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2374), 1, - anon_sym_COLON, - ACTIONS(2613), 1, - anon_sym_RBRACE, - ACTIONS(2615), 1, - sym_type_conversion, - STATE(1458), 1, - sym_format_specifier, - [55364] = 4, + STATE(1353), 1, + aux_sym__import_list_repeat1, + ACTIONS(2677), 2, + sym__newline, + anon_sym_SEMI, + [66004] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2617), 1, - anon_sym_COMMA, - ACTIONS(2620), 1, - anon_sym_RBRACE, - STATE(1180), 1, - aux_sym_dictionary_repeat1, - [55377] = 4, + ACTIONS(2593), 1, + anon_sym_LBRACK, + ACTIONS(2703), 1, + anon_sym_LPAREN, + STATE(1541), 1, + sym_parameters, + STATE(1576), 1, + sym_type_parameters, + [66020] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2622), 1, - sym__semicolon, - ACTIONS(2624), 1, - sym__newline, - STATE(1299), 1, - aux_sym__simple_statements_repeat1, - [55390] = 4, + ACTIONS(2593), 1, + anon_sym_LBRACK, + ACTIONS(2703), 1, + anon_sym_LPAREN, + STATE(1543), 1, + sym_parameters, + STATE(1578), 1, + sym_type_parameters, + [66036] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2454), 1, - anon_sym_RPAREN, - ACTIONS(2595), 1, + ACTIONS(2500), 1, + anon_sym_EQ, + STATE(1555), 1, + sym__type_param_default, + ACTIONS(2861), 2, anon_sym_COMMA, - STATE(1267), 1, - aux_sym__import_list_repeat1, - [55403] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2626), 1, - anon_sym_if, - ACTIONS(2628), 1, - anon_sym_COLON, - STATE(1506), 1, - sym_guard, - [55416] = 3, + anon_sym_RBRACK, + [66050] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2630), 1, + ACTIONS(2500), 1, + anon_sym_EQ, + STATE(1516), 1, + sym__type_param_default, + ACTIONS(2863), 2, anon_sym_COMMA, - ACTIONS(2632), 2, - anon_sym_if, - anon_sym_COLON, - [55427] = 2, + anon_sym_RBRACK, + [66064] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2223), 3, + ACTIONS(2865), 1, + anon_sym_SEMI, + ACTIONS(2867), 1, sym__newline, - anon_sym_EQ, + STATE(130), 1, sym__semicolon, - [55436] = 2, + STATE(1303), 1, + aux_sym__simple_statements_repeat1, + [66080] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2634), 3, - anon_sym_LPAREN, - anon_sym_COLON, - anon_sym_EQ, - [55445] = 4, + ACTIONS(2869), 1, + sym_identifier, + ACTIONS(2871), 1, + sym_match_wildcard_pattern, + STATE(1263), 1, + sym_match_capture_pattern, + [66093] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2636), 1, + ACTIONS(2873), 1, anon_sym_COMMA, - ACTIONS(2638), 1, + ACTIONS(2876), 1, anon_sym_RBRACK, - STATE(1248), 1, + STATE(1375), 1, aux_sym_type_parameters_repeat1, - [55458] = 4, + [66106] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2640), 1, + ACTIONS(2048), 1, anon_sym_RPAREN, - ACTIONS(2642), 1, + ACTIONS(2878), 1, anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [55471] = 4, + STATE(1443), 1, + aux_sym__parameters_repeat1, + [66119] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2644), 1, - anon_sym_RPAREN, - ACTIONS(2646), 1, + ACTIONS(2880), 1, anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [55484] = 4, + ACTIONS(2882), 1, + anon_sym_RBRACK, + STATE(1492), 1, + aux_sym_index_expression_list_repeat1, + [66132] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2504), 1, - sym_identifier, - STATE(1226), 1, - sym_dotted_name, - STATE(1358), 1, - sym_aliased_import, - [55497] = 3, - ACTIONS(1948), 1, + ACTIONS(2884), 1, + anon_sym_COMMA, + ACTIONS(2887), 1, + anon_sym_RBRACK, + STATE(1378), 1, + aux_sym_index_expression_list_repeat1, + [66145] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2889), 3, + anon_sym_LPAREN, + anon_sym_COLON, + anon_sym_EQ, + [66154] = 3, + ACTIONS(2065), 1, sym_comment, - ACTIONS(2288), 1, + ACTIONS(2510), 1, anon_sym_RBRACE, - ACTIONS(2290), 2, + ACTIONS(2512), 2, anon_sym_LBRACE2, aux_sym_format_specifier_token1, - [55508] = 4, + [66165] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2648), 1, + ACTIONS(2891), 1, anon_sym_RPAREN, - ACTIONS(2650), 1, + ACTIONS(2893), 1, anon_sym_COMMA, - STATE(1295), 1, + STATE(1413), 1, aux_sym_match_class_pattern_repeat2, - [55521] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2652), 1, - anon_sym_RPAREN, - ACTIONS(2654), 1, - anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [55534] = 4, + [66178] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2656), 1, + ACTIONS(2759), 1, + anon_sym_as, + ACTIONS(2713), 2, anon_sym_RPAREN, - ACTIONS(2658), 1, anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [55547] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1425), 3, - sym__newline, - anon_sym_in, - sym__semicolon, - [55556] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2661), 1, - sym__semicolon, - ACTIONS(2664), 1, - sym__newline, - STATE(1196), 1, - aux_sym__simple_statements_repeat1, - [55569] = 4, + [66189] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1897), 1, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(2019), 1, + ACTIONS(2169), 1, anon_sym_RPAREN, - STATE(1293), 1, + STATE(1454), 1, aux_sym__collection_elements_repeat1, - [55582] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1862), 1, - anon_sym_COLON, - ACTIONS(2666), 1, - anon_sym_COMMA, - STATE(1284), 1, - aux_sym__parameters_repeat1, - [55595] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1417), 3, - sym__newline, - anon_sym_in, - sym__semicolon, - [55604] = 4, + [66202] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2648), 1, + ACTIONS(2720), 1, anon_sym_RPAREN, - ACTIONS(2668), 1, - anon_sym_COMMA, - STATE(1275), 1, - aux_sym_match_class_pattern_repeat1, - [55617] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2670), 1, + ACTIONS(2895), 1, anon_sym_COMMA, - ACTIONS(2673), 1, - anon_sym_RBRACK, - STATE(1201), 1, - aux_sym_index_expression_list_repeat1, - [55630] = 4, + STATE(1384), 1, + aux_sym__import_list_repeat1, + [66215] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2675), 1, + ACTIONS(2898), 1, anon_sym_COMMA, - ACTIONS(2678), 1, - anon_sym_RBRACE, - STATE(1202), 1, - aux_sym_match_mapping_pattern_repeat1, - [55643] = 4, + ACTIONS(2900), 1, + anon_sym_COLON, + STATE(1471), 1, + aux_sym__parameters_repeat1, + [66228] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2680), 1, + ACTIONS(2902), 1, anon_sym_COMMA, - ACTIONS(2682), 1, + ACTIONS(2904), 1, anon_sym_RBRACK, - STATE(1257), 1, - aux_sym_index_expression_list_repeat1, - [55656] = 4, + STATE(1375), 1, + aux_sym_type_parameters_repeat1, + [66241] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2684), 1, + ACTIONS(2195), 1, anon_sym_RPAREN, - ACTIONS(2686), 1, + ACTIONS(2197), 1, anon_sym_COMMA, - STATE(1189), 1, + STATE(1462), 1, aux_sym_argument_list_repeat1, - [55669] = 4, + [66254] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2013), 1, + ACTIONS(2906), 1, anon_sym_RPAREN, - ACTIONS(2015), 1, + ACTIONS(2908), 1, anon_sym_COMMA, - STATE(1193), 1, + STATE(1481), 1, aux_sym_argument_list_repeat1, - [55682] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2688), 1, - anon_sym_COMMA, - ACTIONS(2690), 1, - anon_sym_RBRACK, - STATE(1232), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [55695] = 4, + [66267] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2692), 1, + ACTIONS(2910), 1, anon_sym_COMMA, - ACTIONS(2694), 1, + ACTIONS(2912), 1, anon_sym_RBRACE, - STATE(1180), 1, + STATE(1401), 1, aux_sym_dictionary_repeat1, - [55708] = 4, + [66280] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2696), 1, - anon_sym_COMMA, - ACTIONS(2698), 1, - anon_sym_RBRACE, - STATE(1180), 1, - aux_sym_dictionary_repeat1, - [55721] = 2, + ACTIONS(2914), 1, + anon_sym_if, + ACTIONS(2916), 1, + anon_sym_COLON, + STATE(1689), 1, + sym_guard, + [66293] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1175), 3, - anon_sym_RPAREN, + ACTIONS(2918), 1, anon_sym_COMMA, + ACTIONS(2920), 2, + anon_sym_if, anon_sym_COLON, - [55730] = 4, + [66304] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2396), 1, - anon_sym_LPAREN, - ACTIONS(2700), 1, - anon_sym_COLON, - STATE(1413), 1, - sym_argument_list, - [55743] = 4, + ACTIONS(2922), 1, + anon_sym_RPAREN, + ACTIONS(2924), 1, + anon_sym_COMMA, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [66317] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(556), 1, + ACTIONS(2927), 1, + anon_sym_in, + ACTIONS(2929), 2, sym__newline, - ACTIONS(2702), 1, - sym__semicolon, - STATE(1196), 1, - aux_sym__simple_statements_repeat1, - [55756] = 4, + anon_sym_SEMI, + [66328] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2704), 1, - sym__semicolon, - ACTIONS(2706), 1, - sym__newline, - STATE(1231), 1, - aux_sym__simple_statements_repeat1, - [55769] = 4, + ACTIONS(2794), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + [66337] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1739), 1, + ACTIONS(2677), 1, anon_sym_RPAREN, - ACTIONS(2708), 1, + ACTIONS(2757), 1, anon_sym_COMMA, - STATE(1249), 1, - aux_sym_match_class_pattern_repeat2, - [55782] = 4, + STATE(1487), 1, + aux_sym__import_list_repeat1, + [66350] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2710), 1, + ACTIONS(1893), 1, + anon_sym_RPAREN, + ACTIONS(2931), 1, sym_identifier, - ACTIONS(2712), 1, - sym_match_wildcard_pattern, - STATE(1086), 1, - sym_match_capture_pattern, - [55795] = 4, + STATE(1558), 1, + sym_match_keyword_pattern, + [66363] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2191), 1, + ACTIONS(2171), 1, + anon_sym_RPAREN, + ACTIONS(2173), 1, anon_sym_COMMA, - ACTIONS(2193), 1, - anon_sym_RBRACE, - STATE(1208), 1, - aux_sym_dictionary_repeat1, - [55808] = 4, + STATE(1448), 1, + aux_sym_argument_list_repeat1, + [66376] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2515), 1, + ACTIONS(2933), 1, anon_sym_RPAREN, - ACTIONS(2714), 1, + ACTIONS(2935), 1, anon_sym_COMMA, - STATE(1216), 1, - aux_sym__import_list_repeat1, - [55821] = 3, + STATE(1450), 1, + aux_sym_argument_list_repeat1, + [66389] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2717), 1, - anon_sym_EQ, - ACTIONS(2719), 2, - sym__newline, - sym__semicolon, - [55832] = 4, + ACTIONS(1895), 1, + anon_sym_RPAREN, + ACTIONS(2937), 1, + anon_sym_COMMA, + STATE(1468), 1, + aux_sym_match_class_pattern_repeat1, + [66402] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1897), 1, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(2007), 1, + ACTIONS(2099), 1, anon_sym_RPAREN, - STATE(1293), 1, + STATE(1454), 1, aux_sym__collection_elements_repeat1, - [55845] = 4, + [66415] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2207), 1, + ACTIONS(2939), 1, + anon_sym_COMMA, + ACTIONS(2942), 1, + anon_sym_RBRACE, + STATE(1401), 1, + aux_sym_dictionary_repeat1, + [66428] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2452), 1, sym_identifier, - ACTIONS(2721), 1, + ACTIONS(2944), 1, anon_sym_import, - STATE(1489), 1, + STATE(1654), 1, sym_dotted_name, - [55858] = 4, + [66441] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1897), 1, + ACTIONS(2438), 1, anon_sym_COMMA, - ACTIONS(1933), 1, - anon_sym_RPAREN, - STATE(1293), 1, - aux_sym__collection_elements_repeat1, - [55871] = 4, + ACTIONS(2440), 1, + anon_sym_RBRACE, + STATE(1408), 1, + aux_sym_dictionary_repeat1, + [66454] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2723), 1, - sym_identifier, - ACTIONS(2725), 1, - anon_sym_RPAREN, - STATE(1333), 1, - sym_match_keyword_pattern, - [55884] = 3, + ACTIONS(1525), 3, + sym__newline, + anon_sym_in, + anon_sym_SEMI, + [66463] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2727), 1, - anon_sym_COLON, - ACTIONS(2567), 2, + ACTIONS(1895), 1, anon_sym_RPAREN, - anon_sym_COMMA, - [55895] = 4, + ACTIONS(2931), 1, + sym_identifier, + STATE(1558), 1, + sym_match_keyword_pattern, + [66476] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1954), 1, - anon_sym_RPAREN, - ACTIONS(1956), 1, - anon_sym_COMMA, - STATE(1296), 1, - aux_sym_argument_list_repeat1, - [55908] = 4, + ACTIONS(2946), 1, + anon_sym_EQ, + ACTIONS(2948), 2, + sym__newline, + anon_sym_SEMI, + [66487] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1873), 1, - anon_sym_DOT, - ACTIONS(1931), 1, - anon_sym_COLON, - STATE(881), 1, - aux_sym_match_value_pattern_repeat1, - [55921] = 4, + ACTIONS(2880), 1, + anon_sym_COMMA, + ACTIONS(2950), 1, + anon_sym_RBRACK, + STATE(1492), 1, + aux_sym_index_expression_list_repeat1, + [66500] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2227), 1, + ACTIONS(2952), 1, anon_sym_COMMA, - ACTIONS(2229), 1, + ACTIONS(2954), 1, anon_sym_RBRACE, - STATE(1247), 1, + STATE(1401), 1, aux_sym_dictionary_repeat1, - [55934] = 3, + [66513] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2597), 1, - anon_sym_as, - ACTIONS(2517), 2, - anon_sym_RPAREN, + ACTIONS(2956), 1, anon_sym_COMMA, - [55945] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2729), 1, - sym__semicolon, - ACTIONS(2731), 1, - sym__newline, - STATE(1211), 1, - aux_sym__simple_statements_repeat1, - [55958] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2147), 1, - anon_sym_from, - ACTIONS(2151), 2, - sym__newline, - sym__semicolon, - [55969] = 4, + ACTIONS(2958), 1, + anon_sym_RBRACE, + STATE(1401), 1, + aux_sym_dictionary_repeat1, + [66526] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2733), 1, - anon_sym_RPAREN, - ACTIONS(2735), 1, + ACTIONS(2382), 1, anon_sym_COMMA, - STATE(1253), 1, - aux_sym__parameters_repeat1, - [55982] = 4, + ACTIONS(2384), 1, + anon_sym_RBRACE, + STATE(1485), 1, + aux_sym_dictionary_repeat1, + [66539] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2737), 1, + ACTIONS(2191), 1, anon_sym_RPAREN, - ACTIONS(2739), 1, + ACTIONS(2193), 1, anon_sym_COMMA, - STATE(1265), 1, + STATE(1415), 1, aux_sym_argument_list_repeat1, - [55995] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(562), 1, - sym__newline, - ACTIONS(2741), 1, - sym__semicolon, - STATE(1196), 1, - aux_sym__simple_statements_repeat1, - [56008] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1727), 1, - anon_sym_RBRACK, - ACTIONS(2743), 1, - anon_sym_COMMA, - STATE(1057), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [56021] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1844), 1, - anon_sym_COMMA, - ACTIONS(2745), 1, - anon_sym_in, - STATE(861), 1, - aux_sym__patterns_repeat1, - [56034] = 4, + [66552] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1727), 1, + ACTIONS(2960), 1, anon_sym_RPAREN, - ACTIONS(2747), 1, + ACTIONS(2962), 1, anon_sym_COMMA, - STATE(1057), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [56047] = 4, + STATE(1417), 1, + aux_sym_argument_list_repeat1, + [66565] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2749), 1, + ACTIONS(1895), 1, anon_sym_RPAREN, - ACTIONS(2751), 1, + ACTIONS(2964), 1, anon_sym_COMMA, - STATE(1302), 1, + STATE(1422), 1, aux_sym_match_class_pattern_repeat2, - [56060] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2723), 1, - sym_identifier, - ACTIONS(2749), 1, - anon_sym_RPAREN, - STATE(1333), 1, - sym_match_keyword_pattern, - [56073] = 4, + [66578] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1844), 1, + ACTIONS(2880), 1, anon_sym_COMMA, - ACTIONS(2753), 1, - anon_sym_in, - STATE(861), 1, - aux_sym__patterns_repeat1, - [56086] = 4, + ACTIONS(2966), 1, + anon_sym_RBRACK, + STATE(1492), 1, + aux_sym_index_expression_list_repeat1, + [66591] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2755), 1, + ACTIONS(2968), 1, + anon_sym_RPAREN, + ACTIONS(2970), 1, anon_sym_COMMA, - ACTIONS(2757), 1, - anon_sym_COLON, - STATE(1272), 1, - aux_sym_with_clause_repeat1, - [56099] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2396), 1, - anon_sym_LPAREN, - ACTIONS(2759), 1, - anon_sym_COLON, - STATE(1451), 1, - sym_argument_list, - [56112] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [66604] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2636), 1, + ACTIONS(2902), 1, anon_sym_COMMA, - ACTIONS(2761), 1, + ACTIONS(2972), 1, anon_sym_RBRACK, - STATE(1187), 1, + STATE(1386), 1, aux_sym_type_parameters_repeat1, - [56125] = 3, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(2323), 1, - anon_sym_RBRACE, - ACTIONS(2325), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [56136] = 4, + [66617] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2763), 1, + ACTIONS(2974), 1, anon_sym_RPAREN, - ACTIONS(2765), 1, + ACTIONS(2976), 1, anon_sym_COMMA, - STATE(1235), 1, - aux_sym_match_class_pattern_repeat2, - [56149] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [66630] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2680), 1, + ACTIONS(2978), 1, + anon_sym_RPAREN, + ACTIONS(2980), 1, anon_sym_COMMA, - ACTIONS(2767), 1, - anon_sym_RBRACK, - STATE(1257), 1, - aux_sym_index_expression_list_repeat1, - [56162] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [66643] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2233), 1, - sym_identifier, - STATE(1132), 1, - sym_dotted_name, - STATE(1289), 1, - sym_aliased_import, - [56175] = 3, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(2303), 1, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(2722), 1, anon_sym_RBRACE, - ACTIONS(2305), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [56186] = 4, + STATE(1641), 1, + sym_format_specifier, + [66656] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2769), 1, + ACTIONS(2780), 3, + sym__newline, anon_sym_COMMA, - ACTIONS(2771), 1, - anon_sym_RBRACE, - STATE(1180), 1, - aux_sym_dictionary_repeat1, - [56199] = 4, + anon_sym_SEMI, + [66665] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2773), 1, + ACTIONS(2982), 3, + sym__newline, anon_sym_COMMA, - ACTIONS(2775), 1, - anon_sym_RBRACE, - STATE(1180), 1, - aux_sym_dictionary_repeat1, - [56212] = 4, + anon_sym_SEMI, + [66674] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2777), 1, + ACTIONS(2984), 1, + anon_sym_RPAREN, + ACTIONS(2986), 1, anon_sym_COMMA, - ACTIONS(2780), 1, - anon_sym_RBRACK, - STATE(1248), 1, - aux_sym_type_parameters_repeat1, - [56225] = 4, + STATE(1422), 1, + aux_sym_match_class_pattern_repeat2, + [66687] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2763), 1, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(2187), 1, anon_sym_RPAREN, - ACTIONS(2765), 1, + STATE(1454), 1, + aux_sym__collection_elements_repeat1, + [66700] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1958), 1, + anon_sym_RBRACE, + ACTIONS(2989), 1, anon_sym_COMMA, - STATE(1302), 1, - aux_sym_match_class_pattern_repeat2, - [56238] = 4, + STATE(1480), 1, + aux_sym_match_mapping_pattern_repeat1, + [66713] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2723), 1, - sym_identifier, - ACTIONS(2763), 1, - anon_sym_RPAREN, - STATE(1333), 1, - sym_match_keyword_pattern, - [56251] = 4, + ACTIONS(2444), 1, + anon_sym_COMMA, + ACTIONS(2446), 1, + anon_sym_RBRACE, + STATE(1426), 1, + aux_sym_dictionary_repeat1, + [66726] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2782), 1, + ACTIONS(2991), 1, anon_sym_COMMA, - ACTIONS(2784), 1, + ACTIONS(2993), 1, anon_sym_RBRACE, - STATE(1180), 1, + STATE(1401), 1, aux_sym_dictionary_repeat1, - [56264] = 4, + [66739] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2374), 1, - anon_sym_COLON, - ACTIONS(2786), 1, + ACTIONS(2995), 1, + anon_sym_COMMA, + ACTIONS(2997), 1, anon_sym_RBRACE, - STATE(1408), 1, - sym_format_specifier, - [56277] = 4, + STATE(1401), 1, + aux_sym_dictionary_repeat1, + [66752] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1862), 1, + ACTIONS(2900), 1, anon_sym_RPAREN, - ACTIONS(2788), 1, + ACTIONS(2999), 1, anon_sym_COMMA, - STATE(1281), 1, + STATE(1376), 1, aux_sym__parameters_repeat1, - [56290] = 3, - ACTIONS(1948), 1, + [66765] = 4, + ACTIONS(3), 1, sym_comment, - ACTIONS(2350), 1, - anon_sym_RBRACE, - ACTIONS(2352), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [56301] = 3, - ACTIONS(1948), 1, + ACTIONS(2205), 1, + anon_sym_RPAREN, + ACTIONS(2207), 1, + anon_sym_COMMA, + STATE(1435), 1, + aux_sym_argument_list_repeat1, + [66778] = 4, + ACTIONS(3), 1, sym_comment, - ACTIONS(2790), 1, - anon_sym_RBRACE, - ACTIONS(2792), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [56312] = 3, + ACTIONS(3001), 1, + anon_sym_RPAREN, + ACTIONS(3003), 1, + anon_sym_COMMA, + STATE(1436), 1, + aux_sym_argument_list_repeat1, + [66791] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2794), 1, - anon_sym_in, - ACTIONS(2796), 2, - sym__newline, - sym__semicolon, - [56323] = 4, + ACTIONS(2931), 1, + sym_identifier, + ACTIONS(3005), 1, + anon_sym_RPAREN, + STATE(1558), 1, + sym_match_keyword_pattern, + [66804] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2798), 1, + ACTIONS(2880), 1, anon_sym_COMMA, - ACTIONS(2800), 1, + ACTIONS(3007), 1, anon_sym_RBRACK, - STATE(1201), 1, + STATE(1492), 1, aux_sym_index_expression_list_repeat1, - [56336] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2400), 1, - anon_sym_LBRACK, - ACTIONS(2802), 1, - anon_sym_EQ, - STATE(1392), 1, - sym_type_parameters, - [56349] = 4, + [66817] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2217), 1, + ACTIONS(3009), 1, anon_sym_COMMA, - ACTIONS(2219), 1, + ACTIONS(3011), 1, anon_sym_RBRACE, - STATE(1269), 1, + STATE(1401), 1, aux_sym_dictionary_repeat1, - [56362] = 4, + [66830] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3013), 1, + anon_sym_COMMA, + ACTIONS(3015), 1, + anon_sym_COLON, + STATE(1452), 1, + aux_sym_with_clause_repeat1, + [66843] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1960), 1, + ACTIONS(3017), 1, anon_sym_RPAREN, - ACTIONS(1962), 1, + ACTIONS(3019), 1, anon_sym_COMMA, - STATE(1283), 1, + STATE(1392), 1, aux_sym_argument_list_repeat1, - [56375] = 4, + [66856] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2804), 1, + ACTIONS(3021), 1, anon_sym_RPAREN, - ACTIONS(2806), 1, + ACTIONS(3023), 1, anon_sym_COMMA, - STATE(1285), 1, + STATE(1392), 1, aux_sym_argument_list_repeat1, - [56388] = 2, + [66869] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2528), 3, - sym__newline, + ACTIONS(3025), 1, + anon_sym_RPAREN, + ACTIONS(3027), 1, anon_sym_COMMA, - sym__semicolon, - [56397] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [66882] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2680), 1, + ACTIONS(1893), 1, + anon_sym_RPAREN, + ACTIONS(3029), 1, anon_sym_COMMA, - ACTIONS(2808), 1, - anon_sym_RBRACK, - STATE(1257), 1, - aux_sym_index_expression_list_repeat1, - [56410] = 4, + STATE(1449), 1, + aux_sym_match_class_pattern_repeat2, + [66895] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2810), 1, + ACTIONS(3031), 1, anon_sym_RPAREN, - ACTIONS(2812), 1, + ACTIONS(3033), 1, anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [56423] = 4, + STATE(1495), 1, + aux_sym_with_clause_repeat1, + [66908] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2814), 1, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(3035), 1, anon_sym_RPAREN, - ACTIONS(2816), 1, + STATE(1441), 1, + aux_sym__collection_elements_repeat1, + [66921] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2595), 1, + anon_sym_RPAREN, + ACTIONS(3037), 1, anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [56436] = 4, + STATE(1286), 1, + aux_sym__collection_elements_repeat1, + [66934] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2374), 1, + ACTIONS(3039), 1, anon_sym_COLON, - ACTIONS(2532), 1, - anon_sym_RBRACE, - STATE(1410), 1, - sym_format_specifier, - [56449] = 4, + ACTIONS(2794), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [66945] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2521), 1, + ACTIONS(3041), 1, anon_sym_RPAREN, - ACTIONS(2818), 1, + ACTIONS(3043), 1, anon_sym_COMMA, - STATE(1216), 1, - aux_sym__import_list_repeat1, - [56462] = 2, + STATE(1443), 1, + aux_sym__parameters_repeat1, + [66958] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2820), 3, + ACTIONS(3041), 3, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, - [56471] = 4, + [66967] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2822), 1, + ACTIONS(3046), 3, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(2824), 1, - anon_sym_RBRACE, - STATE(1180), 1, - aux_sym_dictionary_repeat1, - [56484] = 4, + anon_sym_COLON, + [66976] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2374), 1, + ACTIONS(3048), 3, + anon_sym_LPAREN, anon_sym_COLON, - ACTIONS(2613), 1, - anon_sym_RBRACE, - STATE(1458), 1, - sym_format_specifier, - [56497] = 3, + anon_sym_EQ, + [66985] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2571), 1, - anon_sym_EQ, - ACTIONS(2567), 2, + ACTIONS(2790), 3, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, - [56508] = 4, + [66994] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2755), 1, + ACTIONS(3050), 1, + anon_sym_RPAREN, + ACTIONS(3052), 1, anon_sym_COMMA, - ACTIONS(2826), 1, - anon_sym_COLON, - STATE(1115), 1, - aux_sym_with_clause_repeat1, - [56521] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [67007] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2828), 1, + ACTIONS(3005), 1, + anon_sym_RPAREN, + ACTIONS(3054), 1, anon_sym_COMMA, - ACTIONS(2830), 1, - anon_sym_RBRACE, - STATE(1301), 1, - aux_sym_match_mapping_pattern_repeat1, - [56534] = 4, + STATE(1422), 1, + aux_sym_match_class_pattern_repeat2, + [67020] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2832), 1, + ACTIONS(3056), 1, anon_sym_RPAREN, - ACTIONS(2834), 1, + ACTIONS(3058), 1, anon_sym_COMMA, - STATE(1294), 1, - aux_sym_with_clause_repeat1, - [56547] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [67033] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1737), 1, + ACTIONS(3060), 1, anon_sym_RPAREN, - ACTIONS(2836), 1, + ACTIONS(3062), 1, anon_sym_COMMA, - STATE(1309), 1, - aux_sym_match_class_pattern_repeat1, - [56560] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [67046] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3013), 1, + anon_sym_COMMA, + ACTIONS(3064), 1, + anon_sym_COLON, + STATE(1325), 1, + aux_sym_with_clause_repeat1, + [67059] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2733), 1, + ACTIONS(2589), 1, + anon_sym_LPAREN, + ACTIONS(3066), 1, anon_sym_COLON, - ACTIONS(2838), 1, + STATE(1608), 1, + sym_argument_list, + [67072] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2595), 1, + anon_sym_RPAREN, + ACTIONS(3068), 1, anon_sym_COMMA, - STATE(1198), 1, - aux_sym__parameters_repeat1, - [56573] = 4, + STATE(1286), 1, + aux_sym__collection_elements_repeat1, + [67085] = 3, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2581), 1, + anon_sym_RBRACE, + ACTIONS(2583), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [67096] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2626), 1, + ACTIONS(2914), 1, anon_sym_if, - ACTIONS(2840), 1, + ACTIONS(3070), 1, anon_sym_COLON, - STATE(1464), 1, + STATE(1621), 1, sym_guard, - [56586] = 2, + [67109] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(3072), 1, + anon_sym_RBRACE, + STATE(1699), 1, + sym_format_specifier, + [67122] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2567), 3, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(2705), 1, + anon_sym_RBRACE, + STATE(1692), 1, + sym_format_specifier, + [67135] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3005), 1, anon_sym_RPAREN, + ACTIONS(3054), 1, anon_sym_COMMA, - anon_sym_COLON, - [56595] = 4, + STATE(1472), 1, + aux_sym_match_class_pattern_repeat2, + [67148] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1844), 1, - anon_sym_COMMA, - ACTIONS(2842), 1, - anon_sym_in, - STATE(861), 1, - aux_sym__patterns_repeat1, - [56608] = 4, + ACTIONS(2726), 1, + sym_identifier, + STATE(1382), 1, + sym_dotted_name, + STATE(1540), 1, + sym_aliased_import, + [67161] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1844), 1, + ACTIONS(2010), 1, anon_sym_COMMA, - ACTIONS(2844), 1, + ACTIONS(3074), 1, anon_sym_in, - STATE(861), 1, + STATE(1010), 1, aux_sym__patterns_repeat1, - [56621] = 4, + [67174] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2846), 1, + ACTIONS(3076), 1, anon_sym_RPAREN, - ACTIONS(2848), 1, + ACTIONS(3078), 1, anon_sym_COMMA, - STATE(1281), 1, - aux_sym__parameters_repeat1, - [56634] = 2, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [67187] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2390), 3, + sym__newline, + anon_sym_EQ, + anon_sym_SEMI, + [67196] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2488), 3, + ACTIONS(1274), 3, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, - [56643] = 4, + [67205] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2851), 1, + ACTIONS(3080), 3, anon_sym_RPAREN, - ACTIONS(2853), 1, anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [56656] = 4, + anon_sym_COLON, + [67214] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2846), 1, - anon_sym_COLON, - ACTIONS(2855), 1, + ACTIONS(2891), 1, + anon_sym_RPAREN, + ACTIONS(3082), 1, anon_sym_COMMA, - STATE(1284), 1, - aux_sym__parameters_repeat1, - [56669] = 4, + STATE(1399), 1, + aux_sym_match_class_pattern_repeat1, + [67227] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2858), 1, + ACTIONS(2931), 1, + sym_identifier, + ACTIONS(3084), 1, anon_sym_RPAREN, - ACTIONS(2860), 1, - anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [56682] = 4, + STATE(1558), 1, + sym_match_keyword_pattern, + [67240] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2862), 1, + ACTIONS(3086), 1, anon_sym_RPAREN, - ACTIONS(2864), 1, + ACTIONS(3088), 1, anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [56695] = 4, + STATE(1468), 1, + aux_sym_match_class_pattern_repeat1, + [67253] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3091), 1, + anon_sym_COMMA, + ACTIONS(3093), 1, + anon_sym_RBRACK, + STATE(1503), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [67266] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1517), 3, + sym__newline, + anon_sym_in, + anon_sym_SEMI, + [67275] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2374), 1, + ACTIONS(2048), 1, anon_sym_COLON, - ACTIONS(2866), 1, - anon_sym_RBRACE, - STATE(1497), 1, - sym_format_specifier, - [56708] = 2, + ACTIONS(3095), 1, + anon_sym_COMMA, + STATE(1506), 1, + aux_sym__parameters_repeat1, + [67288] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2846), 3, + ACTIONS(3084), 1, anon_sym_RPAREN, + ACTIONS(3097), 1, anon_sym_COMMA, - anon_sym_COLON, - [56717] = 2, + STATE(1422), 1, + aux_sym_match_class_pattern_repeat2, + [67301] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2517), 3, - sym__newline, + ACTIONS(2010), 1, anon_sym_COMMA, - sym__semicolon, - [56726] = 2, + ACTIONS(3099), 1, + anon_sym_in, + STATE(1010), 1, + aux_sym__patterns_repeat1, + [67314] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2868), 3, - sym__newline, + ACTIONS(2069), 1, anon_sym_COMMA, - sym__semicolon, - [56735] = 4, + ACTIONS(3101), 1, + anon_sym_RPAREN, + STATE(1259), 1, + aux_sym__collection_elements_repeat1, + [67327] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2293), 1, + anon_sym_from, + ACTIONS(2297), 2, + sym__newline, + anon_sym_SEMI, + [67338] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2931), 1, + sym_identifier, + ACTIONS(3103), 1, + anon_sym_RPAREN, + STATE(1558), 1, + sym_match_keyword_pattern, + [67351] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1844), 1, + ACTIONS(3105), 1, anon_sym_COMMA, - ACTIONS(2870), 1, - anon_sym_in, - STATE(861), 1, - aux_sym__patterns_repeat1, - [56748] = 2, + ACTIONS(3107), 1, + anon_sym_RBRACE, + STATE(1424), 1, + aux_sym_match_mapping_pattern_repeat1, + [67364] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2872), 3, - anon_sym_LPAREN, + ACTIONS(2091), 1, + anon_sym_DOT, + ACTIONS(2114), 1, anon_sym_COLON, - anon_sym_EQ, - [56757] = 4, + STATE(1032), 1, + aux_sym_match_value_pattern_repeat1, + [67377] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2382), 1, - anon_sym_RPAREN, - ACTIONS(2874), 1, + ACTIONS(2798), 1, + anon_sym_EQ, + ACTIONS(2794), 2, anon_sym_COMMA, - STATE(1099), 1, - aux_sym__collection_elements_repeat1, - [56770] = 4, + anon_sym_COLON, + [67388] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(923), 1, - anon_sym_RPAREN, - ACTIONS(2876), 1, + ACTIONS(3109), 1, anon_sym_COMMA, - STATE(1115), 1, - aux_sym_with_clause_repeat1, - [56783] = 4, + ACTIONS(3112), 1, + anon_sym_RBRACE, + STATE(1480), 1, + aux_sym_match_mapping_pattern_repeat1, + [67401] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1737), 1, + ACTIONS(3114), 1, anon_sym_RPAREN, - ACTIONS(2878), 1, + ACTIONS(3116), 1, anon_sym_COMMA, - STATE(1302), 1, - aux_sym_match_class_pattern_repeat2, - [56796] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [67414] = 3, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2490), 1, + anon_sym_RBRACE, + ACTIONS(2492), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [67425] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2880), 1, + ACTIONS(3118), 1, anon_sym_RPAREN, - ACTIONS(2882), 1, + ACTIONS(3120), 1, anon_sym_COMMA, - STATE(1194), 1, + STATE(1392), 1, aux_sym_argument_list_repeat1, - [56809] = 4, + [67438] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2382), 1, + ACTIONS(1889), 1, anon_sym_RPAREN, - ACTIONS(2884), 1, + ACTIONS(3122), 1, anon_sym_COMMA, - STATE(1099), 1, - aux_sym__collection_elements_repeat1, - [56822] = 2, + STATE(1242), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [67451] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2479), 3, - anon_sym_RPAREN, + ACTIONS(3124), 1, anon_sym_COMMA, - anon_sym_COLON, - [56831] = 4, + ACTIONS(3126), 1, + anon_sym_RBRACE, + STATE(1401), 1, + aux_sym_dictionary_repeat1, + [67464] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(558), 1, + ACTIONS(2713), 3, sym__newline, - ACTIONS(2886), 1, - sym__semicolon, - STATE(1196), 1, - aux_sym__simple_statements_repeat1, - [56844] = 4, + anon_sym_COMMA, + anon_sym_SEMI, + [67473] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1737), 1, + ACTIONS(2824), 1, anon_sym_RPAREN, - ACTIONS(2723), 1, - sym_identifier, - STATE(1333), 1, - sym_match_keyword_pattern, - [56857] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1792), 1, - anon_sym_RBRACE, - ACTIONS(2888), 1, + ACTIONS(3128), 1, anon_sym_COMMA, - STATE(1202), 1, - aux_sym_match_mapping_pattern_repeat1, - [56870] = 4, + STATE(1384), 1, + aux_sym__import_list_repeat1, + [67486] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2890), 1, + ACTIONS(2824), 1, anon_sym_RPAREN, - ACTIONS(2892), 1, + ACTIONS(3130), 1, anon_sym_COMMA, - STATE(1302), 1, - aux_sym_match_class_pattern_repeat2, - [56883] = 4, + STATE(1384), 1, + aux_sym__import_list_repeat1, + [67499] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1897), 1, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(2895), 1, + ACTIONS(2209), 1, anon_sym_RPAREN, - STATE(1297), 1, + STATE(1454), 1, aux_sym__collection_elements_repeat1, - [56896] = 4, + [67512] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1897), 1, + ACTIONS(2472), 1, anon_sym_COMMA, - ACTIONS(2897), 1, - anon_sym_RPAREN, - STATE(1077), 1, - aux_sym__collection_elements_repeat1, - [56909] = 4, + ACTIONS(2474), 1, + anon_sym_RBRACE, + STATE(1389), 1, + aux_sym_dictionary_repeat1, + [67525] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3132), 1, + anon_sym_COMMA, + ACTIONS(3134), 1, + anon_sym_RBRACE, + STATE(1401), 1, + aux_sym_dictionary_repeat1, + [67538] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3136), 1, + anon_sym_COMMA, + ACTIONS(3138), 1, + anon_sym_RBRACK, + STATE(1378), 1, + aux_sym_index_expression_list_repeat1, + [67551] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2589), 1, + anon_sym_LPAREN, + ACTIONS(3140), 1, + anon_sym_COLON, + STATE(1666), 1, + sym_argument_list, + [67564] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2521), 1, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(3142), 1, + anon_sym_RBRACE, + STATE(1644), 1, + sym_format_specifier, + [67577] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1017), 1, anon_sym_RPAREN, - ACTIONS(2899), 1, + ACTIONS(3144), 1, anon_sym_COMMA, - STATE(1216), 1, - aux_sym__import_list_repeat1, - [56922] = 4, + STATE(1325), 1, + aux_sym_with_clause_repeat1, + [67590] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1844), 1, + ACTIONS(2010), 1, anon_sym_COMMA, - ACTIONS(2901), 1, + ACTIONS(3146), 1, anon_sym_in, - STATE(861), 1, + STATE(1010), 1, aux_sym__patterns_repeat1, - [56935] = 2, + [67603] = 3, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(3148), 1, + anon_sym_RBRACE, + ACTIONS(3150), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [67614] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2903), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - [56944] = 4, + ACTIONS(2593), 1, + anon_sym_LBRACK, + ACTIONS(3152), 1, + anon_sym_EQ, + STATE(1647), 1, + sym_type_parameters, + [67627] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1739), 1, - anon_sym_RPAREN, - ACTIONS(2723), 1, + ACTIONS(2376), 1, sym_identifier, - STATE(1333), 1, - sym_match_keyword_pattern, - [56957] = 4, + STATE(1306), 1, + sym_dotted_name, + STATE(1486), 1, + sym_aliased_import, + [67640] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2905), 1, - anon_sym_RPAREN, - ACTIONS(2907), 1, + ACTIONS(2010), 1, anon_sym_COMMA, - STATE(1309), 1, - aux_sym_match_class_pattern_repeat1, - [56970] = 2, + ACTIONS(3154), 1, + anon_sym_in, + STATE(1010), 1, + aux_sym__patterns_repeat1, + [67653] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2442), 2, + ACTIONS(2748), 3, anon_sym_RPAREN, anon_sym_COMMA, - [56978] = 2, + anon_sym_COLON, + [67662] = 3, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2486), 1, + anon_sym_RBRACE, + ACTIONS(2488), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [67673] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2910), 2, - sym__newline, - sym__semicolon, - [56986] = 2, + ACTIONS(1889), 1, + anon_sym_RBRACK, + ACTIONS(3156), 1, + anon_sym_COMMA, + STATE(1242), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [67686] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(992), 2, - anon_sym_except, - anon_sym_finally, - [56994] = 3, + ACTIONS(2010), 1, + anon_sym_COMMA, + ACTIONS(3158), 1, + anon_sym_in, + STATE(1010), 1, + aux_sym__patterns_repeat1, + [67699] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2912), 1, + ACTIONS(2010), 1, anon_sym_COMMA, - ACTIONS(2914), 1, - anon_sym_RBRACE, - [57004] = 2, + ACTIONS(3160), 1, + anon_sym_in, + STATE(1010), 1, + aux_sym__patterns_repeat1, + [67712] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2916), 2, - sym__newline, - sym__semicolon, - [57012] = 2, + ACTIONS(3041), 1, + anon_sym_COLON, + ACTIONS(3162), 1, + anon_sym_COMMA, + STATE(1506), 1, + aux_sym__parameters_repeat1, + [67725] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2918), 2, + ACTIONS(3165), 2, sym__newline, - sym__semicolon, - [57020] = 2, + anon_sym_SEMI, + [67733] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2920), 2, - sym__newline, - sym__semicolon, - [57028] = 3, + ACTIONS(3167), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [67741] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2458), 1, - anon_sym_LPAREN, - STATE(1347), 1, - sym_parameters, - [57038] = 2, + ACTIONS(3169), 1, + anon_sym_COMMA, + STATE(1294), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [67751] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(964), 2, - anon_sym_except, - anon_sym_finally, - [57046] = 3, + ACTIONS(2357), 1, + anon_sym_COMMA, + STATE(1229), 1, + aux_sym_expression_list_repeat1, + [67761] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3171), 1, + anon_sym_COLON, + ACTIONS(3173), 1, + anon_sym_DASH_GT, + [67771] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2458), 1, + ACTIONS(2703), 1, anon_sym_LPAREN, - STATE(1348), 1, + STATE(1539), 1, sym_parameters, - [57056] = 3, + [67781] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2922), 1, + ACTIONS(3175), 1, anon_sym_COLON, - ACTIONS(2924), 1, + ACTIONS(3177), 1, anon_sym_DASH_GT, - [57066] = 2, + [67791] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2926), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [57074] = 3, + ACTIONS(3179), 2, + sym__newline, + anon_sym_SEMI, + [67799] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2458), 1, - anon_sym_LPAREN, - STATE(1353), 1, - sym_parameters, - [57084] = 2, + ACTIONS(1027), 2, + anon_sym_except, + anon_sym_finally, + [67807] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2928), 2, + ACTIONS(3181), 2, anon_sym_COMMA, anon_sym_RBRACK, - [57092] = 2, + [67815] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2372), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [57100] = 2, + ACTIONS(2837), 2, + sym__newline, + anon_sym_SEMI, + [67823] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2930), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [57108] = 2, + ACTIONS(3183), 2, + sym__newline, + anon_sym_SEMI, + [67831] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2932), 2, - anon_sym_RPAREN, + ACTIONS(2607), 2, anon_sym_COMMA, - [57116] = 2, + anon_sym_RBRACK, + [67839] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2934), 2, + ACTIONS(2794), 2, anon_sym_COMMA, - anon_sym_RBRACK, - [57124] = 3, + anon_sym_COLON, + [67847] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2149), 1, - anon_sym_COMMA, - STATE(1078), 1, - aux_sym_expression_list_repeat1, - [57134] = 2, + ACTIONS(1045), 2, + anon_sym_except, + anon_sym_finally, + [67855] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2241), 2, - sym__newline, - sym__semicolon, - [57142] = 2, + ACTIONS(3185), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [67863] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1891), 2, + ACTIONS(3187), 2, sym__newline, - sym__semicolon, - [57150] = 2, + anon_sym_SEMI, + [67871] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2567), 2, + ACTIONS(3189), 2, anon_sym_COMMA, - anon_sym_COLON, - [57158] = 2, + anon_sym_RBRACK, + [67879] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2905), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [57166] = 2, + ACTIONS(3191), 2, + sym__newline, + anon_sym_SEMI, + [67887] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2890), 2, + ACTIONS(3193), 2, anon_sym_RPAREN, - anon_sym_COMMA, - [57174] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2936), 2, - anon_sym_COLON, - anon_sym_DASH_GT, - [57182] = 2, + anon_sym_COMMA, + [67895] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2938), 2, + ACTIONS(3195), 2, sym__newline, - sym__semicolon, - [57190] = 3, + anon_sym_SEMI, + [67903] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2940), 1, - sym_integer, - ACTIONS(2942), 1, - sym_float, - [57200] = 3, + ACTIONS(3197), 2, + sym__newline, + anon_sym_SEMI, + [67911] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2830), 1, - anon_sym_RBRACE, - ACTIONS(2944), 1, + ACTIONS(3199), 2, anon_sym_COMMA, - [57210] = 2, + anon_sym_RBRACK, + [67919] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2946), 2, + ACTIONS(3201), 2, sym__newline, - sym__semicolon, - [57218] = 3, + anon_sym_SEMI, + [67927] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1808), 1, - anon_sym_RBRACE, - ACTIONS(2948), 1, - anon_sym_COMMA, - [57228] = 2, + ACTIONS(3203), 2, + sym__newline, + anon_sym_SEMI, + [67935] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2950), 2, + ACTIONS(3205), 2, sym__newline, - sym__semicolon, - [57236] = 3, + anon_sym_SEMI, + [67943] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1873), 1, - anon_sym_DOT, - STATE(1224), 1, - aux_sym_match_value_pattern_repeat1, - [57246] = 3, + ACTIONS(3207), 2, + sym__newline, + anon_sym_SEMI, + [67951] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2952), 1, - sym_identifier, - STATE(1370), 1, - sym_match_capture_pattern, - [57256] = 2, + ACTIONS(3086), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [67959] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2954), 2, + ACTIONS(3209), 2, sym__newline, - sym__semicolon, - [57264] = 2, + anon_sym_SEMI, + [67967] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2678), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - [57272] = 3, + ACTIONS(1031), 2, + anon_sym_except, + anon_sym_finally, + [67975] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2243), 1, - anon_sym_as, - ACTIONS(2245), 1, - anon_sym_COLON, - [57282] = 3, + ACTIONS(2236), 2, + sym__newline, + anon_sym_SEMI, + [67983] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2247), 1, - anon_sym_as, - ACTIONS(2249), 1, - anon_sym_COLON, - [57292] = 3, + ACTIONS(1037), 2, + anon_sym_except, + anon_sym_finally, + [67991] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2956), 1, + ACTIONS(3211), 1, anon_sym_COLON, - ACTIONS(2958), 1, + ACTIONS(3213), 1, anon_sym_DASH_GT, - [57302] = 3, + [68001] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2960), 1, - anon_sym_COLON, - ACTIONS(2962), 1, - anon_sym_DASH_GT, - [57312] = 3, + ACTIONS(2713), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [68009] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2964), 1, + ACTIONS(3215), 1, anon_sym_COLON, - ACTIONS(2966), 1, + ACTIONS(3217), 1, anon_sym_DASH_GT, - [57322] = 3, + [68019] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2968), 1, + ACTIONS(3219), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [68027] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3221), 1, anon_sym_COLON, - ACTIONS(2970), 1, + ACTIONS(3223), 1, anon_sym_DASH_GT, - [57332] = 3, + [68037] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2723), 1, - sym_identifier, - STATE(1333), 1, - sym_match_keyword_pattern, - [57342] = 2, + ACTIONS(3225), 1, + anon_sym_COMMA, + ACTIONS(3227), 1, + anon_sym_RBRACE, + [68047] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2972), 2, - sym__newline, - sym__semicolon, - [57350] = 3, + ACTIONS(2982), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [68055] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2974), 1, + ACTIONS(3229), 1, anon_sym_COLON, - ACTIONS(2976), 1, + ACTIONS(3231), 1, anon_sym_DASH_GT, - [57360] = 3, + [68065] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2179), 1, + ACTIONS(3233), 2, + anon_sym_COLON, + anon_sym_DASH_GT, + [68073] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2460), 1, anon_sym_as, - ACTIONS(2181), 1, + ACTIONS(2462), 1, anon_sym_COLON, - [57370] = 3, + [68083] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2978), 1, + ACTIONS(2295), 1, + anon_sym_COMMA, + STATE(1278), 1, + aux_sym_expression_list_repeat1, + [68093] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2464), 1, + anon_sym_as, + ACTIONS(2466), 1, anon_sym_COLON, - ACTIONS(2980), 1, - anon_sym_DASH_GT, - [57380] = 2, + [68103] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2982), 2, + ACTIONS(2424), 2, sym__newline, - sym__semicolon, - [57388] = 2, + anon_sym_SEMI, + [68111] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2984), 2, - sym__newline, - sym__semicolon, - [57396] = 2, + ACTIONS(2468), 1, + anon_sym_as, + ACTIONS(2470), 1, + anon_sym_COLON, + [68121] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2517), 2, - anon_sym_RPAREN, + ACTIONS(2918), 1, anon_sym_COMMA, - [57404] = 3, + ACTIONS(3235), 1, + anon_sym_RPAREN, + [68131] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2986), 1, + ACTIONS(3237), 1, anon_sym_COLON, - ACTIONS(2988), 1, + ACTIONS(3239), 1, anon_sym_DASH_GT, - [57414] = 2, + [68141] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(960), 2, - anon_sym_except, - anon_sym_finally, - [57422] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2990), 1, - sym_integer, - ACTIONS(2992), 1, - sym_float, - [57432] = 3, + ACTIONS(3241), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [68149] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2994), 1, + ACTIONS(3243), 1, anon_sym_COMMA, - STATE(1141), 1, + STATE(1484), 1, aux_sym_open_sequence_match_pattern_repeat1, - [57442] = 2, + [68159] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2996), 2, - anon_sym_COLON, - anon_sym_DASH_GT, - [57450] = 2, + ACTIONS(2703), 1, + anon_sym_LPAREN, + STATE(1513), 1, + sym_parameters, + [68169] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2998), 2, + ACTIONS(2984), 2, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACK, - [57458] = 2, + [68177] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3000), 2, - sym__newline, - sym__semicolon, - [57466] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3002), 1, + ACTIONS(3245), 1, sym_integer, - ACTIONS(3004), 1, + ACTIONS(3247), 1, sym_float, - [57476] = 3, + [68187] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2458), 1, - anon_sym_LPAREN, - STATE(1320), 1, - sym_parameters, - [57486] = 2, + ACTIONS(2931), 1, + sym_identifier, + STATE(1558), 1, + sym_match_keyword_pattern, + [68197] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3006), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [57494] = 2, + ACTIONS(3249), 1, + sym_identifier, + STATE(1581), 1, + sym_match_capture_pattern, + [68207] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2664), 2, - sym__newline, - sym__semicolon, - [57502] = 2, + ACTIONS(2091), 1, + anon_sym_DOT, + STATE(1478), 1, + aux_sym_match_value_pattern_repeat1, + [68217] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3008), 2, + ACTIONS(3251), 2, anon_sym_COMMA, anon_sym_RBRACE, - [57510] = 2, + [68225] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3010), 2, + ACTIONS(3107), 1, + anon_sym_RBRACE, + ACTIONS(3253), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [57518] = 2, + [68235] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(956), 2, - anon_sym_except, - anon_sym_finally, - [57526] = 2, + ACTIONS(2428), 1, + anon_sym_as, + ACTIONS(2432), 1, + anon_sym_COLON, + [68245] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3012), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [57534] = 2, + ACTIONS(3255), 1, + sym_integer, + ACTIONS(3257), 1, + sym_float, + [68255] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2868), 2, - anon_sym_RPAREN, + ACTIONS(2232), 1, anon_sym_COMMA, - [57542] = 3, + STATE(1251), 1, + aux_sym_expression_list_repeat1, + [68265] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1893), 1, - anon_sym_COMMA, - STATE(986), 1, - aux_sym_expression_list_repeat1, - [57552] = 3, + ACTIONS(3259), 2, + sym__newline, + anon_sym_SEMI, + [68273] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2630), 1, + ACTIONS(1992), 1, + anon_sym_RBRACE, + ACTIONS(3261), 1, anon_sym_COMMA, - ACTIONS(3014), 1, + [68283] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2601), 2, anon_sym_RPAREN, - [57562] = 2, + anon_sym_COMMA, + [68291] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2239), 2, + ACTIONS(3263), 2, + anon_sym_COLON, + anon_sym_DASH_GT, + [68299] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2404), 2, sym__newline, - sym__semicolon, - [57570] = 2, + anon_sym_SEMI, + [68307] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3016), 2, + ACTIONS(3112), 2, anon_sym_COMMA, anon_sym_RBRACE, - [57578] = 3, + [68315] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2261), 1, - anon_sym_as, - ACTIONS(2263), 1, - anon_sym_COLON, - [57588] = 2, + ACTIONS(3265), 1, + sym_integer, + ACTIONS(3267), 1, + sym_float, + [68325] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2189), 2, - sym__newline, - sym__semicolon, - [57596] = 2, + ACTIONS(3269), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [68333] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3018), 2, - sym__newline, - sym__semicolon, - [57604] = 3, + ACTIONS(2703), 1, + anon_sym_LPAREN, + STATE(1546), 1, + sym_parameters, + [68343] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3020), 1, + ACTIONS(3271), 2, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(1234), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [57614] = 2, + [68351] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2703), 1, + anon_sym_LPAREN, + STATE(1582), 1, + sym_parameters, + [68361] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2406), 2, + sym__newline, + anon_sym_SEMI, + [68369] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(986), 2, + ACTIONS(1081), 2, anon_sym_except, anon_sym_finally, - [57622] = 2, + [68377] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3022), 2, + ACTIONS(3273), 2, anon_sym_COMMA, anon_sym_RBRACE, - [57630] = 2, + [68385] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3275), 1, + anon_sym_COLON, + ACTIONS(3277), 1, + anon_sym_DASH_GT, + [68395] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3024), 1, + ACTIONS(3279), 1, anon_sym_COLON, - [57637] = 2, + [68402] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3026), 1, + ACTIONS(3281), 1, anon_sym_RPAREN, - [57644] = 2, + [68409] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3028), 1, - anon_sym_RBRACE, - [57651] = 2, + ACTIONS(3283), 1, + sym_identifier, + [68416] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1792), 1, - anon_sym_RBRACE, - [57658] = 2, + ACTIONS(3285), 1, + anon_sym_RPAREN, + [68423] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3030), 1, + ACTIONS(2705), 1, anon_sym_RBRACE, - [57665] = 2, + [68430] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3032), 1, - anon_sym_RBRACK, - [57672] = 2, + ACTIONS(3287), 1, + anon_sym_COLON, + [68437] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3034), 1, + ACTIONS(3289), 1, + anon_sym_COLON, + [68444] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3291), 1, + anon_sym_COLON, + [68451] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3293), 1, anon_sym_RPAREN, - [57679] = 2, + [68458] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3036), 1, - anon_sym_EQ, - [57686] = 2, + ACTIONS(3295), 1, + anon_sym_RPAREN, + [68465] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3038), 1, + ACTIONS(3297), 1, + anon_sym_COLON, + [68472] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3299), 1, anon_sym_RBRACK, - [57693] = 2, + [68479] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3301), 1, + anon_sym_for, + [68486] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3040), 1, + ACTIONS(3303), 1, anon_sym_RBRACE, - [57700] = 2, + [68493] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3305), 1, + anon_sym_COLON, + [68500] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3042), 1, + ACTIONS(3307), 1, anon_sym_COLON, - [57707] = 2, + [68507] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3309), 1, + sym_identifier, + [68514] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3044), 1, + ACTIONS(3311), 1, anon_sym_RBRACE, - [57714] = 2, + [68521] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3046), 1, + ACTIONS(3313), 1, anon_sym_COLON, - [57721] = 2, + [68528] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3048), 1, - sym_identifier, - [57728] = 2, + ACTIONS(3315), 1, + anon_sym_RBRACE, + [68535] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3050), 1, - anon_sym_in, - [57735] = 2, + ACTIONS(2535), 1, + anon_sym_COLON, + [68542] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3052), 1, - anon_sym_RPAREN, - [57742] = 2, + ACTIONS(3317), 1, + anon_sym_COLON, + [68549] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3054), 1, - anon_sym_RBRACK, - [57749] = 2, + ACTIONS(3319), 1, + sym_identifier, + [68556] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3056), 1, + ACTIONS(3321), 1, anon_sym_COLON, - [57756] = 2, + [68563] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3058), 1, - anon_sym_RBRACE, - [57763] = 2, + ACTIONS(3323), 1, + anon_sym_COLON, + [68570] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3060), 1, - anon_sym_RBRACE, - [57770] = 2, + ACTIONS(3325), 1, + anon_sym_COLON, + [68577] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3062), 1, - anon_sym_RPAREN, - [57777] = 2, + ACTIONS(3327), 1, + anon_sym_COLON, + [68584] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3064), 1, + ACTIONS(2537), 1, anon_sym_COLON, - [57784] = 2, + [68591] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2682), 1, - anon_sym_RBRACK, - [57791] = 2, + ACTIONS(963), 1, + anon_sym_STAR, + [68598] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3066), 1, - anon_sym_RBRACE, - [57798] = 2, + ACTIONS(3329), 1, + anon_sym_in, + [68605] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3068), 1, + ACTIONS(3331), 1, anon_sym_RPAREN, - [57805] = 2, + [68612] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2866), 1, - anon_sym_RBRACE, - [57812] = 2, + ACTIONS(3333), 1, + anon_sym_RBRACK, + [68619] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3070), 1, - sym_identifier, - [57819] = 2, + ACTIONS(3335), 1, + anon_sym_RPAREN, + [68626] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3072), 1, - sym_identifier, - [57826] = 2, + ACTIONS(3337), 1, + anon_sym_COLON, + [68633] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3074), 1, + ACTIONS(3339), 1, anon_sym_COLON, - [57833] = 2, + [68640] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3076), 1, + ACTIONS(3341), 1, + anon_sym_COLON, + [68647] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3343), 1, sym_identifier, - [57840] = 2, + [68654] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3078), 1, + ACTIONS(3345), 1, anon_sym_COLON, - [57847] = 2, + [68661] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3080), 1, - anon_sym_RPAREN, - [57854] = 2, + ACTIONS(3347), 1, + anon_sym_COLON, + [68668] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3082), 1, - anon_sym_in, - [57861] = 2, + ACTIONS(3349), 1, + anon_sym_COLON, + [68675] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3084), 1, - sym_identifier, - [57868] = 2, + ACTIONS(3227), 1, + anon_sym_RBRACE, + [68682] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3086), 1, - anon_sym_LPAREN, - [57875] = 2, + ACTIONS(3351), 1, + anon_sym_RBRACK, + [68689] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3088), 1, - anon_sym_import, - [57882] = 2, + ACTIONS(2543), 1, + anon_sym_COLON, + [68696] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3090), 1, - sym_identifier, - [57889] = 2, + ACTIONS(3353), 1, + anon_sym_RPAREN, + [68703] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2745), 1, - anon_sym_in, - [57896] = 2, + ACTIONS(3355), 1, + anon_sym_RBRACE, + [68710] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3092), 1, - anon_sym_COLON, - [57903] = 2, + ACTIONS(3357), 1, + anon_sym_RBRACK, + [68717] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3094), 1, - anon_sym_in, - [57910] = 2, + ACTIONS(3359), 1, + sym_identifier, + [68724] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3096), 1, + ACTIONS(3361), 1, anon_sym_COLON, - [57917] = 2, + [68731] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3098), 1, - anon_sym_RPAREN, - [57924] = 2, + ACTIONS(3363), 1, + anon_sym_RBRACE, + [68738] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3100), 1, - anon_sym_import, - [57931] = 2, + ACTIONS(3365), 1, + sym_identifier, + [68745] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2844), 1, + ACTIONS(3367), 1, + anon_sym_RBRACK, + [68752] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3369), 1, anon_sym_in, - [57938] = 2, + [68759] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(891), 1, - anon_sym_STAR, - [57945] = 2, + ACTIONS(3371), 1, + anon_sym_RPAREN, + [68766] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3102), 1, - anon_sym_COLON, - [57952] = 2, + ACTIONS(3373), 1, + sym_identifier, + [68773] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3104), 1, + ACTIONS(2539), 1, anon_sym_COLON, - [57959] = 2, + [68780] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3106), 1, + ACTIONS(3375), 1, + sym_identifier, + [68787] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3377), 1, anon_sym_COLON, - [57966] = 2, + [68794] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3108), 1, + ACTIONS(3379), 1, anon_sym_COLON, - [57973] = 2, + [68801] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3110), 1, - anon_sym_RBRACK, - [57980] = 2, + ACTIONS(3072), 1, + anon_sym_RBRACE, + [68808] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3112), 1, + ACTIONS(3381), 1, anon_sym_COLON, - [57987] = 2, + [68815] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3114), 1, + ACTIONS(3383), 1, anon_sym_RPAREN, - [57994] = 2, + [68822] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2311), 1, - anon_sym_COLON, - [58001] = 2, + ACTIONS(3385), 1, + anon_sym_RBRACE, + [68829] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3116), 1, - anon_sym_RBRACK, - [58008] = 2, + ACTIONS(3387), 1, + anon_sym_RBRACE, + [68836] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3118), 1, + ACTIONS(3389), 1, anon_sym_COLON, - [58015] = 2, + [68843] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3120), 1, - anon_sym_COLON, - [58022] = 2, + ACTIONS(3391), 1, + anon_sym_EQ, + [68850] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3122), 1, - anon_sym_RBRACK, - [58029] = 2, + ACTIONS(3393), 1, + sym_identifier, + [68857] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3124), 1, + ACTIONS(3395), 1, anon_sym_RBRACE, - [58036] = 2, + [68864] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2753), 1, - anon_sym_in, - [58043] = 2, + ACTIONS(3397), 1, + anon_sym_RBRACE, + [68871] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3126), 1, - anon_sym_COLON, - [58050] = 2, + ACTIONS(3399), 1, + sym_identifier, + [68878] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3128), 1, + ACTIONS(2722), 1, anon_sym_RBRACE, - [58057] = 2, + [68885] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2278), 1, - anon_sym_COLON, - [58064] = 2, + ACTIONS(3007), 1, + anon_sym_RBRACK, + [68892] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3130), 1, - anon_sym_RPAREN, - [58071] = 2, + ACTIONS(3401), 1, + anon_sym_import, + [68899] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3132), 1, - anon_sym_COLON, - [58078] = 2, + ACTIONS(3403), 1, + ts_builtin_sym_end, + [68906] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3134), 1, - anon_sym_COLON, - [58085] = 2, + ACTIONS(3405), 1, + anon_sym_RBRACK, + [68913] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3136), 1, - anon_sym_COLON, - [58092] = 2, + ACTIONS(3074), 1, + anon_sym_in, + [68920] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3138), 1, - anon_sym_COLON, - [58099] = 2, + ACTIONS(2337), 1, + anon_sym_EQ, + [68927] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3140), 1, - anon_sym_COLON, - [58106] = 2, + ACTIONS(3407), 1, + sym_identifier, + [68934] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2321), 1, - anon_sym_COLON, - [58113] = 2, + ACTIONS(2882), 1, + anon_sym_RBRACK, + [68941] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2767), 1, - anon_sym_RBRACK, - [58120] = 2, + ACTIONS(3146), 1, + anon_sym_in, + [68948] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3142), 1, + ACTIONS(1958), 1, anon_sym_RBRACE, - [58127] = 2, + [68955] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3144), 1, + ACTIONS(3409), 1, anon_sym_RBRACE, - [58134] = 2, + [68962] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3146), 1, - anon_sym_RBRACE, - [58141] = 2, + ACTIONS(3411), 1, + anon_sym_import, + [68969] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2786), 1, + ACTIONS(3413), 1, anon_sym_RBRACE, - [58148] = 2, + [68976] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3148), 1, + ACTIONS(3415), 1, anon_sym_COLON, - [58155] = 2, + [68983] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2613), 1, - anon_sym_RBRACE, - [58162] = 2, + ACTIONS(3417), 1, + sym_identifier, + [68990] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3150), 1, + ACTIONS(3419), 1, anon_sym_COLON, - [58169] = 2, + [68997] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3152), 1, - anon_sym_RBRACE, - [58176] = 2, + ACTIONS(2966), 1, + anon_sym_RBRACK, + [69004] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3154), 1, - anon_sym_RBRACE, - [58183] = 2, + ACTIONS(3421), 1, + anon_sym_COLON, + [69011] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3156), 1, - anon_sym_COLON, - [58190] = 2, + ACTIONS(3423), 1, + anon_sym_in, + [69018] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3158), 1, - anon_sym_COLON, - [58197] = 2, + ACTIONS(3099), 1, + anon_sym_in, + [69025] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3160), 1, + ACTIONS(3425), 1, anon_sym_COLON, - [58204] = 2, + [69032] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3162), 1, - anon_sym_RBRACK, - [58211] = 2, + ACTIONS(3427), 1, + anon_sym_in, + [69039] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3164), 1, + ACTIONS(3429), 1, anon_sym_RPAREN, - [58218] = 2, + [69046] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2808), 1, + ACTIONS(3431), 1, + anon_sym_COLON, + [69053] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3433), 1, anon_sym_RBRACK, - [58225] = 2, + [69060] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2532), 1, + ACTIONS(3435), 1, anon_sym_RBRACE, - [58232] = 2, + [69067] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3166), 1, - anon_sym_COLON, - [58239] = 2, + ACTIONS(3437), 1, + anon_sym_RBRACK, + [69074] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3168), 1, - anon_sym_COLON, - [58246] = 2, + ACTIONS(3439), 1, + anon_sym_LPAREN, + [69081] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3170), 1, - anon_sym_RPAREN, - [58253] = 2, + ACTIONS(3441), 1, + sym_identifier, + [69088] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3172), 1, + ACTIONS(3443), 1, anon_sym_COLON, - [58260] = 2, + [69095] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2129), 1, - anon_sym_EQ, - [58267] = 2, + ACTIONS(3445), 1, + anon_sym_RBRACE, + [69102] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2901), 1, - anon_sym_in, - [58274] = 2, + ACTIONS(3447), 1, + anon_sym_RPAREN, + [69109] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3174), 1, - sym_identifier, - [58281] = 2, + ACTIONS(1059), 1, + anon_sym_def, + [69116] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3176), 1, - anon_sym_COLON, - [58288] = 2, + ACTIONS(3449), 1, + anon_sym_RPAREN, + [69123] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3451), 1, + anon_sym_RBRACE, + [69130] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3178), 1, + ACTIONS(3453), 1, anon_sym_COLON, - [58295] = 2, + [69137] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3180), 1, - anon_sym_RPAREN, - [58302] = 2, + ACTIONS(3455), 1, + anon_sym_COLON, + [69144] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3182), 1, - sym_identifier, - [58309] = 2, + ACTIONS(3457), 1, + anon_sym_COLON, + [69151] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3184), 1, + ACTIONS(3459), 1, sym_identifier, - [58316] = 2, + [69158] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3186), 1, - anon_sym_in, - [58323] = 2, + ACTIONS(3142), 1, + anon_sym_RBRACE, + [69165] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3188), 1, - sym_identifier, - [58330] = 2, + ACTIONS(2950), 1, + anon_sym_RBRACK, + [69172] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(978), 1, - anon_sym_def, - [58337] = 2, + ACTIONS(3461), 1, + anon_sym_RPAREN, + [69179] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3190), 1, + ACTIONS(3463), 1, sym_identifier, - [58344] = 2, + [69186] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3192), 1, + ACTIONS(3465), 1, sym_identifier, - [58351] = 2, + [69193] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3194), 1, - ts_builtin_sym_end, - [58358] = 2, + ACTIONS(3467), 1, + anon_sym_COLON, + [69200] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3196), 1, - anon_sym_import, - [58365] = 2, + ACTIONS(3469), 1, + sym_identifier, + [69207] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2346), 1, - anon_sym_COLON, - [58372] = 2, + ACTIONS(3471), 1, + anon_sym_RBRACE, + [69214] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3198), 1, - sym_identifier, - [58379] = 2, + ACTIONS(3473), 1, + anon_sym_in, + [69221] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3200), 1, - sym_identifier, - [58386] = 2, + ACTIONS(3475), 1, + anon_sym_RPAREN, + [69228] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3202), 1, - sym_identifier, - [58393] = 2, + ACTIONS(3477), 1, + anon_sym_RPAREN, + [69235] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3204), 1, + ACTIONS(3479), 1, sym_identifier, - [58400] = 2, + [69242] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(903), 1, + ACTIONS(985), 1, anon_sym_STAR, - [58407] = 2, + [69249] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3206), 1, - anon_sym_COLON, - [58414] = 2, + ACTIONS(3481), 1, + anon_sym_RBRACE, + [69256] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3208), 1, - anon_sym_RBRACE, - [58421] = 2, + ACTIONS(3483), 1, + anon_sym_RPAREN, + [69263] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3210), 1, - anon_sym_for, - [58428] = 2, + ACTIONS(3154), 1, + anon_sym_in, + [69270] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3212), 1, - anon_sym_RPAREN, - [58435] = 2, + ACTIONS(3485), 1, + anon_sym_RBRACK, + [69277] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3214), 1, - sym_identifier, - [58442] = 2, + ACTIONS(3487), 1, + anon_sym_import, + [69284] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3489), 1, + anon_sym_COLON, + [69291] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3491), 1, + anon_sym_COLON, + [69298] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3493), 1, + anon_sym_COLON, + [69305] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3216), 1, + ACTIONS(3495), 1, sym_identifier, - [58449] = 2, + [69312] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3218), 1, + ACTIONS(3497), 1, sym_identifier, - [58456] = 2, + [69319] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3220), 1, - anon_sym_COLON, - [58463] = 2, + ACTIONS(3499), 1, + anon_sym_RBRACE, + [69326] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2842), 1, + ACTIONS(3158), 1, anon_sym_in, - [58470] = 2, + [69333] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(972), 1, + ACTIONS(1089), 1, anon_sym_def, - [58477] = 2, + [69340] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3222), 1, - anon_sym_COLON, - [58484] = 2, + ACTIONS(3501), 1, + anon_sym_RBRACE, + [69347] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2870), 1, + ACTIONS(3160), 1, anon_sym_in, - [58491] = 2, + [69354] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3224), 1, - anon_sym_COLON, - [58498] = 2, + ACTIONS(3503), 1, + anon_sym_in, + [69361] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2914), 1, + ACTIONS(3505), 1, anon_sym_RBRACE, + [69368] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3507), 1, + anon_sym_COLON, }; static const uint32_t ts_small_parse_table_map[] = { - [SMALL_STATE(152)] = 0, - [SMALL_STATE(153)] = 117, - [SMALL_STATE(154)] = 241, - [SMALL_STATE(155)] = 367, - [SMALL_STATE(156)] = 489, - [SMALL_STATE(157)] = 613, - [SMALL_STATE(158)] = 735, - [SMALL_STATE(159)] = 845, - [SMALL_STATE(160)] = 967, - [SMALL_STATE(161)] = 1077, - [SMALL_STATE(162)] = 1198, - [SMALL_STATE(163)] = 1309, - [SMALL_STATE(164)] = 1420, - [SMALL_STATE(165)] = 1541, - [SMALL_STATE(166)] = 1652, - [SMALL_STATE(167)] = 1773, - [SMALL_STATE(168)] = 1881, - [SMALL_STATE(169)] = 1993, - [SMALL_STATE(170)] = 2107, - [SMALL_STATE(171)] = 2215, - [SMALL_STATE(172)] = 2327, - [SMALL_STATE(173)] = 2437, - [SMALL_STATE(174)] = 2547, - [SMALL_STATE(175)] = 2659, - [SMALL_STATE(176)] = 2771, - [SMALL_STATE(177)] = 2879, - [SMALL_STATE(178)] = 2991, - [SMALL_STATE(179)] = 3103, - [SMALL_STATE(180)] = 3212, - [SMALL_STATE(181)] = 3321, - [SMALL_STATE(182)] = 3426, - [SMALL_STATE(183)] = 3535, - [SMALL_STATE(184)] = 3644, - [SMALL_STATE(185)] = 3753, - [SMALL_STATE(186)] = 3862, - [SMALL_STATE(187)] = 3971, - [SMALL_STATE(188)] = 4080, - [SMALL_STATE(189)] = 4189, - [SMALL_STATE(190)] = 4298, - [SMALL_STATE(191)] = 4407, - [SMALL_STATE(192)] = 4518, - [SMALL_STATE(193)] = 4623, - [SMALL_STATE(194)] = 4728, - [SMALL_STATE(195)] = 4837, - [SMALL_STATE(196)] = 4946, - [SMALL_STATE(197)] = 5051, - [SMALL_STATE(198)] = 5160, - [SMALL_STATE(199)] = 5269, - [SMALL_STATE(200)] = 5382, - [SMALL_STATE(201)] = 5491, - [SMALL_STATE(202)] = 5600, - [SMALL_STATE(203)] = 5711, - [SMALL_STATE(204)] = 5820, - [SMALL_STATE(205)] = 5929, - [SMALL_STATE(206)] = 6038, - [SMALL_STATE(207)] = 6149, - [SMALL_STATE(208)] = 6260, - [SMALL_STATE(209)] = 6373, - [SMALL_STATE(210)] = 6482, - [SMALL_STATE(211)] = 6591, - [SMALL_STATE(212)] = 6700, - [SMALL_STATE(213)] = 6806, - [SMALL_STATE(214)] = 6912, - [SMALL_STATE(215)] = 7018, - [SMALL_STATE(216)] = 7124, - [SMALL_STATE(217)] = 7218, - [SMALL_STATE(218)] = 7324, - [SMALL_STATE(219)] = 7430, - [SMALL_STATE(220)] = 7536, - [SMALL_STATE(221)] = 7642, - [SMALL_STATE(222)] = 7747, - [SMALL_STATE(223)] = 7852, - [SMALL_STATE(224)] = 7957, - [SMALL_STATE(225)] = 8060, - [SMALL_STATE(226)] = 8165, - [SMALL_STATE(227)] = 8268, - [SMALL_STATE(228)] = 8373, - [SMALL_STATE(229)] = 8475, - [SMALL_STATE(230)] = 8577, - [SMALL_STATE(231)] = 8679, - [SMALL_STATE(232)] = 8781, - [SMALL_STATE(233)] = 8883, - [SMALL_STATE(234)] = 8985, - [SMALL_STATE(235)] = 9087, - [SMALL_STATE(236)] = 9189, - [SMALL_STATE(237)] = 9291, - [SMALL_STATE(238)] = 9393, - [SMALL_STATE(239)] = 9495, - [SMALL_STATE(240)] = 9568, - [SMALL_STATE(241)] = 9669, - [SMALL_STATE(242)] = 9770, - [SMALL_STATE(243)] = 9871, - [SMALL_STATE(244)] = 9970, - [SMALL_STATE(245)] = 10031, - [SMALL_STATE(246)] = 10092, - [SMALL_STATE(247)] = 10191, - [SMALL_STATE(248)] = 10292, - [SMALL_STATE(249)] = 10393, - [SMALL_STATE(250)] = 10494, - [SMALL_STATE(251)] = 10567, - [SMALL_STATE(252)] = 10668, - [SMALL_STATE(253)] = 10741, - [SMALL_STATE(254)] = 10840, - [SMALL_STATE(255)] = 10941, - [SMALL_STATE(256)] = 11014, - [SMALL_STATE(257)] = 11115, - [SMALL_STATE(258)] = 11188, - [SMALL_STATE(259)] = 11289, - [SMALL_STATE(260)] = 11362, - [SMALL_STATE(261)] = 11435, - [SMALL_STATE(262)] = 11508, - [SMALL_STATE(263)] = 11609, - [SMALL_STATE(264)] = 11710, - [SMALL_STATE(265)] = 11811, - [SMALL_STATE(266)] = 11907, - [SMALL_STATE(267)] = 12003, - [SMALL_STATE(268)] = 12101, - [SMALL_STATE(269)] = 12197, - [SMALL_STATE(270)] = 12295, - [SMALL_STATE(271)] = 12391, - [SMALL_STATE(272)] = 12487, - [SMALL_STATE(273)] = 12583, - [SMALL_STATE(274)] = 12679, - [SMALL_STATE(275)] = 12775, - [SMALL_STATE(276)] = 12873, - [SMALL_STATE(277)] = 12971, - [SMALL_STATE(278)] = 13069, - [SMALL_STATE(279)] = 13167, - [SMALL_STATE(280)] = 13263, - [SMALL_STATE(281)] = 13359, - [SMALL_STATE(282)] = 13457, - [SMALL_STATE(283)] = 13553, - [SMALL_STATE(284)] = 13651, - [SMALL_STATE(285)] = 13747, - [SMALL_STATE(286)] = 13845, - [SMALL_STATE(287)] = 13941, - [SMALL_STATE(288)] = 14036, - [SMALL_STATE(289)] = 14131, - [SMALL_STATE(290)] = 14194, - [SMALL_STATE(291)] = 14263, - [SMALL_STATE(292)] = 14332, - [SMALL_STATE(293)] = 14395, - [SMALL_STATE(294)] = 14458, - [SMALL_STATE(295)] = 14517, - [SMALL_STATE(296)] = 14576, - [SMALL_STATE(297)] = 14635, - [SMALL_STATE(298)] = 14694, - [SMALL_STATE(299)] = 14767, - [SMALL_STATE(300)] = 14840, - [SMALL_STATE(301)] = 14909, - [SMALL_STATE(302)] = 14968, - [SMALL_STATE(303)] = 15037, - [SMALL_STATE(304)] = 15132, - [SMALL_STATE(305)] = 15201, - [SMALL_STATE(306)] = 15260, - [SMALL_STATE(307)] = 15319, - [SMALL_STATE(308)] = 15378, - [SMALL_STATE(309)] = 15441, - [SMALL_STATE(310)] = 15510, - [SMALL_STATE(311)] = 15579, - [SMALL_STATE(312)] = 15638, - [SMALL_STATE(313)] = 15707, - [SMALL_STATE(314)] = 15766, - [SMALL_STATE(315)] = 15858, - [SMALL_STATE(316)] = 15950, - [SMALL_STATE(317)] = 16042, - [SMALL_STATE(318)] = 16134, - [SMALL_STATE(319)] = 16226, - [SMALL_STATE(320)] = 16318, - [SMALL_STATE(321)] = 16410, - [SMALL_STATE(322)] = 16502, - [SMALL_STATE(323)] = 16594, - [SMALL_STATE(324)] = 16686, - [SMALL_STATE(325)] = 16778, - [SMALL_STATE(326)] = 16870, - [SMALL_STATE(327)] = 16962, - [SMALL_STATE(328)] = 17054, - [SMALL_STATE(329)] = 17146, - [SMALL_STATE(330)] = 17238, - [SMALL_STATE(331)] = 17330, - [SMALL_STATE(332)] = 17422, - [SMALL_STATE(333)] = 17514, - [SMALL_STATE(334)] = 17606, - [SMALL_STATE(335)] = 17698, - [SMALL_STATE(336)] = 17790, - [SMALL_STATE(337)] = 17882, - [SMALL_STATE(338)] = 17974, - [SMALL_STATE(339)] = 18066, - [SMALL_STATE(340)] = 18158, - [SMALL_STATE(341)] = 18250, - [SMALL_STATE(342)] = 18342, - [SMALL_STATE(343)] = 18434, - [SMALL_STATE(344)] = 18526, - [SMALL_STATE(345)] = 18618, - [SMALL_STATE(346)] = 18710, - [SMALL_STATE(347)] = 18802, - [SMALL_STATE(348)] = 18894, - [SMALL_STATE(349)] = 18986, - [SMALL_STATE(350)] = 19078, - [SMALL_STATE(351)] = 19170, - [SMALL_STATE(352)] = 19262, - [SMALL_STATE(353)] = 19354, - [SMALL_STATE(354)] = 19446, - [SMALL_STATE(355)] = 19538, - [SMALL_STATE(356)] = 19630, - [SMALL_STATE(357)] = 19722, - [SMALL_STATE(358)] = 19814, - [SMALL_STATE(359)] = 19906, - [SMALL_STATE(360)] = 19998, - [SMALL_STATE(361)] = 20090, - [SMALL_STATE(362)] = 20182, - [SMALL_STATE(363)] = 20274, - [SMALL_STATE(364)] = 20366, - [SMALL_STATE(365)] = 20458, - [SMALL_STATE(366)] = 20550, - [SMALL_STATE(367)] = 20642, - [SMALL_STATE(368)] = 20734, - [SMALL_STATE(369)] = 20826, - [SMALL_STATE(370)] = 20890, - [SMALL_STATE(371)] = 20982, - [SMALL_STATE(372)] = 21074, - [SMALL_STATE(373)] = 21166, - [SMALL_STATE(374)] = 21258, - [SMALL_STATE(375)] = 21350, - [SMALL_STATE(376)] = 21442, - [SMALL_STATE(377)] = 21534, - [SMALL_STATE(378)] = 21626, - [SMALL_STATE(379)] = 21718, - [SMALL_STATE(380)] = 21810, - [SMALL_STATE(381)] = 21902, - [SMALL_STATE(382)] = 21972, + [SMALL_STATE(156)] = 0, + [SMALL_STATE(157)] = 110, + [SMALL_STATE(158)] = 232, + [SMALL_STATE(159)] = 342, + [SMALL_STATE(160)] = 466, + [SMALL_STATE(161)] = 588, + [SMALL_STATE(162)] = 714, + [SMALL_STATE(163)] = 838, + [SMALL_STATE(164)] = 960, + [SMALL_STATE(165)] = 1081, + [SMALL_STATE(166)] = 1202, + [SMALL_STATE(167)] = 1323, + [SMALL_STATE(168)] = 1444, + [SMALL_STATE(169)] = 1558, + [SMALL_STATE(170)] = 1672, + [SMALL_STATE(171)] = 1781, + [SMALL_STATE(172)] = 1890, + [SMALL_STATE(173)] = 1999, + [SMALL_STATE(174)] = 2109, + [SMALL_STATE(175)] = 2221, + [SMALL_STATE(176)] = 2329, + [SMALL_STATE(177)] = 2441, + [SMALL_STATE(178)] = 2553, + [SMALL_STATE(179)] = 2661, + [SMALL_STATE(180)] = 2769, + [SMALL_STATE(181)] = 2877, + [SMALL_STATE(182)] = 2987, + [SMALL_STATE(183)] = 3099, + [SMALL_STATE(184)] = 3213, + [SMALL_STATE(185)] = 3325, + [SMALL_STATE(186)] = 3433, + [SMALL_STATE(187)] = 3541, + [SMALL_STATE(188)] = 3653, + [SMALL_STATE(189)] = 3765, + [SMALL_STATE(190)] = 3874, + [SMALL_STATE(191)] = 3979, + [SMALL_STATE(192)] = 4088, + [SMALL_STATE(193)] = 4193, + [SMALL_STATE(194)] = 4302, + [SMALL_STATE(195)] = 4413, + [SMALL_STATE(196)] = 4522, + [SMALL_STATE(197)] = 4631, + [SMALL_STATE(198)] = 4740, + [SMALL_STATE(199)] = 4849, + [SMALL_STATE(200)] = 4962, + [SMALL_STATE(201)] = 5071, + [SMALL_STATE(202)] = 5180, + [SMALL_STATE(203)] = 5289, + [SMALL_STATE(204)] = 5398, + [SMALL_STATE(205)] = 5503, + [SMALL_STATE(206)] = 5608, + [SMALL_STATE(207)] = 5719, + [SMALL_STATE(208)] = 5828, + [SMALL_STATE(209)] = 5939, + [SMALL_STATE(210)] = 6048, + [SMALL_STATE(211)] = 6161, + [SMALL_STATE(212)] = 6274, + [SMALL_STATE(213)] = 6383, + [SMALL_STATE(214)] = 6492, + [SMALL_STATE(215)] = 6601, + [SMALL_STATE(216)] = 6710, + [SMALL_STATE(217)] = 6819, + [SMALL_STATE(218)] = 6928, + [SMALL_STATE(219)] = 7039, + [SMALL_STATE(220)] = 7148, + [SMALL_STATE(221)] = 7257, + [SMALL_STATE(222)] = 7366, + [SMALL_STATE(223)] = 7475, + [SMALL_STATE(224)] = 7584, + [SMALL_STATE(225)] = 7693, + [SMALL_STATE(226)] = 7802, + [SMALL_STATE(227)] = 7913, + [SMALL_STATE(228)] = 8022, + [SMALL_STATE(229)] = 8131, + [SMALL_STATE(230)] = 8242, + [SMALL_STATE(231)] = 8351, + [SMALL_STATE(232)] = 8460, + [SMALL_STATE(233)] = 8566, + [SMALL_STATE(234)] = 8672, + [SMALL_STATE(235)] = 8778, + [SMALL_STATE(236)] = 8884, + [SMALL_STATE(237)] = 8990, + [SMALL_STATE(238)] = 9096, + [SMALL_STATE(239)] = 9202, + [SMALL_STATE(240)] = 9296, + [SMALL_STATE(241)] = 9402, + [SMALL_STATE(242)] = 9508, + [SMALL_STATE(243)] = 9611, + [SMALL_STATE(244)] = 9716, + [SMALL_STATE(245)] = 9821, + [SMALL_STATE(246)] = 9924, + [SMALL_STATE(247)] = 10029, + [SMALL_STATE(248)] = 10134, + [SMALL_STATE(249)] = 10239, + [SMALL_STATE(250)] = 10341, + [SMALL_STATE(251)] = 10443, + [SMALL_STATE(252)] = 10545, + [SMALL_STATE(253)] = 10647, + [SMALL_STATE(254)] = 10749, + [SMALL_STATE(255)] = 10851, + [SMALL_STATE(256)] = 10953, + [SMALL_STATE(257)] = 11055, + [SMALL_STATE(258)] = 11157, + [SMALL_STATE(259)] = 11259, + [SMALL_STATE(260)] = 11361, + [SMALL_STATE(261)] = 11463, + [SMALL_STATE(262)] = 11565, + [SMALL_STATE(263)] = 11667, + [SMALL_STATE(264)] = 11769, + [SMALL_STATE(265)] = 11870, + [SMALL_STATE(266)] = 11971, + [SMALL_STATE(267)] = 12044, + [SMALL_STATE(268)] = 12117, + [SMALL_STATE(269)] = 12190, + [SMALL_STATE(270)] = 12289, + [SMALL_STATE(271)] = 12390, + [SMALL_STATE(272)] = 12491, + [SMALL_STATE(273)] = 12592, + [SMALL_STATE(274)] = 12693, + [SMALL_STATE(275)] = 12792, + [SMALL_STATE(276)] = 12865, + [SMALL_STATE(277)] = 12966, + [SMALL_STATE(278)] = 13067, + [SMALL_STATE(279)] = 13168, + [SMALL_STATE(280)] = 13241, + [SMALL_STATE(281)] = 13314, + [SMALL_STATE(282)] = 13415, + [SMALL_STATE(283)] = 13514, + [SMALL_STATE(284)] = 13587, + [SMALL_STATE(285)] = 13688, + [SMALL_STATE(286)] = 13789, + [SMALL_STATE(287)] = 13890, + [SMALL_STATE(288)] = 13963, + [SMALL_STATE(289)] = 14061, + [SMALL_STATE(290)] = 14157, + [SMALL_STATE(291)] = 14253, + [SMALL_STATE(292)] = 14349, + [SMALL_STATE(293)] = 14445, + [SMALL_STATE(294)] = 14541, + [SMALL_STATE(295)] = 14601, + [SMALL_STATE(296)] = 14699, + [SMALL_STATE(297)] = 14795, + [SMALL_STATE(298)] = 14891, + [SMALL_STATE(299)] = 14989, + [SMALL_STATE(300)] = 15087, + [SMALL_STATE(301)] = 15183, + [SMALL_STATE(302)] = 15279, + [SMALL_STATE(303)] = 15375, + [SMALL_STATE(304)] = 15471, + [SMALL_STATE(305)] = 15569, + [SMALL_STATE(306)] = 15667, + [SMALL_STATE(307)] = 15763, + [SMALL_STATE(308)] = 15823, + [SMALL_STATE(309)] = 15921, + [SMALL_STATE(310)] = 16017, + [SMALL_STATE(311)] = 16115, + [SMALL_STATE(312)] = 16213, + [SMALL_STATE(313)] = 16282, + [SMALL_STATE(314)] = 16341, + [SMALL_STATE(315)] = 16400, + [SMALL_STATE(316)] = 16495, + [SMALL_STATE(317)] = 16564, + [SMALL_STATE(318)] = 16623, + [SMALL_STATE(319)] = 16682, + [SMALL_STATE(320)] = 16751, + [SMALL_STATE(321)] = 16810, + [SMALL_STATE(322)] = 16879, + [SMALL_STATE(323)] = 16948, + [SMALL_STATE(324)] = 17043, + [SMALL_STATE(325)] = 17116, + [SMALL_STATE(326)] = 17175, + [SMALL_STATE(327)] = 17244, + [SMALL_STATE(328)] = 17313, + [SMALL_STATE(329)] = 17376, + [SMALL_STATE(330)] = 17439, + [SMALL_STATE(331)] = 17502, + [SMALL_STATE(332)] = 17565, + [SMALL_STATE(333)] = 17624, + [SMALL_STATE(334)] = 17693, + [SMALL_STATE(335)] = 17752, + [SMALL_STATE(336)] = 17811, + [SMALL_STATE(337)] = 17870, + [SMALL_STATE(338)] = 17965, + [SMALL_STATE(339)] = 18038, + [SMALL_STATE(340)] = 18130, + [SMALL_STATE(341)] = 18222, + [SMALL_STATE(342)] = 18314, + [SMALL_STATE(343)] = 18406, + [SMALL_STATE(344)] = 18498, + [SMALL_STATE(345)] = 18590, + [SMALL_STATE(346)] = 18682, + [SMALL_STATE(347)] = 18774, + [SMALL_STATE(348)] = 18866, + [SMALL_STATE(349)] = 18958, + [SMALL_STATE(350)] = 19050, + [SMALL_STATE(351)] = 19142, + [SMALL_STATE(352)] = 19234, + [SMALL_STATE(353)] = 19326, + [SMALL_STATE(354)] = 19418, + [SMALL_STATE(355)] = 19482, + [SMALL_STATE(356)] = 19574, + [SMALL_STATE(357)] = 19666, + [SMALL_STATE(358)] = 19758, + [SMALL_STATE(359)] = 19850, + [SMALL_STATE(360)] = 19942, + [SMALL_STATE(361)] = 20034, + [SMALL_STATE(362)] = 20126, + [SMALL_STATE(363)] = 20218, + [SMALL_STATE(364)] = 20310, + [SMALL_STATE(365)] = 20402, + [SMALL_STATE(366)] = 20494, + [SMALL_STATE(367)] = 20586, + [SMALL_STATE(368)] = 20656, + [SMALL_STATE(369)] = 20748, + [SMALL_STATE(370)] = 20840, + [SMALL_STATE(371)] = 20932, + [SMALL_STATE(372)] = 21024, + [SMALL_STATE(373)] = 21116, + [SMALL_STATE(374)] = 21208, + [SMALL_STATE(375)] = 21300, + [SMALL_STATE(376)] = 21392, + [SMALL_STATE(377)] = 21484, + [SMALL_STATE(378)] = 21576, + [SMALL_STATE(379)] = 21668, + [SMALL_STATE(380)] = 21760, + [SMALL_STATE(381)] = 21852, + [SMALL_STATE(382)] = 21944, [SMALL_STATE(383)] = 22036, [SMALL_STATE(384)] = 22128, - [SMALL_STATE(385)] = 22220, - [SMALL_STATE(386)] = 22312, - [SMALL_STATE(387)] = 22404, - [SMALL_STATE(388)] = 22496, - [SMALL_STATE(389)] = 22588, + [SMALL_STATE(385)] = 22222, + [SMALL_STATE(386)] = 22314, + [SMALL_STATE(387)] = 22406, + [SMALL_STATE(388)] = 22498, + [SMALL_STATE(389)] = 22590, [SMALL_STATE(390)] = 22682, - [SMALL_STATE(391)] = 22743, - [SMALL_STATE(392)] = 22800, - [SMALL_STATE(393)] = 22857, - [SMALL_STATE(394)] = 22914, - [SMALL_STATE(395)] = 22971, - [SMALL_STATE(396)] = 23028, - [SMALL_STATE(397)] = 23085, - [SMALL_STATE(398)] = 23152, - [SMALL_STATE(399)] = 23209, - [SMALL_STATE(400)] = 23266, - [SMALL_STATE(401)] = 23323, - [SMALL_STATE(402)] = 23380, - [SMALL_STATE(403)] = 23437, - [SMALL_STATE(404)] = 23494, - [SMALL_STATE(405)] = 23551, - [SMALL_STATE(406)] = 23608, - [SMALL_STATE(407)] = 23665, - [SMALL_STATE(408)] = 23722, - [SMALL_STATE(409)] = 23779, - [SMALL_STATE(410)] = 23840, - [SMALL_STATE(411)] = 23897, - [SMALL_STATE(412)] = 23954, - [SMALL_STATE(413)] = 24015, - [SMALL_STATE(414)] = 24072, - [SMALL_STATE(415)] = 24133, - [SMALL_STATE(416)] = 24193, - [SMALL_STATE(417)] = 24257, - [SMALL_STATE(418)] = 24313, - [SMALL_STATE(419)] = 24373, - [SMALL_STATE(420)] = 24429, - [SMALL_STATE(421)] = 24489, - [SMALL_STATE(422)] = 24549, - [SMALL_STATE(423)] = 24605, - [SMALL_STATE(424)] = 24697, - [SMALL_STATE(425)] = 24757, - [SMALL_STATE(426)] = 24817, - [SMALL_STATE(427)] = 24877, - [SMALL_STATE(428)] = 24937, - [SMALL_STATE(429)] = 24993, - [SMALL_STATE(430)] = 25057, - [SMALL_STATE(431)] = 25117, - [SMALL_STATE(432)] = 25177, - [SMALL_STATE(433)] = 25237, - [SMALL_STATE(434)] = 25293, - [SMALL_STATE(435)] = 25385, - [SMALL_STATE(436)] = 25445, - [SMALL_STATE(437)] = 25505, - [SMALL_STATE(438)] = 25565, - [SMALL_STATE(439)] = 25625, - [SMALL_STATE(440)] = 25681, - [SMALL_STATE(441)] = 25745, - [SMALL_STATE(442)] = 25839, - [SMALL_STATE(443)] = 25903, - [SMALL_STATE(444)] = 25959, - [SMALL_STATE(445)] = 26015, - [SMALL_STATE(446)] = 26075, - [SMALL_STATE(447)] = 26136, - [SMALL_STATE(448)] = 26227, - [SMALL_STATE(449)] = 26318, - [SMALL_STATE(450)] = 26409, - [SMALL_STATE(451)] = 26464, - [SMALL_STATE(452)] = 26525, - [SMALL_STATE(453)] = 26586, - [SMALL_STATE(454)] = 26641, - [SMALL_STATE(455)] = 26696, - [SMALL_STATE(456)] = 26751, - [SMALL_STATE(457)] = 26842, - [SMALL_STATE(458)] = 26897, - [SMALL_STATE(459)] = 26988, - [SMALL_STATE(460)] = 27049, - [SMALL_STATE(461)] = 27104, - [SMALL_STATE(462)] = 27159, - [SMALL_STATE(463)] = 27214, - [SMALL_STATE(464)] = 27269, - [SMALL_STATE(465)] = 27324, - [SMALL_STATE(466)] = 27379, - [SMALL_STATE(467)] = 27434, - [SMALL_STATE(468)] = 27525, - [SMALL_STATE(469)] = 27579, - [SMALL_STATE(470)] = 27633, - [SMALL_STATE(471)] = 27687, - [SMALL_STATE(472)] = 27741, - [SMALL_STATE(473)] = 27795, - [SMALL_STATE(474)] = 27849, - [SMALL_STATE(475)] = 27903, - [SMALL_STATE(476)] = 27957, - [SMALL_STATE(477)] = 28011, - [SMALL_STATE(478)] = 28065, - [SMALL_STATE(479)] = 28119, - [SMALL_STATE(480)] = 28173, - [SMALL_STATE(481)] = 28227, - [SMALL_STATE(482)] = 28281, - [SMALL_STATE(483)] = 28369, - [SMALL_STATE(484)] = 28423, - [SMALL_STATE(485)] = 28477, - [SMALL_STATE(486)] = 28531, - [SMALL_STATE(487)] = 28585, - [SMALL_STATE(488)] = 28639, - [SMALL_STATE(489)] = 28693, - [SMALL_STATE(490)] = 28747, - [SMALL_STATE(491)] = 28801, - [SMALL_STATE(492)] = 28855, - [SMALL_STATE(493)] = 28909, - [SMALL_STATE(494)] = 28963, - [SMALL_STATE(495)] = 29017, - [SMALL_STATE(496)] = 29071, - [SMALL_STATE(497)] = 29125, - [SMALL_STATE(498)] = 29179, - [SMALL_STATE(499)] = 29233, - [SMALL_STATE(500)] = 29287, - [SMALL_STATE(501)] = 29341, - [SMALL_STATE(502)] = 29395, - [SMALL_STATE(503)] = 29449, - [SMALL_STATE(504)] = 29503, - [SMALL_STATE(505)] = 29591, - [SMALL_STATE(506)] = 29645, - [SMALL_STATE(507)] = 29699, - [SMALL_STATE(508)] = 29753, - [SMALL_STATE(509)] = 29807, - [SMALL_STATE(510)] = 29861, - [SMALL_STATE(511)] = 29915, - [SMALL_STATE(512)] = 29969, - [SMALL_STATE(513)] = 30023, - [SMALL_STATE(514)] = 30077, - [SMALL_STATE(515)] = 30131, - [SMALL_STATE(516)] = 30185, - [SMALL_STATE(517)] = 30239, - [SMALL_STATE(518)] = 30293, - [SMALL_STATE(519)] = 30347, - [SMALL_STATE(520)] = 30401, - [SMALL_STATE(521)] = 30455, - [SMALL_STATE(522)] = 30509, - [SMALL_STATE(523)] = 30563, - [SMALL_STATE(524)] = 30617, - [SMALL_STATE(525)] = 30671, - [SMALL_STATE(526)] = 30725, - [SMALL_STATE(527)] = 30779, - [SMALL_STATE(528)] = 30833, - [SMALL_STATE(529)] = 30887, - [SMALL_STATE(530)] = 30941, - [SMALL_STATE(531)] = 30995, - [SMALL_STATE(532)] = 31049, - [SMALL_STATE(533)] = 31103, - [SMALL_STATE(534)] = 31157, - [SMALL_STATE(535)] = 31211, - [SMALL_STATE(536)] = 31265, - [SMALL_STATE(537)] = 31319, - [SMALL_STATE(538)] = 31373, - [SMALL_STATE(539)] = 31427, - [SMALL_STATE(540)] = 31481, - [SMALL_STATE(541)] = 31535, - [SMALL_STATE(542)] = 31589, - [SMALL_STATE(543)] = 31643, - [SMALL_STATE(544)] = 31697, - [SMALL_STATE(545)] = 31751, - [SMALL_STATE(546)] = 31805, - [SMALL_STATE(547)] = 31859, - [SMALL_STATE(548)] = 31913, - [SMALL_STATE(549)] = 31967, - [SMALL_STATE(550)] = 32021, - [SMALL_STATE(551)] = 32075, - [SMALL_STATE(552)] = 32129, - [SMALL_STATE(553)] = 32183, - [SMALL_STATE(554)] = 32237, - [SMALL_STATE(555)] = 32291, - [SMALL_STATE(556)] = 32345, - [SMALL_STATE(557)] = 32399, - [SMALL_STATE(558)] = 32453, - [SMALL_STATE(559)] = 32507, - [SMALL_STATE(560)] = 32561, - [SMALL_STATE(561)] = 32615, - [SMALL_STATE(562)] = 32669, - [SMALL_STATE(563)] = 32723, - [SMALL_STATE(564)] = 32777, - [SMALL_STATE(565)] = 32831, - [SMALL_STATE(566)] = 32885, - [SMALL_STATE(567)] = 32939, - [SMALL_STATE(568)] = 32993, - [SMALL_STATE(569)] = 33075, - [SMALL_STATE(570)] = 33130, - [SMALL_STATE(571)] = 33185, - [SMALL_STATE(572)] = 33240, - [SMALL_STATE(573)] = 33295, - [SMALL_STATE(574)] = 33350, - [SMALL_STATE(575)] = 33405, - [SMALL_STATE(576)] = 33481, - [SMALL_STATE(577)] = 33557, - [SMALL_STATE(578)] = 33633, - [SMALL_STATE(579)] = 33709, - [SMALL_STATE(580)] = 33782, - [SMALL_STATE(581)] = 33831, - [SMALL_STATE(582)] = 33880, - [SMALL_STATE(583)] = 33953, - [SMALL_STATE(584)] = 34026, - [SMALL_STATE(585)] = 34075, - [SMALL_STATE(586)] = 34148, - [SMALL_STATE(587)] = 34221, - [SMALL_STATE(588)] = 34294, - [SMALL_STATE(589)] = 34367, - [SMALL_STATE(590)] = 34440, - [SMALL_STATE(591)] = 34513, - [SMALL_STATE(592)] = 34586, - [SMALL_STATE(593)] = 34659, - [SMALL_STATE(594)] = 34732, - [SMALL_STATE(595)] = 34805, - [SMALL_STATE(596)] = 34882, - [SMALL_STATE(597)] = 34955, - [SMALL_STATE(598)] = 35028, - [SMALL_STATE(599)] = 35101, - [SMALL_STATE(600)] = 35174, - [SMALL_STATE(601)] = 35247, - [SMALL_STATE(602)] = 35320, - [SMALL_STATE(603)] = 35393, - [SMALL_STATE(604)] = 35466, - [SMALL_STATE(605)] = 35539, - [SMALL_STATE(606)] = 35612, - [SMALL_STATE(607)] = 35685, - [SMALL_STATE(608)] = 35758, - [SMALL_STATE(609)] = 35831, - [SMALL_STATE(610)] = 35904, - [SMALL_STATE(611)] = 35977, - [SMALL_STATE(612)] = 36050, - [SMALL_STATE(613)] = 36123, - [SMALL_STATE(614)] = 36196, - [SMALL_STATE(615)] = 36269, - [SMALL_STATE(616)] = 36342, - [SMALL_STATE(617)] = 36415, - [SMALL_STATE(618)] = 36488, - [SMALL_STATE(619)] = 36561, - [SMALL_STATE(620)] = 36634, - [SMALL_STATE(621)] = 36707, - [SMALL_STATE(622)] = 36780, - [SMALL_STATE(623)] = 36853, - [SMALL_STATE(624)] = 36930, - [SMALL_STATE(625)] = 36979, - [SMALL_STATE(626)] = 37052, - [SMALL_STATE(627)] = 37125, - [SMALL_STATE(628)] = 37198, - [SMALL_STATE(629)] = 37271, - [SMALL_STATE(630)] = 37319, - [SMALL_STATE(631)] = 37367, - [SMALL_STATE(632)] = 37415, - [SMALL_STATE(633)] = 37463, - [SMALL_STATE(634)] = 37511, - [SMALL_STATE(635)] = 37559, - [SMALL_STATE(636)] = 37607, - [SMALL_STATE(637)] = 37655, - [SMALL_STATE(638)] = 37703, - [SMALL_STATE(639)] = 37751, - [SMALL_STATE(640)] = 37799, - [SMALL_STATE(641)] = 37847, - [SMALL_STATE(642)] = 37895, - [SMALL_STATE(643)] = 37943, - [SMALL_STATE(644)] = 37991, - [SMALL_STATE(645)] = 38039, - [SMALL_STATE(646)] = 38087, - [SMALL_STATE(647)] = 38135, - [SMALL_STATE(648)] = 38183, - [SMALL_STATE(649)] = 38231, - [SMALL_STATE(650)] = 38279, - [SMALL_STATE(651)] = 38327, - [SMALL_STATE(652)] = 38375, - [SMALL_STATE(653)] = 38457, - [SMALL_STATE(654)] = 38539, - [SMALL_STATE(655)] = 38587, - [SMALL_STATE(656)] = 38635, - [SMALL_STATE(657)] = 38683, - [SMALL_STATE(658)] = 38731, - [SMALL_STATE(659)] = 38779, - [SMALL_STATE(660)] = 38827, - [SMALL_STATE(661)] = 38875, - [SMALL_STATE(662)] = 38923, - [SMALL_STATE(663)] = 38980, - [SMALL_STATE(664)] = 39051, - [SMALL_STATE(665)] = 39122, - [SMALL_STATE(666)] = 39193, - [SMALL_STATE(667)] = 39264, - [SMALL_STATE(668)] = 39335, - [SMALL_STATE(669)] = 39400, - [SMALL_STATE(670)] = 39457, - [SMALL_STATE(671)] = 39514, - [SMALL_STATE(672)] = 39571, - [SMALL_STATE(673)] = 39628, - [SMALL_STATE(674)] = 39699, - [SMALL_STATE(675)] = 39768, - [SMALL_STATE(676)] = 39825, - [SMALL_STATE(677)] = 39882, - [SMALL_STATE(678)] = 39945, - [SMALL_STATE(679)] = 40008, - [SMALL_STATE(680)] = 40075, - [SMALL_STATE(681)] = 40140, - [SMALL_STATE(682)] = 40207, - [SMALL_STATE(683)] = 40276, - [SMALL_STATE(684)] = 40337, - [SMALL_STATE(685)] = 40394, - [SMALL_STATE(686)] = 40455, - [SMALL_STATE(687)] = 40505, - [SMALL_STATE(688)] = 40553, - [SMALL_STATE(689)] = 40603, - [SMALL_STATE(690)] = 40653, - [SMALL_STATE(691)] = 40699, - [SMALL_STATE(692)] = 40749, - [SMALL_STATE(693)] = 40797, - [SMALL_STATE(694)] = 40845, - [SMALL_STATE(695)] = 40893, - [SMALL_STATE(696)] = 40939, - [SMALL_STATE(697)] = 40988, - [SMALL_STATE(698)] = 41033, - [SMALL_STATE(699)] = 41082, - [SMALL_STATE(700)] = 41131, - [SMALL_STATE(701)] = 41180, - [SMALL_STATE(702)] = 41229, - [SMALL_STATE(703)] = 41308, - [SMALL_STATE(704)] = 41353, - [SMALL_STATE(705)] = 41402, - [SMALL_STATE(706)] = 41466, - [SMALL_STATE(707)] = 41534, - [SMALL_STATE(708)] = 41592, - [SMALL_STATE(709)] = 41646, - [SMALL_STATE(710)] = 41690, - [SMALL_STATE(711)] = 41752, - [SMALL_STATE(712)] = 41806, - [SMALL_STATE(713)] = 41860, - [SMALL_STATE(714)] = 41928, - [SMALL_STATE(715)] = 41994, - [SMALL_STATE(716)] = 42038, - [SMALL_STATE(717)] = 42082, - [SMALL_STATE(718)] = 42150, - [SMALL_STATE(719)] = 42226, - [SMALL_STATE(720)] = 42270, - [SMALL_STATE(721)] = 42318, - [SMALL_STATE(722)] = 42378, - [SMALL_STATE(723)] = 42426, - [SMALL_STATE(724)] = 42480, - [SMALL_STATE(725)] = 42525, - [SMALL_STATE(726)] = 42568, - [SMALL_STATE(727)] = 42611, - [SMALL_STATE(728)] = 42656, - [SMALL_STATE(729)] = 42737, - [SMALL_STATE(730)] = 42784, - [SMALL_STATE(731)] = 42829, - [SMALL_STATE(732)] = 42874, - [SMALL_STATE(733)] = 42919, - [SMALL_STATE(734)] = 43000, - [SMALL_STATE(735)] = 43067, - [SMALL_STATE(736)] = 43112, - [SMALL_STATE(737)] = 43179, - [SMALL_STATE(738)] = 43260, - [SMALL_STATE(739)] = 43305, - [SMALL_STATE(740)] = 43366, - [SMALL_STATE(741)] = 43411, - [SMALL_STATE(742)] = 43474, - [SMALL_STATE(743)] = 43527, - [SMALL_STATE(744)] = 43570, - [SMALL_STATE(745)] = 43627, - [SMALL_STATE(746)] = 43692, - [SMALL_STATE(747)] = 43745, - [SMALL_STATE(748)] = 43792, - [SMALL_STATE(749)] = 43845, - [SMALL_STATE(750)] = 43892, - [SMALL_STATE(751)] = 43973, - [SMALL_STATE(752)] = 44040, - [SMALL_STATE(753)] = 44099, - [SMALL_STATE(754)] = 44152, - [SMALL_STATE(755)] = 44199, - [SMALL_STATE(756)] = 44242, - [SMALL_STATE(757)] = 44286, - [SMALL_STATE(758)] = 44328, - [SMALL_STATE(759)] = 44370, - [SMALL_STATE(760)] = 44412, - [SMALL_STATE(761)] = 44454, - [SMALL_STATE(762)] = 44496, - [SMALL_STATE(763)] = 44540, - [SMALL_STATE(764)] = 44582, - [SMALL_STATE(765)] = 44624, - [SMALL_STATE(766)] = 44704, - [SMALL_STATE(767)] = 44782, - [SMALL_STATE(768)] = 44824, - [SMALL_STATE(769)] = 44902, - [SMALL_STATE(770)] = 44944, - [SMALL_STATE(771)] = 44988, - [SMALL_STATE(772)] = 45066, - [SMALL_STATE(773)] = 45108, - [SMALL_STATE(774)] = 45186, - [SMALL_STATE(775)] = 45264, - [SMALL_STATE(776)] = 45306, - [SMALL_STATE(777)] = 45348, - [SMALL_STATE(778)] = 45390, - [SMALL_STATE(779)] = 45434, - [SMALL_STATE(780)] = 45476, - [SMALL_STATE(781)] = 45518, - [SMALL_STATE(782)] = 45560, - [SMALL_STATE(783)] = 45602, - [SMALL_STATE(784)] = 45644, - [SMALL_STATE(785)] = 45686, - [SMALL_STATE(786)] = 45728, - [SMALL_STATE(787)] = 45770, - [SMALL_STATE(788)] = 45812, - [SMALL_STATE(789)] = 45854, - [SMALL_STATE(790)] = 45896, - [SMALL_STATE(791)] = 45938, - [SMALL_STATE(792)] = 45980, - [SMALL_STATE(793)] = 46022, - [SMALL_STATE(794)] = 46064, - [SMALL_STATE(795)] = 46106, - [SMALL_STATE(796)] = 46148, - [SMALL_STATE(797)] = 46192, - [SMALL_STATE(798)] = 46234, - [SMALL_STATE(799)] = 46276, - [SMALL_STATE(800)] = 46318, - [SMALL_STATE(801)] = 46359, - [SMALL_STATE(802)] = 46400, - [SMALL_STATE(803)] = 46441, - [SMALL_STATE(804)] = 46486, - [SMALL_STATE(805)] = 46565, - [SMALL_STATE(806)] = 46606, - [SMALL_STATE(807)] = 46647, - [SMALL_STATE(808)] = 46722, - [SMALL_STATE(809)] = 46763, - [SMALL_STATE(810)] = 46804, - [SMALL_STATE(811)] = 46883, - [SMALL_STATE(812)] = 46924, - [SMALL_STATE(813)] = 46965, - [SMALL_STATE(814)] = 47006, - [SMALL_STATE(815)] = 47047, - [SMALL_STATE(816)] = 47088, - [SMALL_STATE(817)] = 47129, - [SMALL_STATE(818)] = 47170, - [SMALL_STATE(819)] = 47211, - [SMALL_STATE(820)] = 47252, - [SMALL_STATE(821)] = 47293, - [SMALL_STATE(822)] = 47334, - [SMALL_STATE(823)] = 47375, - [SMALL_STATE(824)] = 47454, - [SMALL_STATE(825)] = 47495, - [SMALL_STATE(826)] = 47540, - [SMALL_STATE(827)] = 47581, - [SMALL_STATE(828)] = 47622, - [SMALL_STATE(829)] = 47663, - [SMALL_STATE(830)] = 47704, - [SMALL_STATE(831)] = 47745, - [SMALL_STATE(832)] = 47786, - [SMALL_STATE(833)] = 47827, - [SMALL_STATE(834)] = 47868, - [SMALL_STATE(835)] = 47909, - [SMALL_STATE(836)] = 47950, - [SMALL_STATE(837)] = 47991, - [SMALL_STATE(838)] = 48032, - [SMALL_STATE(839)] = 48073, - [SMALL_STATE(840)] = 48146, - [SMALL_STATE(841)] = 48216, - [SMALL_STATE(842)] = 48286, - [SMALL_STATE(843)] = 48348, - [SMALL_STATE(844)] = 48410, - [SMALL_STATE(845)] = 48450, - [SMALL_STATE(846)] = 48490, - [SMALL_STATE(847)] = 48530, - [SMALL_STATE(848)] = 48570, - [SMALL_STATE(849)] = 48600, - [SMALL_STATE(850)] = 48625, - [SMALL_STATE(851)] = 48662, - [SMALL_STATE(852)] = 48715, - [SMALL_STATE(853)] = 48744, - [SMALL_STATE(854)] = 48769, - [SMALL_STATE(855)] = 48794, - [SMALL_STATE(856)] = 48847, - [SMALL_STATE(857)] = 48884, - [SMALL_STATE(858)] = 48909, - [SMALL_STATE(859)] = 48962, - [SMALL_STATE(860)] = 48991, - [SMALL_STATE(861)] = 49025, - [SMALL_STATE(862)] = 49053, - [SMALL_STATE(863)] = 49099, - [SMALL_STATE(864)] = 49133, - [SMALL_STATE(865)] = 49176, - [SMALL_STATE(866)] = 49219, - [SMALL_STATE(867)] = 49262, - [SMALL_STATE(868)] = 49293, - [SMALL_STATE(869)] = 49336, - [SMALL_STATE(870)] = 49379, - [SMALL_STATE(871)] = 49423, - [SMALL_STATE(872)] = 49463, - [SMALL_STATE(873)] = 49500, - [SMALL_STATE(874)] = 49537, - [SMALL_STATE(875)] = 49562, - [SMALL_STATE(876)] = 49599, - [SMALL_STATE(877)] = 49636, - [SMALL_STATE(878)] = 49670, - [SMALL_STATE(879)] = 49704, - [SMALL_STATE(880)] = 49726, - [SMALL_STATE(881)] = 49748, - [SMALL_STATE(882)] = 49770, - [SMALL_STATE(883)] = 49793, - [SMALL_STATE(884)] = 49814, - [SMALL_STATE(885)] = 49837, - [SMALL_STATE(886)] = 49864, - [SMALL_STATE(887)] = 49901, - [SMALL_STATE(888)] = 49938, - [SMALL_STATE(889)] = 49963, - [SMALL_STATE(890)] = 49986, - [SMALL_STATE(891)] = 50009, - [SMALL_STATE(892)] = 50030, - [SMALL_STATE(893)] = 50051, - [SMALL_STATE(894)] = 50074, - [SMALL_STATE(895)] = 50091, - [SMALL_STATE(896)] = 50114, - [SMALL_STATE(897)] = 50135, - [SMALL_STATE(898)] = 50156, - [SMALL_STATE(899)] = 50181, - [SMALL_STATE(900)] = 50204, - [SMALL_STATE(901)] = 50223, - [SMALL_STATE(902)] = 50244, - [SMALL_STATE(903)] = 50267, - [SMALL_STATE(904)] = 50304, - [SMALL_STATE(905)] = 50329, - [SMALL_STATE(906)] = 50366, - [SMALL_STATE(907)] = 50396, - [SMALL_STATE(908)] = 50426, - [SMALL_STATE(909)] = 50460, - [SMALL_STATE(910)] = 50494, - [SMALL_STATE(911)] = 50516, - [SMALL_STATE(912)] = 50550, - [SMALL_STATE(913)] = 50584, - [SMALL_STATE(914)] = 50614, - [SMALL_STATE(915)] = 50644, - [SMALL_STATE(916)] = 50674, - [SMALL_STATE(917)] = 50704, - [SMALL_STATE(918)] = 50722, - [SMALL_STATE(919)] = 50752, - [SMALL_STATE(920)] = 50782, - [SMALL_STATE(921)] = 50812, - [SMALL_STATE(922)] = 50846, - [SMALL_STATE(923)] = 50876, - [SMALL_STATE(924)] = 50906, - [SMALL_STATE(925)] = 50924, - [SMALL_STATE(926)] = 50954, - [SMALL_STATE(927)] = 50984, - [SMALL_STATE(928)] = 51006, - [SMALL_STATE(929)] = 51040, - [SMALL_STATE(930)] = 51070, - [SMALL_STATE(931)] = 51104, - [SMALL_STATE(932)] = 51126, - [SMALL_STATE(933)] = 51156, - [SMALL_STATE(934)] = 51190, - [SMALL_STATE(935)] = 51212, - [SMALL_STATE(936)] = 51246, - [SMALL_STATE(937)] = 51269, - [SMALL_STATE(938)] = 51288, - [SMALL_STATE(939)] = 51307, - [SMALL_STATE(940)] = 51326, - [SMALL_STATE(941)] = 51351, - [SMALL_STATE(942)] = 51370, - [SMALL_STATE(943)] = 51393, - [SMALL_STATE(944)] = 51416, - [SMALL_STATE(945)] = 51435, - [SMALL_STATE(946)] = 51454, - [SMALL_STATE(947)] = 51468, - [SMALL_STATE(948)] = 51482, - [SMALL_STATE(949)] = 51496, - [SMALL_STATE(950)] = 51510, - [SMALL_STATE(951)] = 51524, - [SMALL_STATE(952)] = 51542, - [SMALL_STATE(953)] = 51556, - [SMALL_STATE(954)] = 51576, - [SMALL_STATE(955)] = 51590, - [SMALL_STATE(956)] = 51604, - [SMALL_STATE(957)] = 51618, - [SMALL_STATE(958)] = 51632, - [SMALL_STATE(959)] = 51650, - [SMALL_STATE(960)] = 51664, - [SMALL_STATE(961)] = 51688, - [SMALL_STATE(962)] = 51712, - [SMALL_STATE(963)] = 51726, - [SMALL_STATE(964)] = 51746, - [SMALL_STATE(965)] = 51760, - [SMALL_STATE(966)] = 51774, - [SMALL_STATE(967)] = 51788, - [SMALL_STATE(968)] = 51806, - [SMALL_STATE(969)] = 51820, - [SMALL_STATE(970)] = 51838, - [SMALL_STATE(971)] = 51854, - [SMALL_STATE(972)] = 51868, - [SMALL_STATE(973)] = 51882, - [SMALL_STATE(974)] = 51900, - [SMALL_STATE(975)] = 51914, - [SMALL_STATE(976)] = 51928, - [SMALL_STATE(977)] = 51946, - [SMALL_STATE(978)] = 51960, - [SMALL_STATE(979)] = 51978, - [SMALL_STATE(980)] = 51998, - [SMALL_STATE(981)] = 52014, - [SMALL_STATE(982)] = 52036, - [SMALL_STATE(983)] = 52054, - [SMALL_STATE(984)] = 52068, - [SMALL_STATE(985)] = 52086, - [SMALL_STATE(986)] = 52106, - [SMALL_STATE(987)] = 52124, - [SMALL_STATE(988)] = 52142, - [SMALL_STATE(989)] = 52160, - [SMALL_STATE(990)] = 52186, - [SMALL_STATE(991)] = 52200, - [SMALL_STATE(992)] = 52214, - [SMALL_STATE(993)] = 52233, - [SMALL_STATE(994)] = 52252, - [SMALL_STATE(995)] = 52269, - [SMALL_STATE(996)] = 52290, - [SMALL_STATE(997)] = 52303, - [SMALL_STATE(998)] = 52324, - [SMALL_STATE(999)] = 52345, - [SMALL_STATE(1000)] = 52366, - [SMALL_STATE(1001)] = 52391, - [SMALL_STATE(1002)] = 52404, - [SMALL_STATE(1003)] = 52423, - [SMALL_STATE(1004)] = 52442, - [SMALL_STATE(1005)] = 52461, - [SMALL_STATE(1006)] = 52484, - [SMALL_STATE(1007)] = 52509, - [SMALL_STATE(1008)] = 52528, - [SMALL_STATE(1009)] = 52551, - [SMALL_STATE(1010)] = 52574, - [SMALL_STATE(1011)] = 52587, - [SMALL_STATE(1012)] = 52608, - [SMALL_STATE(1013)] = 52631, - [SMALL_STATE(1014)] = 52654, - [SMALL_STATE(1015)] = 52669, - [SMALL_STATE(1016)] = 52688, - [SMALL_STATE(1017)] = 52707, - [SMALL_STATE(1018)] = 52732, - [SMALL_STATE(1019)] = 52745, - [SMALL_STATE(1020)] = 52758, - [SMALL_STATE(1021)] = 52771, - [SMALL_STATE(1022)] = 52788, - [SMALL_STATE(1023)] = 52807, - [SMALL_STATE(1024)] = 52820, - [SMALL_STATE(1025)] = 52835, - [SMALL_STATE(1026)] = 52860, - [SMALL_STATE(1027)] = 52883, - [SMALL_STATE(1028)] = 52900, - [SMALL_STATE(1029)] = 52925, - [SMALL_STATE(1030)] = 52944, - [SMALL_STATE(1031)] = 52967, - [SMALL_STATE(1032)] = 52990, - [SMALL_STATE(1033)] = 53013, - [SMALL_STATE(1034)] = 53038, - [SMALL_STATE(1035)] = 53063, - [SMALL_STATE(1036)] = 53084, - [SMALL_STATE(1037)] = 53109, - [SMALL_STATE(1038)] = 53130, - [SMALL_STATE(1039)] = 53146, - [SMALL_STATE(1040)] = 53162, - [SMALL_STATE(1041)] = 53184, - [SMALL_STATE(1042)] = 53200, - [SMALL_STATE(1043)] = 53220, - [SMALL_STATE(1044)] = 53238, - [SMALL_STATE(1045)] = 53252, - [SMALL_STATE(1046)] = 53268, - [SMALL_STATE(1047)] = 53282, - [SMALL_STATE(1048)] = 53298, - [SMALL_STATE(1049)] = 53312, - [SMALL_STATE(1050)] = 53332, - [SMALL_STATE(1051)] = 53354, - [SMALL_STATE(1052)] = 53370, - [SMALL_STATE(1053)] = 53392, - [SMALL_STATE(1054)] = 53410, - [SMALL_STATE(1055)] = 53424, - [SMALL_STATE(1056)] = 53446, - [SMALL_STATE(1057)] = 53460, - [SMALL_STATE(1058)] = 53476, - [SMALL_STATE(1059)] = 53494, - [SMALL_STATE(1060)] = 53512, - [SMALL_STATE(1061)] = 53534, - [SMALL_STATE(1062)] = 53546, - [SMALL_STATE(1063)] = 53566, - [SMALL_STATE(1064)] = 53584, - [SMALL_STATE(1065)] = 53602, - [SMALL_STATE(1066)] = 53624, - [SMALL_STATE(1067)] = 53646, - [SMALL_STATE(1068)] = 53660, - [SMALL_STATE(1069)] = 53678, - [SMALL_STATE(1070)] = 53696, - [SMALL_STATE(1071)] = 53708, - [SMALL_STATE(1072)] = 53728, - [SMALL_STATE(1073)] = 53747, - [SMALL_STATE(1074)] = 53764, - [SMALL_STATE(1075)] = 53783, - [SMALL_STATE(1076)] = 53800, - [SMALL_STATE(1077)] = 53819, - [SMALL_STATE(1078)] = 53834, - [SMALL_STATE(1079)] = 53849, - [SMALL_STATE(1080)] = 53864, - [SMALL_STATE(1081)] = 53881, - [SMALL_STATE(1082)] = 53898, - [SMALL_STATE(1083)] = 53913, - [SMALL_STATE(1084)] = 53930, - [SMALL_STATE(1085)] = 53949, - [SMALL_STATE(1086)] = 53966, - [SMALL_STATE(1087)] = 53977, - [SMALL_STATE(1088)] = 53994, - [SMALL_STATE(1089)] = 54013, - [SMALL_STATE(1090)] = 54024, - [SMALL_STATE(1091)] = 54041, - [SMALL_STATE(1092)] = 54058, - [SMALL_STATE(1093)] = 54075, - [SMALL_STATE(1094)] = 54092, - [SMALL_STATE(1095)] = 54109, - [SMALL_STATE(1096)] = 54124, - [SMALL_STATE(1097)] = 54139, - [SMALL_STATE(1098)] = 54156, - [SMALL_STATE(1099)] = 54175, - [SMALL_STATE(1100)] = 54190, - [SMALL_STATE(1101)] = 54207, - [SMALL_STATE(1102)] = 54224, - [SMALL_STATE(1103)] = 54241, - [SMALL_STATE(1104)] = 54260, - [SMALL_STATE(1105)] = 54279, - [SMALL_STATE(1106)] = 54296, - [SMALL_STATE(1107)] = 54313, - [SMALL_STATE(1108)] = 54324, - [SMALL_STATE(1109)] = 54340, - [SMALL_STATE(1110)] = 54354, - [SMALL_STATE(1111)] = 54368, - [SMALL_STATE(1112)] = 54382, - [SMALL_STATE(1113)] = 54398, - [SMALL_STATE(1114)] = 54414, - [SMALL_STATE(1115)] = 54428, - [SMALL_STATE(1116)] = 54442, - [SMALL_STATE(1117)] = 54456, - [SMALL_STATE(1118)] = 54466, - [SMALL_STATE(1119)] = 54476, - [SMALL_STATE(1120)] = 54490, - [SMALL_STATE(1121)] = 54504, - [SMALL_STATE(1122)] = 54516, - [SMALL_STATE(1123)] = 54526, - [SMALL_STATE(1124)] = 54536, - [SMALL_STATE(1125)] = 54550, - [SMALL_STATE(1126)] = 54566, - [SMALL_STATE(1127)] = 54582, - [SMALL_STATE(1128)] = 54598, - [SMALL_STATE(1129)] = 54614, - [SMALL_STATE(1130)] = 54630, - [SMALL_STATE(1131)] = 54644, - [SMALL_STATE(1132)] = 54658, - [SMALL_STATE(1133)] = 54670, - [SMALL_STATE(1134)] = 54684, - [SMALL_STATE(1135)] = 54698, - [SMALL_STATE(1136)] = 54712, - [SMALL_STATE(1137)] = 54728, - [SMALL_STATE(1138)] = 54742, - [SMALL_STATE(1139)] = 54756, - [SMALL_STATE(1140)] = 54772, - [SMALL_STATE(1141)] = 54788, - [SMALL_STATE(1142)] = 54802, - [SMALL_STATE(1143)] = 54818, - [SMALL_STATE(1144)] = 54832, - [SMALL_STATE(1145)] = 54846, - [SMALL_STATE(1146)] = 54860, - [SMALL_STATE(1147)] = 54876, - [SMALL_STATE(1148)] = 54890, - [SMALL_STATE(1149)] = 54904, - [SMALL_STATE(1150)] = 54920, - [SMALL_STATE(1151)] = 54936, - [SMALL_STATE(1152)] = 54952, - [SMALL_STATE(1153)] = 54966, - [SMALL_STATE(1154)] = 54982, - [SMALL_STATE(1155)] = 54998, - [SMALL_STATE(1156)] = 55012, - [SMALL_STATE(1157)] = 55026, - [SMALL_STATE(1158)] = 55040, - [SMALL_STATE(1159)] = 55056, - [SMALL_STATE(1160)] = 55070, - [SMALL_STATE(1161)] = 55086, - [SMALL_STATE(1162)] = 55102, - [SMALL_STATE(1163)] = 55118, - [SMALL_STATE(1164)] = 55134, - [SMALL_STATE(1165)] = 55150, - [SMALL_STATE(1166)] = 55166, - [SMALL_STATE(1167)] = 55182, - [SMALL_STATE(1168)] = 55196, - [SMALL_STATE(1169)] = 55206, - [SMALL_STATE(1170)] = 55222, - [SMALL_STATE(1171)] = 55238, - [SMALL_STATE(1172)] = 55252, - [SMALL_STATE(1173)] = 55268, - [SMALL_STATE(1174)] = 55278, - [SMALL_STATE(1175)] = 55292, - [SMALL_STATE(1176)] = 55306, - [SMALL_STATE(1177)] = 55320, - [SMALL_STATE(1178)] = 55334, - [SMALL_STATE(1179)] = 55348, - [SMALL_STATE(1180)] = 55364, - [SMALL_STATE(1181)] = 55377, - [SMALL_STATE(1182)] = 55390, - [SMALL_STATE(1183)] = 55403, - [SMALL_STATE(1184)] = 55416, - [SMALL_STATE(1185)] = 55427, - [SMALL_STATE(1186)] = 55436, - [SMALL_STATE(1187)] = 55445, - [SMALL_STATE(1188)] = 55458, - [SMALL_STATE(1189)] = 55471, - [SMALL_STATE(1190)] = 55484, - [SMALL_STATE(1191)] = 55497, - [SMALL_STATE(1192)] = 55508, - [SMALL_STATE(1193)] = 55521, - [SMALL_STATE(1194)] = 55534, - [SMALL_STATE(1195)] = 55547, - [SMALL_STATE(1196)] = 55556, - [SMALL_STATE(1197)] = 55569, - [SMALL_STATE(1198)] = 55582, - [SMALL_STATE(1199)] = 55595, - [SMALL_STATE(1200)] = 55604, - [SMALL_STATE(1201)] = 55617, - [SMALL_STATE(1202)] = 55630, - [SMALL_STATE(1203)] = 55643, - [SMALL_STATE(1204)] = 55656, - [SMALL_STATE(1205)] = 55669, - [SMALL_STATE(1206)] = 55682, - [SMALL_STATE(1207)] = 55695, - [SMALL_STATE(1208)] = 55708, - [SMALL_STATE(1209)] = 55721, - [SMALL_STATE(1210)] = 55730, - [SMALL_STATE(1211)] = 55743, - [SMALL_STATE(1212)] = 55756, - [SMALL_STATE(1213)] = 55769, - [SMALL_STATE(1214)] = 55782, - [SMALL_STATE(1215)] = 55795, - [SMALL_STATE(1216)] = 55808, - [SMALL_STATE(1217)] = 55821, - [SMALL_STATE(1218)] = 55832, - [SMALL_STATE(1219)] = 55845, - [SMALL_STATE(1220)] = 55858, - [SMALL_STATE(1221)] = 55871, - [SMALL_STATE(1222)] = 55884, - [SMALL_STATE(1223)] = 55895, - [SMALL_STATE(1224)] = 55908, - [SMALL_STATE(1225)] = 55921, - [SMALL_STATE(1226)] = 55934, - [SMALL_STATE(1227)] = 55945, - [SMALL_STATE(1228)] = 55958, - [SMALL_STATE(1229)] = 55969, - [SMALL_STATE(1230)] = 55982, - [SMALL_STATE(1231)] = 55995, - [SMALL_STATE(1232)] = 56008, - [SMALL_STATE(1233)] = 56021, - [SMALL_STATE(1234)] = 56034, - [SMALL_STATE(1235)] = 56047, - [SMALL_STATE(1236)] = 56060, - [SMALL_STATE(1237)] = 56073, - [SMALL_STATE(1238)] = 56086, - [SMALL_STATE(1239)] = 56099, - [SMALL_STATE(1240)] = 56112, - [SMALL_STATE(1241)] = 56125, - [SMALL_STATE(1242)] = 56136, - [SMALL_STATE(1243)] = 56149, - [SMALL_STATE(1244)] = 56162, - [SMALL_STATE(1245)] = 56175, - [SMALL_STATE(1246)] = 56186, - [SMALL_STATE(1247)] = 56199, - [SMALL_STATE(1248)] = 56212, - [SMALL_STATE(1249)] = 56225, - [SMALL_STATE(1250)] = 56238, - [SMALL_STATE(1251)] = 56251, - [SMALL_STATE(1252)] = 56264, - [SMALL_STATE(1253)] = 56277, - [SMALL_STATE(1254)] = 56290, - [SMALL_STATE(1255)] = 56301, - [SMALL_STATE(1256)] = 56312, - [SMALL_STATE(1257)] = 56323, - [SMALL_STATE(1258)] = 56336, - [SMALL_STATE(1259)] = 56349, - [SMALL_STATE(1260)] = 56362, - [SMALL_STATE(1261)] = 56375, - [SMALL_STATE(1262)] = 56388, - [SMALL_STATE(1263)] = 56397, - [SMALL_STATE(1264)] = 56410, - [SMALL_STATE(1265)] = 56423, - [SMALL_STATE(1266)] = 56436, - [SMALL_STATE(1267)] = 56449, - [SMALL_STATE(1268)] = 56462, - [SMALL_STATE(1269)] = 56471, - [SMALL_STATE(1270)] = 56484, - [SMALL_STATE(1271)] = 56497, - [SMALL_STATE(1272)] = 56508, - [SMALL_STATE(1273)] = 56521, - [SMALL_STATE(1274)] = 56534, - [SMALL_STATE(1275)] = 56547, - [SMALL_STATE(1276)] = 56560, - [SMALL_STATE(1277)] = 56573, - [SMALL_STATE(1278)] = 56586, - [SMALL_STATE(1279)] = 56595, - [SMALL_STATE(1280)] = 56608, - [SMALL_STATE(1281)] = 56621, - [SMALL_STATE(1282)] = 56634, - [SMALL_STATE(1283)] = 56643, - [SMALL_STATE(1284)] = 56656, - [SMALL_STATE(1285)] = 56669, - [SMALL_STATE(1286)] = 56682, - [SMALL_STATE(1287)] = 56695, - [SMALL_STATE(1288)] = 56708, - [SMALL_STATE(1289)] = 56717, - [SMALL_STATE(1290)] = 56726, - [SMALL_STATE(1291)] = 56735, - [SMALL_STATE(1292)] = 56748, - [SMALL_STATE(1293)] = 56757, - [SMALL_STATE(1294)] = 56770, - [SMALL_STATE(1295)] = 56783, - [SMALL_STATE(1296)] = 56796, - [SMALL_STATE(1297)] = 56809, - [SMALL_STATE(1298)] = 56822, - [SMALL_STATE(1299)] = 56831, - [SMALL_STATE(1300)] = 56844, - [SMALL_STATE(1301)] = 56857, - [SMALL_STATE(1302)] = 56870, - [SMALL_STATE(1303)] = 56883, - [SMALL_STATE(1304)] = 56896, - [SMALL_STATE(1305)] = 56909, - [SMALL_STATE(1306)] = 56922, - [SMALL_STATE(1307)] = 56935, - [SMALL_STATE(1308)] = 56944, - [SMALL_STATE(1309)] = 56957, - [SMALL_STATE(1310)] = 56970, - [SMALL_STATE(1311)] = 56978, - [SMALL_STATE(1312)] = 56986, - [SMALL_STATE(1313)] = 56994, - [SMALL_STATE(1314)] = 57004, - [SMALL_STATE(1315)] = 57012, - [SMALL_STATE(1316)] = 57020, - [SMALL_STATE(1317)] = 57028, - [SMALL_STATE(1318)] = 57038, - [SMALL_STATE(1319)] = 57046, - [SMALL_STATE(1320)] = 57056, - [SMALL_STATE(1321)] = 57066, - [SMALL_STATE(1322)] = 57074, - [SMALL_STATE(1323)] = 57084, - [SMALL_STATE(1324)] = 57092, - [SMALL_STATE(1325)] = 57100, - [SMALL_STATE(1326)] = 57108, - [SMALL_STATE(1327)] = 57116, - [SMALL_STATE(1328)] = 57124, - [SMALL_STATE(1329)] = 57134, - [SMALL_STATE(1330)] = 57142, - [SMALL_STATE(1331)] = 57150, - [SMALL_STATE(1332)] = 57158, - [SMALL_STATE(1333)] = 57166, - [SMALL_STATE(1334)] = 57174, - [SMALL_STATE(1335)] = 57182, - [SMALL_STATE(1336)] = 57190, - [SMALL_STATE(1337)] = 57200, - [SMALL_STATE(1338)] = 57210, - [SMALL_STATE(1339)] = 57218, - [SMALL_STATE(1340)] = 57228, - [SMALL_STATE(1341)] = 57236, - [SMALL_STATE(1342)] = 57246, - [SMALL_STATE(1343)] = 57256, - [SMALL_STATE(1344)] = 57264, - [SMALL_STATE(1345)] = 57272, - [SMALL_STATE(1346)] = 57282, - [SMALL_STATE(1347)] = 57292, - [SMALL_STATE(1348)] = 57302, - [SMALL_STATE(1349)] = 57312, - [SMALL_STATE(1350)] = 57322, - [SMALL_STATE(1351)] = 57332, - [SMALL_STATE(1352)] = 57342, - [SMALL_STATE(1353)] = 57350, - [SMALL_STATE(1354)] = 57360, - [SMALL_STATE(1355)] = 57370, - [SMALL_STATE(1356)] = 57380, - [SMALL_STATE(1357)] = 57388, - [SMALL_STATE(1358)] = 57396, - [SMALL_STATE(1359)] = 57404, - [SMALL_STATE(1360)] = 57414, - [SMALL_STATE(1361)] = 57422, - [SMALL_STATE(1362)] = 57432, - [SMALL_STATE(1363)] = 57442, - [SMALL_STATE(1364)] = 57450, - [SMALL_STATE(1365)] = 57458, - [SMALL_STATE(1366)] = 57466, - [SMALL_STATE(1367)] = 57476, - [SMALL_STATE(1368)] = 57486, - [SMALL_STATE(1369)] = 57494, - [SMALL_STATE(1370)] = 57502, - [SMALL_STATE(1371)] = 57510, - [SMALL_STATE(1372)] = 57518, - [SMALL_STATE(1373)] = 57526, - [SMALL_STATE(1374)] = 57534, - [SMALL_STATE(1375)] = 57542, - [SMALL_STATE(1376)] = 57552, - [SMALL_STATE(1377)] = 57562, - [SMALL_STATE(1378)] = 57570, - [SMALL_STATE(1379)] = 57578, - [SMALL_STATE(1380)] = 57588, - [SMALL_STATE(1381)] = 57596, - [SMALL_STATE(1382)] = 57604, - [SMALL_STATE(1383)] = 57614, - [SMALL_STATE(1384)] = 57622, - [SMALL_STATE(1385)] = 57630, - [SMALL_STATE(1386)] = 57637, - [SMALL_STATE(1387)] = 57644, - [SMALL_STATE(1388)] = 57651, - [SMALL_STATE(1389)] = 57658, - [SMALL_STATE(1390)] = 57665, - [SMALL_STATE(1391)] = 57672, - [SMALL_STATE(1392)] = 57679, - [SMALL_STATE(1393)] = 57686, - [SMALL_STATE(1394)] = 57693, - [SMALL_STATE(1395)] = 57700, - [SMALL_STATE(1396)] = 57707, - [SMALL_STATE(1397)] = 57714, - [SMALL_STATE(1398)] = 57721, - [SMALL_STATE(1399)] = 57728, - [SMALL_STATE(1400)] = 57735, - [SMALL_STATE(1401)] = 57742, - [SMALL_STATE(1402)] = 57749, - [SMALL_STATE(1403)] = 57756, - [SMALL_STATE(1404)] = 57763, - [SMALL_STATE(1405)] = 57770, - [SMALL_STATE(1406)] = 57777, - [SMALL_STATE(1407)] = 57784, - [SMALL_STATE(1408)] = 57791, - [SMALL_STATE(1409)] = 57798, - [SMALL_STATE(1410)] = 57805, - [SMALL_STATE(1411)] = 57812, - [SMALL_STATE(1412)] = 57819, - [SMALL_STATE(1413)] = 57826, - [SMALL_STATE(1414)] = 57833, - [SMALL_STATE(1415)] = 57840, - [SMALL_STATE(1416)] = 57847, - [SMALL_STATE(1417)] = 57854, - [SMALL_STATE(1418)] = 57861, - [SMALL_STATE(1419)] = 57868, - [SMALL_STATE(1420)] = 57875, - [SMALL_STATE(1421)] = 57882, - [SMALL_STATE(1422)] = 57889, - [SMALL_STATE(1423)] = 57896, - [SMALL_STATE(1424)] = 57903, - [SMALL_STATE(1425)] = 57910, - [SMALL_STATE(1426)] = 57917, - [SMALL_STATE(1427)] = 57924, - [SMALL_STATE(1428)] = 57931, - [SMALL_STATE(1429)] = 57938, - [SMALL_STATE(1430)] = 57945, - [SMALL_STATE(1431)] = 57952, - [SMALL_STATE(1432)] = 57959, - [SMALL_STATE(1433)] = 57966, - [SMALL_STATE(1434)] = 57973, - [SMALL_STATE(1435)] = 57980, - [SMALL_STATE(1436)] = 57987, - [SMALL_STATE(1437)] = 57994, - [SMALL_STATE(1438)] = 58001, - [SMALL_STATE(1439)] = 58008, - [SMALL_STATE(1440)] = 58015, - [SMALL_STATE(1441)] = 58022, - [SMALL_STATE(1442)] = 58029, - [SMALL_STATE(1443)] = 58036, - [SMALL_STATE(1444)] = 58043, - [SMALL_STATE(1445)] = 58050, - [SMALL_STATE(1446)] = 58057, - [SMALL_STATE(1447)] = 58064, - [SMALL_STATE(1448)] = 58071, - [SMALL_STATE(1449)] = 58078, - [SMALL_STATE(1450)] = 58085, - [SMALL_STATE(1451)] = 58092, - [SMALL_STATE(1452)] = 58099, - [SMALL_STATE(1453)] = 58106, - [SMALL_STATE(1454)] = 58113, - [SMALL_STATE(1455)] = 58120, - [SMALL_STATE(1456)] = 58127, - [SMALL_STATE(1457)] = 58134, - [SMALL_STATE(1458)] = 58141, - [SMALL_STATE(1459)] = 58148, - [SMALL_STATE(1460)] = 58155, - [SMALL_STATE(1461)] = 58162, - [SMALL_STATE(1462)] = 58169, - [SMALL_STATE(1463)] = 58176, - [SMALL_STATE(1464)] = 58183, - [SMALL_STATE(1465)] = 58190, - [SMALL_STATE(1466)] = 58197, - [SMALL_STATE(1467)] = 58204, - [SMALL_STATE(1468)] = 58211, - [SMALL_STATE(1469)] = 58218, - [SMALL_STATE(1470)] = 58225, - [SMALL_STATE(1471)] = 58232, - [SMALL_STATE(1472)] = 58239, - [SMALL_STATE(1473)] = 58246, - [SMALL_STATE(1474)] = 58253, - [SMALL_STATE(1475)] = 58260, - [SMALL_STATE(1476)] = 58267, - [SMALL_STATE(1477)] = 58274, - [SMALL_STATE(1478)] = 58281, - [SMALL_STATE(1479)] = 58288, - [SMALL_STATE(1480)] = 58295, - [SMALL_STATE(1481)] = 58302, - [SMALL_STATE(1482)] = 58309, - [SMALL_STATE(1483)] = 58316, - [SMALL_STATE(1484)] = 58323, - [SMALL_STATE(1485)] = 58330, - [SMALL_STATE(1486)] = 58337, - [SMALL_STATE(1487)] = 58344, - [SMALL_STATE(1488)] = 58351, - [SMALL_STATE(1489)] = 58358, - [SMALL_STATE(1490)] = 58365, - [SMALL_STATE(1491)] = 58372, - [SMALL_STATE(1492)] = 58379, - [SMALL_STATE(1493)] = 58386, - [SMALL_STATE(1494)] = 58393, - [SMALL_STATE(1495)] = 58400, - [SMALL_STATE(1496)] = 58407, - [SMALL_STATE(1497)] = 58414, - [SMALL_STATE(1498)] = 58421, - [SMALL_STATE(1499)] = 58428, - [SMALL_STATE(1500)] = 58435, - [SMALL_STATE(1501)] = 58442, - [SMALL_STATE(1502)] = 58449, - [SMALL_STATE(1503)] = 58456, - [SMALL_STATE(1504)] = 58463, - [SMALL_STATE(1505)] = 58470, - [SMALL_STATE(1506)] = 58477, - [SMALL_STATE(1507)] = 58484, - [SMALL_STATE(1508)] = 58491, - [SMALL_STATE(1509)] = 58498, + [SMALL_STATE(391)] = 22774, + [SMALL_STATE(392)] = 22866, + [SMALL_STATE(393)] = 22958, + [SMALL_STATE(394)] = 23050, + [SMALL_STATE(395)] = 23142, + [SMALL_STATE(396)] = 23234, + [SMALL_STATE(397)] = 23326, + [SMALL_STATE(398)] = 23418, + [SMALL_STATE(399)] = 23510, + [SMALL_STATE(400)] = 23574, + [SMALL_STATE(401)] = 23666, + [SMALL_STATE(402)] = 23758, + [SMALL_STATE(403)] = 23850, + [SMALL_STATE(404)] = 23942, + [SMALL_STATE(405)] = 24034, + [SMALL_STATE(406)] = 24126, + [SMALL_STATE(407)] = 24218, + [SMALL_STATE(408)] = 24310, + [SMALL_STATE(409)] = 24402, + [SMALL_STATE(410)] = 24494, + [SMALL_STATE(411)] = 24586, + [SMALL_STATE(412)] = 24678, + [SMALL_STATE(413)] = 24770, + [SMALL_STATE(414)] = 24862, + [SMALL_STATE(415)] = 24954, + [SMALL_STATE(416)] = 25046, + [SMALL_STATE(417)] = 25138, + [SMALL_STATE(418)] = 25230, + [SMALL_STATE(419)] = 25322, + [SMALL_STATE(420)] = 25414, + [SMALL_STATE(421)] = 25506, + [SMALL_STATE(422)] = 25598, + [SMALL_STATE(423)] = 25690, + [SMALL_STATE(424)] = 25782, + [SMALL_STATE(425)] = 25874, + [SMALL_STATE(426)] = 25966, + [SMALL_STATE(427)] = 26058, + [SMALL_STATE(428)] = 26150, + [SMALL_STATE(429)] = 26242, + [SMALL_STATE(430)] = 26334, + [SMALL_STATE(431)] = 26426, + [SMALL_STATE(432)] = 26518, + [SMALL_STATE(433)] = 26610, + [SMALL_STATE(434)] = 26702, + [SMALL_STATE(435)] = 26794, + [SMALL_STATE(436)] = 26886, + [SMALL_STATE(437)] = 26943, + [SMALL_STATE(438)] = 27000, + [SMALL_STATE(439)] = 27057, + [SMALL_STATE(440)] = 27114, + [SMALL_STATE(441)] = 27171, + [SMALL_STATE(442)] = 27228, + [SMALL_STATE(443)] = 27285, + [SMALL_STATE(444)] = 27342, + [SMALL_STATE(445)] = 27399, + [SMALL_STATE(446)] = 27456, + [SMALL_STATE(447)] = 27513, + [SMALL_STATE(448)] = 27570, + [SMALL_STATE(449)] = 27627, + [SMALL_STATE(450)] = 27684, + [SMALL_STATE(451)] = 27745, + [SMALL_STATE(452)] = 27802, + [SMALL_STATE(453)] = 27863, + [SMALL_STATE(454)] = 27924, + [SMALL_STATE(455)] = 27981, + [SMALL_STATE(456)] = 28038, + [SMALL_STATE(457)] = 28095, + [SMALL_STATE(458)] = 28152, + [SMALL_STATE(459)] = 28219, + [SMALL_STATE(460)] = 28276, + [SMALL_STATE(461)] = 28337, + [SMALL_STATE(462)] = 28429, + [SMALL_STATE(463)] = 28493, + [SMALL_STATE(464)] = 28549, + [SMALL_STATE(465)] = 28605, + [SMALL_STATE(466)] = 28669, + [SMALL_STATE(467)] = 28729, + [SMALL_STATE(468)] = 28821, + [SMALL_STATE(469)] = 28881, + [SMALL_STATE(470)] = 28941, + [SMALL_STATE(471)] = 29001, + [SMALL_STATE(472)] = 29057, + [SMALL_STATE(473)] = 29117, + [SMALL_STATE(474)] = 29173, + [SMALL_STATE(475)] = 29237, + [SMALL_STATE(476)] = 29293, + [SMALL_STATE(477)] = 29353, + [SMALL_STATE(478)] = 29413, + [SMALL_STATE(479)] = 29507, + [SMALL_STATE(480)] = 29567, + [SMALL_STATE(481)] = 29627, + [SMALL_STATE(482)] = 29687, + [SMALL_STATE(483)] = 29747, + [SMALL_STATE(484)] = 29803, + [SMALL_STATE(485)] = 29863, + [SMALL_STATE(486)] = 29923, + [SMALL_STATE(487)] = 29979, + [SMALL_STATE(488)] = 30043, + [SMALL_STATE(489)] = 30099, + [SMALL_STATE(490)] = 30159, + [SMALL_STATE(491)] = 30219, + [SMALL_STATE(492)] = 30279, + [SMALL_STATE(493)] = 30334, + [SMALL_STATE(494)] = 30425, + [SMALL_STATE(495)] = 30486, + [SMALL_STATE(496)] = 30541, + [SMALL_STATE(497)] = 30596, + [SMALL_STATE(498)] = 30687, + [SMALL_STATE(499)] = 30742, + [SMALL_STATE(500)] = 30797, + [SMALL_STATE(501)] = 30852, + [SMALL_STATE(502)] = 30907, + [SMALL_STATE(503)] = 30968, + [SMALL_STATE(504)] = 31023, + [SMALL_STATE(505)] = 31078, + [SMALL_STATE(506)] = 31133, + [SMALL_STATE(507)] = 31188, + [SMALL_STATE(508)] = 31243, + [SMALL_STATE(509)] = 31334, + [SMALL_STATE(510)] = 31395, + [SMALL_STATE(511)] = 31486, + [SMALL_STATE(512)] = 31577, + [SMALL_STATE(513)] = 31668, + [SMALL_STATE(514)] = 31729, + [SMALL_STATE(515)] = 31783, + [SMALL_STATE(516)] = 31837, + [SMALL_STATE(517)] = 31891, + [SMALL_STATE(518)] = 31945, + [SMALL_STATE(519)] = 31999, + [SMALL_STATE(520)] = 32053, + [SMALL_STATE(521)] = 32107, + [SMALL_STATE(522)] = 32161, + [SMALL_STATE(523)] = 32215, + [SMALL_STATE(524)] = 32269, + [SMALL_STATE(525)] = 32323, + [SMALL_STATE(526)] = 32377, + [SMALL_STATE(527)] = 32431, + [SMALL_STATE(528)] = 32485, + [SMALL_STATE(529)] = 32539, + [SMALL_STATE(530)] = 32593, + [SMALL_STATE(531)] = 32647, + [SMALL_STATE(532)] = 32701, + [SMALL_STATE(533)] = 32755, + [SMALL_STATE(534)] = 32809, + [SMALL_STATE(535)] = 32863, + [SMALL_STATE(536)] = 32917, + [SMALL_STATE(537)] = 32971, + [SMALL_STATE(538)] = 33025, + [SMALL_STATE(539)] = 33079, + [SMALL_STATE(540)] = 33133, + [SMALL_STATE(541)] = 33187, + [SMALL_STATE(542)] = 33241, + [SMALL_STATE(543)] = 33295, + [SMALL_STATE(544)] = 33349, + [SMALL_STATE(545)] = 33403, + [SMALL_STATE(546)] = 33457, + [SMALL_STATE(547)] = 33511, + [SMALL_STATE(548)] = 33565, + [SMALL_STATE(549)] = 33619, + [SMALL_STATE(550)] = 33673, + [SMALL_STATE(551)] = 33727, + [SMALL_STATE(552)] = 33815, + [SMALL_STATE(553)] = 33869, + [SMALL_STATE(554)] = 33923, + [SMALL_STATE(555)] = 33977, + [SMALL_STATE(556)] = 34031, + [SMALL_STATE(557)] = 34085, + [SMALL_STATE(558)] = 34139, + [SMALL_STATE(559)] = 34193, + [SMALL_STATE(560)] = 34247, + [SMALL_STATE(561)] = 34301, + [SMALL_STATE(562)] = 34355, + [SMALL_STATE(563)] = 34409, + [SMALL_STATE(564)] = 34463, + [SMALL_STATE(565)] = 34517, + [SMALL_STATE(566)] = 34571, + [SMALL_STATE(567)] = 34625, + [SMALL_STATE(568)] = 34679, + [SMALL_STATE(569)] = 34733, + [SMALL_STATE(570)] = 34787, + [SMALL_STATE(571)] = 34841, + [SMALL_STATE(572)] = 34895, + [SMALL_STATE(573)] = 34949, + [SMALL_STATE(574)] = 35003, + [SMALL_STATE(575)] = 35057, + [SMALL_STATE(576)] = 35111, + [SMALL_STATE(577)] = 35165, + [SMALL_STATE(578)] = 35219, + [SMALL_STATE(579)] = 35273, + [SMALL_STATE(580)] = 35327, + [SMALL_STATE(581)] = 35381, + [SMALL_STATE(582)] = 35435, + [SMALL_STATE(583)] = 35489, + [SMALL_STATE(584)] = 35543, + [SMALL_STATE(585)] = 35597, + [SMALL_STATE(586)] = 35651, + [SMALL_STATE(587)] = 35705, + [SMALL_STATE(588)] = 35759, + [SMALL_STATE(589)] = 35813, + [SMALL_STATE(590)] = 35867, + [SMALL_STATE(591)] = 35921, + [SMALL_STATE(592)] = 35975, + [SMALL_STATE(593)] = 36029, + [SMALL_STATE(594)] = 36083, + [SMALL_STATE(595)] = 36137, + [SMALL_STATE(596)] = 36191, + [SMALL_STATE(597)] = 36245, + [SMALL_STATE(598)] = 36299, + [SMALL_STATE(599)] = 36353, + [SMALL_STATE(600)] = 36407, + [SMALL_STATE(601)] = 36461, + [SMALL_STATE(602)] = 36515, + [SMALL_STATE(603)] = 36569, + [SMALL_STATE(604)] = 36623, + [SMALL_STATE(605)] = 36677, + [SMALL_STATE(606)] = 36731, + [SMALL_STATE(607)] = 36785, + [SMALL_STATE(608)] = 36839, + [SMALL_STATE(609)] = 36893, + [SMALL_STATE(610)] = 36947, + [SMALL_STATE(611)] = 37001, + [SMALL_STATE(612)] = 37055, + [SMALL_STATE(613)] = 37143, + [SMALL_STATE(614)] = 37197, + [SMALL_STATE(615)] = 37279, + [SMALL_STATE(616)] = 37355, + [SMALL_STATE(617)] = 37409, + [SMALL_STATE(618)] = 37463, + [SMALL_STATE(619)] = 37539, + [SMALL_STATE(620)] = 37593, + [SMALL_STATE(621)] = 37647, + [SMALL_STATE(622)] = 37701, + [SMALL_STATE(623)] = 37777, + [SMALL_STATE(624)] = 37853, + [SMALL_STATE(625)] = 37907, + [SMALL_STATE(626)] = 37983, + [SMALL_STATE(627)] = 38059, + [SMALL_STATE(628)] = 38132, + [SMALL_STATE(629)] = 38205, + [SMALL_STATE(630)] = 38278, + [SMALL_STATE(631)] = 38351, + [SMALL_STATE(632)] = 38424, + [SMALL_STATE(633)] = 38497, + [SMALL_STATE(634)] = 38570, + [SMALL_STATE(635)] = 38643, + [SMALL_STATE(636)] = 38716, + [SMALL_STATE(637)] = 38789, + [SMALL_STATE(638)] = 38862, + [SMALL_STATE(639)] = 38935, + [SMALL_STATE(640)] = 39008, + [SMALL_STATE(641)] = 39081, + [SMALL_STATE(642)] = 39154, + [SMALL_STATE(643)] = 39227, + [SMALL_STATE(644)] = 39300, + [SMALL_STATE(645)] = 39373, + [SMALL_STATE(646)] = 39446, + [SMALL_STATE(647)] = 39519, + [SMALL_STATE(648)] = 39592, + [SMALL_STATE(649)] = 39665, + [SMALL_STATE(650)] = 39738, + [SMALL_STATE(651)] = 39811, + [SMALL_STATE(652)] = 39884, + [SMALL_STATE(653)] = 39957, + [SMALL_STATE(654)] = 40030, + [SMALL_STATE(655)] = 40103, + [SMALL_STATE(656)] = 40176, + [SMALL_STATE(657)] = 40249, + [SMALL_STATE(658)] = 40322, + [SMALL_STATE(659)] = 40395, + [SMALL_STATE(660)] = 40468, + [SMALL_STATE(661)] = 40541, + [SMALL_STATE(662)] = 40614, + [SMALL_STATE(663)] = 40691, + [SMALL_STATE(664)] = 40764, + [SMALL_STATE(665)] = 40837, + [SMALL_STATE(666)] = 40910, + [SMALL_STATE(667)] = 40983, + [SMALL_STATE(668)] = 41056, + [SMALL_STATE(669)] = 41129, + [SMALL_STATE(670)] = 41202, + [SMALL_STATE(671)] = 41275, + [SMALL_STATE(672)] = 41348, + [SMALL_STATE(673)] = 41421, + [SMALL_STATE(674)] = 41494, + [SMALL_STATE(675)] = 41567, + [SMALL_STATE(676)] = 41640, + [SMALL_STATE(677)] = 41713, + [SMALL_STATE(678)] = 41786, + [SMALL_STATE(679)] = 41863, + [SMALL_STATE(680)] = 41936, + [SMALL_STATE(681)] = 42009, + [SMALL_STATE(682)] = 42082, + [SMALL_STATE(683)] = 42155, + [SMALL_STATE(684)] = 42228, + [SMALL_STATE(685)] = 42301, + [SMALL_STATE(686)] = 42374, + [SMALL_STATE(687)] = 42447, + [SMALL_STATE(688)] = 42520, + [SMALL_STATE(689)] = 42593, + [SMALL_STATE(690)] = 42666, + [SMALL_STATE(691)] = 42739, + [SMALL_STATE(692)] = 42812, + [SMALL_STATE(693)] = 42885, + [SMALL_STATE(694)] = 42958, + [SMALL_STATE(695)] = 43031, + [SMALL_STATE(696)] = 43079, + [SMALL_STATE(697)] = 43127, + [SMALL_STATE(698)] = 43175, + [SMALL_STATE(699)] = 43223, + [SMALL_STATE(700)] = 43270, + [SMALL_STATE(701)] = 43317, + [SMALL_STATE(702)] = 43364, + [SMALL_STATE(703)] = 43411, + [SMALL_STATE(704)] = 43458, + [SMALL_STATE(705)] = 43505, + [SMALL_STATE(706)] = 43552, + [SMALL_STATE(707)] = 43599, + [SMALL_STATE(708)] = 43646, + [SMALL_STATE(709)] = 43693, + [SMALL_STATE(710)] = 43740, + [SMALL_STATE(711)] = 43787, + [SMALL_STATE(712)] = 43834, + [SMALL_STATE(713)] = 43881, + [SMALL_STATE(714)] = 43928, + [SMALL_STATE(715)] = 43975, + [SMALL_STATE(716)] = 44022, + [SMALL_STATE(717)] = 44069, + [SMALL_STATE(718)] = 44116, + [SMALL_STATE(719)] = 44163, + [SMALL_STATE(720)] = 44244, + [SMALL_STATE(721)] = 44291, + [SMALL_STATE(722)] = 44338, + [SMALL_STATE(723)] = 44385, + [SMALL_STATE(724)] = 44432, + [SMALL_STATE(725)] = 44479, + [SMALL_STATE(726)] = 44560, + [SMALL_STATE(727)] = 44607, + [SMALL_STATE(728)] = 44654, + [SMALL_STATE(729)] = 44701, + [SMALL_STATE(730)] = 44748, + [SMALL_STATE(731)] = 44795, + [SMALL_STATE(732)] = 44842, + [SMALL_STATE(733)] = 44889, + [SMALL_STATE(734)] = 44936, + [SMALL_STATE(735)] = 44996, + [SMALL_STATE(736)] = 45052, + [SMALL_STATE(737)] = 45108, + [SMALL_STATE(738)] = 45170, + [SMALL_STATE(739)] = 45240, + [SMALL_STATE(740)] = 45308, + [SMALL_STATE(741)] = 45368, + [SMALL_STATE(742)] = 45424, + [SMALL_STATE(743)] = 45490, + [SMALL_STATE(744)] = 45554, + [SMALL_STATE(745)] = 45604, + [SMALL_STATE(746)] = 45654, + [SMALL_STATE(747)] = 45704, + [SMALL_STATE(748)] = 45754, + [SMALL_STATE(749)] = 45824, + [SMALL_STATE(750)] = 45894, + [SMALL_STATE(751)] = 45950, + [SMALL_STATE(752)] = 46012, + [SMALL_STATE(753)] = 46082, + [SMALL_STATE(754)] = 46150, + [SMALL_STATE(755)] = 46206, + [SMALL_STATE(756)] = 46272, + [SMALL_STATE(757)] = 46336, + [SMALL_STATE(758)] = 46406, + [SMALL_STATE(759)] = 46476, + [SMALL_STATE(760)] = 46532, + [SMALL_STATE(761)] = 46588, + [SMALL_STATE(762)] = 46644, + [SMALL_STATE(763)] = 46693, + [SMALL_STATE(764)] = 46742, + [SMALL_STATE(765)] = 46787, + [SMALL_STATE(766)] = 46836, + [SMALL_STATE(767)] = 46915, + [SMALL_STATE(768)] = 46964, + [SMALL_STATE(769)] = 47013, + [SMALL_STATE(770)] = 47062, + [SMALL_STATE(771)] = 47111, + [SMALL_STATE(772)] = 47160, + [SMALL_STATE(773)] = 47237, + [SMALL_STATE(774)] = 47284, + [SMALL_STATE(775)] = 47331, + [SMALL_STATE(776)] = 47380, + [SMALL_STATE(777)] = 47429, + [SMALL_STATE(778)] = 47474, + [SMALL_STATE(779)] = 47523, + [SMALL_STATE(780)] = 47602, + [SMALL_STATE(781)] = 47649, + [SMALL_STATE(782)] = 47696, + [SMALL_STATE(783)] = 47745, + [SMALL_STATE(784)] = 47803, + [SMALL_STATE(785)] = 47857, + [SMALL_STATE(786)] = 47911, + [SMALL_STATE(787)] = 47965, + [SMALL_STATE(788)] = 48025, + [SMALL_STATE(789)] = 48093, + [SMALL_STATE(790)] = 48159, + [SMALL_STATE(791)] = 48213, + [SMALL_STATE(792)] = 48267, + [SMALL_STATE(793)] = 48331, + [SMALL_STATE(794)] = 48393, + [SMALL_STATE(795)] = 48441, + [SMALL_STATE(796)] = 48489, + [SMALL_STATE(797)] = 48543, + [SMALL_STATE(798)] = 48611, + [SMALL_STATE(799)] = 48679, + [SMALL_STATE(800)] = 48739, + [SMALL_STATE(801)] = 48807, + [SMALL_STATE(802)] = 48873, + [SMALL_STATE(803)] = 48931, + [SMALL_STATE(804)] = 48985, + [SMALL_STATE(805)] = 49049, + [SMALL_STATE(806)] = 49111, + [SMALL_STATE(807)] = 49155, + [SMALL_STATE(808)] = 49199, + [SMALL_STATE(809)] = 49243, + [SMALL_STATE(810)] = 49287, + [SMALL_STATE(811)] = 49341, + [SMALL_STATE(812)] = 49395, + [SMALL_STATE(813)] = 49449, + [SMALL_STATE(814)] = 49509, + [SMALL_STATE(815)] = 49577, + [SMALL_STATE(816)] = 49643, + [SMALL_STATE(817)] = 49701, + [SMALL_STATE(818)] = 49755, + [SMALL_STATE(819)] = 49819, + [SMALL_STATE(820)] = 49881, + [SMALL_STATE(821)] = 49949, + [SMALL_STATE(822)] = 50017, + [SMALL_STATE(823)] = 50093, + [SMALL_STATE(824)] = 50161, + [SMALL_STATE(825)] = 50229, + [SMALL_STATE(826)] = 50283, + [SMALL_STATE(827)] = 50328, + [SMALL_STATE(828)] = 50371, + [SMALL_STATE(829)] = 50424, + [SMALL_STATE(830)] = 50483, + [SMALL_STATE(831)] = 50526, + [SMALL_STATE(832)] = 50593, + [SMALL_STATE(833)] = 50658, + [SMALL_STATE(834)] = 50715, + [SMALL_STATE(835)] = 50760, + [SMALL_STATE(836)] = 50813, + [SMALL_STATE(837)] = 50876, + [SMALL_STATE(838)] = 50937, + [SMALL_STATE(839)] = 50982, + [SMALL_STATE(840)] = 51029, + [SMALL_STATE(841)] = 51074, + [SMALL_STATE(842)] = 51117, + [SMALL_STATE(843)] = 51162, + [SMALL_STATE(844)] = 51229, + [SMALL_STATE(845)] = 51296, + [SMALL_STATE(846)] = 51349, + [SMALL_STATE(847)] = 51430, + [SMALL_STATE(848)] = 51473, + [SMALL_STATE(849)] = 51526, + [SMALL_STATE(850)] = 51571, + [SMALL_STATE(851)] = 51614, + [SMALL_STATE(852)] = 51657, + [SMALL_STATE(853)] = 51704, + [SMALL_STATE(854)] = 51749, + [SMALL_STATE(855)] = 51830, + [SMALL_STATE(856)] = 51875, + [SMALL_STATE(857)] = 51956, + [SMALL_STATE(858)] = 52001, + [SMALL_STATE(859)] = 52048, + [SMALL_STATE(860)] = 52091, + [SMALL_STATE(861)] = 52136, + [SMALL_STATE(862)] = 52179, + [SMALL_STATE(863)] = 52260, + [SMALL_STATE(864)] = 52305, + [SMALL_STATE(865)] = 52352, + [SMALL_STATE(866)] = 52397, + [SMALL_STATE(867)] = 52439, + [SMALL_STATE(868)] = 52481, + [SMALL_STATE(869)] = 52523, + [SMALL_STATE(870)] = 52565, + [SMALL_STATE(871)] = 52607, + [SMALL_STATE(872)] = 52649, + [SMALL_STATE(873)] = 52691, + [SMALL_STATE(874)] = 52733, + [SMALL_STATE(875)] = 52775, + [SMALL_STATE(876)] = 52817, + [SMALL_STATE(877)] = 52859, + [SMALL_STATE(878)] = 52901, + [SMALL_STATE(879)] = 52943, + [SMALL_STATE(880)] = 52985, + [SMALL_STATE(881)] = 53027, + [SMALL_STATE(882)] = 53069, + [SMALL_STATE(883)] = 53111, + [SMALL_STATE(884)] = 53153, + [SMALL_STATE(885)] = 53195, + [SMALL_STATE(886)] = 53237, + [SMALL_STATE(887)] = 53279, + [SMALL_STATE(888)] = 53321, + [SMALL_STATE(889)] = 53363, + [SMALL_STATE(890)] = 53405, + [SMALL_STATE(891)] = 53447, + [SMALL_STATE(892)] = 53489, + [SMALL_STATE(893)] = 53531, + [SMALL_STATE(894)] = 53573, + [SMALL_STATE(895)] = 53615, + [SMALL_STATE(896)] = 53657, + [SMALL_STATE(897)] = 53699, + [SMALL_STATE(898)] = 53741, + [SMALL_STATE(899)] = 53783, + [SMALL_STATE(900)] = 53825, + [SMALL_STATE(901)] = 53867, + [SMALL_STATE(902)] = 53909, + [SMALL_STATE(903)] = 53951, + [SMALL_STATE(904)] = 53993, + [SMALL_STATE(905)] = 54035, + [SMALL_STATE(906)] = 54077, + [SMALL_STATE(907)] = 54119, + [SMALL_STATE(908)] = 54161, + [SMALL_STATE(909)] = 54203, + [SMALL_STATE(910)] = 54245, + [SMALL_STATE(911)] = 54287, + [SMALL_STATE(912)] = 54331, + [SMALL_STATE(913)] = 54375, + [SMALL_STATE(914)] = 54417, + [SMALL_STATE(915)] = 54459, + [SMALL_STATE(916)] = 54503, + [SMALL_STATE(917)] = 54545, + [SMALL_STATE(918)] = 54587, + [SMALL_STATE(919)] = 54629, + [SMALL_STATE(920)] = 54673, + [SMALL_STATE(921)] = 54715, + [SMALL_STATE(922)] = 54757, + [SMALL_STATE(923)] = 54799, + [SMALL_STATE(924)] = 54841, + [SMALL_STATE(925)] = 54883, + [SMALL_STATE(926)] = 54927, + [SMALL_STATE(927)] = 54969, + [SMALL_STATE(928)] = 55047, + [SMALL_STATE(929)] = 55125, + [SMALL_STATE(930)] = 55167, + [SMALL_STATE(931)] = 55209, + [SMALL_STATE(932)] = 55251, + [SMALL_STATE(933)] = 55331, + [SMALL_STATE(934)] = 55409, + [SMALL_STATE(935)] = 55487, + [SMALL_STATE(936)] = 55565, + [SMALL_STATE(937)] = 55607, + [SMALL_STATE(938)] = 55649, + [SMALL_STATE(939)] = 55691, + [SMALL_STATE(940)] = 55733, + [SMALL_STATE(941)] = 55775, + [SMALL_STATE(942)] = 55817, + [SMALL_STATE(943)] = 55859, + [SMALL_STATE(944)] = 55901, + [SMALL_STATE(945)] = 55943, + [SMALL_STATE(946)] = 55984, + [SMALL_STATE(947)] = 56025, + [SMALL_STATE(948)] = 56066, + [SMALL_STATE(949)] = 56107, + [SMALL_STATE(950)] = 56148, + [SMALL_STATE(951)] = 56189, + [SMALL_STATE(952)] = 56230, + [SMALL_STATE(953)] = 56271, + [SMALL_STATE(954)] = 56312, + [SMALL_STATE(955)] = 56353, + [SMALL_STATE(956)] = 56394, + [SMALL_STATE(957)] = 56435, + [SMALL_STATE(958)] = 56476, + [SMALL_STATE(959)] = 56517, + [SMALL_STATE(960)] = 56558, + [SMALL_STATE(961)] = 56599, + [SMALL_STATE(962)] = 56640, + [SMALL_STATE(963)] = 56681, + [SMALL_STATE(964)] = 56722, + [SMALL_STATE(965)] = 56801, + [SMALL_STATE(966)] = 56842, + [SMALL_STATE(967)] = 56883, + [SMALL_STATE(968)] = 56924, + [SMALL_STATE(969)] = 56965, + [SMALL_STATE(970)] = 57006, + [SMALL_STATE(971)] = 57047, + [SMALL_STATE(972)] = 57088, + [SMALL_STATE(973)] = 57133, + [SMALL_STATE(974)] = 57178, + [SMALL_STATE(975)] = 57219, + [SMALL_STATE(976)] = 57260, + [SMALL_STATE(977)] = 57301, + [SMALL_STATE(978)] = 57342, + [SMALL_STATE(979)] = 57383, + [SMALL_STATE(980)] = 57458, + [SMALL_STATE(981)] = 57537, + [SMALL_STATE(982)] = 57578, + [SMALL_STATE(983)] = 57657, + [SMALL_STATE(984)] = 57698, + [SMALL_STATE(985)] = 57771, + [SMALL_STATE(986)] = 57841, + [SMALL_STATE(987)] = 57911, + [SMALL_STATE(988)] = 57973, + [SMALL_STATE(989)] = 58035, + [SMALL_STATE(990)] = 58074, + [SMALL_STATE(991)] = 58113, + [SMALL_STATE(992)] = 58152, + [SMALL_STATE(993)] = 58191, + [SMALL_STATE(994)] = 58221, + [SMALL_STATE(995)] = 58274, + [SMALL_STATE(996)] = 58311, + [SMALL_STATE(997)] = 58364, + [SMALL_STATE(998)] = 58399, + [SMALL_STATE(999)] = 58424, + [SMALL_STATE(1000)] = 58449, + [SMALL_STATE(1001)] = 58478, + [SMALL_STATE(1002)] = 58507, + [SMALL_STATE(1003)] = 58544, + [SMALL_STATE(1004)] = 58581, + [SMALL_STATE(1005)] = 58606, + [SMALL_STATE(1006)] = 58631, + [SMALL_STATE(1007)] = 58668, + [SMALL_STATE(1008)] = 58703, + [SMALL_STATE(1009)] = 58756, + [SMALL_STATE(1010)] = 58790, + [SMALL_STATE(1011)] = 58818, + [SMALL_STATE(1012)] = 58852, + [SMALL_STATE(1013)] = 58898, + [SMALL_STATE(1014)] = 58929, + [SMALL_STATE(1015)] = 58972, + [SMALL_STATE(1016)] = 59015, + [SMALL_STATE(1017)] = 59058, + [SMALL_STATE(1018)] = 59101, + [SMALL_STATE(1019)] = 59144, + [SMALL_STATE(1020)] = 59187, + [SMALL_STATE(1021)] = 59230, + [SMALL_STATE(1022)] = 59274, + [SMALL_STATE(1023)] = 59314, + [SMALL_STATE(1024)] = 59351, + [SMALL_STATE(1025)] = 59376, + [SMALL_STATE(1026)] = 59413, + [SMALL_STATE(1027)] = 59450, + [SMALL_STATE(1028)] = 59487, + [SMALL_STATE(1029)] = 59521, + [SMALL_STATE(1030)] = 59555, + [SMALL_STATE(1031)] = 59576, + [SMALL_STATE(1032)] = 59597, + [SMALL_STATE(1033)] = 59619, + [SMALL_STATE(1034)] = 59650, + [SMALL_STATE(1035)] = 59687, + [SMALL_STATE(1036)] = 59718, + [SMALL_STATE(1037)] = 59749, + [SMALL_STATE(1038)] = 59780, + [SMALL_STATE(1039)] = 59803, + [SMALL_STATE(1040)] = 59824, + [SMALL_STATE(1041)] = 59845, + [SMALL_STATE(1042)] = 59882, + [SMALL_STATE(1043)] = 59905, + [SMALL_STATE(1044)] = 59936, + [SMALL_STATE(1045)] = 59967, + [SMALL_STATE(1046)] = 59998, + [SMALL_STATE(1047)] = 60035, + [SMALL_STATE(1048)] = 60066, + [SMALL_STATE(1049)] = 60097, + [SMALL_STATE(1050)] = 60114, + [SMALL_STATE(1051)] = 60145, + [SMALL_STATE(1052)] = 60176, + [SMALL_STATE(1053)] = 60207, + [SMALL_STATE(1054)] = 60238, + [SMALL_STATE(1055)] = 60269, + [SMALL_STATE(1056)] = 60300, + [SMALL_STATE(1057)] = 60331, + [SMALL_STATE(1058)] = 60362, + [SMALL_STATE(1059)] = 60393, + [SMALL_STATE(1060)] = 60424, + [SMALL_STATE(1061)] = 60461, + [SMALL_STATE(1062)] = 60498, + [SMALL_STATE(1063)] = 60520, + [SMALL_STATE(1064)] = 60538, + [SMALL_STATE(1065)] = 60562, + [SMALL_STATE(1066)] = 60582, + [SMALL_STATE(1067)] = 60616, + [SMALL_STATE(1068)] = 60650, + [SMALL_STATE(1069)] = 60670, + [SMALL_STATE(1070)] = 60692, + [SMALL_STATE(1071)] = 60714, + [SMALL_STATE(1072)] = 60736, + [SMALL_STATE(1073)] = 60754, + [SMALL_STATE(1074)] = 60788, + [SMALL_STATE(1075)] = 60812, + [SMALL_STATE(1076)] = 60846, + [SMALL_STATE(1077)] = 60880, + [SMALL_STATE(1078)] = 60900, + [SMALL_STATE(1079)] = 60918, + [SMALL_STATE(1080)] = 60952, + [SMALL_STATE(1081)] = 60986, + [SMALL_STATE(1082)] = 61020, + [SMALL_STATE(1083)] = 61042, + [SMALL_STATE(1084)] = 61076, + [SMALL_STATE(1085)] = 61110, + [SMALL_STATE(1086)] = 61134, + [SMALL_STATE(1087)] = 61168, + [SMALL_STATE(1088)] = 61190, + [SMALL_STATE(1089)] = 61224, + [SMALL_STATE(1090)] = 61244, + [SMALL_STATE(1091)] = 61263, + [SMALL_STATE(1092)] = 61282, + [SMALL_STATE(1093)] = 61305, + [SMALL_STATE(1094)] = 61330, + [SMALL_STATE(1095)] = 61349, + [SMALL_STATE(1096)] = 61374, + [SMALL_STATE(1097)] = 61395, + [SMALL_STATE(1098)] = 61414, + [SMALL_STATE(1099)] = 61433, + [SMALL_STATE(1100)] = 61456, + [SMALL_STATE(1101)] = 61479, + [SMALL_STATE(1102)] = 61498, + [SMALL_STATE(1103)] = 61518, + [SMALL_STATE(1104)] = 61538, + [SMALL_STATE(1105)] = 61556, + [SMALL_STATE(1106)] = 61572, + [SMALL_STATE(1107)] = 61590, + [SMALL_STATE(1108)] = 61610, + [SMALL_STATE(1109)] = 61630, + [SMALL_STATE(1110)] = 61650, + [SMALL_STATE(1111)] = 61664, + [SMALL_STATE(1112)] = 61682, + [SMALL_STATE(1113)] = 61702, + [SMALL_STATE(1114)] = 61726, + [SMALL_STATE(1115)] = 61740, + [SMALL_STATE(1116)] = 61754, + [SMALL_STATE(1117)] = 61768, + [SMALL_STATE(1118)] = 61788, + [SMALL_STATE(1119)] = 61812, + [SMALL_STATE(1120)] = 61826, + [SMALL_STATE(1121)] = 61840, + [SMALL_STATE(1122)] = 61856, + [SMALL_STATE(1123)] = 61882, + [SMALL_STATE(1124)] = 61900, + [SMALL_STATE(1125)] = 61914, + [SMALL_STATE(1126)] = 61934, + [SMALL_STATE(1127)] = 61948, + [SMALL_STATE(1128)] = 61962, + [SMALL_STATE(1129)] = 61980, + [SMALL_STATE(1130)] = 61994, + [SMALL_STATE(1131)] = 62008, + [SMALL_STATE(1132)] = 62022, + [SMALL_STATE(1133)] = 62036, + [SMALL_STATE(1134)] = 62058, + [SMALL_STATE(1135)] = 62072, + [SMALL_STATE(1136)] = 62086, + [SMALL_STATE(1137)] = 62104, + [SMALL_STATE(1138)] = 62118, + [SMALL_STATE(1139)] = 62132, + [SMALL_STATE(1140)] = 62154, + [SMALL_STATE(1141)] = 62168, + [SMALL_STATE(1142)] = 62188, + [SMALL_STATE(1143)] = 62204, + [SMALL_STATE(1144)] = 62218, + [SMALL_STATE(1145)] = 62238, + [SMALL_STATE(1146)] = 62256, + [SMALL_STATE(1147)] = 62274, + [SMALL_STATE(1148)] = 62296, + [SMALL_STATE(1149)] = 62320, + [SMALL_STATE(1150)] = 62338, + [SMALL_STATE(1151)] = 62358, + [SMALL_STATE(1152)] = 62376, + [SMALL_STATE(1153)] = 62392, + [SMALL_STATE(1154)] = 62410, + [SMALL_STATE(1155)] = 62424, + [SMALL_STATE(1156)] = 62442, + [SMALL_STATE(1157)] = 62462, + [SMALL_STATE(1158)] = 62482, + [SMALL_STATE(1159)] = 62496, + [SMALL_STATE(1160)] = 62510, + [SMALL_STATE(1161)] = 62524, + [SMALL_STATE(1162)] = 62538, + [SMALL_STATE(1163)] = 62556, + [SMALL_STATE(1164)] = 62574, + [SMALL_STATE(1165)] = 62594, + [SMALL_STATE(1166)] = 62612, + [SMALL_STATE(1167)] = 62632, + [SMALL_STATE(1168)] = 62646, + [SMALL_STATE(1169)] = 62660, + [SMALL_STATE(1170)] = 62685, + [SMALL_STATE(1171)] = 62710, + [SMALL_STATE(1172)] = 62731, + [SMALL_STATE(1173)] = 62750, + [SMALL_STATE(1174)] = 62771, + [SMALL_STATE(1175)] = 62790, + [SMALL_STATE(1176)] = 62813, + [SMALL_STATE(1177)] = 62826, + [SMALL_STATE(1178)] = 62849, + [SMALL_STATE(1179)] = 62862, + [SMALL_STATE(1180)] = 62885, + [SMALL_STATE(1181)] = 62908, + [SMALL_STATE(1182)] = 62929, + [SMALL_STATE(1183)] = 62948, + [SMALL_STATE(1184)] = 62967, + [SMALL_STATE(1185)] = 62982, + [SMALL_STATE(1186)] = 63005, + [SMALL_STATE(1187)] = 63030, + [SMALL_STATE(1188)] = 63051, + [SMALL_STATE(1189)] = 63068, + [SMALL_STATE(1190)] = 63087, + [SMALL_STATE(1191)] = 63112, + [SMALL_STATE(1192)] = 63131, + [SMALL_STATE(1193)] = 63150, + [SMALL_STATE(1194)] = 63167, + [SMALL_STATE(1195)] = 63182, + [SMALL_STATE(1196)] = 63199, + [SMALL_STATE(1197)] = 63212, + [SMALL_STATE(1198)] = 63235, + [SMALL_STATE(1199)] = 63260, + [SMALL_STATE(1200)] = 63279, + [SMALL_STATE(1201)] = 63300, + [SMALL_STATE(1202)] = 63323, + [SMALL_STATE(1203)] = 63346, + [SMALL_STATE(1204)] = 63359, + [SMALL_STATE(1205)] = 63384, + [SMALL_STATE(1206)] = 63409, + [SMALL_STATE(1207)] = 63428, + [SMALL_STATE(1208)] = 63453, + [SMALL_STATE(1209)] = 63472, + [SMALL_STATE(1210)] = 63491, + [SMALL_STATE(1211)] = 63504, + [SMALL_STATE(1212)] = 63517, + [SMALL_STATE(1213)] = 63542, + [SMALL_STATE(1214)] = 63565, + [SMALL_STATE(1215)] = 63584, + [SMALL_STATE(1216)] = 63600, + [SMALL_STATE(1217)] = 63616, + [SMALL_STATE(1218)] = 63630, + [SMALL_STATE(1219)] = 63644, + [SMALL_STATE(1220)] = 63660, + [SMALL_STATE(1221)] = 63680, + [SMALL_STATE(1222)] = 63696, + [SMALL_STATE(1223)] = 63712, + [SMALL_STATE(1224)] = 63726, + [SMALL_STATE(1225)] = 63744, + [SMALL_STATE(1226)] = 63766, + [SMALL_STATE(1227)] = 63784, + [SMALL_STATE(1228)] = 63802, + [SMALL_STATE(1229)] = 63820, + [SMALL_STATE(1230)] = 63836, + [SMALL_STATE(1231)] = 63858, + [SMALL_STATE(1232)] = 63876, + [SMALL_STATE(1233)] = 63892, + [SMALL_STATE(1234)] = 63908, + [SMALL_STATE(1235)] = 63924, + [SMALL_STATE(1236)] = 63946, + [SMALL_STATE(1237)] = 63968, + [SMALL_STATE(1238)] = 63990, + [SMALL_STATE(1239)] = 64008, + [SMALL_STATE(1240)] = 64020, + [SMALL_STATE(1241)] = 64042, + [SMALL_STATE(1242)] = 64058, + [SMALL_STATE(1243)] = 64074, + [SMALL_STATE(1244)] = 64092, + [SMALL_STATE(1245)] = 64104, + [SMALL_STATE(1246)] = 64118, + [SMALL_STATE(1247)] = 64138, + [SMALL_STATE(1248)] = 64158, + [SMALL_STATE(1249)] = 64174, + [SMALL_STATE(1250)] = 64194, + [SMALL_STATE(1251)] = 64212, + [SMALL_STATE(1252)] = 64228, + [SMALL_STATE(1253)] = 64242, + [SMALL_STATE(1254)] = 64256, + [SMALL_STATE(1255)] = 64278, + [SMALL_STATE(1256)] = 64295, + [SMALL_STATE(1257)] = 64314, + [SMALL_STATE(1258)] = 64329, + [SMALL_STATE(1259)] = 64346, + [SMALL_STATE(1260)] = 64361, + [SMALL_STATE(1261)] = 64376, + [SMALL_STATE(1262)] = 64393, + [SMALL_STATE(1263)] = 64410, + [SMALL_STATE(1264)] = 64421, + [SMALL_STATE(1265)] = 64438, + [SMALL_STATE(1266)] = 64457, + [SMALL_STATE(1267)] = 64474, + [SMALL_STATE(1268)] = 64485, + [SMALL_STATE(1269)] = 64502, + [SMALL_STATE(1270)] = 64519, + [SMALL_STATE(1271)] = 64534, + [SMALL_STATE(1272)] = 64551, + [SMALL_STATE(1273)] = 64570, + [SMALL_STATE(1274)] = 64581, + [SMALL_STATE(1275)] = 64598, + [SMALL_STATE(1276)] = 64615, + [SMALL_STATE(1277)] = 64632, + [SMALL_STATE(1278)] = 64643, + [SMALL_STATE(1279)] = 64658, + [SMALL_STATE(1280)] = 64675, + [SMALL_STATE(1281)] = 64690, + [SMALL_STATE(1282)] = 64709, + [SMALL_STATE(1283)] = 64726, + [SMALL_STATE(1284)] = 64745, + [SMALL_STATE(1285)] = 64764, + [SMALL_STATE(1286)] = 64781, + [SMALL_STATE(1287)] = 64796, + [SMALL_STATE(1288)] = 64815, + [SMALL_STATE(1289)] = 64834, + [SMALL_STATE(1290)] = 64845, + [SMALL_STATE(1291)] = 64862, + [SMALL_STATE(1292)] = 64879, + [SMALL_STATE(1293)] = 64896, + [SMALL_STATE(1294)] = 64910, + [SMALL_STATE(1295)] = 64924, + [SMALL_STATE(1296)] = 64940, + [SMALL_STATE(1297)] = 64956, + [SMALL_STATE(1298)] = 64972, + [SMALL_STATE(1299)] = 64986, + [SMALL_STATE(1300)] = 65000, + [SMALL_STATE(1301)] = 65010, + [SMALL_STATE(1302)] = 65026, + [SMALL_STATE(1303)] = 65042, + [SMALL_STATE(1304)] = 65058, + [SMALL_STATE(1305)] = 65072, + [SMALL_STATE(1306)] = 65086, + [SMALL_STATE(1307)] = 65098, + [SMALL_STATE(1308)] = 65114, + [SMALL_STATE(1309)] = 65124, + [SMALL_STATE(1310)] = 65138, + [SMALL_STATE(1311)] = 65154, + [SMALL_STATE(1312)] = 65170, + [SMALL_STATE(1313)] = 65186, + [SMALL_STATE(1314)] = 65196, + [SMALL_STATE(1315)] = 65206, + [SMALL_STATE(1316)] = 65216, + [SMALL_STATE(1317)] = 65230, + [SMALL_STATE(1318)] = 65244, + [SMALL_STATE(1319)] = 65258, + [SMALL_STATE(1320)] = 65272, + [SMALL_STATE(1321)] = 65286, + [SMALL_STATE(1322)] = 65302, + [SMALL_STATE(1323)] = 65318, + [SMALL_STATE(1324)] = 65334, + [SMALL_STATE(1325)] = 65350, + [SMALL_STATE(1326)] = 65364, + [SMALL_STATE(1327)] = 65378, + [SMALL_STATE(1328)] = 65392, + [SMALL_STATE(1329)] = 65408, + [SMALL_STATE(1330)] = 65424, + [SMALL_STATE(1331)] = 65440, + [SMALL_STATE(1332)] = 65456, + [SMALL_STATE(1333)] = 65472, + [SMALL_STATE(1334)] = 65488, + [SMALL_STATE(1335)] = 65504, + [SMALL_STATE(1336)] = 65520, + [SMALL_STATE(1337)] = 65534, + [SMALL_STATE(1338)] = 65548, + [SMALL_STATE(1339)] = 65562, + [SMALL_STATE(1340)] = 65578, + [SMALL_STATE(1341)] = 65592, + [SMALL_STATE(1342)] = 65604, + [SMALL_STATE(1343)] = 65618, + [SMALL_STATE(1344)] = 65634, + [SMALL_STATE(1345)] = 65648, + [SMALL_STATE(1346)] = 65664, + [SMALL_STATE(1347)] = 65680, + [SMALL_STATE(1348)] = 65696, + [SMALL_STATE(1349)] = 65712, + [SMALL_STATE(1350)] = 65728, + [SMALL_STATE(1351)] = 65744, + [SMALL_STATE(1352)] = 65760, + [SMALL_STATE(1353)] = 65776, + [SMALL_STATE(1354)] = 65790, + [SMALL_STATE(1355)] = 65804, + [SMALL_STATE(1356)] = 65818, + [SMALL_STATE(1357)] = 65832, + [SMALL_STATE(1358)] = 65848, + [SMALL_STATE(1359)] = 65858, + [SMALL_STATE(1360)] = 65872, + [SMALL_STATE(1361)] = 65886, + [SMALL_STATE(1362)] = 65902, + [SMALL_STATE(1363)] = 65916, + [SMALL_STATE(1364)] = 65930, + [SMALL_STATE(1365)] = 65944, + [SMALL_STATE(1366)] = 65958, + [SMALL_STATE(1367)] = 65974, + [SMALL_STATE(1368)] = 65990, + [SMALL_STATE(1369)] = 66004, + [SMALL_STATE(1370)] = 66020, + [SMALL_STATE(1371)] = 66036, + [SMALL_STATE(1372)] = 66050, + [SMALL_STATE(1373)] = 66064, + [SMALL_STATE(1374)] = 66080, + [SMALL_STATE(1375)] = 66093, + [SMALL_STATE(1376)] = 66106, + [SMALL_STATE(1377)] = 66119, + [SMALL_STATE(1378)] = 66132, + [SMALL_STATE(1379)] = 66145, + [SMALL_STATE(1380)] = 66154, + [SMALL_STATE(1381)] = 66165, + [SMALL_STATE(1382)] = 66178, + [SMALL_STATE(1383)] = 66189, + [SMALL_STATE(1384)] = 66202, + [SMALL_STATE(1385)] = 66215, + [SMALL_STATE(1386)] = 66228, + [SMALL_STATE(1387)] = 66241, + [SMALL_STATE(1388)] = 66254, + [SMALL_STATE(1389)] = 66267, + [SMALL_STATE(1390)] = 66280, + [SMALL_STATE(1391)] = 66293, + [SMALL_STATE(1392)] = 66304, + [SMALL_STATE(1393)] = 66317, + [SMALL_STATE(1394)] = 66328, + [SMALL_STATE(1395)] = 66337, + [SMALL_STATE(1396)] = 66350, + [SMALL_STATE(1397)] = 66363, + [SMALL_STATE(1398)] = 66376, + [SMALL_STATE(1399)] = 66389, + [SMALL_STATE(1400)] = 66402, + [SMALL_STATE(1401)] = 66415, + [SMALL_STATE(1402)] = 66428, + [SMALL_STATE(1403)] = 66441, + [SMALL_STATE(1404)] = 66454, + [SMALL_STATE(1405)] = 66463, + [SMALL_STATE(1406)] = 66476, + [SMALL_STATE(1407)] = 66487, + [SMALL_STATE(1408)] = 66500, + [SMALL_STATE(1409)] = 66513, + [SMALL_STATE(1410)] = 66526, + [SMALL_STATE(1411)] = 66539, + [SMALL_STATE(1412)] = 66552, + [SMALL_STATE(1413)] = 66565, + [SMALL_STATE(1414)] = 66578, + [SMALL_STATE(1415)] = 66591, + [SMALL_STATE(1416)] = 66604, + [SMALL_STATE(1417)] = 66617, + [SMALL_STATE(1418)] = 66630, + [SMALL_STATE(1419)] = 66643, + [SMALL_STATE(1420)] = 66656, + [SMALL_STATE(1421)] = 66665, + [SMALL_STATE(1422)] = 66674, + [SMALL_STATE(1423)] = 66687, + [SMALL_STATE(1424)] = 66700, + [SMALL_STATE(1425)] = 66713, + [SMALL_STATE(1426)] = 66726, + [SMALL_STATE(1427)] = 66739, + [SMALL_STATE(1428)] = 66752, + [SMALL_STATE(1429)] = 66765, + [SMALL_STATE(1430)] = 66778, + [SMALL_STATE(1431)] = 66791, + [SMALL_STATE(1432)] = 66804, + [SMALL_STATE(1433)] = 66817, + [SMALL_STATE(1434)] = 66830, + [SMALL_STATE(1435)] = 66843, + [SMALL_STATE(1436)] = 66856, + [SMALL_STATE(1437)] = 66869, + [SMALL_STATE(1438)] = 66882, + [SMALL_STATE(1439)] = 66895, + [SMALL_STATE(1440)] = 66908, + [SMALL_STATE(1441)] = 66921, + [SMALL_STATE(1442)] = 66934, + [SMALL_STATE(1443)] = 66945, + [SMALL_STATE(1444)] = 66958, + [SMALL_STATE(1445)] = 66967, + [SMALL_STATE(1446)] = 66976, + [SMALL_STATE(1447)] = 66985, + [SMALL_STATE(1448)] = 66994, + [SMALL_STATE(1449)] = 67007, + [SMALL_STATE(1450)] = 67020, + [SMALL_STATE(1451)] = 67033, + [SMALL_STATE(1452)] = 67046, + [SMALL_STATE(1453)] = 67059, + [SMALL_STATE(1454)] = 67072, + [SMALL_STATE(1455)] = 67085, + [SMALL_STATE(1456)] = 67096, + [SMALL_STATE(1457)] = 67109, + [SMALL_STATE(1458)] = 67122, + [SMALL_STATE(1459)] = 67135, + [SMALL_STATE(1460)] = 67148, + [SMALL_STATE(1461)] = 67161, + [SMALL_STATE(1462)] = 67174, + [SMALL_STATE(1463)] = 67187, + [SMALL_STATE(1464)] = 67196, + [SMALL_STATE(1465)] = 67205, + [SMALL_STATE(1466)] = 67214, + [SMALL_STATE(1467)] = 67227, + [SMALL_STATE(1468)] = 67240, + [SMALL_STATE(1469)] = 67253, + [SMALL_STATE(1470)] = 67266, + [SMALL_STATE(1471)] = 67275, + [SMALL_STATE(1472)] = 67288, + [SMALL_STATE(1473)] = 67301, + [SMALL_STATE(1474)] = 67314, + [SMALL_STATE(1475)] = 67327, + [SMALL_STATE(1476)] = 67338, + [SMALL_STATE(1477)] = 67351, + [SMALL_STATE(1478)] = 67364, + [SMALL_STATE(1479)] = 67377, + [SMALL_STATE(1480)] = 67388, + [SMALL_STATE(1481)] = 67401, + [SMALL_STATE(1482)] = 67414, + [SMALL_STATE(1483)] = 67425, + [SMALL_STATE(1484)] = 67438, + [SMALL_STATE(1485)] = 67451, + [SMALL_STATE(1486)] = 67464, + [SMALL_STATE(1487)] = 67473, + [SMALL_STATE(1488)] = 67486, + [SMALL_STATE(1489)] = 67499, + [SMALL_STATE(1490)] = 67512, + [SMALL_STATE(1491)] = 67525, + [SMALL_STATE(1492)] = 67538, + [SMALL_STATE(1493)] = 67551, + [SMALL_STATE(1494)] = 67564, + [SMALL_STATE(1495)] = 67577, + [SMALL_STATE(1496)] = 67590, + [SMALL_STATE(1497)] = 67603, + [SMALL_STATE(1498)] = 67614, + [SMALL_STATE(1499)] = 67627, + [SMALL_STATE(1500)] = 67640, + [SMALL_STATE(1501)] = 67653, + [SMALL_STATE(1502)] = 67662, + [SMALL_STATE(1503)] = 67673, + [SMALL_STATE(1504)] = 67686, + [SMALL_STATE(1505)] = 67699, + [SMALL_STATE(1506)] = 67712, + [SMALL_STATE(1507)] = 67725, + [SMALL_STATE(1508)] = 67733, + [SMALL_STATE(1509)] = 67741, + [SMALL_STATE(1510)] = 67751, + [SMALL_STATE(1511)] = 67761, + [SMALL_STATE(1512)] = 67771, + [SMALL_STATE(1513)] = 67781, + [SMALL_STATE(1514)] = 67791, + [SMALL_STATE(1515)] = 67799, + [SMALL_STATE(1516)] = 67807, + [SMALL_STATE(1517)] = 67815, + [SMALL_STATE(1518)] = 67823, + [SMALL_STATE(1519)] = 67831, + [SMALL_STATE(1520)] = 67839, + [SMALL_STATE(1521)] = 67847, + [SMALL_STATE(1522)] = 67855, + [SMALL_STATE(1523)] = 67863, + [SMALL_STATE(1524)] = 67871, + [SMALL_STATE(1525)] = 67879, + [SMALL_STATE(1526)] = 67887, + [SMALL_STATE(1527)] = 67895, + [SMALL_STATE(1528)] = 67903, + [SMALL_STATE(1529)] = 67911, + [SMALL_STATE(1530)] = 67919, + [SMALL_STATE(1531)] = 67927, + [SMALL_STATE(1532)] = 67935, + [SMALL_STATE(1533)] = 67943, + [SMALL_STATE(1534)] = 67951, + [SMALL_STATE(1535)] = 67959, + [SMALL_STATE(1536)] = 67967, + [SMALL_STATE(1537)] = 67975, + [SMALL_STATE(1538)] = 67983, + [SMALL_STATE(1539)] = 67991, + [SMALL_STATE(1540)] = 68001, + [SMALL_STATE(1541)] = 68009, + [SMALL_STATE(1542)] = 68019, + [SMALL_STATE(1543)] = 68027, + [SMALL_STATE(1544)] = 68037, + [SMALL_STATE(1545)] = 68047, + [SMALL_STATE(1546)] = 68055, + [SMALL_STATE(1547)] = 68065, + [SMALL_STATE(1548)] = 68073, + [SMALL_STATE(1549)] = 68083, + [SMALL_STATE(1550)] = 68093, + [SMALL_STATE(1551)] = 68103, + [SMALL_STATE(1552)] = 68111, + [SMALL_STATE(1553)] = 68121, + [SMALL_STATE(1554)] = 68131, + [SMALL_STATE(1555)] = 68141, + [SMALL_STATE(1556)] = 68149, + [SMALL_STATE(1557)] = 68159, + [SMALL_STATE(1558)] = 68169, + [SMALL_STATE(1559)] = 68177, + [SMALL_STATE(1560)] = 68187, + [SMALL_STATE(1561)] = 68197, + [SMALL_STATE(1562)] = 68207, + [SMALL_STATE(1563)] = 68217, + [SMALL_STATE(1564)] = 68225, + [SMALL_STATE(1565)] = 68235, + [SMALL_STATE(1566)] = 68245, + [SMALL_STATE(1567)] = 68255, + [SMALL_STATE(1568)] = 68265, + [SMALL_STATE(1569)] = 68273, + [SMALL_STATE(1570)] = 68283, + [SMALL_STATE(1571)] = 68291, + [SMALL_STATE(1572)] = 68299, + [SMALL_STATE(1573)] = 68307, + [SMALL_STATE(1574)] = 68315, + [SMALL_STATE(1575)] = 68325, + [SMALL_STATE(1576)] = 68333, + [SMALL_STATE(1577)] = 68343, + [SMALL_STATE(1578)] = 68351, + [SMALL_STATE(1579)] = 68361, + [SMALL_STATE(1580)] = 68369, + [SMALL_STATE(1581)] = 68377, + [SMALL_STATE(1582)] = 68385, + [SMALL_STATE(1583)] = 68395, + [SMALL_STATE(1584)] = 68402, + [SMALL_STATE(1585)] = 68409, + [SMALL_STATE(1586)] = 68416, + [SMALL_STATE(1587)] = 68423, + [SMALL_STATE(1588)] = 68430, + [SMALL_STATE(1589)] = 68437, + [SMALL_STATE(1590)] = 68444, + [SMALL_STATE(1591)] = 68451, + [SMALL_STATE(1592)] = 68458, + [SMALL_STATE(1593)] = 68465, + [SMALL_STATE(1594)] = 68472, + [SMALL_STATE(1595)] = 68479, + [SMALL_STATE(1596)] = 68486, + [SMALL_STATE(1597)] = 68493, + [SMALL_STATE(1598)] = 68500, + [SMALL_STATE(1599)] = 68507, + [SMALL_STATE(1600)] = 68514, + [SMALL_STATE(1601)] = 68521, + [SMALL_STATE(1602)] = 68528, + [SMALL_STATE(1603)] = 68535, + [SMALL_STATE(1604)] = 68542, + [SMALL_STATE(1605)] = 68549, + [SMALL_STATE(1606)] = 68556, + [SMALL_STATE(1607)] = 68563, + [SMALL_STATE(1608)] = 68570, + [SMALL_STATE(1609)] = 68577, + [SMALL_STATE(1610)] = 68584, + [SMALL_STATE(1611)] = 68591, + [SMALL_STATE(1612)] = 68598, + [SMALL_STATE(1613)] = 68605, + [SMALL_STATE(1614)] = 68612, + [SMALL_STATE(1615)] = 68619, + [SMALL_STATE(1616)] = 68626, + [SMALL_STATE(1617)] = 68633, + [SMALL_STATE(1618)] = 68640, + [SMALL_STATE(1619)] = 68647, + [SMALL_STATE(1620)] = 68654, + [SMALL_STATE(1621)] = 68661, + [SMALL_STATE(1622)] = 68668, + [SMALL_STATE(1623)] = 68675, + [SMALL_STATE(1624)] = 68682, + [SMALL_STATE(1625)] = 68689, + [SMALL_STATE(1626)] = 68696, + [SMALL_STATE(1627)] = 68703, + [SMALL_STATE(1628)] = 68710, + [SMALL_STATE(1629)] = 68717, + [SMALL_STATE(1630)] = 68724, + [SMALL_STATE(1631)] = 68731, + [SMALL_STATE(1632)] = 68738, + [SMALL_STATE(1633)] = 68745, + [SMALL_STATE(1634)] = 68752, + [SMALL_STATE(1635)] = 68759, + [SMALL_STATE(1636)] = 68766, + [SMALL_STATE(1637)] = 68773, + [SMALL_STATE(1638)] = 68780, + [SMALL_STATE(1639)] = 68787, + [SMALL_STATE(1640)] = 68794, + [SMALL_STATE(1641)] = 68801, + [SMALL_STATE(1642)] = 68808, + [SMALL_STATE(1643)] = 68815, + [SMALL_STATE(1644)] = 68822, + [SMALL_STATE(1645)] = 68829, + [SMALL_STATE(1646)] = 68836, + [SMALL_STATE(1647)] = 68843, + [SMALL_STATE(1648)] = 68850, + [SMALL_STATE(1649)] = 68857, + [SMALL_STATE(1650)] = 68864, + [SMALL_STATE(1651)] = 68871, + [SMALL_STATE(1652)] = 68878, + [SMALL_STATE(1653)] = 68885, + [SMALL_STATE(1654)] = 68892, + [SMALL_STATE(1655)] = 68899, + [SMALL_STATE(1656)] = 68906, + [SMALL_STATE(1657)] = 68913, + [SMALL_STATE(1658)] = 68920, + [SMALL_STATE(1659)] = 68927, + [SMALL_STATE(1660)] = 68934, + [SMALL_STATE(1661)] = 68941, + [SMALL_STATE(1662)] = 68948, + [SMALL_STATE(1663)] = 68955, + [SMALL_STATE(1664)] = 68962, + [SMALL_STATE(1665)] = 68969, + [SMALL_STATE(1666)] = 68976, + [SMALL_STATE(1667)] = 68983, + [SMALL_STATE(1668)] = 68990, + [SMALL_STATE(1669)] = 68997, + [SMALL_STATE(1670)] = 69004, + [SMALL_STATE(1671)] = 69011, + [SMALL_STATE(1672)] = 69018, + [SMALL_STATE(1673)] = 69025, + [SMALL_STATE(1674)] = 69032, + [SMALL_STATE(1675)] = 69039, + [SMALL_STATE(1676)] = 69046, + [SMALL_STATE(1677)] = 69053, + [SMALL_STATE(1678)] = 69060, + [SMALL_STATE(1679)] = 69067, + [SMALL_STATE(1680)] = 69074, + [SMALL_STATE(1681)] = 69081, + [SMALL_STATE(1682)] = 69088, + [SMALL_STATE(1683)] = 69095, + [SMALL_STATE(1684)] = 69102, + [SMALL_STATE(1685)] = 69109, + [SMALL_STATE(1686)] = 69116, + [SMALL_STATE(1687)] = 69123, + [SMALL_STATE(1688)] = 69130, + [SMALL_STATE(1689)] = 69137, + [SMALL_STATE(1690)] = 69144, + [SMALL_STATE(1691)] = 69151, + [SMALL_STATE(1692)] = 69158, + [SMALL_STATE(1693)] = 69165, + [SMALL_STATE(1694)] = 69172, + [SMALL_STATE(1695)] = 69179, + [SMALL_STATE(1696)] = 69186, + [SMALL_STATE(1697)] = 69193, + [SMALL_STATE(1698)] = 69200, + [SMALL_STATE(1699)] = 69207, + [SMALL_STATE(1700)] = 69214, + [SMALL_STATE(1701)] = 69221, + [SMALL_STATE(1702)] = 69228, + [SMALL_STATE(1703)] = 69235, + [SMALL_STATE(1704)] = 69242, + [SMALL_STATE(1705)] = 69249, + [SMALL_STATE(1706)] = 69256, + [SMALL_STATE(1707)] = 69263, + [SMALL_STATE(1708)] = 69270, + [SMALL_STATE(1709)] = 69277, + [SMALL_STATE(1710)] = 69284, + [SMALL_STATE(1711)] = 69291, + [SMALL_STATE(1712)] = 69298, + [SMALL_STATE(1713)] = 69305, + [SMALL_STATE(1714)] = 69312, + [SMALL_STATE(1715)] = 69319, + [SMALL_STATE(1716)] = 69326, + [SMALL_STATE(1717)] = 69333, + [SMALL_STATE(1718)] = 69340, + [SMALL_STATE(1719)] = 69347, + [SMALL_STATE(1720)] = 69354, + [SMALL_STATE(1721)] = 69361, + [SMALL_STATE(1722)] = 69368, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = {.entry = {.count = 0, .reusable = false}}, [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), - [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 0), - [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(440), - [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1113), - [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1013), - [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(389), - [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(111), - [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(388), - [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(186), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(225), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(177), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1314), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1315), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1316), - [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(329), - [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(299), - [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(456), - [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(333), - [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1496), - [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(281), - [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), - [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(589), - [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), - [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), - [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1494), - [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1493), - [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1492), - [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(381), - [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(397), - [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1491), - [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351), - [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(317), - [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(869), - [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(178), - [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(760), - [77] = {.entry = {.count = 1, .reusable = false}}, SHIFT(760), + [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 0, 0, 0), + [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(462), + [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1321), + [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1201), + [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), + [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(384), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68), + [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(406), + [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(217), + [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(244), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(184), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1523), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1525), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1531), + [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(385), + [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(324), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(508), + [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(407), + [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1712), + [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(288), + [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), + [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(676), + [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), + [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378), + [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1619), + [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1585), + [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1648), + [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(367), + [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(458), + [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1629), + [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), + [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(343), + [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1016), + [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(174), + [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(908), + [77] = {.entry = {.count = 1, .reusable = false}}, SHIFT(908), [79] = {.entry = {.count = 1, .reusable = false}}, SHIFT(134), - [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(926), - [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(907), - [85] = {.entry = {.count = 1, .reusable = false}}, SHIFT(373), - [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(298), - [89] = {.entry = {.count = 1, .reusable = false}}, SHIFT(448), - [91] = {.entry = {.count = 1, .reusable = false}}, SHIFT(325), - [93] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1479), - [95] = {.entry = {.count = 1, .reusable = false}}, SHIFT(269), - [97] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), - [99] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1501), - [101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1482), - [103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311), - [105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307), - [107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1312), - [109] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(440), - [112] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1113), - [115] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1013), - [118] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(153), - [121] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(389), - [124] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(111), - [127] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(388), - [130] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(186), - [133] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(225), - [136] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(177), - [139] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1314), - [142] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1315), - [145] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1316), - [148] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(373), - [151] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(298), - [154] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(448), - [157] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(325), - [160] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1479), - [163] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(269), - [166] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(67), - [169] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(589), - [172] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(155), - [175] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(161), - [178] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(346), - [181] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1501), - [184] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1493), - [187] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1492), - [190] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(381), - [193] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(397), - [196] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1482), - [199] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(351), - [202] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(317), - [205] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(869), - [208] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(178), - [211] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(760), - [214] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(760), - [217] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(134), - [220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), - [222] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(926), - [225] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(907), - [228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1360), - [230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), - [232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), - [234] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1), - [236] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(329), - [239] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(299), - [242] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(456), - [245] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(333), - [248] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1496), - [251] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(281), - [254] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(66), - [257] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1494), - [260] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1491), - [263] = {.entry = {.count = 1, .reusable = false}}, SHIFT(687), - [265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), - [267] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(191), - [270] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, .production_id = 1), REDUCE(sym_primary_expression, 1, .production_id = 1), - [273] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(337), - [276] = {.entry = {.count = 1, .reusable = false}}, SHIFT(694), - [278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326), - [280] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, .production_id = 1), - [282] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(615), - [285] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(189), + [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1035), + [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1037), + [85] = {.entry = {.count = 1, .reusable = false}}, SHIFT(423), + [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(338), + [89] = {.entry = {.count = 1, .reusable = false}}, SHIFT(493), + [91] = {.entry = {.count = 1, .reusable = false}}, SHIFT(424), + [93] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1688), + [95] = {.entry = {.count = 1, .reusable = false}}, SHIFT(304), + [97] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), + [99] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1713), + [101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1691), + [103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), + [105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1521), + [107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), + [109] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), + [111] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(462), + [114] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1321), + [117] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1201), + [120] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(162), + [123] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(384), + [126] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(68), + [129] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(406), + [132] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(217), + [135] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(244), + [138] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(184), + [141] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1523), + [144] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1525), + [147] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1531), + [150] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(385), + [153] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(324), + [156] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(508), + [159] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(407), + [162] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1712), + [165] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(288), + [168] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(67), + [171] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(676), + [174] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(157), + [177] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(164), + [180] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(378), + [183] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1619), + [186] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1585), + [189] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1648), + [192] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(367), + [195] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(458), + [198] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1629), + [201] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(342), + [204] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(343), + [207] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1016), + [210] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(174), + [213] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(908), + [216] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(908), + [219] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(134), + [222] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1035), + [225] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1037), + [228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1536), + [230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1, 0, 0), + [232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), + [234] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(423), + [237] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(338), + [240] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(493), + [243] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(424), + [246] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1688), + [249] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(304), + [252] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(66), + [255] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1713), + [258] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1691), + [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), + [263] = {.entry = {.count = 1, .reusable = false}}, SHIFT(774), + [265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), + [267] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(194), + [270] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 1), REDUCE(sym_primary_expression, 1, 0, 1), + [273] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(370), + [276] = {.entry = {.count = 1, .reusable = false}}, SHIFT(773), + [278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), + [280] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 1), + [282] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(675), + [285] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(197), [288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), - [290] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(346), - [293] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(338), - [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(615), - [298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, .production_id = 1), - [300] = {.entry = {.count = 1, .reusable = false}}, SHIFT(868), - [302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, .production_id = 1), - [304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(649), - [306] = {.entry = {.count = 1, .reusable = false}}, SHIFT(649), + [290] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(378), + [293] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(391), + [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(675), + [298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), + [300] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1015), + [302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 1), + [304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(724), + [306] = {.entry = {.count = 1, .reusable = false}}, SHIFT(724), [308] = {.entry = {.count = 1, .reusable = false}}, SHIFT(136), - [310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(913), - [312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(916), - [314] = {.entry = {.count = 1, .reusable = false}}, SHIFT(429), - [316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(536), - [318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), - [322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(533), - [326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), - [330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), - [332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), - [334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), - [338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463), - [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(437), - [346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(461), - [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), - [354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(455), - [358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(539), - [362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(493), - [366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(487), - [370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), - [374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(471), - [378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(550), - [382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(476), - [386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495), - [390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), - [394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), - [398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), - [402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(558), - [406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), - [408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(391), - [410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), - [414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(401), - [418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), - [422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(394), - [426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(465), - [430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(525), - [434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(453), - [438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(547), - [442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(567), - [446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(997), - [450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(477), - [454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(472), - [458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), - [462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(438), - [466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518), - [470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464), - [474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), - [478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(509), - [482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(552), - [486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [488] = {.entry = {.count = 1, .reusable = false}}, SHIFT(730), - [490] = {.entry = {.count = 1, .reusable = false}}, SHIFT(727), - [492] = {.entry = {.count = 1, .reusable = false}}, SHIFT(323), - [494] = {.entry = {.count = 1, .reusable = false}}, SHIFT(140), - [496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(501), - [498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486), - [502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(995), - [506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), - [510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(561), - [514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(511), - [518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(468), - [522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(564), - [526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(563), - [530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(515), - [534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(557), - [538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(399), - [542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), - [546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(508), - [550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(507), - [554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), - [558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), - [560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), - [562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1318), - [564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1383), - [566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), + [310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1044), + [312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1045), + [314] = {.entry = {.count = 1, .reusable = false}}, SHIFT(853), + [316] = {.entry = {.count = 1, .reusable = false}}, SHIFT(826), + [318] = {.entry = {.count = 1, .reusable = false}}, SHIFT(365), + [320] = {.entry = {.count = 1, .reusable = false}}, SHIFT(140), + [322] = {.entry = {.count = 1, .reusable = false}}, SHIFT(465), + [324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1171), + [326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(436), + [330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(550), + [334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(581), + [338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(442), + [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(606), + [346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), + [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), + [354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(489), + [358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(554), + [362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(557), + [366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(454), + [370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(559), + [374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(516), + [378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(520), + [382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(564), + [386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(566), + [390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(567), + [394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523), + [398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(571), + [402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), + [406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(437), + [410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(573), + [414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(546), + [418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(577), + [422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495), + [426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(579), + [430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(541), + [434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(503), + [438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(480), + [442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312), + [446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584), + [450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(527), + [454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), + [458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), + [462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(504), + [466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(589), + [470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459), + [474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(488), + [478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(496), + [482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531), + [486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(593), + [490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(608), + [494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440), + [498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(611), + [502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464), + [506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(506), + [510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(599), + [514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), + [516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(537), + [518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(602), + [522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(444), + [526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451), + [530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(613), + [534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(445), + [538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), + [542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1187), + [546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(543), + [550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(481), + [554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), + [558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), + [560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1515), + [562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1580), + [564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), + [566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), [568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), - [570] = {.entry = {.count = 1, .reusable = false}}, SHIFT(759), - [572] = {.entry = {.count = 1, .reusable = false}}, SHIFT(589), - [574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), - [576] = {.entry = {.count = 1, .reusable = false}}, SHIFT(145), - [578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), - [580] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, .production_id = 1), REDUCE(sym_list_splat_pattern, 2, .production_id = 8), - [583] = {.entry = {.count = 1, .reusable = false}}, SHIFT(656), - [585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372), - [587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, .production_id = 8), - [589] = {.entry = {.count = 1, .reusable = false}}, SHIFT(615), - [591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), - [593] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, .production_id = 8), + [570] = {.entry = {.count = 1, .reusable = false}}, SHIFT(926), + [572] = {.entry = {.count = 1, .reusable = false}}, SHIFT(676), + [574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [576] = {.entry = {.count = 1, .reusable = false}}, SHIFT(149), + [578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), + [580] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), REDUCE(sym_list_splat_pattern, 2, 0, 8), + [583] = {.entry = {.count = 1, .reusable = false}}, SHIFT(723), + [585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), + [587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, 0, 8), + [589] = {.entry = {.count = 1, .reusable = false}}, SHIFT(675), + [591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), + [593] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, 0, 8), [595] = {.entry = {.count = 1, .reusable = false}}, SHIFT(137), - [597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), - [599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), - [601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(600), - [603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), - [605] = {.entry = {.count = 1, .reusable = false}}, SHIFT(139), - [607] = {.entry = {.count = 1, .reusable = false}}, SHIFT(809), - [609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), - [611] = {.entry = {.count = 1, .reusable = false}}, SHIFT(802), - [613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), - [615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(617), - [617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), - [619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), - [621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(809), - [623] = {.entry = {.count = 1, .reusable = false}}, SHIFT(147), - [625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(906), - [627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(915), - [629] = {.entry = {.count = 1, .reusable = false}}, SHIFT(332), - [631] = {.entry = {.count = 1, .reusable = false}}, SHIFT(386), - [633] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 1), - [635] = {.entry = {.count = 1, .reusable = false}}, SHIFT(337), - [637] = {.entry = {.count = 1, .reusable = false}}, SHIFT(338), - [639] = {.entry = {.count = 1, .reusable = false}}, SHIFT(754), - [641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), - [643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451), - [645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), - [647] = {.entry = {.count = 1, .reusable = false}}, SHIFT(729), - [649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [651] = {.entry = {.count = 1, .reusable = false}}, SHIFT(371), - [653] = {.entry = {.count = 1, .reusable = false}}, SHIFT(864), - [655] = {.entry = {.count = 1, .reusable = false}}, SHIFT(152), - [657] = {.entry = {.count = 1, .reusable = false}}, SHIFT(146), - [659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(756), - [661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), - [663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(738), - [665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(796), - [667] = {.entry = {.count = 1, .reusable = false}}, SHIFT(735), - [669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), - [671] = {.entry = {.count = 1, .reusable = false}}, SHIFT(623), - [673] = {.entry = {.count = 1, .reusable = false}}, SHIFT(731), - [675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 3, .production_id = 16), - [677] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 3, .production_id = 16), - [679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [681] = {.entry = {.count = 1, .reusable = false}}, SHIFT(141), - [683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(724), - [685] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, .production_id = 7), - [687] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 2, .production_id = 7), - [689] = {.entry = {.count = 1, .reusable = false}}, SHIFT(692), - [691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), - [693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1442), - [695] = {.entry = {.count = 1, .reusable = false}}, SHIFT(693), - [697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(786), - [699] = {.entry = {.count = 1, .reusable = false}}, SHIFT(138), - [701] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, .production_id = 7), - [703] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 3, .production_id = 16), - [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1394), - [707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(811), - [709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1389), - [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651), - [713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), - [715] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 3, .production_id = 50), - [717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), - [719] = {.entry = {.count = 1, .reusable = false}}, SHIFT(749), - [721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(650), - [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1468), - [725] = {.entry = {.count = 1, .reusable = false}}, SHIFT(747), - [727] = {.entry = {.count = 1, .reusable = false}}, SHIFT(144), - [729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(695), - [731] = {.entry = {.count = 1, .reusable = false}}, SHIFT(825), - [733] = {.entry = {.count = 1, .reusable = false}}, SHIFT(803), - [735] = {.entry = {.count = 1, .reusable = false}}, SHIFT(148), - [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(838), - [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1405), - [741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(757), - [743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1436), - [745] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, .production_id = 24), - [747] = {.entry = {.count = 1, .reusable = false}}, SHIFT(342), - [749] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 1), - [751] = {.entry = {.count = 1, .reusable = false}}, SHIFT(380), - [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(647), - [755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(808), - [757] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 7, .production_id = 141), - [759] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 7, .production_id = 141), - [761] = {.entry = {.count = 1, .reusable = false}}, SHIFT(865), - [763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(644), - [765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(793), - [767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(790), - [769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(767), - [771] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 1), - [773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(641), - [775] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 3, .production_id = 16), - [777] = {.entry = {.count = 1, .reusable = false}}, SHIFT(379), - [779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), - [781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(690), - [783] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, .production_id = 123), - [785] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, .production_id = 123), - [787] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, .production_id = 122), - [789] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, .production_id = 122), - [791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(818), - [793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(815), - [795] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, .production_id = 98), - [797] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 5, .production_id = 98), - [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(794), - [801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(806), - [803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(703), - [805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(805), - [807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(779), - [809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(782), - [811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(697), - [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(784), - [815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(648), - [817] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 2, .production_id = 7), - [819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), - [821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), - [823] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 3, .production_id = 16), - [825] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, .production_id = 33), - [827] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, .production_id = 7), - [829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(646), - [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(834), - [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(776), - [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(645), - [837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(819), - [839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(821), - [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(780), - [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(634), - [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(775), - [847] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 4, .production_id = 56), - [849] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 4, .production_id = 56), - [851] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1439), - [853] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1429), - [855] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1503), - [857] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 1), - [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), - [861] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 4, .production_id = 70), - [863] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 4, .production_id = 70), - [865] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, .production_id = 40), - [867] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 3, .production_id = 40), - [869] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, .production_id = 69), - [871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273), - [873] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, .production_id = 81), - [875] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, .production_id = 81), - [877] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1452), - [879] = {.entry = {.count = 1, .reusable = false}}, SHIFT(277), - [881] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1449), - [883] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1495), - [885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), - [887] = {.entry = {.count = 1, .reusable = false}}, SHIFT(267), - [889] = {.entry = {.count = 1, .reusable = false}}, SHIFT(778), - [891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), - [893] = {.entry = {.count = 1, .reusable = false}}, SHIFT(762), - [895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), - [897] = {.entry = {.count = 1, .reusable = false}}, SHIFT(370), - [899] = {.entry = {.count = 1, .reusable = false}}, SHIFT(866), - [901] = {.entry = {.count = 1, .reusable = false}}, SHIFT(143), - [903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), - [905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), - [907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, .production_id = 10), - [909] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, .production_id = 68), - [911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), - [913] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, .production_id = 29), - [915] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, .production_id = 28), - [917] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, .production_id = 69), - [919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1395), - [921] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, .production_id = 95), - [923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1425), - [925] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2), - [927] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3), - [929] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2), - [931] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2), - [933] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2), SHIFT_REPEAT(267), - [936] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, .production_id = 76), - [938] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, .production_id = 76), - [940] = {.entry = {.count = 1, .reusable = false}}, SHIFT(318), - [942] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, .production_id = 77), - [944] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, .production_id = 77), - [946] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2), - [948] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat2, 2), - [950] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2), SHIFT_REPEAT(1495), - [953] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2), SHIFT_REPEAT(277), - [956] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 2), - [958] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 2), - [960] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2), - [962] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2), - [964] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 3), - [966] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 3), - [968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(458), - [970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), - [972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1502), - [974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(467), - [976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), - [978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1414), - [980] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, .production_id = 54), - [982] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, .production_id = 54), - [984] = {.entry = {.count = 1, .reusable = false}}, SHIFT(365), - [986] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 4), - [988] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 4), - [990] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 1), - [992] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 1), - [994] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2), SHIFT_REPEAT(1429), - [997] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, .production_id = 102), - [999] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, .production_id = 102), - [1001] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, .production_id = 100), - [1003] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, .production_id = 100), - [1005] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, .production_id = 100), SHIFT_REPEAT(365), - [1008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(932), - [1010] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, .production_id = 100), SHIFT_REPEAT(318), - [1013] = {.entry = {.count = 1, .reusable = false}}, SHIFT(416), - [1015] = {.entry = {.count = 1, .reusable = false}}, SHIFT(442), - [1017] = {.entry = {.count = 1, .reusable = false}}, SHIFT(135), - [1019] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cases, 1), - [1021] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cases, 1), - [1023] = {.entry = {.count = 1, .reusable = false}}, SHIFT(733), - [1025] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 7, .production_id = 163), - [1027] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 7, .production_id = 163), - [1029] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 7, .production_id = 164), - [1031] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 7, .production_id = 164), - [1033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, .production_id = 130), - [1035] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, .production_id = 130), - [1037] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 5, .production_id = 148), - [1039] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 5, .production_id = 148), - [1041] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 5, .production_id = 147), - [1043] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 5, .production_id = 147), - [1045] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1258), - [1047] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 6, .production_id = 157), - [1049] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 6, .production_id = 157), - [1051] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 6, .production_id = 158), - [1053] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 6, .production_id = 158), - [1055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 8, .production_id = 165), - [1057] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 8, .production_id = 165), - [1059] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, .production_id = 81), - [1061] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, .production_id = 81), - [1063] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_cases_repeat1, 2), - [1065] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2), - [1067] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2), SHIFT_REPEAT(728), - [1070] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 3, .production_id = 56), - [1072] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 3, .production_id = 56), - [1074] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2), SHIFT_REPEAT(733), - [1077] = {.entry = {.count = 1, .reusable = false}}, SHIFT(728), - [1079] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, .production_id = 81), - [1081] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, .production_id = 81), - [1083] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1), - [1085] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1), REDUCE(sym_list_splat_pattern, 2, .production_id = 9), - [1088] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1), - [1090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), - [1092] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, .production_id = 9), - [1094] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, .production_id = 9), - [1096] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 1, .production_id = 74), - [1098] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 1, .production_id = 74), - [1100] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, .production_id = 125), - [1102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, .production_id = 125), - [1104] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 5, .production_id = 77), - [1106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 5, .production_id = 77), - [1108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 4, .production_id = 55), - [1110] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 4, .production_id = 55), - [1112] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, .production_id = 129), - [1114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, .production_id = 129), - [1116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 3, .production_id = 50), - [1118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(623), - [1120] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, .production_id = 105), - [1122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, .production_id = 105), - [1124] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, .production_id = 56), - [1126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, .production_id = 56), - [1128] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, .production_id = 80), - [1130] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, .production_id = 80), - [1132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 4, .production_id = 54), - [1134] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 4, .production_id = 54), - [1136] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, .production_id = 143), - [1138] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, .production_id = 143), - [1140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, .production_id = 24), - [1142] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1), REDUCE(sym_primary_expression, 1), - [1145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), - [1147] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1), - [1149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1), - [1151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1209), - [1153] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2), - [1155] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_list_pattern, 2), REDUCE(sym_list, 2), - [1158] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2), - [1160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 2), - [1162] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_pattern, 2), - [1164] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 6, .production_id = 159), - [1166] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 6, .production_id = 159), - [1168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 2), - [1170] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_tuple_pattern, 2), REDUCE(sym_tuple, 2), - [1173] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 2), - [1175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 2), - [1177] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 2), - [1179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, .production_id = 151), - [1181] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, .production_id = 151), - [1183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, .production_id = 150), - [1185] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, .production_id = 150), - [1187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 4, .production_id = 81), - [1189] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 4, .production_id = 81), - [1191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 3, .production_id = 56), - [1193] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 3, .production_id = 56), - [1195] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 4, .production_id = 134), - [1197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 4, .production_id = 134), - [1199] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, .production_id = 90), - [1201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, .production_id = 90), - [1203] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, .production_id = 145), - [1205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, .production_id = 145), - [1207] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, .production_id = 144), - [1209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, .production_id = 144), - [1211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 3, .production_id = 56), - [1213] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 3, .production_id = 56), - [1215] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, .production_id = 142), - [1217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, .production_id = 142), - [1219] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 7, .production_id = 139), - [1221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 7, .production_id = 139), - [1223] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, .production_id = 138), - [1225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, .production_id = 138), - [1227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 4, .production_id = 64), - [1229] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 4, .production_id = 64), - [1231] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, .production_id = 137), - [1233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, .production_id = 137), - [1235] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 7, .production_id = 81), - [1237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 7, .production_id = 81), - [1239] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 4, .production_id = 81), - [1241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 4, .production_id = 81), - [1243] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, .production_id = 128), - [1245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, .production_id = 128), - [1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, .production_id = 60), - [1249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, .production_id = 60), - [1251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 10, .production_id = 162), - [1253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 10, .production_id = 162), - [1255] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, .production_id = 127), - [1257] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, .production_id = 127), - [1259] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, .production_id = 126), - [1261] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, .production_id = 126), - [1263] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, .production_id = 124), - [1265] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, .production_id = 124), - [1267] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, .production_id = 118), - [1269] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, .production_id = 118), - [1271] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, .production_id = 117), - [1273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, .production_id = 117), - [1275] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, .production_id = 116), - [1277] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, .production_id = 116), - [1279] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, .production_id = 115), - [1281] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, .production_id = 115), - [1283] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, .production_id = 114), - [1285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, .production_id = 114), - [1287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, .production_id = 161), - [1289] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, .production_id = 161), - [1291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, .production_id = 56), - [1293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, .production_id = 56), - [1295] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, .production_id = 156), - [1297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, .production_id = 156), - [1299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, .production_id = 75), - [1301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, .production_id = 75), - [1303] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, .production_id = 155), - [1305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, .production_id = 155), - [1307] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 6, .production_id = 106), - [1309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 6, .production_id = 106), - [1311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, .production_id = 152), - [1313] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, .production_id = 152), - [1315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, .production_id = 78), - [1317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, .production_id = 78), - [1319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 4, .production_id = 57), - [1321] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 4, .production_id = 57), - [1323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, .production_id = 153), - [1325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, .production_id = 153), - [1327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, .production_id = 104), - [1329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, .production_id = 104), - [1331] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, .production_id = 79), - [1333] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, .production_id = 79), - [1335] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 6, .production_id = 103), - [1337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 6, .production_id = 103), - [1339] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, .production_id = 101), - [1341] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, .production_id = 101), - [1343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, .production_id = 99), - [1345] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, .production_id = 99), - [1347] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorated_definition, 2, .production_id = 19), - [1349] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decorated_definition, 2, .production_id = 19), - [1351] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, .production_id = 82), - [1353] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, .production_id = 82), - [1355] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, .production_id = 59), - [1357] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, .production_id = 59), - [1359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, .production_id = 146), - [1361] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, .production_id = 146), - [1363] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, .production_id = 91), - [1365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, .production_id = 91), - [1367] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 9, .production_id = 154), - [1369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 9, .production_id = 154), - [1371] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, .production_id = 89), - [1373] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, .production_id = 89), - [1375] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, .production_id = 87), - [1377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, .production_id = 87), - [1379] = {.entry = {.count = 1, .reusable = false}}, SHIFT(740), - [1381] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_separator, 1), - [1383] = {.entry = {.count = 1, .reusable = false}}, SHIFT(732), - [1385] = {.entry = {.count = 1, .reusable = false}}, SHIFT(142), - [1387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2), - [1389] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2), - [1391] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2), SHIFT_REPEAT(916), - [1394] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_template_string, 2), - [1396] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_template_string, 2), - [1398] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_string, 2), - [1400] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_string, 2), - [1402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), - [1404] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), - [1406] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(913), - [1409] = {.entry = {.count = 1, .reusable = false}}, SHIFT(592), - [1411] = {.entry = {.count = 1, .reusable = false}}, SHIFT(588), - [1413] = {.entry = {.count = 1, .reusable = false}}, SHIFT(585), - [1415] = {.entry = {.count = 1, .reusable = false}}, SHIFT(625), - [1417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3, .production_id = 20), - [1419] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 3, .production_id = 20), - [1421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 3, .production_id = 20), - [1423] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 3, .production_id = 20), - [1425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2, .production_id = 2), - [1427] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 2, .production_id = 2), - [1429] = {.entry = {.count = 1, .reusable = false}}, SHIFT(859), - [1431] = {.entry = {.count = 1, .reusable = false}}, SHIFT(852), - [1433] = {.entry = {.count = 1, .reusable = false}}, SHIFT(216), - [1435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 2, .production_id = 2), - [1437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 2, .production_id = 2), - [1439] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3), - [1441] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3), - [1443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 3, .production_id = 25), - [1445] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 3, .production_id = 25), - [1447] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, .production_id = 61), - [1449] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, .production_id = 61), - [1451] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, .production_id = 61), - [1453] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, .production_id = 61), - [1455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_comprehension, 4, .production_id = 51), - [1457] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_comprehension, 4, .production_id = 51), - [1459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, .production_id = 31), - [1461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, .production_id = 31), - [1463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, .production_id = 61), - [1465] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, .production_id = 61), - [1467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_comprehension, 4, .production_id = 51), - [1469] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_comprehension, 4, .production_id = 51), - [1471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generator_expression, 4, .production_id = 51), - [1473] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generator_expression, 4, .production_id = 51), - [1475] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_comprehension, 4, .production_id = 51), - [1477] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary_comprehension, 4, .production_id = 51), - [1479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, .production_id = 93), - [1481] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, .production_id = 93), - [1483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, .production_id = 67), - [1485] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, .production_id = 67), - [1487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 2, .production_id = 17), - [1489] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 2, .production_id = 17), - [1491] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, .production_id = 31), - [1493] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, .production_id = 31), - [1495] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 5, .production_id = 61), - [1497] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 5, .production_id = 61), - [1499] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, .production_id = 93), - [1501] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, .production_id = 93), - [1503] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 2), - [1505] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 2), - [1507] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 2), - [1509] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 2), - [1511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1412), - [1513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), - [1515] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1), - [1517] = {.entry = {.count = 1, .reusable = false}}, SHIFT(579), - [1519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(606), - [1521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(596), - [1523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(610), - [1525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(613), - [1527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), - [1529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(614), - [1531] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1), - [1533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(579), - [1535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1399), - [1537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(618), - [1539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(622), - [1541] = {.entry = {.count = 1, .reusable = false}}, SHIFT(596), - [1543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(578), - [1545] = {.entry = {.count = 1, .reusable = false}}, SHIFT(626), - [1547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(593), - [1549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(583), - [1551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(603), - [1553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(591), - [1555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(628), - [1557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(626), - [1559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1417), - [1561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(621), - [1563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(605), - [1565] = {.entry = {.count = 1, .reusable = false}}, SHIFT(583), - [1567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(576), - [1569] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, .production_id = 67), - [1571] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, .production_id = 67), - [1573] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, .production_id = 31), - [1575] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, .production_id = 31), - [1577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3), - [1579] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3), - [1581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set, 3, .production_id = 25), - [1583] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set, 3, .production_id = 25), - [1585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3, .production_id = 31), - [1587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3, .production_id = 31), - [1589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, .production_id = 26), - [1591] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, .production_id = 26), - [1593] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3, .production_id = 25), - [1595] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3, .production_id = 25), - [1597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_operator, 3, .production_id = 39), - [1599] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_operator, 3, .production_id = 39), - [1601] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 41), - [1603] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 41), - [1605] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, .production_id = 71), - [1607] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, .production_id = 71), - [1609] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, .production_id = 72), - [1611] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, .production_id = 72), - [1613] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_await, 2), - [1615] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_await, 2), - [1617] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_operator, 2, .production_id = 13), - [1619] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_operator, 2, .production_id = 13), - [1621] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2), SHIFT_REPEAT(915), - [1624] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(906), - [1627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(387), - [1629] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2), SHIFT_REPEAT(907), - [1632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1481), - [1634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), - [1636] = {.entry = {.count = 1, .reusable = false}}, SHIFT(602), - [1638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(604), - [1640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(607), - [1642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(609), - [1644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(611), - [1646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), - [1648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(612), - [1650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(602), - [1652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1483), - [1654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(616), - [1656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(619), - [1658] = {.entry = {.count = 1, .reusable = false}}, SHIFT(607), - [1660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(577), - [1662] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(926), - [1665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1398), - [1667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), - [1669] = {.entry = {.count = 1, .reusable = false}}, SHIFT(601), - [1671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(599), - [1673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(598), - [1675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(597), - [1677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(620), - [1679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), - [1681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(608), - [1683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(601), - [1685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1424), - [1687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(594), - [1689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(587), - [1691] = {.entry = {.count = 1, .reusable = false}}, SHIFT(598), - [1693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(575), - [1695] = {.entry = {.count = 1, .reusable = false}}, SHIFT(882), - [1697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(765), - [1699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1214), - [1701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1361), - [1703] = {.entry = {.count = 1, .reusable = false}}, SHIFT(980), - [1705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(766), - [1707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(851), - [1709] = {.entry = {.count = 1, .reusable = false}}, SHIFT(917), - [1711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(917), - [1713] = {.entry = {.count = 1, .reusable = false}}, SHIFT(977), - [1715] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 3), - [1717] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 3), - [1719] = {.entry = {.count = 1, .reusable = false}}, SHIFT(331), - [1721] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 2), - [1723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 2), - [1725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(965), - [1727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(949), - [1729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(952), - [1731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), - [1733] = {.entry = {.count = 1, .reusable = false}}, SHIFT(981), - [1735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(946), - [1737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(957), - [1739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(966), - [1741] = {.entry = {.count = 1, .reusable = false}}, SHIFT(956), - [1743] = {.entry = {.count = 1, .reusable = false}}, SHIFT(939), - [1745] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), - [1747] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(596), - [1750] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), - [1752] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(1399), - [1755] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(596), - [1758] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(578), - [1761] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparison_operator, 2, .production_id = 18), - [1763] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison_operator, 2, .production_id = 18), - [1765] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(583), - [1768] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(1417), - [1771] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(583), - [1774] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(576), - [1777] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, .production_id = 36), - [1779] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, .production_id = 36), SHIFT_REPEAT(482), - [1782] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 3, .production_id = 25), - [1784] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1341), - [1786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(948), - [1788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1342), - [1790] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, .production_id = 31), - [1792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(962), - [1794] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(607), - [1797] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(1483), - [1800] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(607), - [1803] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(577), - [1806] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 3, .production_id = 25), - [1808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(954), - [1810] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, .production_id = 34), - [1812] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(598), - [1815] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(1424), - [1818] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(598), - [1821] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(575), - [1824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), - [1826] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, .production_id = 16), - [1828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1271), - [1830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(441), - [1832] = {.entry = {.count = 1, .reusable = false}}, SHIFT(568), - [1834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), - [1836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(595), - [1838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1268), - [1840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), - [1842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(343), - [1844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), - [1846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), - [1848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), - [1850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), - [1852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), - [1854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), - [1856] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1157), - [1858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1334), - [1860] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 3), - [1862] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 2), - [1864] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_not_operator, 2, .production_id = 10), - [1866] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_not_operator, 2, .production_id = 10), - [1868] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2), - [1870] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2), SHIFT_REPEAT(1418), - [1873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1418), - [1875] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 1), - [1877] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_capture_pattern, 1), - [1879] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, .production_id = 27), - [1881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), - [1883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), - [1885] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, .production_id = 27), - [1887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(354), - [1889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), - [1891] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 2), - [1893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), - [1895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), - [1897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), - [1899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), - [1901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385), - [1903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1498), - [1905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), - [1907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 1, .production_id = 7), - [1909] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 3, .production_id = 32), - [1911] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 3, .production_id = 32), - [1913] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 4, .production_id = 66), - [1915] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_expression, 5), - [1917] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1), - [1919] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, .production_id = 35), - [1921] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, .production_id = 35), - [1923] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_operator, 3, .production_id = 39), - [1925] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_operator, 3, .production_id = 39), - [1927] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_expression, 5), - [1929] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 2), - [1931] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_value_pattern, 2), - [1933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(817), - [1935] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_with_item, 1, .dynamic_precedence = -1, .production_id = 12), SHIFT(176), - [1938] = {.entry = {.count = 1, .reusable = false}}, SHIFT(504), - [1940] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 4, .production_id = 66), - [1942] = {.entry = {.count = 1, .reusable = false}}, SHIFT(172), - [1944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1037), - [1946] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1037), - [1948] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), - [1950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(709), - [1952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(725), - [1954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(763), - [1956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), - [1958] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat, 2, .production_id = 14), - [1960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(655), - [1962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), - [1964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584), - [1966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726), - [1968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(719), - [1970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(624), - [1972] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1, .production_id = 83), - [1974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1336), - [1976] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, .production_id = 21), SHIFT_REPEAT(172), - [1979] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, .production_id = 21), SHIFT_REPEAT(1037), - [1982] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, .production_id = 21), SHIFT_REPEAT(1037), - [1985] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, .production_id = 21), - [1987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(716), - [1989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715), - [1991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(580), - [1993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(581), - [1995] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 2, .production_id = 107), - [1997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1366), - [1999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1199), - [2001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(755), - [2003] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 3), - [2005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(743), - [2007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(660), - [2009] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, .production_id = 31), - [2011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1195), - [2013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(801), - [2015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), - [2017] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat, 2), - [2019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(798), - [2021] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 1), - [2023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375), - [2025] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_within_for_in_clause, 1), - [2027] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 4), - [2029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(842), - [2031] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 3), - [2033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__f_expression, 1), - [2035] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), - [2037] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), SHIFT_REPEAT(375), - [2040] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), SHIFT_REPEAT(1498), - [2043] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), SHIFT_REPEAT(449), - [2046] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 2), - [2048] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2), - [2050] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2), SHIFT_REPEAT(842), - [2053] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 3, .production_id = 136), - [2055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_group_pattern, 3, .production_id = 131), - [2057] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 2), - [2059] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 4), - [2061] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 4, .production_id = 136), - [2063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), - [2065] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), - [2067] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 5), - [2069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), - [2071] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 5), - [2073] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 5, .production_id = 136), - [2075] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, .production_id = 36), - [2077] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, .production_id = 36), SHIFT_REPEAT(235), - [2080] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 4, .production_id = 149), - [2082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1485), - [2084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1494), - [2086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1491), - [2088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1505), - [2090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1501), - [2092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1482), - [2094] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 4), - [2096] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 6), - [2098] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 2), - [2100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 6, .production_id = 136), - [2102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_clause, 2), - [2104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 7), - [2106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 7, .production_id = 136), - [2108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 4, .production_id = 98), - [2110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), - [2112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 8, .production_id = 136), - [2114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 9, .production_id = 136), - [2116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2), - [2118] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2), SHIFT_REPEAT(270), - [2121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, .production_id = 141), - [2123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), - [2125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_or_pattern, 1), - [2127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(843), - [2129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(841), - [2131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, .production_id = 16), - [2133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), - [2135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 3), - [2137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), - [2139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, .production_id = 122), - [2141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), - [2143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, .production_id = 123), - [2145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [2147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), - [2149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), - [2151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 2), - [2153] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 3, .production_id = 132), - [2155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 3), - [2157] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, .production_id = 31), - [2159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), - [2161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), - [2163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(349), - [2165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), - [2167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1503), - [2169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), - [2171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1449), - [2173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 1, .dynamic_precedence = -1, .production_id = 12), - [2175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(504), - [2177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340), - [2179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), - [2181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [2183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1062), - [2185] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1477), - [2187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1484), - [2189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_statement, 2, .production_id = 11), - [2191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), - [2193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(829), - [2195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pair, 3, .production_id = 62), - [2197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), - [2199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 4, .production_id = 15), - [2201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 2), - [2203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), - [2205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, .production_id = 10), - [2207] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1039), - [2209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1171), - [2211] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1427), - [2213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_pattern, 1), - [2215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1500), - [2217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), - [2219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(789), - [2221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 3, .production_id = 32), - [2223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1), - [2225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 4, .production_id = 66), - [2227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), - [2229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(659), - [2231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__right_hand_side, 1), - [2233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1041), - [2235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1127), - [2237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1340), - [2239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2), - [2241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 1), - [2243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378), - [2245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), - [2247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), - [2249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), - [2251] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2), - [2253] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2), SHIFT_REPEAT(1035), - [2256] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2), SHIFT_REPEAT(1035), - [2259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2), - [2261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), - [2263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [2265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_content, 1), - [2267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1035), - [2269] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1035), - [2271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_content, 1), - [2273] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2), SHIFT_REPEAT(1486), - [2276] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 1), - [2278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [2280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1486), - [2282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__index_expression, 1), - [2284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), - [2286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_bound, 2, .production_id = 109), - [2288] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 4, .production_id = 43), - [2290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 4, .production_id = 43), - [2292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2), - [2294] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2), SHIFT_REPEAT(351), - [2297] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, .production_id = 3), - [2299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, .production_id = 3), - [2301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 2), - [2303] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 5, .production_id = 43), - [2305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 5, .production_id = 43), - [2307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, .production_id = 68), - [2309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), - [2311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), - [2313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1147), - [2315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_chevron, 2), - [2317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, .production_id = 4), - [2319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, .production_id = 4), - [2321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [2323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 3, .production_id = 43), - [2325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 3, .production_id = 43), - [2327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2), - [2329] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2), SHIFT_REPEAT(807), - [2332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_parameter, 3, .production_id = 35), - [2334] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_default_parameter, 5, .production_id = 119), - [2336] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_as_pattern, 3, .production_id = 135), - [2338] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 1, .production_id = 6), - [2340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), - [2342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), - [2344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, .production_id = 31), - [2346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [2348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1138), - [2350] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 6, .production_id = 43), - [2352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 6, .production_id = 43), - [2354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2), - [2356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, .production_id = 10), - [2358] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, .production_id = 95), - [2360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), - [2362] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 2), - [2364] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2), SHIFT_REPEAT(173), - [2367] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2), SHIFT_REPEAT(1072), - [2370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1129), - [2372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_param_default, 2, .production_id = 110), - [2374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1098), - [2376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1056), - [2378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1179), - [2380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1270), - [2382] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, .production_id = 16), - [2384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [2386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), - [2388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), - [2390] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, .production_id = 6), - [2392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 3, .production_id = 30), - [2394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), - [2396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), - [2398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), - [2400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1016), - [2402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, .production_id = 120), - [2404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_star_pattern, 2, .production_id = 11), - [2406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, .production_id = 121), - [2408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1241), - [2410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1139), - [2412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1266), - [2414] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 5, .production_id = 140), - [2416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 4, .production_id = 53), - [2418] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, .production_id = 27), - [2420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 4, .production_id = 63), - [2422] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 5, .production_id = 88), - [2424] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, .production_id = 36), SHIFT_REPEAT(230), - [2427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 3, .production_id = 22), - [2429] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 1), - [2431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), - [2433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1104), - [2435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, .production_id = 36), - [2437] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, .production_id = 36), SHIFT_REPEAT(224), - [2440] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, .production_id = 94), - [2442] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, .production_id = 31), - [2444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [2446] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 2), - [2448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1072), - [2450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1080), - [2452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1487), - [2454] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 1, .production_id = 6), - [2456] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, .production_id = 35), - [2458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(871), - [2460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), - [2462] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2), - [2464] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2), SHIFT_REPEAT(356), - [2467] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, .production_id = 52), SHIFT_REPEAT(339), - [2470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, .production_id = 52), - [2472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), - [2474] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_import_prefix_repeat1, 2), - [2476] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_prefix_repeat1, 2), SHIFT_REPEAT(1114), - [2479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2), - [2481] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2), SHIFT_REPEAT(288), - [2484] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, .production_id = 16), - [2486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(423), - [2488] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_parameter, 3, .production_id = 65), - [2490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), - [2492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, .production_id = 49), - [2494] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3), - [2496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), - [2498] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, .production_id = 28), - [2500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [2502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), - [2504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1039), - [2506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [2508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), - [2510] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, .production_id = 29), - [2512] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 44), SHIFT_REPEAT(1244), - [2515] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 44), - [2517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 23), - [2519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1101), - [2521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, .production_id = 22), - [2523] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 3), - [2525] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2), SHIFT_REPEAT(1411), - [2528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2), - [2530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(728), - [2532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1191), - [2534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1287), - [2536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1173), - [2538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(737), - [2540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), - [2542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1411), - [2544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 2), - [2546] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 2), - [2548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1097), - [2550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(733), - [2552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), - [2554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), - [2556] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, .production_id = 36), SHIFT_REPEAT(340), - [2559] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, .production_id = 36), - [2561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), - [2563] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 3), - [2565] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 3), - [2567] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1), - [2569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), - [2571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), - [2573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [2575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), - [2577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), - [2579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), - [2581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), - [2583] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_guard, 2, .production_id = 133), - [2585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 5, .production_id = 15), - [2587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [2589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), - [2591] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_prefix, 1), - [2593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1114), - [2595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1146), - [2597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1421), - [2599] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorator, 3), - [2601] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 2, .production_id = 23), - [2603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 2, .production_id = 23), - [2605] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, .production_id = 84), - [2607] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 1, .production_id = 7), - [2609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), - [2611] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exception_list, 2, .production_id = 16), - [2613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1044), - [2615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1252), - [2617] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, .production_id = 36), SHIFT_REPEAT(253), - [2620] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, .production_id = 36), - [2622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), - [2624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), - [2626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(324), - [2628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [2630] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_maybe_star_pattern, 1), - [2632] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_patterns, 1), - [2634] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 3, .production_id = 86), - [2636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1004), - [2638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1292), - [2640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(812), - [2642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), - [2644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(814), - [2646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), - [2648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(950), - [2650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1300), - [2652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(816), - [2654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), - [2656] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, .production_id = 36), - [2658] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, .production_id = 36), SHIFT_REPEAT(212), - [2661] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2), SHIFT_REPEAT(133), - [2664] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2), - [2666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(876), - [2668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(810), - [2670] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, .production_id = 36), SHIFT_REPEAT(226), - [2673] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, .production_id = 36), - [2675] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2), SHIFT_REPEAT(870), - [2678] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2), - [2680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), - [2682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(822), - [2684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(824), - [2686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), - [2688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(768), - [2690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(983), - [2692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), - [2694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(827), - [2696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), - [2698] = {.entry = {.count = 1, .reusable = true}}, SHIFT(833), - [2700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [2702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), - [2704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), - [2706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1372), - [2708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1250), - [2710] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1070), - [2712] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1086), - [2714] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 44), SHIFT_REPEAT(1190), - [2717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [2719] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, .production_id = 37), - [2721] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_relative_import, 1), - [2723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1475), - [2725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(975), - [2727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), - [2729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), - [2731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), - [2733] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 1), - [2735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(873), - [2737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(764), - [2739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), - [2741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), - [2743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(774), - [2745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), - [2747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(773), - [2749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(974), - [2751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1221), - [2753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), - [2755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), - [2757] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 1), - [2759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), - [2761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1186), - [2763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(971), - [2765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1236), - [2767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(422), - [2769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), - [2771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(758), - [2773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), - [2775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(635), - [2777] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, .production_id = 113), SHIFT_REPEAT(1004), - [2780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, .production_id = 113), - [2782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), - [2784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(639), - [2786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1048), - [2788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(872), - [2790] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 1, .production_id = 73), - [2792] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 1, .production_id = 73), - [2794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), - [2796] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 2, .production_id = 15), - [2798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), - [2800] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, .production_id = 16), - [2802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), - [2804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(654), - [2806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), - [2808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), - [2810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(795), - [2812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), - [2814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(783), - [2816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), - [2818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1163), - [2820] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_positional_separator, 1), - [2822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), - [2824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(772), - [2826] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 2), - [2828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(855), - [2830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(991), - [2832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1508), - [2834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), - [2836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(823), - [2838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(875), - [2840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), - [2842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), - [2844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), - [2846] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2), - [2848] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(878), - [2851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(643), - [2853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), - [2855] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(877), - [2858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(640), - [2860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), - [2862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(632), - [2864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), - [2866] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1245), - [2868] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aliased_import, 3, .production_id = 45), - [2870] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), - [2872] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 4, .production_id = 112), - [2874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), - [2876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), - [2878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1308), - [2880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(785), - [2882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), - [2884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), - [2886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), - [2888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(858), - [2890] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2), - [2892] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2), SHIFT_REPEAT(1351), - [2895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1122), - [2897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1123), - [2899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1165), - [2901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266), - [2903] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 3, .dynamic_precedence = -1, .production_id = 58), - [2905] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2), - [2907] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2), SHIFT_REPEAT(839), - [2910] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 6, .production_id = 97), - [2912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1457), - [2914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(964), - [2916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pass_statement, 1), - [2918] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 1), - [2920] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_statement, 1), - [2922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [2924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), - [2926] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 3, .production_id = 108), - [2928] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 3, .production_id = 108), - [2930] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 3, .production_id = 111), - [2932] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_keyword_pattern, 3, .production_id = 160), - [2934] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, .production_id = 86), - [2936] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2), - [2938] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, .production_id = 48), - [2940] = {.entry = {.count = 1, .reusable = false}}, SHIFT(990), - [2942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(990), - [2944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1388), - [2946] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, .production_id = 47), - [2948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1509), - [2950] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_wildcard_import, 1), - [2952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1070), - [2954] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 4, .production_id = 46), - [2956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), - [2958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), - [2960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [2962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), - [2964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [2966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), - [2968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [2970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), - [2972] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 2, .production_id = 5), - [2974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [2976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), - [2978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), - [2980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), - [2982] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_augmented_assignment, 3, .production_id = 39), - [2984] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, .production_id = 38), - [2986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), - [2988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), - [2990] = {.entry = {.count = 1, .reusable = false}}, SHIFT(924), - [2992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(924), - [2994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(750), - [2996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3), - [2998] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, .production_id = 85), - [3000] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 5, .production_id = 92), - [3002] = {.entry = {.count = 1, .reusable = false}}, SHIFT(959), - [3004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(959), - [3006] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, .production_id = 67), - [3008] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_double_star_pattern, 2, .production_id = 11), - [3010] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, .production_id = 31), - [3012] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_positional_pattern, 1), - [3014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(947), - [3016] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, .production_id = 31), - [3018] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 6, .production_id = 96), - [3020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(771), - [3022] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_key_value_pattern, 3, .production_id = 62), - [3024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), - [3026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1381), - [3028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(658), - [3030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(629), - [3032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(661), - [3034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(820), - [3036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), - [3038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(800), - [3040] = {.entry = {.count = 1, .reusable = true}}, SHIFT(828), - [3042] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 5), - [3044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(831), - [3046] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), - [3048] = {.entry = {.count = 1, .reusable = true}}, SHIFT(836), - [3050] = {.entry = {.count = 1, .reusable = true}}, SHIFT(627), - [3052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(837), - [3054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(835), - [3056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), - [3058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(832), - [3060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(830), - [3062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(826), - [3064] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [3066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1067), - [3068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(797), - [3070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1262), - [3072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), - [3074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), - [3076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1136), - [3078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), - [3080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(849), - [3082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(586), - [3084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894), - [3086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(804), - [3088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1028), - [3090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1374), - [3092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), - [3094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(590), - [3096] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 4), - [3098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(637), - [3100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1074), - [3102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1137), - [3104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), - [3106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [3108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1148), - [3110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(857), - [3112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282), - [3114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(761), - [3116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(792), - [3118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [3120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), - [3122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(633), - [3124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(791), - [3126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), - [3128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(777), - [3130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1311), - [3132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327), - [3134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [3136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), - [3138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [3140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [3142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(636), - [3144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(787), - [3146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(968), - [3148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), - [3150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [3152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638), - [3154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(769), - [3156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), - [3158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), - [3160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [3162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(799), - [3164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(657), - [3166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(840), - [3168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), - [3170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1363), - [3172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_parameters, 1), - [3174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1174), - [3176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [3178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [3180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630), - [3182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(443), - [3184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1103), - [3186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(582), - [3188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1175), - [3190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1107), - [3192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1290), - [3194] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [3196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relative_import, 2, .production_id = 23), - [3198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1084), - [3200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1143), - [3202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1144), - [3204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1108), - [3206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [3208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1254), - [3210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447), - [3212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(781), - [3214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1061), - [3216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1153), - [3218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1149), - [3220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), - [3222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), - [3224] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 3), + [597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), + [599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), + [601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(657), + [603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), + [605] = {.entry = {.count = 1, .reusable = false}}, SHIFT(143), + [607] = {.entry = {.count = 1, .reusable = false}}, SHIFT(924), + [609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), + [611] = {.entry = {.count = 1, .reusable = false}}, SHIFT(938), + [613] = {.entry = {.count = 1, .reusable = false}}, SHIFT(392), + [615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(679), + [617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), + [619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), + [621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(924), + [623] = {.entry = {.count = 1, .reusable = false}}, SHIFT(145), + [625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1059), + [627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1056), + [629] = {.entry = {.count = 1, .reusable = false}}, SHIFT(953), + [631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), + [633] = {.entry = {.count = 1, .reusable = false}}, SHIFT(963), + [635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), + [637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(677), + [639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), + [641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(953), + [645] = {.entry = {.count = 1, .reusable = false}}, SHIFT(150), + [647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1050), + [649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1051), + [651] = {.entry = {.count = 1, .reusable = false}}, SHIFT(372), + [653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), + [655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), + [657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(692), + [659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), + [661] = {.entry = {.count = 1, .reusable = false}}, SHIFT(152), + [663] = {.entry = {.count = 1, .reusable = false}}, SHIFT(849), + [665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), + [667] = {.entry = {.count = 1, .reusable = false}}, SHIFT(662), + [669] = {.entry = {.count = 1, .reusable = false}}, SHIFT(855), + [671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, 0, 7), + [673] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 2, 0, 7), + [675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), + [677] = {.entry = {.count = 1, .reusable = false}}, SHIFT(142), + [679] = {.entry = {.count = 1, .reusable = false}}, SHIFT(858), + [681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), + [683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), + [685] = {.entry = {.count = 1, .reusable = false}}, SHIFT(864), + [687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(513), + [691] = {.entry = {.count = 1, .reusable = false}}, SHIFT(340), + [693] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1014), + [695] = {.entry = {.count = 1, .reusable = false}}, SHIFT(168), + [697] = {.entry = {.count = 1, .reusable = false}}, SHIFT(148), + [699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 3, 0, 16), + [701] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 3, 0, 16), + [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(838), + [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(925), + [707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(919), + [709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502), + [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(857), + [713] = {.entry = {.count = 1, .reusable = false}}, SHIFT(842), + [715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1678), + [719] = {.entry = {.count = 1, .reusable = false}}, SHIFT(370), + [721] = {.entry = {.count = 1, .reusable = false}}, SHIFT(863), + [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(942), + [725] = {.entry = {.count = 1, .reusable = false}}, SHIFT(416), + [727] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1018), + [729] = {.entry = {.count = 1, .reusable = false}}, SHIFT(147), + [731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1683), + [733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(952), + [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1665), + [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715), + [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1596), + [741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(939), + [743] = {.entry = {.count = 1, .reusable = false}}, SHIFT(362), + [745] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 1, 0, 0), + [747] = {.entry = {.count = 1, .reusable = false}}, SHIFT(391), + [749] = {.entry = {.count = 1, .reusable = false}}, SHIFT(865), + [751] = {.entry = {.count = 1, .reusable = false}}, SHIFT(418), + [753] = {.entry = {.count = 1, .reusable = false}}, SHIFT(840), + [755] = {.entry = {.count = 1, .reusable = false}}, SHIFT(403), + [757] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1020), + [759] = {.entry = {.count = 1, .reusable = false}}, SHIFT(141), + [761] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 7), + [763] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 3, 0, 16), + [765] = {.entry = {.count = 1, .reusable = false}}, SHIFT(169), + [767] = {.entry = {.count = 1, .reusable = false}}, SHIFT(375), + [769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), + [771] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, 0, 24), + [773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370), + [775] = {.entry = {.count = 1, .reusable = false}}, SHIFT(852), + [777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), + [779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(931), + [781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1584), + [783] = {.entry = {.count = 1, .reusable = false}}, SHIFT(839), + [785] = {.entry = {.count = 1, .reusable = false}}, SHIFT(146), + [787] = {.entry = {.count = 1, .reusable = false}}, SHIFT(973), + [789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(699), + [791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1694), + [793] = {.entry = {.count = 1, .reusable = false}}, SHIFT(972), + [795] = {.entry = {.count = 1, .reusable = false}}, SHIFT(151), + [797] = {.entry = {.count = 1, .reusable = false}}, SHIFT(341), + [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(390), + [801] = {.entry = {.count = 1, .reusable = false}}, SHIFT(781), + [803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(777), + [805] = {.entry = {.count = 1, .reusable = false}}, SHIFT(780), + [807] = {.entry = {.count = 1, .reusable = false}}, SHIFT(138), + [809] = {.entry = {.count = 1, .reusable = false}}, SHIFT(383), + [811] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 1, 0, 0), + [813] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 3, 0, 50), + [815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(949), + [817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1586), + [819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(877), + [821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1635), + [823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(703), + [825] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 7, 0, 141), + [827] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 7, 0, 141), + [829] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1019), + [831] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 2, 0, 7), + [833] = {.entry = {.count = 1, .reusable = false}}, SHIFT(359), + [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), + [837] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 98), + [839] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 5, 0, 98), + [841] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 3, 0, 16), + [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(716), + [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(720), + [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(764), + [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(701), + [851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(870), + [853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(704), + [855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(916), + [857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(867), + [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(941), + [861] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 122), + [863] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, 0, 122), + [865] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 123), + [867] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, 0, 123), + [869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(905), + [871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(918), + [873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(712), + [875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(914), + [877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(956), + [879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(958), + [881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(961), + [883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(962), + [885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(965), + [887] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 1, 0, 0), + [889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(713), + [891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894), + [893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(866), + [895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(898), + [897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(899), + [899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(900), + [901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(917), + [903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(871), + [905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), + [907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 3, 0, 16), + [909] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, 0, 7), + [911] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, 0, 33), + [913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(714), + [915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(971), + [917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(954), + [919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(955), + [921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(913), + [923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(881), + [925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(892), + [927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(893), + [929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(727), + [931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(940), + [933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(909), + [935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(717), + [937] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, 0, 81), + [939] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, 0, 81), + [941] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1609), + [943] = {.entry = {.count = 1, .reusable = false}}, SHIFT(311), + [945] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1606), + [947] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1704), + [949] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1646), + [951] = {.entry = {.count = 1, .reusable = false}}, SHIFT(295), + [953] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1588), + [955] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 69), + [957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), + [959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), + [961] = {.entry = {.count = 1, .reusable = false}}, SHIFT(912), + [963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), + [965] = {.entry = {.count = 1, .reusable = false}}, SHIFT(911), + [967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [969] = {.entry = {.count = 1, .reusable = false}}, SHIFT(401), + [971] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1017), + [973] = {.entry = {.count = 1, .reusable = false}}, SHIFT(144), + [975] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 1, 0, 0), + [977] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), + [979] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 4, 0, 56), + [981] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 4, 0, 56), + [983] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1611), + [985] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), + [987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), + [991] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 10), + [993] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, 0, 28), + [995] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, 0, 29), + [997] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 0), + [999] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, 0, 40), + [1001] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 3, 0, 40), + [1003] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 68), + [1005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1620), + [1007] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 0), + [1009] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 69), + [1011] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 95), + [1013] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 4, 0, 70), + [1015] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 4, 0, 70), + [1017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1630), + [1019] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, 0, 54), + [1021] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, 0, 54), + [1023] = {.entry = {.count = 1, .reusable = false}}, SHIFT(380), + [1025] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 4, 0, 0), + [1027] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 4, 0, 0), + [1029] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2, 0, 0), + [1031] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2, 0, 0), + [1033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 102), + [1035] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 102), + [1037] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 2, 0, 0), + [1039] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 2, 0, 0), + [1041] = {.entry = {.count = 1, .reusable = false}}, SHIFT(429), + [1043] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 1, 0, 0), + [1045] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 1, 0, 0), + [1047] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 76), + [1049] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 76), + [1051] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 77), + [1053] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 77), + [1055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(511), + [1057] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310), + [1059] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1599), + [1061] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), + [1063] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), + [1065] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(295), + [1068] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), + [1070] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), + [1072] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), SHIFT_REPEAT(1611), + [1075] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(311), + [1078] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), SHIFT_REPEAT(1704), + [1081] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 3, 0, 0), + [1083] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 3, 0, 0), + [1085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(512), + [1087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), + [1089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1714), + [1091] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 100), + [1093] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 100), + [1095] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 100), SHIFT_REPEAT(380), + [1098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1055), + [1100] = {.entry = {.count = 1, .reusable = false}}, SHIFT(474), + [1102] = {.entry = {.count = 1, .reusable = false}}, SHIFT(487), + [1104] = {.entry = {.count = 1, .reusable = false}}, SHIFT(135), + [1106] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 100), SHIFT_REPEAT(429), + [1109] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 6, 0, 158), + [1111] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 6, 0, 158), + [1113] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 3, 0, 56), + [1115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 3, 0, 56), + [1117] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, 0, 81), + [1119] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, 0, 81), + [1121] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, 0, 130), + [1123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, 0, 130), + [1125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 5, 0, 147), + [1127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 5, 0, 147), + [1129] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 5, 0, 148), + [1131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 5, 0, 148), + [1133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 7, 0, 163), + [1135] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 7, 0, 163), + [1137] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 6, 0, 157), + [1139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 6, 0, 157), + [1141] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 7, 0, 164), + [1143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 7, 0, 164), + [1145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 8, 0, 165), + [1147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 8, 0, 165), + [1149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), + [1151] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), + [1153] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), SHIFT_REPEAT(856), + [1156] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cases, 1, 0, 0), + [1158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cases, 1, 0, 0), + [1160] = {.entry = {.count = 1, .reusable = false}}, SHIFT(862), + [1162] = {.entry = {.count = 1, .reusable = false}}, SHIFT(856), + [1164] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1498), + [1166] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), SHIFT_REPEAT(862), + [1169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 3, 0, 50), + [1171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(662), + [1173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), + [1175] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 0), + [1178] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 0), + [1180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(435), + [1182] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 0), + [1184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), + [1186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 74), + [1188] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 74), + [1190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 4, 0, 54), + [1192] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 4, 0, 54), + [1194] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 143), + [1196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 143), + [1198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, 0, 24), + [1200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, 0, 56), + [1202] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, 0, 56), + [1204] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 129), + [1206] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 129), + [1208] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, 0, 81), + [1210] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, 0, 81), + [1212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 5, 0, 77), + [1214] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 5, 0, 77), + [1216] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), REDUCE(sym_list_splat_pattern, 2, 0, 9), + [1219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), + [1221] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, 0, 9), + [1223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, 0, 9), + [1225] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 80), + [1227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 80), + [1229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1464), + [1231] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 125), + [1233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 125), + [1235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 105), + [1237] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 105), + [1239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 4, 0, 55), + [1241] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 4, 0, 55), + [1243] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 4, 0, 81), + [1245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 4, 0, 81), + [1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 3, 0, 56), + [1249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 3, 0, 56), + [1251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 4, 0, 134), + [1253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 4, 0, 134), + [1255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, 0, 150), + [1257] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, 0, 150), + [1259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, 0, 151), + [1261] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, 0, 151), + [1263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 6, 0, 159), + [1265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 6, 0, 159), + [1267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 2, 0, 0), + [1269] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_tuple_pattern, 2, 0, 0), REDUCE(sym_tuple, 2, 0, 0), + [1272] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 2, 0, 0), + [1274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 2, 0, 0), + [1276] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 2, 0, 0), + [1278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2, 0, 0), + [1280] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_list_pattern, 2, 0, 0), REDUCE(sym_list, 2, 0, 0), + [1283] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2, 0, 0), + [1285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 2, 0, 0), + [1287] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_pattern, 2, 0, 0), + [1289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 75), + [1291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 75), + [1293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 6, 0, 106), + [1295] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 6, 0, 106), + [1297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 3, 0, 56), + [1299] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 3, 0, 56), + [1301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, 0, 56), + [1303] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, 0, 56), + [1305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 114), + [1307] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 114), + [1309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 115), + [1311] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 115), + [1313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorated_definition, 2, 0, 19), + [1315] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decorated_definition, 2, 0, 19), + [1317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 116), + [1319] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 116), + [1321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 117), + [1323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 117), + [1325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 118), + [1327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 118), + [1329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, 0, 124), + [1331] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, 0, 124), + [1333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 126), + [1335] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 126), + [1337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 127), + [1339] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 127), + [1341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 128), + [1343] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 128), + [1345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 4, 0, 81), + [1347] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 4, 0, 81), + [1349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 7, 0, 81), + [1351] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 7, 0, 81), + [1353] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 137), + [1355] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 137), + [1357] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 138), + [1359] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 138), + [1361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 7, 0, 139), + [1363] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 7, 0, 139), + [1365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 142), + [1367] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 142), + [1369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 144), + [1371] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 144), + [1373] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 145), + [1375] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 145), + [1377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 146), + [1379] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 146), + [1381] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, 0, 82), + [1383] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, 0, 82), + [1385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, 0, 87), + [1387] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, 0, 87), + [1389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 152), + [1391] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 152), + [1393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 153), + [1395] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 153), + [1397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 9, 0, 154), + [1399] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 9, 0, 154), + [1401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 155), + [1403] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 155), + [1405] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 156), + [1407] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 156), + [1409] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 89), + [1411] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 89), + [1413] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 161), + [1415] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 161), + [1417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 10, 0, 162), + [1419] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 10, 0, 162), + [1421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 90), + [1423] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 90), + [1425] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 4, 0, 57), + [1427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 4, 0, 57), + [1429] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, 0, 59), + [1431] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, 0, 59), + [1433] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, 0, 60), + [1435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, 0, 60), + [1437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 4, 0, 64), + [1439] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 4, 0, 64), + [1441] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, 0, 78), + [1443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, 0, 78), + [1445] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 79), + [1447] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 79), + [1449] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 91), + [1451] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 91), + [1453] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 99), + [1455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 99), + [1457] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 101), + [1459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 101), + [1461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 6, 0, 103), + [1463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 6, 0, 103), + [1465] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 104), + [1467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 104), + [1469] = {.entry = {.count = 1, .reusable = false}}, SHIFT(834), + [1471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_separator, 1, 0, 0), + [1473] = {.entry = {.count = 1, .reusable = false}}, SHIFT(860), + [1475] = {.entry = {.count = 1, .reusable = false}}, SHIFT(139), + [1477] = {.entry = {.count = 1, .reusable = false}}, SHIFT(632), + [1479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_string, 2, 0, 0), + [1481] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_string, 2, 0, 0), + [1483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_template_string, 2, 0, 0), + [1485] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_template_string, 2, 0, 0), + [1487] = {.entry = {.count = 1, .reusable = false}}, SHIFT(659), + [1489] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), + [1491] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), + [1493] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1044), + [1496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), + [1498] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), + [1500] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1045), + [1503] = {.entry = {.count = 1, .reusable = false}}, SHIFT(645), + [1505] = {.entry = {.count = 1, .reusable = false}}, SHIFT(656), + [1507] = {.entry = {.count = 1, .reusable = false}}, SHIFT(674), + [1509] = {.entry = {.count = 1, .reusable = false}}, SHIFT(691), + [1511] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1000), + [1513] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1001), + [1515] = {.entry = {.count = 1, .reusable = false}}, SHIFT(239), + [1517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2, 0, 2), + [1519] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 2, 0, 2), + [1521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 2, 0, 2), + [1523] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 2, 0, 2), + [1525] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3, 0, 20), + [1527] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 3, 0, 20), + [1529] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 3, 0, 20), + [1531] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 3, 0, 20), + [1533] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 2, 0, 0), + [1535] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 2, 0, 0), + [1537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 31), + [1539] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 31), + [1541] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, 0, 61), + [1543] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, 0, 61), + [1545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 67), + [1547] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 67), + [1549] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, 0, 93), + [1551] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, 0, 93), + [1553] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 3, 0, 25), + [1555] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 3, 0, 25), + [1557] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3, 0, 25), + [1559] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3, 0, 25), + [1561] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3, 0, 0), + [1563] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3, 0, 0), + [1565] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3, 0, 31), + [1567] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3, 0, 31), + [1569] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set, 3, 0, 25), + [1571] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set, 3, 0, 25), + [1573] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, 0, 26), + [1575] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, 0, 26), + [1577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 61), + [1579] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 61), + [1581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 5, 0, 61), + [1583] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 5, 0, 61), + [1585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 2, 0, 0), + [1587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 2, 0, 0), + [1589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 31), + [1591] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 31), + [1593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1651), + [1595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), + [1597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0), + [1599] = {.entry = {.count = 1, .reusable = false}}, SHIFT(663), + [1601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(664), + [1603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(665), + [1605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(666), + [1607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(667), + [1609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), + [1611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(668), + [1613] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1, 0, 0), + [1615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(663), + [1617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1700), + [1619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(669), + [1621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(670), + [1623] = {.entry = {.count = 1, .reusable = false}}, SHIFT(665), + [1625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(625), + [1627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 67), + [1629] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 67), + [1631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generator_expression, 4, 0, 51), + [1633] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generator_expression, 4, 0, 51), + [1635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 0), + [1637] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 0), + [1639] = {.entry = {.count = 1, .reusable = false}}, SHIFT(628), + [1641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(629), + [1643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630), + [1645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(654), + [1647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(660), + [1649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(671), + [1651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(628), + [1653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1634), + [1655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(689), + [1657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(650), + [1659] = {.entry = {.count = 1, .reusable = false}}, SHIFT(630), + [1661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(615), + [1663] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_comprehension, 4, 0, 51), + [1665] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_comprehension, 4, 0, 51), + [1667] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, 0, 31), + [1669] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, 0, 31), + [1671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, 0, 61), + [1673] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, 0, 61), + [1675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_comprehension, 4, 0, 51), + [1677] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_comprehension, 4, 0, 51), + [1679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_comprehension, 4, 0, 51), + [1681] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary_comprehension, 4, 0, 51), + [1683] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 93), + [1685] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 93), + [1687] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 2, 0, 17), + [1689] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 2, 0, 17), + [1691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_operator, 3, 0, 39), + [1693] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_operator, 3, 0, 39), + [1695] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_await, 2, 0, 0), + [1697] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_await, 2, 0, 0), + [1699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 41), + [1701] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 41), + [1703] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1050), + [1706] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1051), + [1709] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 71), + [1711] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 71), + [1713] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 72), + [1715] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 72), + [1717] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_operator, 2, 0, 13), + [1719] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_operator, 2, 0, 13), + [1721] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1056), + [1724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1605), + [1726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), + [1728] = {.entry = {.count = 1, .reusable = false}}, SHIFT(646), + [1730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(647), + [1732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(648), + [1734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(649), + [1736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(694), + [1738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), + [1740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651), + [1742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(646), + [1744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1720), + [1746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(652), + [1748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(653), + [1750] = {.entry = {.count = 1, .reusable = false}}, SHIFT(648), + [1752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(623), + [1754] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1059), + [1757] = {.entry = {.count = 1, .reusable = false}}, SHIFT(681), + [1759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(682), + [1761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(683), + [1763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(684), + [1765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(685), + [1767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(686), + [1769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(681), + [1771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1674), + [1773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(687), + [1775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(688), + [1777] = {.entry = {.count = 1, .reusable = false}}, SHIFT(683), + [1779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(626), + [1781] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1035), + [1784] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1037), + [1787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1632), + [1789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), + [1791] = {.entry = {.count = 1, .reusable = false}}, SHIFT(635), + [1793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(636), + [1795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(661), + [1797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(672), + [1799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(680), + [1801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), + [1803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(693), + [1805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(635), + [1807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1671), + [1809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(633), + [1811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(634), + [1813] = {.entry = {.count = 1, .reusable = false}}, SHIFT(661), + [1815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(618), + [1817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), + [1819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1695), + [1821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), + [1823] = {.entry = {.count = 1, .reusable = false}}, SHIFT(637), + [1825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638), + [1827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(639), + [1829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(640), + [1831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(641), + [1833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), + [1835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(642), + [1837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(637), + [1839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1612), + [1841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(643), + [1843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(644), + [1845] = {.entry = {.count = 1, .reusable = false}}, SHIFT(639), + [1847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(622), + [1849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), + [1851] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1038), + [1853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(932), + [1855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1374), + [1857] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 2, 0, 0), + [1859] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 2, 0, 0), + [1861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1559), + [1863] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1142), + [1865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(933), + [1867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(994), + [1869] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1072), + [1871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1072), + [1873] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1140), + [1875] = {.entry = {.count = 1, .reusable = false}}, SHIFT(373), + [1877] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 3, 0, 0), + [1879] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 3, 0, 0), + [1881] = {.entry = {.count = 1, .reusable = false}}, SHIFT(394), + [1883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), + [1885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1114), + [1887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1154), + [1889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1120), + [1891] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1139), + [1893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1127), + [1895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1119), + [1897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1110), + [1899] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1116), + [1901] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1091), + [1903] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), + [1905] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(665), + [1908] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), + [1910] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1700), + [1913] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(665), + [1916] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(625), + [1919] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(630), + [1922] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1634), + [1925] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(630), + [1928] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(615), + [1931] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparison_operator, 2, 0, 18), + [1933] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison_operator, 2, 0, 18), + [1935] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 36), + [1937] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 36), SHIFT_REPEAT(612), + [1940] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1562), + [1942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1161), + [1944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1561), + [1946] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(648), + [1949] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1720), + [1952] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(648), + [1955] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(623), + [1958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1137), + [1960] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 3, 0, 25), + [1962] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, 0, 34), + [1964] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(661), + [1967] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1671), + [1970] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(661), + [1973] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(618), + [1976] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 3, 0, 25), + [1978] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 31), + [1980] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(683), + [1983] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1674), + [1986] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(683), + [1989] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(626), + [1992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1115), + [1994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [1996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, 0, 16), + [1998] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(639), + [2001] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1612), + [2004] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(639), + [2007] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(622), + [2010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), + [2012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), + [2014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), + [2016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), + [2018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1479), + [2020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(478), + [2022] = {.entry = {.count = 1, .reusable = false}}, SHIFT(614), + [2024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), + [2026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(678), + [2028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1465), + [2030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(415), + [2032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), + [2034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), + [2036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), + [2038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), + [2040] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), + [2042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1342), + [2044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1547), + [2046] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 3, 0, 0), + [2048] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 2, 0, 0), + [2050] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_not_operator, 2, 0, 10), + [2052] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_not_operator, 2, 0, 10), + [2054] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), + [2056] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1667), + [2059] = {.entry = {.count = 1, .reusable = false}}, SHIFT(181), + [2061] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1147), + [2063] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1147), + [2065] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), + [2067] = {.entry = {.count = 1, .reusable = true}}, SHIFT(841), + [2069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), + [2071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(421), + [2073] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), + [2075] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1595), + [2077] = {.entry = {.count = 1, .reusable = true}}, SHIFT(497), + [2079] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 1, 0, 7), + [2081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), + [2083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(412), + [2085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(847), + [2087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(830), + [2089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(827), + [2091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1667), + [2093] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 1, 0, 0), + [2095] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_capture_pattern, 1, 0, 0), + [2097] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1, 0, 0), + [2099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(946), + [2101] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_with_item, 1, -1, 12), SHIFT(175), + [2104] = {.entry = {.count = 1, .reusable = false}}, SHIFT(551), + [2106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), + [2108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369), + [2110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), + [2112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 2, 0, 0), + [2114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_value_pattern, 2, 0, 0), + [2116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(861), + [2118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(695), + [2120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(696), + [2122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(697), + [2124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(698), + [2126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(806), + [2128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(807), + [2130] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(181), + [2133] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(1147), + [2136] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(1147), + [2139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), + [2141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(808), + [2143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(809), + [2145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1470), + [2147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(859), + [2149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1404), + [2151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(851), + [2153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(850), + [2155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 35), + [2157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, 0, 35), + [2159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_operator, 3, 0, 39), + [2161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(426), + [2163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 3, 0, 32), + [2165] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 3, 0, 32), + [2167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427), + [2169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(710), + [2171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(700), + [2173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), + [2175] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_operator, 3, 0, 39), + [2177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 4, 0, 66), + [2179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), + [2181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_expression, 5, 0, 0), + [2183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1, 0, 83), + [2185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1566), + [2187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(868), + [2189] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 4, 0, 66), + [2191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(983), + [2193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), + [2195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(930), + [2197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), + [2199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 27), + [2201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 2, 0, 107), + [2203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1574), + [2205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(888), + [2207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), + [2209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(901), + [2211] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_expression, 5, 0, 0), + [2213] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, 0, 27), + [2215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_within_for_in_clause, 1, 0, 0), + [2217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 3, 0, 0), + [2219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(987), + [2221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), + [2223] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(346), + [2226] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(1595), + [2229] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(497), + [2232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), + [2234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(422), + [2236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 2, 0, 0), + [2238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), + [2240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), + [2242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__f_expression, 1, 0, 0), + [2244] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat, 2, 0, 0), + [2246] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2, 0, 0), + [2248] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(987), + [2251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 2, 0, 0), + [2253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), + [2255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 1, 0, 0), + [2257] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 4, 0, 0), + [2259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), + [2261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351), + [2263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), + [2265] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 3, 0, 136), + [2267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 4, 0, 98), + [2269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [2271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1717), + [2273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1713), + [2275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1691), + [2277] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 5, 0, 0), + [2279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 5, 0, 0), + [2281] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 31), + [2283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1685), + [2285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1619), + [2287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1629), + [2289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 5, 0, 136), + [2291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 4, 0, 0), + [2293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), + [2295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), + [2297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 2, 0, 0), + [2299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 4, 0, 149), + [2301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat, 2, 0, 14), + [2303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 6, 0, 0), + [2305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 6, 0, 136), + [2307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 122), + [2309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), + [2311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 7, 0, 0), + [2313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 7, 0, 136), + [2315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 8, 0, 136), + [2317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), + [2319] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(1133), + [2322] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(1133), + [2325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), + [2327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 9, 0, 136), + [2329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 123), + [2331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), + [2333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 4, 0, 0), + [2335] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 3, 0, 132), + [2337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(986), + [2339] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_or_pattern, 1, 0, 0), + [2341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(988), + [2343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 4, 0, 136), + [2345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 141), + [2347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), + [2349] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_content, 1, 0, 0), + [2351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1133), + [2353] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1133), + [2355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_content, 1, 0, 0), + [2357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), + [2359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 2, 0, 0), + [2361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_clause, 2, 0, 0), + [2363] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 3, 0, 0), + [2365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_group_pattern, 3, 0, 131), + [2367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 2, 0, 0), + [2369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0), + [2371] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(297), + [2374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 3, 0, 0), + [2376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1219), + [2378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1312), + [2380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1528), + [2382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), + [2384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(708), + [2386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), + [2388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1606), + [2390] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1, 0, 0), + [2392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 31), + [2394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), + [2396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, 0, 10), + [2398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), + [2400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 2, 0, 0), + [2402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 4, 0, 66), + [2404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2, 0, 0), + [2406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_statement, 2, 0, 11), + [2408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273), + [2410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1588), + [2412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1220), + [2414] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1696), + [2416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1659), + [2418] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 3, 0, 0), + [2420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_pattern, 1, 0, 0), + [2422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1703), + [2424] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 1, 0, 0), + [2426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), + [2428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(397), + [2430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(419), + [2432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [2434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), + [2436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), + [2438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), + [2440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(968), + [2442] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 4, 0, 15), + [2444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), + [2446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(874), + [2448] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 1, -1, 12), + [2450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551), + [2452] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1216), + [2454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1336), + [2456] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1664), + [2458] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 3, 0, 32), + [2460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433), + [2462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [2464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), + [2466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [2468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402), + [2470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [2472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), + [2474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(902), + [2476] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__right_hand_side, 1, 0, 0), + [2478] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pair, 3, 0, 62), + [2480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), + [2482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 16), + [2484] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 1, 0, 0), + [2486] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 6, 0, 43), + [2488] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 6, 0, 43), + [2490] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 5, 0, 43), + [2492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 5, 0, 43), + [2494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1698), + [2496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 1, 0, 6), + [2498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(425), + [2500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [2502] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 36), SHIFT_REPEAT(251), + [2505] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 36), + [2507] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 36), SHIFT_REPEAT(263), + [2510] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 3, 0, 43), + [2512] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 3, 0, 43), + [2514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 10), + [2516] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_chevron, 2, 0, 0), + [2518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), + [2520] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_parameter, 3, 0, 35), + [2522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), + [2524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1298), + [2526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_default_parameter, 5, 0, 119), + [2528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), + [2530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 2, 0, 0), + [2532] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1698), + [2535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), + [2537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [2539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [2541] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_bound, 2, 0, 109), + [2543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [2545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2, 0, 0), + [2547] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(979), + [2550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 31), + [2552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_as_pattern, 3, 0, 135), + [2554] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, 0, 4), + [2556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, 0, 4), + [2558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__index_expression, 1, 0, 0), + [2560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), + [2562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 95), + [2564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), + [2566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2, 0, 0), + [2568] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(342), + [2571] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 68), + [2573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), + [2575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), + [2577] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, 0, 3), + [2579] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, 0, 3), + [2581] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 4, 0, 43), + [2583] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 4, 0, 43), + [2585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1305), + [2587] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, 0, 6), + [2589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), + [2591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [2593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1206), + [2595] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, 0, 16), + [2597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [2599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), + [2601] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 31), + [2603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, 0, 27), + [2605] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_star_pattern, 2, 0, 11), + [2607] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_param_default, 2, 0, 110), + [2609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1380), + [2611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1310), + [2613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1283), + [2615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1419), + [2617] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 120), + [2619] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 121), + [2621] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 3, 0, 30), + [2623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), + [2625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 3, 0, 22), + [2627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1311), + [2629] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, 0, 35), + [2631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 94), + [2633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), + [2635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 4, 0, 53), + [2637] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 36), SHIFT_REPEAT(250), + [2640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), + [2642] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 1, 0, 0), + [2644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [2646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1288), + [2648] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), + [2650] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), SHIFT_REPEAT(173), + [2653] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), SHIFT_REPEAT(1284), + [2656] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 5, 0, 88), + [2658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 36), + [2660] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 36), SHIFT_REPEAT(242), + [2663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1223), + [2665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1302), + [2667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1458), + [2669] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 2, 0, 0), + [2671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1284), + [2673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1255), + [2675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1636), + [2677] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 1, 0, 6), + [2679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 5, 0, 140), + [2681] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 4, 0, 63), + [2683] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, 0, 16), + [2685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(461), + [2687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(854), + [2689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [2691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_guard, 2, 0, 133), + [2693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371), + [2695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(856), + [2697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1638), + [2699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 2, 0, 0), + [2701] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorator, 3, 0, 0), + [2703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1022), + [2705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1253), + [2707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1494), + [2709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), + [2711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(862), + [2713] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 23), + [2715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), + [2717] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 44), SHIFT_REPEAT(1499), + [2720] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 44), + [2722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1455), + [2724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1457), + [2726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1216), + [2728] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, 0, 0), + [2730] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, 0, 49), + [2732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), + [2734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, 0, 0), + [2736] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 52), SHIFT_REPEAT(339), + [2739] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 52), + [2741] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(432), + [2744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [2746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1300), + [2748] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2, 0, 0), + [2750] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(315), + [2753] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 2, 0, 0), + [2755] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, 0, 84), + [2757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1367), + [2759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1681), + [2761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), + [2763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), + [2765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), + [2767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [2769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), + [2771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), + [2773] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_prefix, 1, 0, 0), + [2775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1362), + [2777] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(1638), + [2780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2, 0, 0), + [2782] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exception_list, 2, 0, 16), + [2784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388), + [2786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), + [2788] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 28), + [2790] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_parameter, 3, 0, 65), + [2792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), + [2794] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1, 0, 0), + [2796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), + [2798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), + [2800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), + [2802] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 5, 0, 15), + [2804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(400), + [2806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [2808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [2810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), + [2812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(317), + [2814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [2816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), + [2818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), + [2820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [2822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1271), + [2824] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, 0, 22), + [2826] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 3, 0, 0), + [2828] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 3, 0, 0), + [2830] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 1, 0, 7), + [2832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(467), + [2834] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2, 0, 0), SHIFT_REPEAT(133), + [2837] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2, 0, 0), + [2839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1275), + [2841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), + [2843] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 29), + [2845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [2847] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_import_prefix_repeat1, 2, 0, 0), + [2849] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_prefix_repeat1, 2, 0, 0), SHIFT_REPEAT(1362), + [2852] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 36), SHIFT_REPEAT(430), + [2855] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 36), + [2857] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 3, 0, 0), + [2859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(414), + [2861] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 2, 0, 23), + [2863] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 2, 0, 23), + [2865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), + [2867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1538), + [2869] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1239), + [2871] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1263), + [2873] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 113), SHIFT_REPEAT(1182), + [2876] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 113), + [2878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1027), + [2880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), + [2882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(483), + [2884] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 36), SHIFT_REPEAT(245), + [2887] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 36), + [2889] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 3, 0, 86), + [2891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1143), + [2893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1405), + [2895] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 44), SHIFT_REPEAT(1460), + [2898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1025), + [2900] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 1, 0, 0), + [2902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1182), + [2904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1446), + [2906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(936), + [2908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), + [2910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), + [2912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(920), + [2914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), + [2916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), + [2918] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_maybe_star_pattern, 1, 0, 0), + [2920] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_patterns, 1, 0, 0), + [2922] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 36), + [2924] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 36), SHIFT_REPEAT(233), + [2927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(349), + [2929] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 2, 0, 15), + [2931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1658), + [2933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(702), + [2935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), + [2937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(964), + [2939] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 36), SHIFT_REPEAT(282), + [2942] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 36), + [2944] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_relative_import, 1, 0, 0), + [2946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), + [2948] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 37), + [2950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307), + [2952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253), + [2954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(974), + [2956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), + [2958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(981), + [2960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(950), + [2962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), + [2964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1396), + [2966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(951), + [2968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(957), + [2970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), + [2972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1379), + [2974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(959), + [2976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), + [2978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(960), + [2980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [2982] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aliased_import, 3, 0, 45), + [2984] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2, 0, 0), + [2986] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2, 0, 0), SHIFT_REPEAT(1560), + [2989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1008), + [2991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), + [2993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(882), + [2995] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), + [2997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(885), + [2999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1026), + [3001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(889), + [3003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), + [3005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1131), + [3007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(890), + [3009] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), + [3011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(923), + [3013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), + [3015] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 1, 0, 0), + [3017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(895), + [3019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), + [3021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(896), + [3023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), + [3025] = {.entry = {.count = 1, .reusable = true}}, SHIFT(897), + [3027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), + [3029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1431), + [3031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1640), + [3033] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), + [3035] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1314), + [3037] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), + [3039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), + [3041] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), + [3043] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(1028), + [3046] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 3, -1, 58), + [3048] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 4, 0, 112), + [3050] = {.entry = {.count = 1, .reusable = true}}, SHIFT(718), + [3052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), + [3054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1467), + [3056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(732), + [3058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), + [3060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(711), + [3062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [3064] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 2, 0, 0), + [3066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [3068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), + [3070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [3072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1482), + [3074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309), + [3076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(903), + [3078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), + [3080] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_positional_separator, 1, 0, 0), + [3082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(980), + [3084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1132), + [3086] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2, 0, 0), + [3088] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(984), + [3091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(935), + [3093] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1167), + [3095] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1023), + [3097] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1476), + [3099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), + [3101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1313), + [3103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1134), + [3105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(996), + [3107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1159), + [3109] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1021), + [3112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2, 0, 0), + [3114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(878), + [3116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), + [3118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(943), + [3120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), + [3122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(927), + [3124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), + [3126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(728), + [3128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1328), + [3130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1329), + [3132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), + [3134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(731), + [3136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), + [3138] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, 0, 16), + [3140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [3142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1218), + [3144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), + [3146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), + [3148] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 1, 0, 73), + [3150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 1, 0, 73), + [3152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), + [3154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), + [3156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(928), + [3158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), + [3160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), + [3162] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(1029), + [3165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 2, 0, 5), + [3167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 31), + [3169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(846), + [3171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), + [3173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), + [3175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [3177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), + [3179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 6, 0, 97), + [3181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 3, 0, 108), + [3183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 5, 0, 92), + [3185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 3, 0, 111), + [3187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pass_statement, 1, 0, 0), + [3189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 86), + [3191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 1, 0, 0), + [3193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_positional_pattern, 1, 0, 0), + [3195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 4, 0, 46), + [3197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_wildcard_import, 1, 0, 0), + [3199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, 0, 85), + [3201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 38), + [3203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_statement, 1, 0, 0), + [3205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, 0, 47), + [3207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, 0, 48), + [3209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_augmented_assignment, 3, 0, 39), + [3211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [3213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), + [3215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [3217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), + [3219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_key_value_pattern, 3, 0, 62), + [3221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [3223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), + [3225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1663), + [3227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1126), + [3229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [3231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), + [3233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2, 0, 0), + [3235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1160), + [3237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [3239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), + [3241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 3, 0, 108), + [3243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(934), + [3245] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1078), + [3247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1078), + [3249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1239), + [3251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 31), + [3253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1662), + [3255] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1138), + [3257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1138), + [3259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 6, 0, 96), + [3261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1623), + [3263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3, 0, 0), + [3265] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1124), + [3267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1124), + [3269] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_keyword_pattern, 3, 0, 160), + [3271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 67), + [3273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_double_star_pattern, 2, 0, 11), + [3275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [3277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), + [3279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [3281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(929), + [3283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1326), + [3285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(948), + [3287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [3289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [3291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1304), + [3293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(869), + [3295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(907), + [3297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), + [3299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(872), + [3301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510), + [3303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(873), + [3305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [3307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_parameters, 1, 0, 0), + [3309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1323), + [3311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(709), + [3313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [3315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(875), + [3317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(387), + [3319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(876), + [3321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), + [3323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [3325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [3327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [3329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(627), + [3331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(879), + [3333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(880), + [3335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(705), + [3337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [3339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [3341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [3343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1301), + [3345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 5, 0, 0), + [3347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), + [3349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), + [3351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726), + [3353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(891), + [3355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(883), + [3357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(998), + [3359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1281), + [3361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 4, 0, 0), + [3363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(884), + [3365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(475), + [3367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(886), + [3369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), + [3371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(887), + [3373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1421), + [3375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1420), + [3377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), + [3379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 3, 0, 0), + [3381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [3383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1004), + [3385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1217), + [3387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(921), + [3389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [3391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), + [3393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1299), + [3395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(729), + [3397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(730), + [3399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), + [3401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relative_import, 2, 0, 23), + [3403] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [3405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(706), + [3407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1372), + [3409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1130), + [3411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1272), + [3413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(707), + [3415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [3417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1049), + [3419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), + [3421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [3423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(658), + [3425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), + [3427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(690), + [3429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(969), + [3431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1363), + [3433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(910), + [3435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(937), + [3437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(945), + [3439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(982), + [3441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1545), + [3443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), + [3445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(966), + [3447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1571), + [3449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(721), + [3451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(975), + [3453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [3455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), + [3457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), + [3459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1256), + [3461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(722), + [3463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(947), + [3465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1371), + [3467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [3469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1289), + [3471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1502), + [3473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(673), + [3475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1568), + [3477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1514), + [3479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1244), + [3481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(944), + [3483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(967), + [3485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(970), + [3487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1169), + [3489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [3491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(398), + [3493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [3495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1369), + [3497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1370), + [3499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(976), + [3501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(978), + [3503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(655), + [3505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(922), + [3507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(985), +}; + +enum ts_external_scanner_symbol_identifiers { + ts_external_token__newline = 0, + ts_external_token__indent = 1, + ts_external_token__dedent = 2, + ts_external_token__string_start = 3, + ts_external_token__string_content = 4, + ts_external_token__string_end = 5, + ts_external_token__template_string_start = 6, +}; + +static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { + [ts_external_token__newline] = sym__newline, + [ts_external_token__indent] = sym__indent, + [ts_external_token__dedent] = sym__dedent, + [ts_external_token__string_start] = sym__string_start, + [ts_external_token__string_content] = sym__string_content, + [ts_external_token__string_end] = sym__string_end, + [ts_external_token__template_string_start] = sym__template_string_start, +}; + +static const bool ts_external_scanner_states[12][EXTERNAL_TOKEN_COUNT] = { + [1] = { + [ts_external_token__newline] = true, + [ts_external_token__indent] = true, + [ts_external_token__dedent] = true, + [ts_external_token__string_start] = true, + [ts_external_token__string_content] = true, + [ts_external_token__string_end] = true, + [ts_external_token__template_string_start] = true, + }, + [2] = { + [ts_external_token__string_start] = true, + [ts_external_token__template_string_start] = true, + }, + [3] = { + [ts_external_token__dedent] = true, + [ts_external_token__string_start] = true, + [ts_external_token__template_string_start] = true, + }, + [4] = { + [ts_external_token__newline] = true, + [ts_external_token__string_start] = true, + [ts_external_token__template_string_start] = true, + }, + [5] = { + [ts_external_token__newline] = true, + [ts_external_token__indent] = true, + [ts_external_token__string_start] = true, + [ts_external_token__template_string_start] = true, + }, + [6] = { + [ts_external_token__newline] = true, + }, + [7] = { + [ts_external_token__newline] = true, + [ts_external_token__string_start] = true, + }, + [8] = { + [ts_external_token__string_start] = true, + }, + [9] = { + [ts_external_token__template_string_start] = true, + }, + [10] = { + [ts_external_token__newline] = true, + [ts_external_token__template_string_start] = true, + }, + [11] = { + [ts_external_token__string_content] = true, + [ts_external_token__string_end] = true, + }, }; #ifdef __cplusplus @@ -74267,13 +84136,17 @@ bool tree_sitter_python_external_scanner_scan(void *, TSLexer *, const bool *); unsigned tree_sitter_python_external_scanner_serialize(void *, char *); void tree_sitter_python_external_scanner_deserialize(void *, const char *, unsigned); -#ifdef _WIN32 -#define extern __declspec(dllexport) +#ifdef TREE_SITTER_HIDE_SYMBOLS +#define TS_PUBLIC +#elif defined(_WIN32) +#define TS_PUBLIC __declspec(dllexport) +#else +#define TS_PUBLIC __attribute__((visibility("default"))) #endif -extern const TSLanguage *tree_sitter_python(void) { +TS_PUBLIC const TSLanguage *tree_sitter_python(void) { static const TSLanguage language = { - .version = LANGUAGE_VERSION, + .abi_version = LANGUAGE_VERSION, .symbol_count = SYMBOL_COUNT, .alias_count = ALIAS_COUNT, .token_count = TOKEN_COUNT, @@ -74295,7 +84168,7 @@ extern const TSLanguage *tree_sitter_python(void) { .public_symbol_map = ts_symbol_map, .alias_map = ts_non_terminal_alias_map, .alias_sequences = &ts_alias_sequences[0][0], - .lex_modes = ts_lex_modes, + .lex_modes = (const void*)ts_lex_modes, .lex_fn = ts_lex, .keyword_lex_fn = ts_lex_keywords, .keyword_capture_token = sym_identifier, @@ -74308,6 +84181,7 @@ extern const TSLanguage *tree_sitter_python(void) { tree_sitter_python_external_scanner_serialize, tree_sitter_python_external_scanner_deserialize, }, + .primary_state_ids = ts_primary_state_ids, }; return &language; } diff --git a/python/extractor/tsg-python/tsp/src/tree_sitter/array.h b/python/extractor/tsg-python/tsp/src/tree_sitter/array.h index a17a574f04e0..e99918e5d85d 100644 --- a/python/extractor/tsg-python/tsp/src/tree_sitter/array.h +++ b/python/extractor/tsg-python/tsp/src/tree_sitter/array.h @@ -52,67 +52,91 @@ extern "C" { /// Reserve `new_capacity` elements of space in the array. If `new_capacity` is /// less than the array's current capacity, this function has no effect. -#define array_reserve(self, new_capacity) \ - _array__reserve((Array *)(self), array_elem_size(self), new_capacity) +#define array_reserve(self, new_capacity) \ + ((self)->contents = _array__reserve( \ + (void *)(self)->contents, &(self)->capacity, \ + array_elem_size(self), new_capacity) \ + ) /// Free any memory allocated for this array. Note that this does not free any /// memory allocated for the array's contents. -#define array_delete(self) _array__delete((Array *)(self)) +#define array_delete(self) _array__delete((self), (void *)(self)->contents, sizeof(*self)) /// Push a new `element` onto the end of the array. -#define array_push(self, element) \ - (_array__grow((Array *)(self), 1, array_elem_size(self)), \ - (self)->contents[(self)->size++] = (element)) +#define array_push(self, element) \ + do { \ + (self)->contents = _array__grow( \ + (void *)(self)->contents, (self)->size, &(self)->capacity, \ + 1, array_elem_size(self) \ + ); \ + (self)->contents[(self)->size++] = (element); \ + } while(0) /// Increase the array's size by `count` elements. /// New elements are zero-initialized. -#define array_grow_by(self, count) \ - do { \ - if ((count) == 0) break; \ - _array__grow((Array *)(self), count, array_elem_size(self)); \ +#define array_grow_by(self, count) \ + do { \ + if ((count) == 0) break; \ + (self)->contents = _array__grow( \ + (self)->contents, (self)->size, &(self)->capacity, \ + count, array_elem_size(self) \ + ); \ memset((self)->contents + (self)->size, 0, (count) * array_elem_size(self)); \ - (self)->size += (count); \ + (self)->size += (count); \ } while (0) /// Append all elements from one array to the end of another. -#define array_push_all(self, other) \ +#define array_push_all(self, other) \ array_extend((self), (other)->size, (other)->contents) /// Append `count` elements to the end of the array, reading their values from the /// `contents` pointer. -#define array_extend(self, count, contents) \ - _array__splice( \ - (Array *)(self), array_elem_size(self), (self)->size, \ - 0, count, contents \ +#define array_extend(self, count, other_contents) \ + (self)->contents = _array__splice( \ + (void*)(self)->contents, &(self)->size, &(self)->capacity, \ + array_elem_size(self), (self)->size, 0, count, other_contents \ ) /// Remove `old_count` elements from the array starting at the given `index`. At /// the same index, insert `new_count` new elements, reading their values from the /// `new_contents` pointer. -#define array_splice(self, _index, old_count, new_count, new_contents) \ - _array__splice( \ - (Array *)(self), array_elem_size(self), _index, \ - old_count, new_count, new_contents \ +#define array_splice(self, _index, old_count, new_count, new_contents) \ + (self)->contents = _array__splice( \ + (void *)(self)->contents, &(self)->size, &(self)->capacity, \ + array_elem_size(self), _index, old_count, new_count, new_contents \ ) /// Insert one `element` into the array at the given `index`. -#define array_insert(self, _index, element) \ - _array__splice((Array *)(self), array_elem_size(self), _index, 0, 1, &(element)) +#define array_insert(self, _index, element) \ + (self)->contents = _array__splice( \ + (void *)(self)->contents, &(self)->size, &(self)->capacity, \ + array_elem_size(self), _index, 0, 1, &(element) \ + ) /// Remove one element from the array at the given `index`. #define array_erase(self, _index) \ - _array__erase((Array *)(self), array_elem_size(self), _index) + _array__erase((void *)(self)->contents, &(self)->size, array_elem_size(self), _index) /// Pop the last element off the array, returning the element by value. #define array_pop(self) ((self)->contents[--(self)->size]) /// Assign the contents of one array to another, reallocating if necessary. -#define array_assign(self, other) \ - _array__assign((Array *)(self), (const Array *)(other), array_elem_size(self)) +#define array_assign(self, other) \ + (self)->contents = _array__assign( \ + (void *)(self)->contents, &(self)->size, &(self)->capacity, \ + (const void *)(other)->contents, (other)->size, array_elem_size(self) \ + ) /// Swap one array with another -#define array_swap(self, other) \ - _array__swap((Array *)(self), (Array *)(other)) +#define array_swap(self, other) \ + do { \ + struct Swap swapped_contents = _array__swap( \ + (void *)(self)->contents, &(self)->size, &(self)->capacity, \ + (void *)(other)->contents, &(other)->size, &(other)->capacity \ + ); \ + (self)->contents = swapped_contents.self_contents; \ + (other)->contents = swapped_contents.other_contents; \ + } while (0) /// Get the size of the array contents #define array_elem_size(self) (sizeof *(self)->contents) @@ -157,82 +181,112 @@ extern "C" { // Private -typedef Array(void) Array; +// Pointers to individual `Array` fields (rather than the entire `Array` itself) +// are passed to the various `_array__*` functions below to address strict aliasing +// violations that arises when the _entire_ `Array` struct is passed as `Array(void)*`. +// +// The `Array` type itself was not altered as a solution in order to avoid breakage +// with existing consumers (in particular, parsers with external scanners). /// This is not what you're looking for, see `array_delete`. -static inline void _array__delete(Array *self) { - if (self->contents) { - ts_free(self->contents); - self->contents = NULL; - self->size = 0; - self->capacity = 0; - } +static inline void _array__delete(void *self, void *contents, size_t self_size) { + if (contents) ts_free(contents); + if (self) memset(self, 0, self_size); } /// This is not what you're looking for, see `array_erase`. -static inline void _array__erase(Array *self, size_t element_size, - uint32_t index) { - assert(index < self->size); - char *contents = (char *)self->contents; +static inline void _array__erase(void* self_contents, uint32_t *size, + size_t element_size, uint32_t index) { + assert(index < *size); + char *contents = (char *)self_contents; memmove(contents + index * element_size, contents + (index + 1) * element_size, - (self->size - index - 1) * element_size); - self->size--; + (*size - index - 1) * element_size); + (*size)--; } /// This is not what you're looking for, see `array_reserve`. -static inline void _array__reserve(Array *self, size_t element_size, uint32_t new_capacity) { - if (new_capacity > self->capacity) { - if (self->contents) { - self->contents = ts_realloc(self->contents, new_capacity * element_size); +static inline void *_array__reserve(void *contents, uint32_t *capacity, + size_t element_size, uint32_t new_capacity) { + void *new_contents = contents; + if (new_capacity > *capacity) { + if (contents) { + new_contents = ts_realloc(contents, new_capacity * element_size); } else { - self->contents = ts_malloc(new_capacity * element_size); + new_contents = ts_malloc(new_capacity * element_size); } - self->capacity = new_capacity; + *capacity = new_capacity; } + return new_contents; } /// This is not what you're looking for, see `array_assign`. -static inline void _array__assign(Array *self, const Array *other, size_t element_size) { - _array__reserve(self, element_size, other->size); - self->size = other->size; - memcpy(self->contents, other->contents, self->size * element_size); +static inline void *_array__assign(void* self_contents, uint32_t *self_size, uint32_t *self_capacity, + const void *other_contents, uint32_t other_size, size_t element_size) { + void *new_contents = _array__reserve(self_contents, self_capacity, element_size, other_size); + *self_size = other_size; + memcpy(new_contents, other_contents, *self_size * element_size); + return new_contents; } +struct Swap { + void *self_contents; + void *other_contents; +}; + /// This is not what you're looking for, see `array_swap`. -static inline void _array__swap(Array *self, Array *other) { - Array swap = *other; - *other = *self; - *self = swap; +// static inline void _array__swap(Array *self, Array *other) { +static inline struct Swap _array__swap(void *self_contents, uint32_t *self_size, uint32_t *self_capacity, + void *other_contents, uint32_t *other_size, uint32_t *other_capacity) { + void *new_self_contents = other_contents; + uint32_t new_self_size = *other_size; + uint32_t new_self_capacity = *other_capacity; + + void *new_other_contents = self_contents; + *other_size = *self_size; + *other_capacity = *self_capacity; + + *self_size = new_self_size; + *self_capacity = new_self_capacity; + + struct Swap out = { + .self_contents = new_self_contents, + .other_contents = new_other_contents, + }; + return out; } /// This is not what you're looking for, see `array_push` or `array_grow_by`. -static inline void _array__grow(Array *self, uint32_t count, size_t element_size) { - uint32_t new_size = self->size + count; - if (new_size > self->capacity) { - uint32_t new_capacity = self->capacity * 2; +static inline void *_array__grow(void *contents, uint32_t size, uint32_t *capacity, + uint32_t count, size_t element_size) { + void *new_contents = contents; + uint32_t new_size = size + count; + if (new_size > *capacity) { + uint32_t new_capacity = *capacity * 2; if (new_capacity < 8) new_capacity = 8; if (new_capacity < new_size) new_capacity = new_size; - _array__reserve(self, element_size, new_capacity); + new_contents = _array__reserve(contents, capacity, element_size, new_capacity); } + return new_contents; } /// This is not what you're looking for, see `array_splice`. -static inline void _array__splice(Array *self, size_t element_size, +static inline void *_array__splice(void *self_contents, uint32_t *size, uint32_t *capacity, + size_t element_size, uint32_t index, uint32_t old_count, uint32_t new_count, const void *elements) { - uint32_t new_size = self->size + new_count - old_count; + uint32_t new_size = *size + new_count - old_count; uint32_t old_end = index + old_count; uint32_t new_end = index + new_count; - assert(old_end <= self->size); + assert(old_end <= *size); - _array__reserve(self, element_size, new_size); + void *new_contents = _array__reserve(self_contents, capacity, element_size, new_size); - char *contents = (char *)self->contents; - if (self->size > old_end) { + char *contents = (char *)new_contents; + if (*size > old_end) { memmove( contents + new_end * element_size, contents + old_end * element_size, - (self->size - old_end) * element_size + (*size - old_end) * element_size ); } if (new_count > 0) { @@ -250,7 +304,9 @@ static inline void _array__splice(Array *self, size_t element_size, ); } } - self->size += new_count - old_count; + *size += new_count - old_count; + + return new_contents; } /// A binary search routine, based on Rust's `std::slice::binary_search_by`. diff --git a/python/extractor/tsg-python/tsp/src/tree_sitter/parser.h b/python/extractor/tsg-python/tsp/src/tree_sitter/parser.h index cbbc7b4ee3c5..858107deb9e4 100644 --- a/python/extractor/tsg-python/tsp/src/tree_sitter/parser.h +++ b/python/extractor/tsg-python/tsp/src/tree_sitter/parser.h @@ -13,12 +13,16 @@ extern "C" { #define ts_builtin_sym_end 0 #define TREE_SITTER_SERIALIZATION_BUFFER_SIZE 1024 -typedef uint16_t TSStateId; - #ifndef TREE_SITTER_API_H_ +typedef uint16_t TSStateId; typedef uint16_t TSSymbol; typedef uint16_t TSFieldId; typedef struct TSLanguage TSLanguage; +typedef struct TSLanguageMetadata { + uint8_t major_version; + uint8_t minor_version; + uint8_t patch_version; +} TSLanguageMetadata; #endif typedef struct { @@ -27,10 +31,11 @@ typedef struct { bool inherited; } TSFieldMapEntry; +// Used to index the field and supertype maps. typedef struct { uint16_t index; uint16_t length; -} TSFieldMapSlice; +} TSMapSlice; typedef struct { bool visible; @@ -48,6 +53,7 @@ struct TSLexer { uint32_t (*get_column)(TSLexer *); bool (*is_at_included_range_start)(const TSLexer *); bool (*eof)(const TSLexer *); + void (*log)(const TSLexer *, const char *, ...); }; typedef enum { @@ -79,6 +85,12 @@ typedef struct { uint16_t external_lex_state; } TSLexMode; +typedef struct { + uint16_t lex_state; + uint16_t external_lex_state; + uint16_t reserved_word_set_id; +} TSLexerMode; + typedef union { TSParseAction action; struct { @@ -87,8 +99,13 @@ typedef union { } entry; } TSParseActionEntry; +typedef struct { + int32_t start; + int32_t end; +} TSCharacterRange; + struct TSLanguage { - uint32_t version; + uint32_t abi_version; uint32_t symbol_count; uint32_t alias_count; uint32_t token_count; @@ -104,13 +121,13 @@ struct TSLanguage { const TSParseActionEntry *parse_actions; const char * const *symbol_names; const char * const *field_names; - const TSFieldMapSlice *field_map_slices; + const TSMapSlice *field_map_slices; const TSFieldMapEntry *field_map_entries; const TSSymbolMetadata *symbol_metadata; const TSSymbol *public_symbol_map; const uint16_t *alias_map; const TSSymbol *alias_sequences; - const TSLexMode *lex_modes; + const TSLexerMode *lex_modes; bool (*lex_fn)(TSLexer *, TSStateId); bool (*keyword_lex_fn)(TSLexer *, TSStateId); TSSymbol keyword_capture_token; @@ -123,15 +140,49 @@ struct TSLanguage { unsigned (*serialize)(void *, char *); void (*deserialize)(void *, const char *, unsigned); } external_scanner; + const TSStateId *primary_state_ids; + const char *name; + const TSSymbol *reserved_words; + uint16_t max_reserved_word_set_size; + uint32_t supertype_count; + const TSSymbol *supertype_symbols; + const TSMapSlice *supertype_map_slices; + const TSSymbol *supertype_map_entries; + TSLanguageMetadata metadata; }; +static inline bool set_contains(const TSCharacterRange *ranges, uint32_t len, int32_t lookahead) { + uint32_t index = 0; + uint32_t size = len - index; + while (size > 1) { + uint32_t half_size = size / 2; + uint32_t mid_index = index + half_size; + const TSCharacterRange *range = &ranges[mid_index]; + if (lookahead >= range->start && lookahead <= range->end) { + return true; + } else if (lookahead > range->end) { + index = mid_index; + } + size -= half_size; + } + const TSCharacterRange *range = &ranges[index]; + return (lookahead >= range->start && lookahead <= range->end); +} + /* * Lexer Macros */ +#ifdef _MSC_VER +#define UNUSED __pragma(warning(suppress : 4101)) +#else +#define UNUSED __attribute__((unused)) +#endif + #define START_LEXER() \ bool result = false; \ bool skip = false; \ + UNUSED \ bool eof = false; \ int32_t lookahead; \ goto start; \ @@ -147,6 +198,17 @@ struct TSLanguage { goto next_state; \ } +#define ADVANCE_MAP(...) \ + { \ + static const uint16_t map[] = { __VA_ARGS__ }; \ + for (uint32_t i = 0; i < sizeof(map) / sizeof(map[0]); i += 2) { \ + if (map[i] == lookahead) { \ + state = map[i + 1]; \ + goto next_state; \ + } \ + } \ + } + #define SKIP(state_value) \ { \ skip = true; \ @@ -165,7 +227,7 @@ struct TSLanguage { * Parse Table Macros */ -#define SMALL_STATE(id) id - LARGE_STATE_COUNT +#define SMALL_STATE(id) ((id) - LARGE_STATE_COUNT) #define STATE(id) id @@ -175,7 +237,7 @@ struct TSLanguage { {{ \ .shift = { \ .type = TSParseActionTypeShift, \ - .state = state_value \ + .state = (state_value) \ } \ }} @@ -183,7 +245,7 @@ struct TSLanguage { {{ \ .shift = { \ .type = TSParseActionTypeShift, \ - .state = state_value, \ + .state = (state_value), \ .repetition = true \ } \ }} @@ -196,14 +258,15 @@ struct TSLanguage { } \ }} -#define REDUCE(symbol_val, child_count_val, ...) \ - {{ \ - .reduce = { \ - .type = TSParseActionTypeReduce, \ - .symbol = symbol_val, \ - .child_count = child_count_val, \ - __VA_ARGS__ \ - }, \ +#define REDUCE(symbol_name, children, precedence, prod_id) \ + {{ \ + .reduce = { \ + .type = TSParseActionTypeReduce, \ + .symbol = symbol_name, \ + .child_count = children, \ + .dynamic_precedence = precedence, \ + .production_id = prod_id \ + }, \ }} #define RECOVER() \ diff --git a/python/ql/consistency-queries/DataFlowConsistency.ql b/python/ql/consistency-queries/DataFlowConsistency.ql index 759db3d19a9c..829aa6debef2 100644 --- a/python/ql/consistency-queries/DataFlowConsistency.ql +++ b/python/ql/consistency-queries/DataFlowConsistency.ql @@ -26,6 +26,8 @@ private module Input implements InputSig { or // TODO: Implement post-updates for **kwargs, see tests added in https://github.com/github/codeql/pull/14936 exists(ArgumentPosition apos | n.argumentOf(_, apos) and apos.isDictSplat()) + or + missingArgumentCallExclude(n) } predicate reverseReadExclude(Node n) { @@ -134,6 +136,18 @@ private module Input implements InputSig { other.getNode().getScope() = f ) } + + predicate missingArgumentCallExclude(ArgumentNode arg) { + // We overapproximate the argument nodes in order to not rely on the global `getCallArg` + // predicate. + // Because of this, we must exclude the cases where we have an approximation but no actual + // argument node. + arg = getCallArgApproximation() and not getCallArg(_, _, _, arg, _) + or + // Likewise, capturing closure arguments do not have corresponding argument nodes in some cases. + arg instanceof SynthCapturedVariablesArgumentNode and + not arg.argumentOf(_, _) + } } import MakeConsistency diff --git a/python/ql/lib/CHANGELOG.md b/python/ql/lib/CHANGELOG.md index a273dc2628b2..76d2adf3a036 100644 --- a/python/ql/lib/CHANGELOG.md +++ b/python/ql/lib/CHANGELOG.md @@ -1,3 +1,14 @@ +## 6.1.1 + +### Minor Analysis Improvements + +* Added request forgery sink models for the Azure SDK. +* Made it so that models-as-data sinks with the kind `request-forgery` contribute to the class `Http::Client::Request` which represents HTTP client requests. + +### Bug Fixes + +- Using `=` as a fill character in a format specifier (e.g `f"{x:=^20}"`) now no longer results in a syntax error during parsing. + ## 6.1.0 ### New Features diff --git a/python/ql/lib/change-notes/released/6.1.1.md b/python/ql/lib/change-notes/released/6.1.1.md new file mode 100644 index 000000000000..ca4d1bf46842 --- /dev/null +++ b/python/ql/lib/change-notes/released/6.1.1.md @@ -0,0 +1,10 @@ +## 6.1.1 + +### Minor Analysis Improvements + +* Added request forgery sink models for the Azure SDK. +* Made it so that models-as-data sinks with the kind `request-forgery` contribute to the class `Http::Client::Request` which represents HTTP client requests. + +### Bug Fixes + +- Using `=` as a fill character in a format specifier (e.g `f"{x:=^20}"`) now no longer results in a syntax error during parsing. diff --git a/python/ql/lib/codeql-pack.release.yml b/python/ql/lib/codeql-pack.release.yml index 22247782f3e5..54acf3e5e47b 100644 --- a/python/ql/lib/codeql-pack.release.yml +++ b/python/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 6.1.0 +lastReleaseVersion: 6.1.1 diff --git a/python/ql/lib/qlpack.yml b/python/ql/lib/qlpack.yml index db127bd57920..36b8813f8dec 100644 --- a/python/ql/lib/qlpack.yml +++ b/python/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/python-all -version: 6.1.0 +version: 6.1.2-dev groups: python dbscheme: semmlecode.python.dbscheme extractor: python diff --git a/python/ql/lib/semmle/python/Concepts.qll b/python/ql/lib/semmle/python/Concepts.qll index 1c018566cbf0..76e9f4bd13f9 100644 --- a/python/ql/lib/semmle/python/Concepts.qll +++ b/python/ql/lib/semmle/python/Concepts.qll @@ -15,6 +15,8 @@ private import semmle.python.security.internal.EncryptionKeySizes private import semmle.python.dataflow.new.SensitiveDataSources private import codeql.threatmodels.ThreatModels private import codeql.concepts.ConceptsShared +private import semmle.python.ApiGraphs +private import semmle.python.frameworks.data.ModelsAsData private module ConceptsShared = ConceptsMake; @@ -1656,8 +1658,35 @@ module Http { } import ConceptsShared::Http::Client as Client + // TODO: investigate whether we should treat responses to client requests as // remote-flow-sources in general. + /** + * An HTTP request modeled from `request-forgery` sinks, modeled using MaD. + */ + class HttpClientRequestFromModel extends Http::Client::Request::Range instanceof API::CallNode { + DataFlow::Node urlArg; + + HttpClientRequestFromModel() { + ( + this.getArg(_) = urlArg + or + this.getArgByName(_) = urlArg + ) and + ModelOutput::sinkNode(urlArg, "request-forgery") + } + + override DataFlow::Node getAUrlPart() { result = urlArg } + + override string getFramework() { result = "MaD" } + + override predicate disablesCertificateValidation( + DataFlow::Node disablingNode, DataFlow::Node argumentOrigin + ) { + // NOTE: if you need to define this, you have to special case it for every possible API in MaD + none() + } + } } /** diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowDispatch.qll b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowDispatch.qll index c717cd7bc97b..b04b83be83ec 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowDispatch.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowDispatch.qll @@ -1714,36 +1714,66 @@ private class SummaryPostUpdateNode extends FlowSummaryNode, PostUpdateNodeImpl * This is also known as the environment part of a closure. * * This is used for tracking flow through captured variables. - * - * TODO: - * We might want a synthetic node here, but currently that incurs problems - * with non-monotonic recursion, because of the use of `resolveCall` in the - * char pred. This may be solvable by using - * `CallGraphConstruction::Make` in stead of - * `CallGraphConstruction::Simple::Make` appropriately. */ -class CapturedVariablesArgumentNode extends CfgNode, ArgumentNode { - CallNode callNode; +class SynthCapturedVariablesArgumentNode extends Node, TSynthCapturedVariablesArgumentNode { + ControlFlowNode callable; - CapturedVariablesArgumentNode() { - node = callNode.getFunction() and - exists(Function target | resolveCall(callNode, target, _) | - target = any(VariableCapture::CapturedVariable v).getACapturingScope() - ) - } + SynthCapturedVariablesArgumentNode() { this = TSynthCapturedVariablesArgumentNode(callable) } + + /** Gets the `CallNode` corresponding to this captured variables argument node. */ + CallNode getCallNode() { result.getFunction() = callable } + + /** Gets the `CfgNode` that corresponds to this synthetic node. */ + CfgNode getUnderlyingNode() { result.asCfgNode() = callable } + + override Scope getScope() { result = callable.getScope() } + + override Location getLocation() { result = callable.getLocation() } override string toString() { result = "Capturing closure argument" } +} +/** A captured variables argument node viewed as an argument node. Needed because `argumentOf` is a global predicate. */ +class CapturedVariablesArgumentNodeAsArgumentNode extends ArgumentNode, + SynthCapturedVariablesArgumentNode +{ override predicate argumentOf(DataFlowCall call, ArgumentPosition pos) { - callNode = call.getNode() and - pos.isLambdaSelf() + exists(CallNode callNode | callNode = this.getCallNode() | + callNode = call.getNode() and + exists(Function target | resolveCall(callNode, target, _) | + target = any(VariableCapture::CapturedVariable v).getACapturingScope() + ) and + pos.isLambdaSelf() + ) } } -/** A synthetic node representing the values of variables captured by a comprehension. */ -class SynthCompCapturedVariablesArgumentNode extends Node, TSynthCompCapturedVariablesArgumentNode, - ArgumentNode +/** A synthetic node representing the values of captured variables after the output has been computed. */ +class SynthCapturedVariablesArgumentPostUpdateNode extends PostUpdateNodeImpl, + TSynthCapturedVariablesArgumentPostUpdateNode { + ControlFlowNode callable; + + SynthCapturedVariablesArgumentPostUpdateNode() { + this = TSynthCapturedVariablesArgumentPostUpdateNode(callable) + } + + /** Gets the `PostUpdateNode` (for a `CfgNode`) that corresponds to this synthetic node. */ + PostUpdateNode getUnderlyingNode() { result.getPreUpdateNode().asCfgNode() = callable } + + override string toString() { result = "[post] Capturing closure argument" } + + override Scope getScope() { result = callable.getScope() } + + override Location getLocation() { result = callable.getLocation() } + + override SynthCapturedVariablesArgumentNode getPreUpdateNode() { + result = TSynthCapturedVariablesArgumentNode(callable) + } +} + +/** A synthetic node representing the values of variables captured by a comprehension. */ +class SynthCompCapturedVariablesArgumentNode extends Node, TSynthCompCapturedVariablesArgumentNode { Comp comp; SynthCompCapturedVariablesArgumentNode() { this = TSynthCompCapturedVariablesArgumentNode(comp) } @@ -1755,7 +1785,11 @@ class SynthCompCapturedVariablesArgumentNode extends Node, TSynthCompCapturedVar override Location getLocation() { result = comp.getLocation() } Comp getComprehension() { result = comp } +} +class SynthCompCapturedVariablesArgumentNodeAsArgumentNode extends SynthCompCapturedVariablesArgumentNode, + ArgumentNode +{ override predicate argumentOf(DataFlowCall call, ArgumentPosition pos) { call.(ComprehensionCall).getComprehension() = comp and pos.isLambdaSelf() diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPrivate.qll b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPrivate.qll index 2322539995b6..9866bd009642 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPrivate.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPrivate.qll @@ -1128,6 +1128,14 @@ predicate nodeIsHidden(Node n) { n instanceof SynthCaptureNode or n instanceof SynthCapturedVariablesParameterNode + or + n instanceof SynthCapturedVariablesArgumentNode + or + n instanceof SynthCapturedVariablesArgumentPostUpdateNode + or + n instanceof SynthCompCapturedVariablesArgumentNode + or + n instanceof SynthCompCapturedVariablesArgumentPostUpdateNode } class LambdaCallKind = Unit; diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll index 4d112bcdcddd..de26d988c068 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll @@ -76,15 +76,7 @@ newtype TNode = node.getNode() = any(Comp c).getIterable() } or /** A node representing a global (module-level) variable in a specific module. */ - TModuleVariableNode(Module m, GlobalVariable v) { - v.getScope() = m and - ( - v.escapes() - or - isAccessedThroughImportStar(m) and - ImportStar::globalNameDefinedInModule(v.getId(), m) - ) - } or + TModuleVariableNode(Module m, GlobalVariable v) { v.getScope() = m } or /** * A synthetic node representing that an iterable sequence flows to consumer. */ @@ -129,6 +121,20 @@ newtype TNode = f = any(VariableCapture::CapturedVariable v).getACapturingScope() and exists(TFunction(f)) } or + /** + * A synthetic node representing the values of the variables captured + * by the callable being called. + */ + TSynthCapturedVariablesArgumentNode(ControlFlowNode callable) { + callable = any(CallNode c).getFunction() + } or + /** + * A synthetic node representing the values of the variables captured + * by the callable being called, after the output has been computed. + */ + TSynthCapturedVariablesArgumentPostUpdateNode(ControlFlowNode callable) { + callable = any(CallNode c).getFunction() + } or /** A synthetic node representing the values of variables captured by a comprehension. */ TSynthCompCapturedVariablesArgumentNode(Comp comp) { comp.getFunction() = any(VariableCapture::CapturedVariable v).getACapturingScope() @@ -347,27 +353,51 @@ abstract class ArgumentNode extends Node { final ExtractedDataFlowCall getCall() { this.argumentOf(result, _) } } +/** Gets an overapproximation of the argument nodes that are included in `getCallArg`. */ +Node getCallArgApproximation() { + // pre-update nodes for calls + result = any(CallCfgNode c).(PostUpdateNode).getPreUpdateNode() + or + // self parameters in methods + exists(Class c | result.asExpr() = c.getAMethod().getArg(0)) + or + // the object part of an attribute expression (which might be a bound method) + result.asCfgNode() = any(AttrNode a).getObject() + or + // the function part of any call + result.asCfgNode() = any(CallNode c).getFunction() +} + +/** Gets the extracted argument nodes that do not rely on `getCallArg`. */ +private Node implicitArgumentNode() { + // for potential summaries we allow all normal call arguments + normalCallArg(_, result, _) + or + // and self arguments + result.asCfgNode() = any(CallNode c).getFunction().(AttrNode).getObject() + or + // for comprehensions, we allow the synthetic `iterable` argument + result.asExpr() = any(Comp c).getIterable() +} + /** * A data flow node that represents a call argument found in the source code. */ class ExtractedArgumentNode extends ArgumentNode { ExtractedArgumentNode() { - // for resolved calls, we need to allow all argument nodes - getCallArg(_, _, _, this, _) - or - // for potential summaries we allow all normal call arguments - normalCallArg(_, this, _) + this = getCallArgApproximation() or - // and self arguments - this.asCfgNode() = any(CallNode c).getFunction().(AttrNode).getObject() - or - // for comprehensions, we allow the synthetic `iterable` argument - this.asExpr() = any(Comp c).getIterable() + this = implicitArgumentNode() } final override predicate argumentOf(DataFlowCall call, ArgumentPosition pos) { this = call.getArgument(pos) and - call instanceof ExtractedDataFlowCall + call instanceof ExtractedDataFlowCall and + ( + this = implicitArgumentNode() + or + this = getCallArgApproximation() and getCallArg(_, _, _, this, _) + ) } } @@ -440,13 +470,17 @@ class ModuleVariableNode extends Node, TModuleVariableNode { /** Gets a node that reads this variable. */ Node getARead() { - result.asCfgNode() = var.getALoad().getAFlowNode() and - // Ignore reads that happen when the module is imported. These are only executed once. - not result.getScope() = mod + result = this.getALocalRead() or this = import_star_read(result) } + /** Gets a node that reads this variable, excluding reads that happen through `from ... import *`. */ + Node getALocalRead() { + result.asCfgNode() = var.getALoad().getAFlowNode() and + not result.getScope() = mod + } + /** Gets an `EssaNode` that corresponds to an assignment of this global variable. */ Node getAWrite() { any(EssaNodeDefinition def).definedBy(var, result.asCfgNode().(DefinitionNode)) @@ -466,8 +500,6 @@ class ModuleVariableNode extends Node, TModuleVariableNode { override Location getLocation() { result = mod.getLocation() } } -private predicate isAccessedThroughImportStar(Module m) { m = ImportStar::getStarImported(_) } - private ModuleVariableNode import_star_read(Node n) { resolved_import_star_module(result.getModule(), result.getVariable().getId(), n) } diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/LocalSources.qll b/python/ql/lib/semmle/python/dataflow/new/internal/LocalSources.qll index c43a111c9c8b..7752846ae1ff 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/LocalSources.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/LocalSources.qll @@ -67,7 +67,7 @@ class LocalSourceNode extends Node { or // We explicitly include any read of a global variable, as some of these may have local flow going // into them. - this = any(ModuleVariableNode mvn).getARead() + this = any(ModuleVariableNode v).getALocalRead() or // We include all scope entry definitions, as these act as the local source within the scope they // enter. @@ -248,7 +248,7 @@ private module Cached { pragma[nomagic] private predicate localSourceFlowStep(Node nodeFrom, Node nodeTo) { simpleLocalFlowStep(nodeFrom, nodeTo, _) and - not nodeTo = any(ModuleVariableNode v).getARead() + not nodeTo = any(ModuleVariableNode v).getALocalRead() } /** diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/VariableCapture.qll b/python/ql/lib/semmle/python/dataflow/new/internal/VariableCapture.qll index a7b3b9ceaebf..5ed365a8e56f 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/VariableCapture.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/VariableCapture.qll @@ -114,6 +114,12 @@ private Flow::ClosureNode asClosureNode(Node n) { result.(Flow::ExprNode).getExpr().getNode() = comp ) or + // For captured variable argument nodes (and their post-update variants), we use the closure node + // for the underlying node. + result = asClosureNode(n.(SynthCapturedVariablesArgumentNode).getUnderlyingNode()) + or + result = asClosureNode(n.(SynthCapturedVariablesArgumentPostUpdateNode).getUnderlyingNode()) + or // TODO: Should the `Comp`s above be excluded here? result.(Flow::ExprNode).getExpr() = n.(CfgNode).getNode() or diff --git a/python/ql/lib/semmle/python/frameworks/Azure.Keyvault.model.yml b/python/ql/lib/semmle/python/frameworks/Azure.Keyvault.model.yml new file mode 100644 index 000000000000..d792c72425ab --- /dev/null +++ b/python/ql/lib/semmle/python/frameworks/Azure.Keyvault.model.yml @@ -0,0 +1,9 @@ +extensions: + - addsTo: + pack: codeql/python-all + extensible: sinkModel + data: + - ['azure.keyvault.certificates.CertificateClient!', 'Call.Argument[0,vault_url:]', 'request-forgery'] + - ['azure.keyvault.certificates.DeletedCertificate!', 'Call.Argument[recovery_id:]', 'request-forgery'] + - ['azure.keyvault.keys.KeyClient!', 'Call.Argument[0,vault_url:]', 'request-forgery'] + - ['azure.keyvault.secrets.SecretClient!', 'Call.Argument[0,vault_url:]', 'request-forgery'] \ No newline at end of file diff --git a/python/ql/lib/semmle/python/frameworks/Azure.Storage.model.yml b/python/ql/lib/semmle/python/frameworks/Azure.Storage.model.yml new file mode 100644 index 000000000000..b8d857b95f90 --- /dev/null +++ b/python/ql/lib/semmle/python/frameworks/Azure.Storage.model.yml @@ -0,0 +1,34 @@ +extensions: + - addsTo: + pack: codeql/python-all + extensible: sinkModel + data: + - ['azure.storage.blob.BlobClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobClient', 'Member[append_block_from_url].Argument[0,copy_source_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobClient', 'Member[get_page_range_diff_for_managed_disk].Argument[0,previous_snapshot_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobClient', 'Member[stage_block_from_url].Argument[1,source_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobClient', 'Member[start_copy_from_url].Argument[0,source_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobClient', 'Member[upload_blob_from_url].Argument[0,source_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobClient', 'Member[upload_pages_from_url].Argument[0,source_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobClient!', 'Member[from_blob_url].Argument[0,blob_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobServiceClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.blob.ContainerClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.blob.ContainerClient!', 'Member[from_container_url].Argument[0,container_url:]', 'request-forgery'] + - ['azure', 'Member[storage].Member[blob].Member[download_blob_from_url].Argument[0,blob_url:]', 'request-forgery'] + - ['azure', 'Member[storage].Member[blob].Member[upload_blob_to_url].Argument[0,blob_url:]', 'request-forgery'] + - ['azure.storage.filedatalake.DataLakeDirectoryClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.filedatalake.DataLakeFileClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.filedatalake.DataLakeServiceClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.filedatalake.FileSystemClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareClient!', 'Member[from_share_url].Argument[0,share_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareDirectoryClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareDirectoryClient!', 'Member[from_directory_url].Argument[0,directory_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareFileClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareFileClient!', 'Member[from_file_url].Argument[0,file_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareFileClient', 'Member[start_copy_from_url].Argument[0,source_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareFileClient', 'Member[upload_range_from_url].Argument[0,source_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareServiceClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.queue.QueueClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.queue.QueueClient', 'Member[from_queue_url].Argument[0,queue_url:]', 'request-forgery'] + - ['azure.storage.queue.QueueServiceClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] \ No newline at end of file diff --git a/python/ql/lib/utils/test/dataflow/MaximalFlowTest.qll b/python/ql/lib/utils/test/dataflow/MaximalFlowTest.qll index 7587584a269b..cbd3b4c6aa51 100644 --- a/python/ql/lib/utils/test/dataflow/MaximalFlowTest.qll +++ b/python/ql/lib/utils/test/dataflow/MaximalFlowTest.qll @@ -8,7 +8,9 @@ module MaximalFlowTest implements FlowTestSig { predicate relevantFlow(DataFlow::Node source, DataFlow::Node sink) { source != sink and - MaximalFlows::flow(source, sink) + MaximalFlows::flow(source, sink) and + // exclude ModuleVariableNodes (which have location 0:0:0:0) + not sink instanceof DataFlow::ModuleVariableNode } } @@ -33,7 +35,7 @@ module MaximalFlowsConfig implements DataFlow::ConfigSig { predicate isSink(DataFlow::Node node) { exists(node.getLocation().getFile().getRelativePath()) and not any(CallNode c).getArg(_) = node.asCfgNode() and - not node instanceof DataFlow::ArgumentNode and + not isArgumentNode(node, _, _) and not node.asCfgNode().(NameNode).getId().matches("SINK%") and not DataFlow::localFlowStep(node, _) } diff --git a/python/ql/lib/utils/test/dataflow/callGraphConfig.qll b/python/ql/lib/utils/test/dataflow/callGraphConfig.qll index 8528396a12f2..85ecb9b701db 100644 --- a/python/ql/lib/utils/test/dataflow/callGraphConfig.qll +++ b/python/ql/lib/utils/test/dataflow/callGraphConfig.qll @@ -9,7 +9,7 @@ module CallGraphConfig implements DataFlow::ConfigSig { predicate isSource(DataFlow::Node node) { node instanceof DataFlowPrivate::ReturnNode or - node instanceof DataFlow::ArgumentNode + DataFlowPrivate::isArgumentNode(node, _, _) } predicate isSink(DataFlow::Node node) { diff --git a/python/ql/src/CHANGELOG.md b/python/ql/src/CHANGELOG.md index 3f9a869decca..a68b2d3b8db1 100644 --- a/python/ql/src/CHANGELOG.md +++ b/python/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.7.7 + +No user-facing changes. + ## 1.7.6 No user-facing changes. diff --git a/python/ql/src/Classes/InitCallsSubclass/InitCallsSubclassMethod.ql b/python/ql/src/Classes/InitCallsSubclass/InitCallsSubclassMethod.ql index 32eb5ffe79e5..4c1b3247d96f 100644 --- a/python/ql/src/Classes/InitCallsSubclass/InitCallsSubclassMethod.ql +++ b/python/ql/src/Classes/InitCallsSubclass/InitCallsSubclassMethod.ql @@ -15,6 +15,7 @@ import python import semmle.python.dataflow.new.DataFlow import semmle.python.dataflow.new.internal.DataFlowDispatch +import semmle.python.dataflow.new.internal.DataFlowPrivate predicate initSelfCallOverridden( Function init, DataFlow::Node self, DataFlow::MethodCallNode call, Function target, @@ -39,7 +40,7 @@ predicate readsFromSelf(Function method) { self.getParameter() = method.getArg(0) and DataFlow::localFlow(self, sink) | - sink instanceof DataFlow::ArgumentNode + isArgumentNode(sink, _, _) or sink = any(DataFlow::AttrRead a).getObject() ) diff --git a/python/ql/src/Security/CWE-022/PathInjection.qhelp b/python/ql/src/Security/CWE-022/PathInjection.qhelp index ed12b74b6d97..53653abb12e6 100644 --- a/python/ql/src/Security/CWE-022/PathInjection.qhelp +++ b/python/ql/src/Security/CWE-022/PathInjection.qhelp @@ -13,21 +13,27 @@ attacker being able to influence behavior by modifying unexpected files.

-Validate user input before using it to construct a file path, either using an off-the-shelf library function -like werkzeug.utils.secure_filename, or by performing custom validation. +Validate paths constructed from untrusted user input before using them to access files.

-Ideally, follow these rules: +The choice of validation depends on the use case.

-
    -
  • Do not allow more than a single "." character.
  • -
  • Do not allow directory separators such as "/" or "\" (depending on the file system).
  • -
  • Do not rely on simply replacing problematic sequences such as "../". For example, after -applying this filter to ".../...//", the resulting string would still be "../".
  • -
  • Use an allowlist of known good patterns.
  • -
+

+If you want to allow paths spanning multiple folders, a common strategy is to make sure that the constructed +file path is contained within a safe root folder. First, normalize the path using os.path.normpath or +os.path.realpath (make sure to use the latter if symlinks are a consideration) +to remove any internal ".." segments and/or follow links. Then check that the normalized path starts with the +root folder. Note that the normalization step is important, since otherwise even a path that starts with the root +folder could be used to access files outside the root folder. +

+ +

+More restrictive options include using a library function like werkzeug.utils.secure_filename to eliminate +any special characters from the file path, or restricting the path to a known list of safe paths. These options are +safe, but can only be used in particular circumstances. +

diff --git a/python/ql/src/change-notes/released/1.7.7.md b/python/ql/src/change-notes/released/1.7.7.md new file mode 100644 index 000000000000..e1a2f3e1d9a0 --- /dev/null +++ b/python/ql/src/change-notes/released/1.7.7.md @@ -0,0 +1,3 @@ +## 1.7.7 + +No user-facing changes. diff --git a/python/ql/src/codeql-pack.release.yml b/python/ql/src/codeql-pack.release.yml index 1f68518dba9b..df4010bd267b 100644 --- a/python/ql/src/codeql-pack.release.yml +++ b/python/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.7.6 +lastReleaseVersion: 1.7.7 diff --git a/python/ql/src/qlpack.yml b/python/ql/src/qlpack.yml index 5725ef1f6644..c6b7d29f6312 100644 --- a/python/ql/src/qlpack.yml +++ b/python/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/python-queries -version: 1.7.6 +version: 1.7.8-dev groups: - python - queries diff --git a/python/ql/test/experimental/attrs/AttrWrites.expected b/python/ql/test/experimental/attrs/AttrWrites.expected index f8a55824043f..d1fc30b34515 100644 --- a/python/ql/test/experimental/attrs/AttrWrites.expected +++ b/python/ql/test/experimental/attrs/AttrWrites.expected @@ -1,4 +1,5 @@ | test.py:5:9:5:16 | ControlFlowNode for __init__ | test.py:4:1:4:20 | ControlFlowNode for ClassExpr | __init__ | test.py:5:5:5:28 | ControlFlowNode for FunctionExpr | | test.py:6:9:6:16 | ControlFlowNode for Attribute | test.py:6:9:6:12 | ControlFlowNode for self | foo | test.py:6:20:6:22 | ControlFlowNode for foo | +| test.py:9:1:9:9 | ControlFlowNode for Attribute | test.py:0:0:0:0 | ModuleVariableNode in Module test for myobj | foo | test.py:9:13:9:17 | ControlFlowNode for StringLiteral | | test.py:9:1:9:9 | ControlFlowNode for Attribute | test.py:9:1:9:5 | ControlFlowNode for myobj | foo | test.py:9:13:9:17 | ControlFlowNode for StringLiteral | | test.py:12:1:12:25 | ControlFlowNode for setattr() | test.py:12:9:12:13 | ControlFlowNode for myobj | foo | test.py:12:23:12:24 | ControlFlowNode for IntegerLiteral | diff --git a/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.expected b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.expected index d60b63c701e7..1a899e7c82fe 100644 --- a/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.expected +++ b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.expected @@ -20,7 +20,7 @@ edges | agent_instructions.py:2:26:2:32 | ControlFlowNode for ImportMember | agent_instructions.py:2:26:2:32 | ControlFlowNode for request | provenance | | | agent_instructions.py:2:26:2:32 | ControlFlowNode for request | agent_instructions.py:7:13:7:19 | ControlFlowNode for request | provenance | | | agent_instructions.py:2:26:2:32 | ControlFlowNode for request | agent_instructions.py:17:13:17:19 | ControlFlowNode for request | provenance | | -| agent_instructions.py:7:5:7:9 | ControlFlowNode for input | agent_instructions.py:9:50:9:89 | ControlFlowNode for BinaryExpr | provenance | Sink:MaD:94 | +| agent_instructions.py:7:5:7:9 | ControlFlowNode for input | agent_instructions.py:9:50:9:89 | ControlFlowNode for BinaryExpr | provenance | Sink:MaD:2 | | agent_instructions.py:7:13:7:19 | ControlFlowNode for request | agent_instructions.py:7:13:7:24 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | | agent_instructions.py:7:13:7:24 | ControlFlowNode for Attribute | agent_instructions.py:7:13:7:37 | ControlFlowNode for Attribute() | provenance | dict.get | | agent_instructions.py:7:13:7:37 | ControlFlowNode for Attribute() | agent_instructions.py:7:5:7:9 | ControlFlowNode for input | provenance | | @@ -38,7 +38,7 @@ edges | openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:41:22:41:46 | ControlFlowNode for BinaryExpr | provenance | | | openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:63:28:63:51 | ControlFlowNode for BinaryExpr | provenance | | | openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:80:28:80:51 | ControlFlowNode for BinaryExpr | provenance | | -| openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:92:22:92:46 | ControlFlowNode for BinaryExpr | provenance | Sink:MaD:58614 | +| openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:92:22:92:46 | ControlFlowNode for BinaryExpr | provenance | Sink:MaD:1 | | openai_test.py:12:15:12:21 | ControlFlowNode for request | openai_test.py:12:15:12:26 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | | openai_test.py:12:15:12:21 | ControlFlowNode for request | openai_test.py:13:13:13:24 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | | openai_test.py:12:15:12:26 | ControlFlowNode for Attribute | openai_test.py:12:15:12:41 | ControlFlowNode for Attribute() | provenance | dict.get | @@ -53,6 +53,9 @@ edges | openai_test.py:13:13:13:19 | ControlFlowNode for request | openai_test.py:13:13:13:24 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | | openai_test.py:13:13:13:24 | ControlFlowNode for Attribute | openai_test.py:13:13:13:37 | ControlFlowNode for Attribute() | provenance | dict.get | | openai_test.py:13:13:13:37 | ControlFlowNode for Attribute() | openai_test.py:13:5:13:9 | ControlFlowNode for query | provenance | | +models +| 1 | Sink: OpenAI; Member[beta].Member[assistants].Member[create].Argument[instructions:]; prompt-injection | +| 2 | Sink: agents; Member[Agent].Argument[instructions:]; prompt-injection | nodes | agent_instructions.py:2:26:2:32 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | | agent_instructions.py:2:26:2:32 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | diff --git a/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.qlref b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.qlref index 08466562ffe7..bd9514c306b5 100644 --- a/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.qlref +++ b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.qlref @@ -1,2 +1,4 @@ query: experimental/Security/CWE-1427/PromptInjection.ql -postprocess: utils/test/InlineExpectationsTestQuery.ql \ No newline at end of file +postprocess: + - utils/test/PrettyPrintModels.ql + - utils/test/InlineExpectationsTestQuery.ql diff --git a/python/ql/test/library-tests/dataflow/basic/global.expected b/python/ql/test/library-tests/dataflow/basic/global.expected index 7d2c0cab9b92..9e0ef2e6751b 100644 --- a/python/ql/test/library-tests/dataflow/basic/global.expected +++ b/python/ql/test/library-tests/dataflow/basic/global.expected @@ -1,6 +1,9 @@ +| test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | +| test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | +| test.py:1:19:1:19 | ControlFlowNode for x | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:2:3:2:3 | ControlFlowNode for y | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:2:7:2:7 | ControlFlowNode for x | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:3:3:3:3 | ControlFlowNode for z | @@ -8,26 +11,33 @@ | test.py:1:19:1:19 | ControlFlowNode for x | test.py:4:10:4:10 | ControlFlowNode for z | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | +| test.py:2:3:2:3 | ControlFlowNode for y | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:2:3:2:3 | ControlFlowNode for y | test.py:3:3:3:3 | ControlFlowNode for z | | test.py:2:3:2:3 | ControlFlowNode for y | test.py:3:7:3:7 | ControlFlowNode for y | | test.py:2:3:2:3 | ControlFlowNode for y | test.py:4:10:4:10 | ControlFlowNode for z | | test.py:2:3:2:3 | ControlFlowNode for y | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:2:3:2:3 | ControlFlowNode for y | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | +| test.py:2:7:2:7 | ControlFlowNode for x | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:2:7:2:7 | ControlFlowNode for x | test.py:2:3:2:3 | ControlFlowNode for y | | test.py:2:7:2:7 | ControlFlowNode for x | test.py:3:3:3:3 | ControlFlowNode for z | | test.py:2:7:2:7 | ControlFlowNode for x | test.py:3:7:3:7 | ControlFlowNode for y | | test.py:2:7:2:7 | ControlFlowNode for x | test.py:4:10:4:10 | ControlFlowNode for z | | test.py:2:7:2:7 | ControlFlowNode for x | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:2:7:2:7 | ControlFlowNode for x | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | +| test.py:3:3:3:3 | ControlFlowNode for z | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:3:3:3:3 | ControlFlowNode for z | test.py:4:10:4:10 | ControlFlowNode for z | | test.py:3:3:3:3 | ControlFlowNode for z | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:3:3:3:3 | ControlFlowNode for z | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | +| test.py:3:7:3:7 | ControlFlowNode for y | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:3:7:3:7 | ControlFlowNode for y | test.py:3:3:3:3 | ControlFlowNode for z | | test.py:3:7:3:7 | ControlFlowNode for y | test.py:4:10:4:10 | ControlFlowNode for z | | test.py:3:7:3:7 | ControlFlowNode for y | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:3:7:3:7 | ControlFlowNode for y | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | +| test.py:4:10:4:10 | ControlFlowNode for z | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:4:10:4:10 | ControlFlowNode for z | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:4:10:4:10 | ControlFlowNode for z | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | +| test.py:6:1:6:1 | ControlFlowNode for a | test.py:0:0:0:0 | ModuleVariableNode in Module test for a | +| test.py:6:1:6:1 | ControlFlowNode for a | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:6:1:6:1 | ControlFlowNode for a | test.py:1:19:1:19 | ControlFlowNode for x | | test.py:6:1:6:1 | ControlFlowNode for a | test.py:2:3:2:3 | ControlFlowNode for y | | test.py:6:1:6:1 | ControlFlowNode for a | test.py:2:7:2:7 | ControlFlowNode for x | @@ -37,6 +47,8 @@ | test.py:6:1:6:1 | ControlFlowNode for a | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:6:1:6:1 | ControlFlowNode for a | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | | test.py:6:1:6:1 | ControlFlowNode for a | test.py:7:19:7:19 | ControlFlowNode for a | +| test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:0:0:0:0 | ModuleVariableNode in Module test for a | +| test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:1:19:1:19 | ControlFlowNode for x | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:2:3:2:3 | ControlFlowNode for y | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:2:7:2:7 | ControlFlowNode for x | @@ -47,7 +59,10 @@ | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:7:19:7:19 | ControlFlowNode for a | +| test.py:7:1:7:1 | ControlFlowNode for b | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | +| test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:7:1:7:1 | ControlFlowNode for b | +| test.py:7:19:7:19 | ControlFlowNode for a | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:7:19:7:19 | ControlFlowNode for a | test.py:1:19:1:19 | ControlFlowNode for x | | test.py:7:19:7:19 | ControlFlowNode for a | test.py:2:3:2:3 | ControlFlowNode for y | | test.py:7:19:7:19 | ControlFlowNode for a | test.py:2:7:2:7 | ControlFlowNode for x | diff --git a/python/ql/test/library-tests/dataflow/basic/globalStep.expected b/python/ql/test/library-tests/dataflow/basic/globalStep.expected index 00ee53dba003..26d8902e7bbe 100644 --- a/python/ql/test/library-tests/dataflow/basic/globalStep.expected +++ b/python/ql/test/library-tests/dataflow/basic/globalStep.expected @@ -1,5 +1,6 @@ | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | +| test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:2:3:2:3 | ControlFlowNode for y | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:2:3:2:3 | ControlFlowNode for y | @@ -31,10 +32,13 @@ | test.py:3:7:3:7 | ControlFlowNode for y | test.py:3:3:3:3 | ControlFlowNode for z | | test.py:4:10:4:10 | ControlFlowNode for z | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | | test.py:4:10:4:10 | ControlFlowNode for z | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | +| test.py:6:1:6:1 | ControlFlowNode for a | test.py:0:0:0:0 | ModuleVariableNode in Module test for a | | test.py:6:1:6:1 | ControlFlowNode for a | test.py:7:19:7:19 | ControlFlowNode for a | | test.py:6:1:6:1 | ControlFlowNode for a | test.py:7:19:7:19 | ControlFlowNode for a | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:6:1:6:1 | ControlFlowNode for a | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:6:1:6:1 | ControlFlowNode for a | +| test.py:7:1:7:1 | ControlFlowNode for b | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | +| test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:7:19:7:19 | ControlFlowNode for a | test.py:1:19:1:19 | ControlFlowNode for x | | test.py:7:19:7:19 | ControlFlowNode for a | test.py:1:19:1:19 | ControlFlowNode for x | diff --git a/python/ql/test/library-tests/dataflow/basic/local.expected b/python/ql/test/library-tests/dataflow/basic/local.expected index 142c84015aeb..96d402325129 100644 --- a/python/ql/test/library-tests/dataflow/basic/local.expected +++ b/python/ql/test/library-tests/dataflow/basic/local.expected @@ -1,3 +1,8 @@ +| test.py:0:0:0:0 | ModuleVariableNode in Module test for __name__ | test.py:0:0:0:0 | ModuleVariableNode in Module test for __name__ | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for __package__ | test.py:0:0:0:0 | ModuleVariableNode in Module test for __package__ | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for a | test.py:0:0:0:0 | ModuleVariableNode in Module test for a | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for b | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | @@ -31,7 +36,9 @@ | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:7:19:7:19 | ControlFlowNode for a | | test.py:7:1:7:1 | ControlFlowNode for b | test.py:7:1:7:1 | ControlFlowNode for b | +| test.py:7:5:7:17 | Capturing closure argument | test.py:7:5:7:17 | Capturing closure argument | | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | +| test.py:7:5:7:17 | [post] Capturing closure argument | test.py:7:5:7:17 | [post] Capturing closure argument | | test.py:7:5:7:17 | [post] ControlFlowNode for obfuscated_id | test.py:7:5:7:17 | [post] ControlFlowNode for obfuscated_id | | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | diff --git a/python/ql/test/library-tests/dataflow/basic/maximalFlows.expected b/python/ql/test/library-tests/dataflow/basic/maximalFlows.expected index a9fa5d8da920..421918620455 100644 --- a/python/ql/test/library-tests/dataflow/basic/maximalFlows.expected +++ b/python/ql/test/library-tests/dataflow/basic/maximalFlows.expected @@ -1,7 +1,12 @@ +| test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | +| test.py:1:19:1:19 | ControlFlowNode for x | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:4:10:4:10 | ControlFlowNode for z | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:7:1:7:1 | ControlFlowNode for b | +| test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:0:0:0:0 | ModuleVariableNode in Module test for a | +| test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:4:10:4:10 | ControlFlowNode for z | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:7:19:7:19 | ControlFlowNode for a | +| test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:7:1:7:1 | ControlFlowNode for b | diff --git a/python/ql/test/library-tests/dataflow/basic/sinks.expected b/python/ql/test/library-tests/dataflow/basic/sinks.expected index bf5800e0b73f..80055f9a2f2b 100644 --- a/python/ql/test/library-tests/dataflow/basic/sinks.expected +++ b/python/ql/test/library-tests/dataflow/basic/sinks.expected @@ -1,3 +1,8 @@ +| test.py:0:0:0:0 | ModuleVariableNode in Module test for __name__ | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for __package__ | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for a | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for b | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | | test.py:1:1:1:21 | SynthDictSplatParameterNode | | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | @@ -10,7 +15,9 @@ | test.py:6:1:6:1 | ControlFlowNode for a | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | | test.py:7:1:7:1 | ControlFlowNode for b | +| test.py:7:5:7:17 | Capturing closure argument | | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | +| test.py:7:5:7:17 | [post] Capturing closure argument | | test.py:7:5:7:17 | [post] ControlFlowNode for obfuscated_id | | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | | test.py:7:5:7:20 | [pre] ControlFlowNode for obfuscated_id() | diff --git a/python/ql/test/library-tests/dataflow/basic/sources.expected b/python/ql/test/library-tests/dataflow/basic/sources.expected index bf5800e0b73f..80055f9a2f2b 100644 --- a/python/ql/test/library-tests/dataflow/basic/sources.expected +++ b/python/ql/test/library-tests/dataflow/basic/sources.expected @@ -1,3 +1,8 @@ +| test.py:0:0:0:0 | ModuleVariableNode in Module test for __name__ | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for __package__ | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for a | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for b | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | | test.py:1:1:1:21 | SynthDictSplatParameterNode | | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | @@ -10,7 +15,9 @@ | test.py:6:1:6:1 | ControlFlowNode for a | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | | test.py:7:1:7:1 | ControlFlowNode for b | +| test.py:7:5:7:17 | Capturing closure argument | | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | +| test.py:7:5:7:17 | [post] Capturing closure argument | | test.py:7:5:7:17 | [post] ControlFlowNode for obfuscated_id | | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | | test.py:7:5:7:20 | [pre] ControlFlowNode for obfuscated_id() | diff --git a/python/ql/test/library-tests/dataflow/global-flow/test.py b/python/ql/test/library-tests/dataflow/global-flow/test.py index ab2da1c2959d..0b62e47c71fb 100644 --- a/python/ql/test/library-tests/dataflow/global-flow/test.py +++ b/python/ql/test/library-tests/dataflow/global-flow/test.py @@ -8,9 +8,9 @@ g1, g2 = [6], [7] # $writes=g1 writes=g2 -# Assignment that's only referenced in this scope. This one will not give rise to a `ModuleVariableNode`. +# Assignment that's only referenced in this scope. -unreferenced_g = [8] +unreferenced_g = [8] # $writes=unreferenced_g print(unreferenced_g) # Testing modifications of globals @@ -34,7 +34,7 @@ # A global with multiple potential definitions -import unknown_module +import unknown_module # $writes=unknown_module if unknown_module.attr: g_mult = [200] # $writes=g_mult else: @@ -46,7 +46,7 @@ if unknown_module.attr: g_redef = [500] # $writes=g_redef -def global_access(): +def global_access(): # $writes=global_access l = 5 print(g) # $reads=g print(g1) # $reads=g1 @@ -59,12 +59,12 @@ def global_access(): def print_g_mod(): # $writes=print_g_mod print(g_mod) # $reads=g_mod -def global_mod(): +def global_mod(): # $writes=global_mod global g_mod g_mod += [150] # $reads,writes=g_mod print_g_mod() # $reads=print_g_mod -def global_inside_local_function(): +def global_inside_local_function(): # $writes=global_inside_local_function def local_function(): print(g) # $reads=g local_function() @@ -76,21 +76,21 @@ def local_function(): import foo_module # $writes=foo_module -def use_foo(): +def use_foo(): # $writes=use_foo print(foo_module.attr) # $reads=foo_module # Partial imports from bar import baz_attr, quux_attr # $writes=baz_attr writes=quux_attr -def use_partial_import(): +def use_partial_import(): # $writes=use_partial_import print(baz_attr, quux_attr) # $reads=baz_attr reads=quux_attr # Aliased imports from spam_module import ham_attr as eggs_attr # $writes=eggs_attr -def use_aliased_import(): +def use_aliased_import(): # $writes=use_aliased_import print(eggs_attr) # $reads=eggs_attr # Import star (unlikely to work unless we happen to extract/model the referenced module) @@ -99,23 +99,23 @@ def use_aliased_import(): from unknown import * -def secretly_use_unknown(): +def secretly_use_unknown(): # $writes=secretly_use_unknown print(unknown_attr) # $reads=unknown_attr # Known modules from known import * -def secretly_use_known(): +def secretly_use_known(): # $writes=secretly_use_known print(known_attr) # $reads=known_attr # Local import in function -def imports_locally(): +def imports_locally(): # $writes=imports_locally import mod1 # Global import hidden in function -def imports_stuff(): +def imports_stuff(): # $writes=imports_stuff global mod2 import mod2 # $writes=mod2 diff --git a/python/ql/test/library-tests/dataflow/typetracking/moduleattr.expected b/python/ql/test/library-tests/dataflow/typetracking/moduleattr.expected index ff9673aaaea8..06b560623929 100644 --- a/python/ql/test/library-tests/dataflow/typetracking/moduleattr.expected +++ b/python/ql/test/library-tests/dataflow/typetracking/moduleattr.expected @@ -2,6 +2,7 @@ module_tracker | import_as_attr.py:1:6:1:11 | ControlFlowNode for ImportExpr | module_attr_tracker | import_as_attr.py:0:0:0:0 | ModuleVariableNode in Module import_as_attr for attr_ref | +| import_as_attr.py:0:0:0:0 | ModuleVariableNode in Module import_as_attr for x | | import_as_attr.py:1:20:1:35 | ControlFlowNode for ImportMember | | import_as_attr.py:1:28:1:35 | ControlFlowNode for attr_ref | | import_as_attr.py:3:1:3:1 | ControlFlowNode for x | diff --git a/python/ql/test/library-tests/frameworks/internal-ql-helpers/PoorMansFunctionResolutionTest.ql b/python/ql/test/library-tests/frameworks/internal-ql-helpers/PoorMansFunctionResolutionTest.ql index b0325b027c3a..b9575e43493e 100644 --- a/python/ql/test/library-tests/frameworks/internal-ql-helpers/PoorMansFunctionResolutionTest.ql +++ b/python/ql/test/library-tests/frameworks/internal-ql-helpers/PoorMansFunctionResolutionTest.ql @@ -17,7 +17,9 @@ module InlinePoorMansFunctionResolutionTest implements TestSig { ) and // exclude decorator calls (which with our extractor rewrites does reference the // function) - not ref.asExpr() = func.getDefinition().(FunctionExpr).getADecoratorCall() + not ref.asExpr() = func.getDefinition().(FunctionExpr).getADecoratorCall() and + // exclude ModuleVariableNodes (which have location 0:0:0:0) + not ref instanceof DataFlow::ModuleVariableNode | value = func.getName() and tag = "resolved" and diff --git a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/FullServerSideRequestForgery.expected b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/FullServerSideRequestForgery.expected index 0d4a39689301..339703184610 100644 --- a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/FullServerSideRequestForgery.expected +++ b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/FullServerSideRequestForgery.expected @@ -35,6 +35,17 @@ edges | full_partial_test.py:75:5:75:7 | ControlFlowNode for url | full_partial_test.py:76:18:76:20 | ControlFlowNode for url | provenance | | | full_partial_test.py:78:5:78:7 | ControlFlowNode for url | full_partial_test.py:79:18:79:20 | ControlFlowNode for url | provenance | | | full_partial_test.py:81:5:81:7 | ControlFlowNode for url | full_partial_test.py:82:18:82:20 | ControlFlowNode for url | provenance | | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:7:19:7:25 | ControlFlowNode for request | provenance | | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for request | test_azure_client.py:10:18:10:24 | ControlFlowNode for request | provenance | | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for request | test_azure_client.py:11:19:11:25 | ControlFlowNode for request | provenance | | +| test_azure_client.py:10:18:10:24 | ControlFlowNode for request | test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | provenance | AdditionalTaintStep | +| test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | provenance | | +| test_azure_client.py:11:19:11:25 | ControlFlowNode for request | test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | provenance | AdditionalTaintStep | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:17:32:17:39 | ControlFlowNode for full_url | provenance | Sink:MaD:15 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:19:39:19:46 | ControlFlowNode for full_url | provenance | Sink:MaD:38 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:21:19:21:26 | ControlFlowNode for full_url | provenance | Sink:MaD:14 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:23:58:23:65 | ControlFlowNode for full_url | provenance | Sink:MaD:26 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:32:18:32:25 | ControlFlowNode for full_url | provenance | Sink:MaD:27 | | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:1:26:1:32 | ControlFlowNode for request | provenance | | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | test_http_client.py:9:19:9:25 | ControlFlowNode for request | provenance | | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | test_http_client.py:10:19:10:25 | ControlFlowNode for request | provenance | | @@ -89,6 +100,17 @@ nodes | full_partial_test.py:79:18:79:20 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | | full_partial_test.py:81:5:81:7 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | | full_partial_test.py:82:18:82:20 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| test_azure_client.py:10:18:10:24 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | semmle.label | ControlFlowNode for user_input2 | +| test_azure_client.py:11:19:11:25 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:17:32:17:39 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:19:39:19:46 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:21:19:21:26 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:23:58:23:65 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:32:18:32:25 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | | test_http_client.py:9:5:9:15 | ControlFlowNode for unsafe_host | semmle.label | ControlFlowNode for unsafe_host | @@ -122,6 +144,11 @@ subpaths | full_partial_test.py:76:5:76:21 | ControlFlowNode for Attribute() | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | full_partial_test.py:76:18:76:20 | ControlFlowNode for url | The full URL of this request depends on a $@. | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | user-provided value | | full_partial_test.py:79:5:79:21 | ControlFlowNode for Attribute() | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | full_partial_test.py:79:18:79:20 | ControlFlowNode for url | The full URL of this request depends on a $@. | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | user-provided value | | full_partial_test.py:82:5:82:21 | ControlFlowNode for Attribute() | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | full_partial_test.py:82:18:82:20 | ControlFlowNode for url | The full URL of this request depends on a $@. | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:17:9:17:63 | ControlFlowNode for SecretClient() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:17:32:17:39 | ControlFlowNode for full_url | The full URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:19:9:19:47 | ControlFlowNode for Attribute() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:19:39:19:46 | ControlFlowNode for full_url | The full URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:21:9:21:39 | ControlFlowNode for KeyClient() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:21:19:21:26 | ControlFlowNode for full_url | The full URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:23:9:23:89 | ControlFlowNode for Attribute() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:23:58:23:65 | ControlFlowNode for full_url | The full URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:31:5:36:5 | ControlFlowNode for download_blob_from_url() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:32:18:32:25 | ControlFlowNode for full_url | The full URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:14:5:14:36 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:13:27:13:37 | ControlFlowNode for unsafe_host | The full URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:14:5:14:36 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:14:25:14:35 | ControlFlowNode for unsafe_path | The full URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:19:5:19:36 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:18:27:18:37 | ControlFlowNode for unsafe_host | The full URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | diff --git a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/PartialServerSideRequestForgery.expected b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/PartialServerSideRequestForgery.expected index 7a7f8a3366b4..bdcac7465387 100644 --- a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/PartialServerSideRequestForgery.expected +++ b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/PartialServerSideRequestForgery.expected @@ -77,6 +77,24 @@ edges | full_partial_test.py:119:5:119:14 | ControlFlowNode for user_input | full_partial_test.py:121:5:121:7 | ControlFlowNode for url | provenance | | | full_partial_test.py:119:18:119:24 | ControlFlowNode for request | full_partial_test.py:119:5:119:14 | ControlFlowNode for user_input | provenance | AdditionalTaintStep | | full_partial_test.py:121:5:121:7 | ControlFlowNode for url | full_partial_test.py:122:18:122:20 | ControlFlowNode for url | provenance | | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:7:19:7:25 | ControlFlowNode for request | provenance | | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for request | test_azure_client.py:10:18:10:24 | ControlFlowNode for request | provenance | | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for request | test_azure_client.py:11:19:11:25 | ControlFlowNode for request | provenance | | +| test_azure_client.py:10:5:10:14 | ControlFlowNode for user_input | test_azure_client.py:13:5:13:7 | ControlFlowNode for url | provenance | | +| test_azure_client.py:10:18:10:24 | ControlFlowNode for request | test_azure_client.py:10:5:10:14 | ControlFlowNode for user_input | provenance | AdditionalTaintStep | +| test_azure_client.py:10:18:10:24 | ControlFlowNode for request | test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | provenance | AdditionalTaintStep | +| test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | provenance | | +| test_azure_client.py:11:19:11:25 | ControlFlowNode for request | test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | provenance | AdditionalTaintStep | +| test_azure_client.py:13:5:13:7 | ControlFlowNode for url | test_azure_client.py:16:32:16:34 | ControlFlowNode for url | provenance | Sink:MaD:15 | +| test_azure_client.py:13:5:13:7 | ControlFlowNode for url | test_azure_client.py:18:39:18:41 | ControlFlowNode for url | provenance | Sink:MaD:38 | +| test_azure_client.py:13:5:13:7 | ControlFlowNode for url | test_azure_client.py:20:19:20:21 | ControlFlowNode for url | provenance | Sink:MaD:14 | +| test_azure_client.py:13:5:13:7 | ControlFlowNode for url | test_azure_client.py:22:58:22:60 | ControlFlowNode for url | provenance | Sink:MaD:26 | +| test_azure_client.py:13:5:13:7 | ControlFlowNode for url | test_azure_client.py:26:18:26:20 | ControlFlowNode for url | provenance | Sink:MaD:27 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:17:32:17:39 | ControlFlowNode for full_url | provenance | Sink:MaD:15 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:19:39:19:46 | ControlFlowNode for full_url | provenance | Sink:MaD:38 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:21:19:21:26 | ControlFlowNode for full_url | provenance | Sink:MaD:14 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:23:58:23:65 | ControlFlowNode for full_url | provenance | Sink:MaD:26 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:32:18:32:25 | ControlFlowNode for full_url | provenance | Sink:MaD:27 | | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:1:26:1:32 | ControlFlowNode for request | provenance | | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | test_http_client.py:9:19:9:25 | ControlFlowNode for request | provenance | | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | test_http_client.py:10:19:10:25 | ControlFlowNode for request | provenance | | @@ -173,6 +191,24 @@ nodes | full_partial_test.py:119:18:119:24 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | | full_partial_test.py:121:5:121:7 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | | full_partial_test.py:122:18:122:20 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| test_azure_client.py:10:5:10:14 | ControlFlowNode for user_input | semmle.label | ControlFlowNode for user_input | +| test_azure_client.py:10:18:10:24 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | semmle.label | ControlFlowNode for user_input2 | +| test_azure_client.py:11:19:11:25 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| test_azure_client.py:13:5:13:7 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:16:32:16:34 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:17:32:17:39 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:18:39:18:41 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:19:39:19:46 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:20:19:20:21 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:21:19:21:26 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:22:58:22:60 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:23:58:23:65 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:26:18:26:20 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:32:18:32:25 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | | test_http_client.py:9:5:9:15 | ControlFlowNode for unsafe_host | semmle.label | ControlFlowNode for unsafe_host | @@ -205,6 +241,11 @@ subpaths | full_partial_test.py:107:5:107:21 | ControlFlowNode for Attribute() | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | full_partial_test.py:107:18:107:20 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | user-provided value | | full_partial_test.py:116:5:116:21 | ControlFlowNode for Attribute() | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | full_partial_test.py:116:18:116:20 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | user-provided value | | full_partial_test.py:122:5:122:21 | ControlFlowNode for Attribute() | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | full_partial_test.py:122:18:122:20 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:16:9:16:58 | ControlFlowNode for SecretClient() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:16:32:16:34 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:18:9:18:42 | ControlFlowNode for Attribute() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:18:39:18:41 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:20:9:20:34 | ControlFlowNode for KeyClient() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:20:19:20:21 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:22:9:22:84 | ControlFlowNode for Attribute() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:22:58:22:60 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:25:5:30:5 | ControlFlowNode for download_blob_from_url() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:26:18:26:20 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:22:5:22:31 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:18:27:18:37 | ControlFlowNode for unsafe_host | Part of the URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:26:5:26:31 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:25:27:25:37 | ControlFlowNode for unsafe_host | Part of the URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:29:5:29:36 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:29:25:29:35 | ControlFlowNode for unsafe_path | Part of the URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | diff --git a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py new file mode 100644 index 000000000000..d8de2092a2e5 --- /dev/null +++ b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py @@ -0,0 +1,36 @@ +from azure.keyvault.secrets import SecretClient +from azure.storage.fileshare import ShareFileClient +from azure.keyvault.keys import KeyClient +from azure.storage.blob import ContainerClient +from azure.storage.blob import download_blob_from_url + +from flask import request + +def azure_sdk_test(credential, output_path): + user_input = request.args['untrusted_input'] + user_input2 = request.args['untrusted_input2'] + + url = f"https://example.com/foo#{user_input}" + full_url = f"https://{user_input2}" + # Testing Azure sink + c = SecretClient(vault_url=url, credential=credential)# NOT OK -- user only controlled fragment + c = SecretClient(vault_url=full_url, credential=credential) # NOT OK -- user has full control + c = ShareFileClient.from_file_url(url) # NOT OK -- user only controlled fragment + c = ShareFileClient.from_file_url(full_url) # NOT OK -- user has full control + c = KeyClient(url, credential)# NOT OK -- user only controlled fragment + c = KeyClient(full_url, credential) # NOT OK -- user has full control + c = ContainerClient.from_container_url(container_url=url, credential=credential) # NOT OK -- user only controlled fragment + c = ContainerClient.from_container_url(container_url=full_url, credential=credential) # NOT OK -- user has full control + + download_blob_from_url( + blob_url=url, # NOT OK -- user only controlled fragment + output=output_path, + credential=credential, + overwrite=True + ) + download_blob_from_url( + blob_url=full_url, # NOT OK -- user has full control + output=output_path, + credential=credential, + overwrite=True + ) diff --git a/ql/ql/src/queries/style/GetAPrimaryQlClassConsistency.ql b/ql/ql/src/queries/style/GetAPrimaryQlClassConsistency.ql index 00ea044ad55e..2d3ab7c7d2c0 100644 --- a/ql/ql/src/queries/style/GetAPrimaryQlClassConsistency.ql +++ b/ql/ql/src/queries/style/GetAPrimaryQlClassConsistency.ql @@ -16,11 +16,13 @@ import ql * * For most languages this is just the name of `c`, but QL for Swift implements * the `getAPrimaryQlClass` predicate for a class `Foo` in another class `FooBase`. + * We also allow `Impl` classes (e.g., `FooImpl`) to return `Foo`. This pattern is used + * to avoid exposing abstract classes. */ string getAnAllowedResultForClass(Class c) { result = c.getName() or - c.getName() = result + "Base" + c.getName() = result + ["Base", "Impl"] } from ClassPredicate pred, String constant, Class c diff --git a/ruby/ql/lib/CHANGELOG.md b/ruby/ql/lib/CHANGELOG.md index 408f2f3144f1..063e5f16211a 100644 --- a/ruby/ql/lib/CHANGELOG.md +++ b/ruby/ql/lib/CHANGELOG.md @@ -1,3 +1,7 @@ +## 5.1.10 + +No user-facing changes. + ## 5.1.9 ### Minor Analysis Improvements diff --git a/ruby/ql/lib/change-notes/released/5.1.10.md b/ruby/ql/lib/change-notes/released/5.1.10.md new file mode 100644 index 000000000000..f22ccf3e6e9d --- /dev/null +++ b/ruby/ql/lib/change-notes/released/5.1.10.md @@ -0,0 +1,3 @@ +## 5.1.10 + +No user-facing changes. diff --git a/ruby/ql/lib/codeql-pack.release.yml b/ruby/ql/lib/codeql-pack.release.yml index f9bf26052618..9198af0dd6c7 100644 --- a/ruby/ql/lib/codeql-pack.release.yml +++ b/ruby/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 5.1.9 +lastReleaseVersion: 5.1.10 diff --git a/ruby/ql/lib/qlpack.yml b/ruby/ql/lib/qlpack.yml index 6a48d4be1a25..1d14ca0e3d26 100644 --- a/ruby/ql/lib/qlpack.yml +++ b/ruby/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ruby-all -version: 5.1.9 +version: 5.1.11-dev groups: ruby extractor: ruby dbscheme: ruby.dbscheme diff --git a/ruby/ql/src/CHANGELOG.md b/ruby/ql/src/CHANGELOG.md index fd5b24f166e5..247072967e78 100644 --- a/ruby/ql/src/CHANGELOG.md +++ b/ruby/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.5.7 + +No user-facing changes. + ## 1.5.6 No user-facing changes. diff --git a/ruby/ql/src/change-notes/released/1.5.7.md b/ruby/ql/src/change-notes/released/1.5.7.md new file mode 100644 index 000000000000..c60c55034a6b --- /dev/null +++ b/ruby/ql/src/change-notes/released/1.5.7.md @@ -0,0 +1,3 @@ +## 1.5.7 + +No user-facing changes. diff --git a/ruby/ql/src/codeql-pack.release.yml b/ruby/ql/src/codeql-pack.release.yml index 9a0b3c9461b0..227ac5febefb 100644 --- a/ruby/ql/src/codeql-pack.release.yml +++ b/ruby/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.5.6 +lastReleaseVersion: 1.5.7 diff --git a/ruby/ql/src/qlpack.yml b/ruby/ql/src/qlpack.yml index a14269c692a9..b027389bc632 100644 --- a/ruby/ql/src/qlpack.yml +++ b/ruby/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ruby-queries -version: 1.5.6 +version: 1.5.8-dev groups: - ruby - queries diff --git a/ruby/ql/test/library-tests/ast/Ast.expected b/ruby/ql/test/library-tests/ast/Ast.expected index 6263cb8919b5..0bece506bfb4 100644 --- a/ruby/ql/test/library-tests/ast/Ast.expected +++ b/ruby/ql/test/library-tests/ast/Ast.expected @@ -1458,6 +1458,50 @@ control/conditionals.rb: # 67| getBranch/getThen: [StmtSequence] then ... # 68| getBranch/getElse: [StmtSequence] else ... # 69| getStmt: [LocalVariableAccess] c +# 73| getStmt: [IfExpr] if ... +# 73| getCondition: [LogicalAndExpr] ... && ... +# 73| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a +# 73| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b +# 73| getBranch/getThen: [StmtSequence] then ... +# 74| getStmt: [LocalVariableAccess] c +# 78| getStmt: [IfExpr] if ... +# 78| getCondition: [LogicalAndExpr] ... && ... +# 78| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a +# 79| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b +# 79| getBranch/getThen: [StmtSequence] then ... +# 81| getStmt: [LocalVariableAccess] c +# 86| getStmt: [IfExpr] if ... +# 86| getCondition: [LocalVariableAccess] a +# 86| getBranch/getThen: [StmtSequence] then ... +# 87| getStmt: [MethodCall] call to and +# 87| getReceiver: [SelfVariableAccess] self +# 87| getArgument: [LocalVariableAccess] b +# 88| getStmt: [MethodCall] call to then +# 88| getReceiver: [SelfVariableAccess] self +# 89| getStmt: [LocalVariableAccess] c +# 102| getStmt: [IfExpr] if ... +# 102| getCondition: [LocalVariableAccess] a +# 102| getBranch/getThen: [StmtSequence] then ... +# 103| getStmt: [MethodCall] call to or +# 103| getReceiver: [SelfVariableAccess] self +# 103| getArgument: [LocalVariableAccess] b +# 104| getStmt: [MethodCall] call to then +# 104| getReceiver: [SelfVariableAccess] self +# 105| getStmt: [LocalVariableAccess] c +# 109| getStmt: [IfExpr] if ... +# 109| getCondition: [LogicalAndExpr] ... && ... +# 109| getAnOperand/getLeftOperand/getReceiver: [LogicalAndExpr] ... && ... +# 109| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a +# 110| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b +# 111| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] c +# 111| getBranch/getThen: [StmtSequence] then ... +# 113| getStmt: [LocalVariableAccess] d +# 144| getStmt: [IfExpr] if ... +# 144| getCondition: [LogicalAndExpr] ... && ... +# 144| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a +# 145| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b +# 145| getBranch/getThen: [StmtSequence] then ... +# 147| getStmt: [LocalVariableAccess] c constants/constants.rb: # 1| [Toplevel] constants.rb # 1| getStmt: [ModuleDeclaration] ModuleA @@ -2845,63 +2889,77 @@ operations/operations.rb: # 85| getStmt: [AssignBitwiseXorExpr] ... ^= ... # 85| getAnOperand/getLeftOperand: [LocalVariableAccess] baz # 85| getAnOperand/getRightOperand: [LocalVariableAccess] qux -# 87| getStmt: [ClassDeclaration] X -# 88| getStmt: [AssignExpr] ... = ... -# 88| getAnOperand/getLeftOperand: [InstanceVariableAccess] @x -# 88| getReceiver: [SelfVariableAccess] self -# 88| getAnOperand/getRightOperand: [IntegerLiteral] 1 -# 89| getStmt: [AssignAddExpr] ... += ... -# 89| getAnOperand/getLeftOperand: [InstanceVariableAccess] @x -# 89| getReceiver: [SelfVariableAccess] self -# 89| getAnOperand/getRightOperand: [IntegerLiteral] 2 -# 91| getStmt: [AssignExpr] ... = ... -# 91| getAnOperand/getLeftOperand: [ClassVariableAccess] @@y -# 91| getAnOperand/getRightOperand: [IntegerLiteral] 3 -# 92| getStmt: [AssignDivExpr] ... /= ... -# 92| getAnOperand/getLeftOperand: [ClassVariableAccess] @@y -# 92| getAnOperand/getRightOperand: [IntegerLiteral] 4 -# 95| getStmt: [AssignExpr] ... = ... -# 95| getAnOperand/getLeftOperand: [GlobalVariableAccess] $global_var -# 95| getAnOperand/getRightOperand: [IntegerLiteral] 5 -# 96| getStmt: [AssignMulExpr] ... *= ... -# 96| getAnOperand/getLeftOperand: [GlobalVariableAccess] $global_var -# 96| getAnOperand/getRightOperand: [IntegerLiteral] 6 -# 98| getStmt: [AssignExpr] ... = ... -# 98| getAnOperand/getLeftOperand: [ConstantAssignment] CONSTANT1 -# 98| getAnOperand/getRightOperand: [IntegerLiteral] 5 -# 99| getStmt: [AssignAddExpr] ... += ... -# 99| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT2 -# 99| getAnOperand/getRightOperand: [IntegerLiteral] 6 -# 100| getStmt: [AssignLogicalOrExpr] ... ||= ... -# 100| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT3 -# 100| getAnOperand/getRightOperand: [IntegerLiteral] 7 -# 101| getStmt: [AssignLogicalOrExpr] ... ||= ... -# 101| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] MemberConstant -# 101| getScopeExpr: [ConstantReadAccess] Foo -# 101| getAnOperand/getRightOperand: [IntegerLiteral] 8 -# 102| getStmt: [AssignLogicalOrExpr] ... ||= ... -# 102| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] OtherConstant -# 102| getScopeExpr: [MethodCall] call to bar -# 102| getReceiver: [MethodCall] call to foo -# 102| getReceiver: [SelfVariableAccess] self -# 102| getArgument: [IntegerLiteral] 1 -# 102| getAnOperand/getRightOperand: [IntegerLiteral] 7 -# 103| getStmt: [AssignLogicalOrExpr] ... ||= ... -# 103| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT4 -# 103| getAnOperand/getRightOperand: [IntegerLiteral] 7 -# 104| getStmt: [AssignExpr] ... = ... -# 104| getAnOperand/getLeftOperand: [DestructuredLhsExpr] (..., ...) -# 104| getElement: [ConstantAssignment] FOO -# 104| getElement: [ConstantAssignment] BAR -# 104| getElement: [ConstantAssignment] FOO -# 104| getScopeExpr: [LocalVariableAccess] foo -# 104| getAnOperand/getRightOperand: [ArrayLiteral] [...] -# 104| getElement: [IntegerLiteral] 1 -# 104| getElement: [IntegerLiteral] 2 -# 104| getElement: [IntegerLiteral] 3 -# 106| getStmt: [DivExpr] ... / ... -# 106| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] foo -# 107| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 5 +# 88| getStmt: [AssignExpr] ... = ... +# 88| getAnOperand/getLeftOperand: [LocalVariableAccess] foo +# 88| getAnOperand/getRightOperand: [LogicalAndExpr] ... && ... +# 88| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a +# 89| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b +# 95| getStmt: [Method] foo +# 95| getParameter: [SimpleParameter] a +# 95| getDefiningAccess: [LocalVariableAccess] a +# 95| getParameter: [SimpleParameter] b +# 95| getDefiningAccess: [LocalVariableAccess] b +# 96| getStmt: [ReturnStmt] return +# 96| getValue: [LogicalAndExpr] ... && ... +# 96| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a +# 97| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b +# 107| getStmt: [ClassDeclaration] X +# 108| getStmt: [AssignExpr] ... = ... +# 108| getAnOperand/getLeftOperand: [InstanceVariableAccess] @x +# 108| getReceiver: [SelfVariableAccess] self +# 108| getAnOperand/getRightOperand: [IntegerLiteral] 1 +# 109| getStmt: [AssignAddExpr] ... += ... +# 109| getAnOperand/getLeftOperand: [InstanceVariableAccess] @x +# 109| getReceiver: [SelfVariableAccess] self +# 109| getAnOperand/getRightOperand: [IntegerLiteral] 2 +# 111| getStmt: [AssignExpr] ... = ... +# 111| getAnOperand/getLeftOperand: [ClassVariableAccess] @@y +# 111| getAnOperand/getRightOperand: [IntegerLiteral] 3 +# 112| getStmt: [AssignDivExpr] ... /= ... +# 112| getAnOperand/getLeftOperand: [ClassVariableAccess] @@y +# 112| getAnOperand/getRightOperand: [IntegerLiteral] 4 +# 115| getStmt: [AssignExpr] ... = ... +# 115| getAnOperand/getLeftOperand: [GlobalVariableAccess] $global_var +# 115| getAnOperand/getRightOperand: [IntegerLiteral] 5 +# 116| getStmt: [AssignMulExpr] ... *= ... +# 116| getAnOperand/getLeftOperand: [GlobalVariableAccess] $global_var +# 116| getAnOperand/getRightOperand: [IntegerLiteral] 6 +# 118| getStmt: [AssignExpr] ... = ... +# 118| getAnOperand/getLeftOperand: [ConstantAssignment] CONSTANT1 +# 118| getAnOperand/getRightOperand: [IntegerLiteral] 5 +# 119| getStmt: [AssignAddExpr] ... += ... +# 119| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT2 +# 119| getAnOperand/getRightOperand: [IntegerLiteral] 6 +# 120| getStmt: [AssignLogicalOrExpr] ... ||= ... +# 120| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT3 +# 120| getAnOperand/getRightOperand: [IntegerLiteral] 7 +# 121| getStmt: [AssignLogicalOrExpr] ... ||= ... +# 121| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] MemberConstant +# 121| getScopeExpr: [ConstantReadAccess] Foo +# 121| getAnOperand/getRightOperand: [IntegerLiteral] 8 +# 122| getStmt: [AssignLogicalOrExpr] ... ||= ... +# 122| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] OtherConstant +# 122| getScopeExpr: [MethodCall] call to bar +# 122| getReceiver: [MethodCall] call to foo +# 122| getReceiver: [SelfVariableAccess] self +# 122| getArgument: [IntegerLiteral] 1 +# 122| getAnOperand/getRightOperand: [IntegerLiteral] 7 +# 123| getStmt: [AssignLogicalOrExpr] ... ||= ... +# 123| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT4 +# 123| getAnOperand/getRightOperand: [IntegerLiteral] 7 +# 124| getStmt: [AssignExpr] ... = ... +# 124| getAnOperand/getLeftOperand: [DestructuredLhsExpr] (..., ...) +# 124| getElement: [ConstantAssignment] FOO +# 124| getElement: [ConstantAssignment] BAR +# 124| getElement: [ConstantAssignment] FOO +# 124| getScopeExpr: [LocalVariableAccess] foo +# 124| getAnOperand/getRightOperand: [ArrayLiteral] [...] +# 124| getElement: [IntegerLiteral] 1 +# 124| getElement: [IntegerLiteral] 2 +# 124| getElement: [IntegerLiteral] 3 +# 126| getStmt: [DivExpr] ... / ... +# 126| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] foo +# 127| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 5 params/params.rb: # 1| [Toplevel] params.rb # 4| getStmt: [Method] identifier_method_params diff --git a/ruby/ql/test/library-tests/ast/AstDesugar.expected b/ruby/ql/test/library-tests/ast/AstDesugar.expected index 0a1f43b03d58..294438607496 100644 --- a/ruby/ql/test/library-tests/ast/AstDesugar.expected +++ b/ruby/ql/test/library-tests/ast/AstDesugar.expected @@ -965,101 +965,101 @@ operations/operations.rb: # 85| getAnOperand/getRightOperand: [BitwiseXorExpr] ... ^ ... # 85| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] baz # 85| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] qux -# 89| [AssignAddExpr] ... += ... -# 89| getDesugared: [AssignExpr] ... = ... -# 89| getAnOperand/getLeftOperand: [InstanceVariableAccess] @x -# 89| getReceiver: [SelfVariableAccess] self -# 89| getAnOperand/getRightOperand: [AddExpr] ... + ... -# 89| getAnOperand/getLeftOperand/getReceiver: [InstanceVariableAccess] @x -# 89| getReceiver: [SelfVariableAccess] self -# 89| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 2 -# 92| [AssignDivExpr] ... /= ... -# 92| getDesugared: [AssignExpr] ... = ... -# 92| getAnOperand/getLeftOperand: [ClassVariableAccess] @@y -# 92| getAnOperand/getRightOperand: [DivExpr] ... / ... -# 92| getAnOperand/getLeftOperand/getReceiver: [ClassVariableAccess] @@y -# 92| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 4 -# 96| [AssignMulExpr] ... *= ... -# 96| getDesugared: [AssignExpr] ... = ... -# 96| getAnOperand/getLeftOperand: [GlobalVariableAccess] $global_var -# 96| getAnOperand/getRightOperand: [MulExpr] ... * ... -# 96| getAnOperand/getLeftOperand/getReceiver: [GlobalVariableAccess] $global_var -# 96| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 6 -# 99| [AssignAddExpr] ... += ... -# 99| getDesugared: [AssignExpr] ... = ... -# 99| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT2 -# 99| getAnOperand/getRightOperand: [AddExpr] ... + ... -# 99| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] CONSTANT2 -# 99| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 6 -# 100| [AssignLogicalOrExpr] ... ||= ... -# 100| getDesugared: [AssignExpr] ... = ... -# 100| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT3 -# 100| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... -# 100| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] CONSTANT3 -# 100| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 7 -# 101| [AssignLogicalOrExpr] ... ||= ... -# 101| getDesugared: [StmtSequence] ... -# 101| getStmt: [AssignExpr] ... = ... -# 101| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__0 -# 101| getAnOperand/getRightOperand: [ConstantReadAccess] Foo -# 101| getStmt: [AssignExpr] ... = ... -# 101| getAnOperand/getLeftOperand: [ConstantAssignment] MemberConstant -# 101| getScopeExpr: [LocalVariableAccess] __synth__0 -# 101| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... -# 101| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] MemberConstant -# 101| getScopeExpr: [LocalVariableAccess] __synth__0 -# 101| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 8 -# 102| [AssignLogicalOrExpr] ... ||= ... -# 102| getDesugared: [StmtSequence] ... -# 102| getStmt: [AssignExpr] ... = ... -# 102| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__0 -# 102| getAnOperand/getRightOperand: [MethodCall] call to bar -# 102| getReceiver: [MethodCall] call to foo -# 102| getReceiver: [SelfVariableAccess] self -# 102| getArgument: [IntegerLiteral] 1 -# 102| getStmt: [AssignExpr] ... = ... -# 102| getAnOperand/getLeftOperand: [ConstantAssignment] OtherConstant -# 102| getScopeExpr: [LocalVariableAccess] __synth__0 -# 102| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... -# 102| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] OtherConstant -# 102| getScopeExpr: [LocalVariableAccess] __synth__0 -# 102| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 7 -# 103| [AssignLogicalOrExpr] ... ||= ... -# 103| getDesugared: [AssignExpr] ... = ... -# 103| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT4 -# 103| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... -# 103| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] CONSTANT4 -# 103| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 7 -# 104| [AssignExpr] ... = ... -# 104| getDesugared: [StmtSequence] ... -# 104| getStmt: [AssignExpr] ... = ... -# 104| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__2 -# 104| getAnOperand/getRightOperand: [LocalVariableAccess] foo -# 104| getStmt: [AssignExpr] ... = ... -# 104| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__3 -# 104| getAnOperand/getRightOperand: [SplatExpr] * ... -# 104| getAnOperand/getOperand/getReceiver: [ArrayLiteral] [...] -# 104| getDesugared: [MethodCall] call to [] -# 104| getReceiver: [ConstantReadAccess] Array -# 104| getArgument: [IntegerLiteral] 1 -# 104| getArgument: [IntegerLiteral] 2 -# 104| getArgument: [IntegerLiteral] 3 -# 104| getStmt: [AssignExpr] ... = ... -# 104| getAnOperand/getLeftOperand: [ConstantAssignment] FOO -# 104| getAnOperand/getRightOperand: [MethodCall] call to [] -# 104| getReceiver: [LocalVariableAccess] __synth__3 -# 104| getArgument: [IntegerLiteral] 0 -# 104| getStmt: [AssignExpr] ... = ... -# 104| getAnOperand/getLeftOperand: [ConstantAssignment] BAR -# 104| getAnOperand/getRightOperand: [MethodCall] call to [] -# 104| getReceiver: [LocalVariableAccess] __synth__3 -# 104| getArgument: [IntegerLiteral] 1 -# 104| getStmt: [AssignExpr] ... = ... -# 104| getAnOperand/getLeftOperand: [ConstantAssignment] FOO -# 104| getScopeExpr: [LocalVariableAccess] __synth__2 -# 104| getAnOperand/getRightOperand: [MethodCall] call to [] -# 104| getReceiver: [LocalVariableAccess] __synth__3 -# 104| getArgument: [IntegerLiteral] 2 +# 109| [AssignAddExpr] ... += ... +# 109| getDesugared: [AssignExpr] ... = ... +# 109| getAnOperand/getLeftOperand: [InstanceVariableAccess] @x +# 109| getReceiver: [SelfVariableAccess] self +# 109| getAnOperand/getRightOperand: [AddExpr] ... + ... +# 109| getAnOperand/getLeftOperand/getReceiver: [InstanceVariableAccess] @x +# 109| getReceiver: [SelfVariableAccess] self +# 109| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 2 +# 112| [AssignDivExpr] ... /= ... +# 112| getDesugared: [AssignExpr] ... = ... +# 112| getAnOperand/getLeftOperand: [ClassVariableAccess] @@y +# 112| getAnOperand/getRightOperand: [DivExpr] ... / ... +# 112| getAnOperand/getLeftOperand/getReceiver: [ClassVariableAccess] @@y +# 112| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 4 +# 116| [AssignMulExpr] ... *= ... +# 116| getDesugared: [AssignExpr] ... = ... +# 116| getAnOperand/getLeftOperand: [GlobalVariableAccess] $global_var +# 116| getAnOperand/getRightOperand: [MulExpr] ... * ... +# 116| getAnOperand/getLeftOperand/getReceiver: [GlobalVariableAccess] $global_var +# 116| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 6 +# 119| [AssignAddExpr] ... += ... +# 119| getDesugared: [AssignExpr] ... = ... +# 119| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT2 +# 119| getAnOperand/getRightOperand: [AddExpr] ... + ... +# 119| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] CONSTANT2 +# 119| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 6 +# 120| [AssignLogicalOrExpr] ... ||= ... +# 120| getDesugared: [AssignExpr] ... = ... +# 120| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT3 +# 120| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... +# 120| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] CONSTANT3 +# 120| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 7 +# 121| [AssignLogicalOrExpr] ... ||= ... +# 121| getDesugared: [StmtSequence] ... +# 121| getStmt: [AssignExpr] ... = ... +# 121| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__0 +# 121| getAnOperand/getRightOperand: [ConstantReadAccess] Foo +# 121| getStmt: [AssignExpr] ... = ... +# 121| getAnOperand/getLeftOperand: [ConstantAssignment] MemberConstant +# 121| getScopeExpr: [LocalVariableAccess] __synth__0 +# 121| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... +# 121| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] MemberConstant +# 121| getScopeExpr: [LocalVariableAccess] __synth__0 +# 121| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 8 +# 122| [AssignLogicalOrExpr] ... ||= ... +# 122| getDesugared: [StmtSequence] ... +# 122| getStmt: [AssignExpr] ... = ... +# 122| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__0 +# 122| getAnOperand/getRightOperand: [MethodCall] call to bar +# 122| getReceiver: [MethodCall] call to foo +# 122| getReceiver: [SelfVariableAccess] self +# 122| getArgument: [IntegerLiteral] 1 +# 122| getStmt: [AssignExpr] ... = ... +# 122| getAnOperand/getLeftOperand: [ConstantAssignment] OtherConstant +# 122| getScopeExpr: [LocalVariableAccess] __synth__0 +# 122| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... +# 122| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] OtherConstant +# 122| getScopeExpr: [LocalVariableAccess] __synth__0 +# 122| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 7 +# 123| [AssignLogicalOrExpr] ... ||= ... +# 123| getDesugared: [AssignExpr] ... = ... +# 123| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT4 +# 123| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... +# 123| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] CONSTANT4 +# 123| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 7 +# 124| [AssignExpr] ... = ... +# 124| getDesugared: [StmtSequence] ... +# 124| getStmt: [AssignExpr] ... = ... +# 124| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__2 +# 124| getAnOperand/getRightOperand: [LocalVariableAccess] foo +# 124| getStmt: [AssignExpr] ... = ... +# 124| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__3 +# 124| getAnOperand/getRightOperand: [SplatExpr] * ... +# 124| getAnOperand/getOperand/getReceiver: [ArrayLiteral] [...] +# 124| getDesugared: [MethodCall] call to [] +# 124| getReceiver: [ConstantReadAccess] Array +# 124| getArgument: [IntegerLiteral] 1 +# 124| getArgument: [IntegerLiteral] 2 +# 124| getArgument: [IntegerLiteral] 3 +# 124| getStmt: [AssignExpr] ... = ... +# 124| getAnOperand/getLeftOperand: [ConstantAssignment] FOO +# 124| getAnOperand/getRightOperand: [MethodCall] call to [] +# 124| getReceiver: [LocalVariableAccess] __synth__3 +# 124| getArgument: [IntegerLiteral] 0 +# 124| getStmt: [AssignExpr] ... = ... +# 124| getAnOperand/getLeftOperand: [ConstantAssignment] BAR +# 124| getAnOperand/getRightOperand: [MethodCall] call to [] +# 124| getReceiver: [LocalVariableAccess] __synth__3 +# 124| getArgument: [IntegerLiteral] 1 +# 124| getStmt: [AssignExpr] ... = ... +# 124| getAnOperand/getLeftOperand: [ConstantAssignment] FOO +# 124| getScopeExpr: [LocalVariableAccess] __synth__2 +# 124| getAnOperand/getRightOperand: [MethodCall] call to [] +# 124| getReceiver: [LocalVariableAccess] __synth__3 +# 124| getArgument: [IntegerLiteral] 2 params/params.rb: # 8| [HashLiteral] {...} # 8| getDesugared: [MethodCall] call to [] diff --git a/ruby/ql/test/library-tests/ast/TreeSitter.expected b/ruby/ql/test/library-tests/ast/TreeSitter.expected index 04a66cce8472..ab7937969d10 100644 --- a/ruby/ql/test/library-tests/ast/TreeSitter.expected +++ b/ruby/ql/test/library-tests/ast/TreeSitter.expected @@ -2962,6 +2962,71 @@ control/conditionals.rb: # 68| 0: [ReservedWord] else # 69| 1: [Identifier] c # 70| 4: [ReservedWord] end +# 73| 17: [If] If +# 73| 0: [ReservedWord] if +# 73| 1: [Binary] Binary +# 73| 0: [Identifier] a +# 73| 1: [ReservedWord] && +# 73| 2: [Identifier] b +# 73| 2: [Then] Then +# 73| 0: [ReservedWord] then +# 74| 1: [Identifier] c +# 75| 3: [ReservedWord] end +# 78| 18: [If] If +# 78| 0: [ReservedWord] if +# 78| 1: [Binary] Binary +# 78| 0: [Identifier] a +# 79| 1: [ReservedWord] && +# 79| 2: [Identifier] b +# 79| 2: [Then] Then +# 80| 0: [ReservedWord] then +# 81| 1: [Identifier] c +# 82| 3: [ReservedWord] end +# 86| 19: [If] If +# 86| 0: [ReservedWord] if +# 86| 1: [Identifier] a +# 86| 2: [Then] Then +# 87| 0: [Call] Call +# 87| 0: [Identifier] and +# 87| 1: [ArgumentList] ArgumentList +# 87| 0: [Identifier] b +# 88| 1: [Identifier] then +# 89| 2: [Identifier] c +# 90| 3: [ReservedWord] end +# 102| 20: [If] If +# 102| 0: [ReservedWord] if +# 102| 1: [Identifier] a +# 102| 2: [Then] Then +# 103| 0: [Call] Call +# 103| 0: [Identifier] or +# 103| 1: [ArgumentList] ArgumentList +# 103| 0: [Identifier] b +# 104| 1: [Identifier] then +# 105| 2: [Identifier] c +# 106| 3: [ReservedWord] end +# 109| 21: [If] If +# 109| 0: [ReservedWord] if +# 109| 1: [Binary] Binary +# 109| 0: [Binary] Binary +# 109| 0: [Identifier] a +# 110| 1: [ReservedWord] && +# 110| 2: [Identifier] b +# 111| 1: [ReservedWord] && +# 111| 2: [Identifier] c +# 111| 2: [Then] Then +# 112| 0: [ReservedWord] then +# 113| 1: [Identifier] d +# 114| 3: [ReservedWord] end +# 144| 22: [If] If +# 144| 0: [ReservedWord] if +# 144| 1: [Binary] Binary +# 144| 0: [Identifier] a +# 144| 1: [ReservedWord] && +# 145| 2: [Identifier] b +# 145| 2: [Then] Then +# 146| 0: [ReservedWord] then +# 147| 1: [Identifier] c +# 148| 3: [ReservedWord] end # 1| [Comment] # Define some variables used below # 9| [Comment] # If expr with no else # 14| [Comment] # If expr with single else @@ -2974,6 +3039,45 @@ control/conditionals.rb: # 57| [Comment] # Ternary if expr # 60| [Comment] # If expr with empty else (treated as no else) # 66| [Comment] # If expr with empty then (treated as no then) +# 72| [Comment] # If expr with `&&` on same line as condition and then +# 77| [Comment] # If expr with `&&` at the start of a separate line before then +# 84| [Comment] # If expr with `and` at the start of a separate line before then +# 85| [Comment] # NOTE: This is not parsed correctly, `and b` is parsed as a call +# 92| [Comment] # If expr with `||` at the start of a separate line before then +# 93| [Comment] # NOTE: This is not parsed correctly due to the leading `||` +# 94| [Comment] # if a +# 95| [Comment] # || b +# 96| [Comment] # then +# 97| [Comment] # c +# 98| [Comment] # end +# 100| [Comment] # If expr with `or` at the start of a separate line before then +# 101| [Comment] # NOTE: This is not parsed correctly, `or b` is parsed as a call +# 108| [Comment] # If expr with repeated && at the start of a separate line before then +# 116| [Comment] # If expr with alternating && and || at the start of lines +# 117| [Comment] # NOTE: This is not parsed correctly due to the leading `||` +# 118| [Comment] # if a +# 119| [Comment] # && b +# 120| [Comment] # || c +# 121| [Comment] # then +# 122| [Comment] # d +# 123| [Comment] # end +# 125| [Comment] # If expr with operator at start of line and parentheses +# 126| [Comment] # NOTE: This is not parsed correctly due to the leading `||` +# 127| [Comment] # if a +# 128| [Comment] # && (b +# 129| [Comment] # || c) +# 130| [Comment] # then +# 131| [Comment] # d +# 132| [Comment] # end +# 134| [Comment] # If expr with operator at start of line and parentheses +# 135| [Comment] # NOTE: This is not parsed correctly due to the leading `||` +# 136| [Comment] # if a +# 137| [Comment] # || (b +# 138| [Comment] # && c) +# 139| [Comment] # then +# 140| [Comment] # d +# 141| [Comment] # end +# 143| [Comment] # If expr with && at end of line control/loops.rb: # 1| [Program] Program # 2| 0: [Assignment] Assignment @@ -5564,100 +5668,125 @@ operations/operations.rb: # 85| 0: [Identifier] baz # 85| 1: [ReservedWord] ^= # 85| 2: [Identifier] qux -# 87| 63: [Class] Class -# 87| 0: [ReservedWord] class -# 87| 1: [Constant] X -# 88| 2: [BodyStatement] BodyStatement -# 88| 0: [Assignment] Assignment -# 88| 0: [InstanceVariable] @x -# 88| 1: [ReservedWord] = -# 88| 2: [Integer] 1 -# 89| 1: [OperatorAssignment] OperatorAssignment -# 89| 0: [InstanceVariable] @x -# 89| 1: [ReservedWord] += -# 89| 2: [Integer] 2 -# 91| 2: [Assignment] Assignment -# 91| 0: [ClassVariable] @@y -# 91| 1: [ReservedWord] = -# 91| 2: [Integer] 3 -# 92| 3: [OperatorAssignment] OperatorAssignment -# 92| 0: [ClassVariable] @@y -# 92| 1: [ReservedWord] /= -# 92| 2: [Integer] 4 -# 93| 3: [ReservedWord] end -# 95| 64: [Assignment] Assignment -# 95| 0: [GlobalVariable] $global_var -# 95| 1: [ReservedWord] = -# 95| 2: [Integer] 5 -# 96| 65: [OperatorAssignment] OperatorAssignment -# 96| 0: [GlobalVariable] $global_var -# 96| 1: [ReservedWord] *= -# 96| 2: [Integer] 6 -# 98| 66: [Assignment] Assignment -# 98| 0: [Constant] CONSTANT1 -# 98| 1: [ReservedWord] = -# 98| 2: [Integer] 5 -# 99| 67: [OperatorAssignment] OperatorAssignment -# 99| 0: [Constant] CONSTANT2 -# 99| 1: [ReservedWord] += -# 99| 2: [Integer] 6 -# 100| 68: [OperatorAssignment] OperatorAssignment -# 100| 0: [Constant] CONSTANT3 -# 100| 1: [ReservedWord] ||= -# 100| 2: [Integer] 7 -# 101| 69: [OperatorAssignment] OperatorAssignment -# 101| 0: [ScopeResolution] ScopeResolution -# 101| 0: [Constant] Foo -# 101| 1: [ReservedWord] :: -# 101| 2: [Constant] MemberConstant -# 101| 1: [ReservedWord] ||= -# 101| 2: [Integer] 8 -# 102| 70: [OperatorAssignment] OperatorAssignment -# 102| 0: [ScopeResolution] ScopeResolution -# 102| 0: [Call] Call -# 102| 0: [Call] Call -# 102| 0: [Identifier] foo -# 102| 1: [ArgumentList] ArgumentList -# 102| 0: [ReservedWord] ( -# 102| 1: [Integer] 1 -# 102| 2: [ReservedWord] ) -# 102| 1: [ReservedWord] . -# 102| 2: [Identifier] bar -# 102| 1: [ReservedWord] :: -# 102| 2: [Constant] OtherConstant -# 102| 1: [ReservedWord] ||= -# 102| 2: [Integer] 7 -# 103| 71: [OperatorAssignment] OperatorAssignment -# 103| 0: [ScopeResolution] ScopeResolution -# 103| 0: [ReservedWord] :: -# 103| 1: [Constant] CONSTANT4 -# 103| 1: [ReservedWord] ||= -# 103| 2: [Integer] 7 -# 104| 72: [Assignment] Assignment -# 104| 0: [LeftAssignmentList] LeftAssignmentList -# 104| 0: [Constant] FOO -# 104| 1: [ReservedWord] , -# 104| 2: [ScopeResolution] ScopeResolution -# 104| 0: [ReservedWord] :: -# 104| 1: [Constant] BAR -# 104| 3: [ReservedWord] , -# 104| 4: [ScopeResolution] ScopeResolution -# 104| 0: [Identifier] foo -# 104| 1: [ReservedWord] :: -# 104| 2: [Constant] FOO -# 104| 1: [ReservedWord] = -# 104| 2: [Array] Array -# 104| 0: [ReservedWord] [ -# 104| 1: [Integer] 1 -# 104| 2: [ReservedWord] , -# 104| 3: [Integer] 2 -# 104| 4: [ReservedWord] , -# 104| 5: [Integer] 3 -# 104| 6: [ReservedWord] ] -# 106| 73: [Binary] Binary -# 106| 0: [Identifier] foo -# 106| 1: [ReservedWord] / -# 107| 2: [Integer] 5 +# 88| 63: [Assignment] Assignment +# 88| 0: [Identifier] foo +# 88| 1: [ReservedWord] = +# 88| 2: [Binary] Binary +# 88| 0: [Identifier] a +# 89| 1: [ReservedWord] && +# 89| 2: [Identifier] b +# 95| 64: [Method] Method +# 95| 0: [ReservedWord] def +# 95| 1: [Identifier] foo +# 95| 2: [MethodParameters] MethodParameters +# 95| 0: [ReservedWord] ( +# 95| 1: [Identifier] a +# 95| 2: [ReservedWord] , +# 95| 3: [Identifier] b +# 95| 4: [ReservedWord] ) +# 96| 3: [BodyStatement] BodyStatement +# 96| 0: [Return] Return +# 96| 0: [ReservedWord] return +# 96| 1: [ArgumentList] ArgumentList +# 96| 0: [Binary] Binary +# 96| 0: [Identifier] a +# 97| 1: [ReservedWord] && +# 97| 2: [Identifier] b +# 98| 4: [ReservedWord] end +# 107| 65: [Class] Class +# 107| 0: [ReservedWord] class +# 107| 1: [Constant] X +# 108| 2: [BodyStatement] BodyStatement +# 108| 0: [Assignment] Assignment +# 108| 0: [InstanceVariable] @x +# 108| 1: [ReservedWord] = +# 108| 2: [Integer] 1 +# 109| 1: [OperatorAssignment] OperatorAssignment +# 109| 0: [InstanceVariable] @x +# 109| 1: [ReservedWord] += +# 109| 2: [Integer] 2 +# 111| 2: [Assignment] Assignment +# 111| 0: [ClassVariable] @@y +# 111| 1: [ReservedWord] = +# 111| 2: [Integer] 3 +# 112| 3: [OperatorAssignment] OperatorAssignment +# 112| 0: [ClassVariable] @@y +# 112| 1: [ReservedWord] /= +# 112| 2: [Integer] 4 +# 113| 3: [ReservedWord] end +# 115| 66: [Assignment] Assignment +# 115| 0: [GlobalVariable] $global_var +# 115| 1: [ReservedWord] = +# 115| 2: [Integer] 5 +# 116| 67: [OperatorAssignment] OperatorAssignment +# 116| 0: [GlobalVariable] $global_var +# 116| 1: [ReservedWord] *= +# 116| 2: [Integer] 6 +# 118| 68: [Assignment] Assignment +# 118| 0: [Constant] CONSTANT1 +# 118| 1: [ReservedWord] = +# 118| 2: [Integer] 5 +# 119| 69: [OperatorAssignment] OperatorAssignment +# 119| 0: [Constant] CONSTANT2 +# 119| 1: [ReservedWord] += +# 119| 2: [Integer] 6 +# 120| 70: [OperatorAssignment] OperatorAssignment +# 120| 0: [Constant] CONSTANT3 +# 120| 1: [ReservedWord] ||= +# 120| 2: [Integer] 7 +# 121| 71: [OperatorAssignment] OperatorAssignment +# 121| 0: [ScopeResolution] ScopeResolution +# 121| 0: [Constant] Foo +# 121| 1: [ReservedWord] :: +# 121| 2: [Constant] MemberConstant +# 121| 1: [ReservedWord] ||= +# 121| 2: [Integer] 8 +# 122| 72: [OperatorAssignment] OperatorAssignment +# 122| 0: [ScopeResolution] ScopeResolution +# 122| 0: [Call] Call +# 122| 0: [Call] Call +# 122| 0: [Identifier] foo +# 122| 1: [ArgumentList] ArgumentList +# 122| 0: [ReservedWord] ( +# 122| 1: [Integer] 1 +# 122| 2: [ReservedWord] ) +# 122| 1: [ReservedWord] . +# 122| 2: [Identifier] bar +# 122| 1: [ReservedWord] :: +# 122| 2: [Constant] OtherConstant +# 122| 1: [ReservedWord] ||= +# 122| 2: [Integer] 7 +# 123| 73: [OperatorAssignment] OperatorAssignment +# 123| 0: [ScopeResolution] ScopeResolution +# 123| 0: [ReservedWord] :: +# 123| 1: [Constant] CONSTANT4 +# 123| 1: [ReservedWord] ||= +# 123| 2: [Integer] 7 +# 124| 74: [Assignment] Assignment +# 124| 0: [LeftAssignmentList] LeftAssignmentList +# 124| 0: [Constant] FOO +# 124| 1: [ReservedWord] , +# 124| 2: [ScopeResolution] ScopeResolution +# 124| 0: [ReservedWord] :: +# 124| 1: [Constant] BAR +# 124| 3: [ReservedWord] , +# 124| 4: [ScopeResolution] ScopeResolution +# 124| 0: [Identifier] foo +# 124| 1: [ReservedWord] :: +# 124| 2: [Constant] FOO +# 124| 1: [ReservedWord] = +# 124| 2: [Array] Array +# 124| 0: [ReservedWord] [ +# 124| 1: [Integer] 1 +# 124| 2: [ReservedWord] , +# 124| 3: [Integer] 2 +# 124| 4: [ReservedWord] , +# 124| 5: [Integer] 3 +# 124| 6: [ReservedWord] ] +# 126| 75: [Binary] Binary +# 126| 0: [Identifier] foo +# 126| 1: [ReservedWord] / +# 127| 2: [Integer] 5 # 1| [Comment] # Start with assignments to all the identifiers used below, so that they are # 2| [Comment] # interpreted as variables. # 22| [Comment] # Unary operations @@ -5670,6 +5799,17 @@ operations/operations.rb: # 68| [Comment] # Arithmetic assign operations # 76| [Comment] # Logical assign operations # 80| [Comment] # Bitwise assign operations +# 87| [Comment] # Assignments with operation at start of line +# 90| [Comment] # NOTE: This is not parsed correctly, `|| b` is dropped +# 91| [Comment] # bar = a +# 92| [Comment] # || b +# 94| [Comment] # Return with `&&` at start of line +# 100| [Comment] # Return with `||` at start of line +# 101| [Comment] # NOTE: This is not parsed correctly, `|| b` is dropped +# 102| [Comment] # def bar(a, b) +# 103| [Comment] # return a +# 104| [Comment] # || b +# 105| [Comment] # end params/params.rb: # 1| [Program] Program # 4| 0: [Method] Method diff --git a/ruby/ql/test/library-tests/ast/ValueText.expected b/ruby/ql/test/library-tests/ast/ValueText.expected index 283eef73d25b..e0ad853ba83f 100644 --- a/ruby/ql/test/library-tests/ast/ValueText.expected +++ b/ruby/ql/test/library-tests/ast/ValueText.expected @@ -336,6 +336,19 @@ exprValue | control/conditionals.rb:62:5:62:5 | c | 0 | int | | control/conditionals.rb:67:8:67:8 | b | 0 | int | | control/conditionals.rb:69:5:69:5 | c | 0 | int | +| control/conditionals.rb:73:9:73:9 | b | 0 | int | +| control/conditionals.rb:74:5:74:5 | c | 0 | int | +| control/conditionals.rb:79:8:79:8 | b | 0 | int | +| control/conditionals.rb:81:5:81:5 | c | 0 | int | +| control/conditionals.rb:87:9:87:9 | b | 0 | int | +| control/conditionals.rb:89:5:89:5 | c | 0 | int | +| control/conditionals.rb:103:8:103:8 | b | 0 | int | +| control/conditionals.rb:105:5:105:5 | c | 0 | int | +| control/conditionals.rb:110:8:110:8 | b | 0 | int | +| control/conditionals.rb:111:8:111:8 | c | 0 | int | +| control/conditionals.rb:113:5:113:5 | d | 0 | int | +| control/conditionals.rb:145:5:145:5 | b | 0 | int | +| control/conditionals.rb:147:5:147:5 | c | 0 | int | | control/loops.rb:2:7:2:7 | 0 | 0 | int | | control/loops.rb:3:7:3:7 | 0 | 0 | int | | control/loops.rb:4:5:4:5 | 0 | 0 | int | @@ -908,26 +921,27 @@ exprValue | operations/operations.rb:84:9:84:12 | 0x01 | 1 | int | | operations/operations.rb:85:2:85:4 | baz | 0 | int | | operations/operations.rb:85:9:85:11 | qux | 0 | int | -| operations/operations.rb:88:8:88:8 | 1 | 1 | int | -| operations/operations.rb:89:9:89:9 | 2 | 2 | int | -| operations/operations.rb:91:9:91:9 | 3 | 3 | int | -| operations/operations.rb:92:10:92:10 | 4 | 4 | int | -| operations/operations.rb:95:15:95:15 | 5 | 5 | int | -| operations/operations.rb:96:16:96:16 | 6 | 6 | int | -| operations/operations.rb:98:13:98:13 | 5 | 5 | int | -| operations/operations.rb:99:14:99:14 | 6 | 6 | int | -| operations/operations.rb:100:15:100:15 | 7 | 7 | int | -| operations/operations.rb:101:25:101:25 | 8 | 8 | int | -| operations/operations.rb:102:5:102:5 | 1 | 1 | int | -| operations/operations.rb:102:31:102:31 | 7 | 7 | int | -| operations/operations.rb:103:17:103:17 | 7 | 7 | int | -| operations/operations.rb:104:1:104:3 | 0 | 0 | int | -| operations/operations.rb:104:6:104:10 | 1 | 1 | int | -| operations/operations.rb:104:13:104:20 | 2 | 2 | int | -| operations/operations.rb:104:25:104:25 | 1 | 1 | int | -| operations/operations.rb:104:28:104:28 | 2 | 2 | int | -| operations/operations.rb:104:31:104:31 | 3 | 3 | int | -| operations/operations.rb:107:1:107:1 | 5 | 5 | int | +| operations/operations.rb:89:6:89:6 | b | 0 | int | +| operations/operations.rb:108:8:108:8 | 1 | 1 | int | +| operations/operations.rb:109:9:109:9 | 2 | 2 | int | +| operations/operations.rb:111:9:111:9 | 3 | 3 | int | +| operations/operations.rb:112:10:112:10 | 4 | 4 | int | +| operations/operations.rb:115:15:115:15 | 5 | 5 | int | +| operations/operations.rb:116:16:116:16 | 6 | 6 | int | +| operations/operations.rb:118:13:118:13 | 5 | 5 | int | +| operations/operations.rb:119:14:119:14 | 6 | 6 | int | +| operations/operations.rb:120:15:120:15 | 7 | 7 | int | +| operations/operations.rb:121:25:121:25 | 8 | 8 | int | +| operations/operations.rb:122:5:122:5 | 1 | 1 | int | +| operations/operations.rb:122:31:122:31 | 7 | 7 | int | +| operations/operations.rb:123:17:123:17 | 7 | 7 | int | +| operations/operations.rb:124:1:124:3 | 0 | 0 | int | +| operations/operations.rb:124:6:124:10 | 1 | 1 | int | +| operations/operations.rb:124:13:124:20 | 2 | 2 | int | +| operations/operations.rb:124:25:124:25 | 1 | 1 | int | +| operations/operations.rb:124:28:124:28 | 2 | 2 | int | +| operations/operations.rb:124:31:124:31 | 3 | 3 | int | +| operations/operations.rb:127:1:127:1 | 5 | 5 | int | | params/params.rb:41:46:41:46 | 7 | 7 | int | | params/params.rb:47:19:47:21 | :bar | :bar | symbol | | params/params.rb:47:24:47:24 | 2 | 2 | int | @@ -1257,6 +1271,19 @@ exprCfgNodeValue | control/conditionals.rb:62:5:62:5 | c | 0 | int | | control/conditionals.rb:67:8:67:8 | b | 0 | int | | control/conditionals.rb:69:5:69:5 | c | 0 | int | +| control/conditionals.rb:73:9:73:9 | b | 0 | int | +| control/conditionals.rb:74:5:74:5 | c | 0 | int | +| control/conditionals.rb:79:8:79:8 | b | 0 | int | +| control/conditionals.rb:81:5:81:5 | c | 0 | int | +| control/conditionals.rb:87:9:87:9 | b | 0 | int | +| control/conditionals.rb:89:5:89:5 | c | 0 | int | +| control/conditionals.rb:103:8:103:8 | b | 0 | int | +| control/conditionals.rb:105:5:105:5 | c | 0 | int | +| control/conditionals.rb:110:8:110:8 | b | 0 | int | +| control/conditionals.rb:111:8:111:8 | c | 0 | int | +| control/conditionals.rb:113:5:113:5 | d | 0 | int | +| control/conditionals.rb:145:5:145:5 | b | 0 | int | +| control/conditionals.rb:147:5:147:5 | c | 0 | int | | control/loops.rb:2:7:2:7 | 0 | 0 | int | | control/loops.rb:3:7:3:7 | 0 | 0 | int | | control/loops.rb:4:5:4:5 | 0 | 0 | int | @@ -1828,26 +1855,27 @@ exprCfgNodeValue | operations/operations.rb:84:9:84:12 | 0x01 | 1 | int | | operations/operations.rb:85:2:85:4 | baz | 0 | int | | operations/operations.rb:85:9:85:11 | qux | 0 | int | -| operations/operations.rb:88:8:88:8 | 1 | 1 | int | -| operations/operations.rb:89:9:89:9 | 2 | 2 | int | -| operations/operations.rb:91:9:91:9 | 3 | 3 | int | -| operations/operations.rb:92:10:92:10 | 4 | 4 | int | -| operations/operations.rb:95:15:95:15 | 5 | 5 | int | -| operations/operations.rb:96:16:96:16 | 6 | 6 | int | -| operations/operations.rb:98:13:98:13 | 5 | 5 | int | -| operations/operations.rb:99:14:99:14 | 6 | 6 | int | -| operations/operations.rb:100:15:100:15 | 7 | 7 | int | -| operations/operations.rb:101:25:101:25 | 8 | 8 | int | -| operations/operations.rb:102:5:102:5 | 1 | 1 | int | -| operations/operations.rb:102:31:102:31 | 7 | 7 | int | -| operations/operations.rb:103:17:103:17 | 7 | 7 | int | -| operations/operations.rb:104:1:104:3 | 0 | 0 | int | -| operations/operations.rb:104:6:104:10 | 1 | 1 | int | -| operations/operations.rb:104:13:104:20 | 2 | 2 | int | -| operations/operations.rb:104:25:104:25 | 1 | 1 | int | -| operations/operations.rb:104:28:104:28 | 2 | 2 | int | -| operations/operations.rb:104:31:104:31 | 3 | 3 | int | -| operations/operations.rb:107:1:107:1 | 5 | 5 | int | +| operations/operations.rb:89:6:89:6 | b | 0 | int | +| operations/operations.rb:108:8:108:8 | 1 | 1 | int | +| operations/operations.rb:109:9:109:9 | 2 | 2 | int | +| operations/operations.rb:111:9:111:9 | 3 | 3 | int | +| operations/operations.rb:112:10:112:10 | 4 | 4 | int | +| operations/operations.rb:115:15:115:15 | 5 | 5 | int | +| operations/operations.rb:116:16:116:16 | 6 | 6 | int | +| operations/operations.rb:118:13:118:13 | 5 | 5 | int | +| operations/operations.rb:119:14:119:14 | 6 | 6 | int | +| operations/operations.rb:120:15:120:15 | 7 | 7 | int | +| operations/operations.rb:121:25:121:25 | 8 | 8 | int | +| operations/operations.rb:122:5:122:5 | 1 | 1 | int | +| operations/operations.rb:122:31:122:31 | 7 | 7 | int | +| operations/operations.rb:123:17:123:17 | 7 | 7 | int | +| operations/operations.rb:124:1:124:3 | 0 | 0 | int | +| operations/operations.rb:124:6:124:10 | 1 | 1 | int | +| operations/operations.rb:124:13:124:20 | 2 | 2 | int | +| operations/operations.rb:124:25:124:25 | 1 | 1 | int | +| operations/operations.rb:124:28:124:28 | 2 | 2 | int | +| operations/operations.rb:124:31:124:31 | 3 | 3 | int | +| operations/operations.rb:127:1:127:1 | 5 | 5 | int | | params/params.rb:41:46:41:46 | 7 | 7 | int | | params/params.rb:47:19:47:21 | :bar | :bar | symbol | | params/params.rb:47:24:47:24 | 2 | 2 | int | diff --git a/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected b/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected index db7cd1957fb0..b2817b6feda4 100644 --- a/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected +++ b/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected @@ -22,6 +22,12 @@ conditionalExprs | conditionals.rb:61:1:64:3 | if ... | IfExpr | conditionals.rb:61:4:61:8 | ... > ... | conditionals.rb:63:1:63:4 | else ... | false | | conditionals.rb:67:1:70:3 | if ... | IfExpr | conditionals.rb:67:4:67:8 | ... > ... | conditionals.rb:67:10:67:13 | then ... | true | | conditionals.rb:67:1:70:3 | if ... | IfExpr | conditionals.rb:67:4:67:8 | ... > ... | conditionals.rb:68:1:69:5 | else ... | false | +| conditionals.rb:73:1:75:3 | if ... | IfExpr | conditionals.rb:73:4:73:9 | ... && ... | conditionals.rb:73:11:74:5 | then ... | true | +| conditionals.rb:78:1:82:3 | if ... | IfExpr | conditionals.rb:78:4:79:8 | ... && ... | conditionals.rb:79:9:81:5 | then ... | true | +| conditionals.rb:86:1:90:3 | if ... | IfExpr | conditionals.rb:86:4:86:4 | a | conditionals.rb:86:5:89:5 | then ... | true | +| conditionals.rb:102:1:106:3 | if ... | IfExpr | conditionals.rb:102:4:102:4 | a | conditionals.rb:102:5:105:5 | then ... | true | +| conditionals.rb:109:1:114:3 | if ... | IfExpr | conditionals.rb:109:4:111:8 | ... && ... | conditionals.rb:111:9:113:5 | then ... | true | +| conditionals.rb:144:1:148:3 | if ... | IfExpr | conditionals.rb:144:4:145:5 | ... && ... | conditionals.rb:145:6:147:5 | then ... | true | | loops.rb:9:5:9:5 | if ... | IfExpr | loops.rb:9:5:9:5 | ! ... | loops.rb:9:5:9:5 | ... = ... | true | | loops.rb:16:5:16:5 | if ... | IfExpr | loops.rb:16:5:16:5 | ! ... | loops.rb:16:5:16:5 | ... = ... | true | | loops.rb:22:5:22:7 | if ... | IfExpr | loops.rb:22:5:22:7 | ! ... | loops.rb:22:5:22:7 | ... = ... | true | @@ -38,6 +44,12 @@ ifExprs | conditionals.rb:35:1:36:5 | elsif ... | IfExpr | conditionals.rb:35:7:35:12 | ... == ... | conditionals.rb:35:13:36:5 | then ... | (none) | true | | conditionals.rb:61:1:64:3 | if ... | IfExpr | conditionals.rb:61:4:61:8 | ... > ... | conditionals.rb:61:10:62:5 | then ... | else ... | false | | conditionals.rb:67:1:70:3 | if ... | IfExpr | conditionals.rb:67:4:67:8 | ... > ... | conditionals.rb:67:10:67:13 | then ... | else ... | false | +| conditionals.rb:73:1:75:3 | if ... | IfExpr | conditionals.rb:73:4:73:9 | ... && ... | conditionals.rb:73:11:74:5 | then ... | (none) | false | +| conditionals.rb:78:1:82:3 | if ... | IfExpr | conditionals.rb:78:4:79:8 | ... && ... | conditionals.rb:79:9:81:5 | then ... | (none) | false | +| conditionals.rb:86:1:90:3 | if ... | IfExpr | conditionals.rb:86:4:86:4 | a | conditionals.rb:86:5:89:5 | then ... | (none) | false | +| conditionals.rb:102:1:106:3 | if ... | IfExpr | conditionals.rb:102:4:102:4 | a | conditionals.rb:102:5:105:5 | then ... | (none) | false | +| conditionals.rb:109:1:114:3 | if ... | IfExpr | conditionals.rb:109:4:111:8 | ... && ... | conditionals.rb:111:9:113:5 | then ... | (none) | false | +| conditionals.rb:144:1:148:3 | if ... | IfExpr | conditionals.rb:144:4:145:5 | ... && ... | conditionals.rb:145:6:147:5 | then ... | (none) | false | unlessExprs | conditionals.rb:40:1:42:3 | unless ... | UnlessExpr | conditionals.rb:40:8:40:12 | ... > ... | conditionals.rb:40:14:41:5 | then ... | (none) | | conditionals.rb:45:1:49:3 | unless ... | UnlessExpr | conditionals.rb:45:8:45:13 | ... == ... | conditionals.rb:45:14:46:5 | then ... | else ... | diff --git a/ruby/ql/test/library-tests/ast/control/ControlExpr.expected b/ruby/ql/test/library-tests/ast/control/ControlExpr.expected index aaa72ac80277..e84d2608249f 100644 --- a/ruby/ql/test/library-tests/ast/control/ControlExpr.expected +++ b/ruby/ql/test/library-tests/ast/control/ControlExpr.expected @@ -28,6 +28,12 @@ | conditionals.rb:58:5:58:25 | ... ? ... : ... | TernaryIfExpr | | conditionals.rb:61:1:64:3 | if ... | IfExpr | | conditionals.rb:67:1:70:3 | if ... | IfExpr | +| conditionals.rb:73:1:75:3 | if ... | IfExpr | +| conditionals.rb:78:1:82:3 | if ... | IfExpr | +| conditionals.rb:86:1:90:3 | if ... | IfExpr | +| conditionals.rb:102:1:106:3 | if ... | IfExpr | +| conditionals.rb:109:1:114:3 | if ... | IfExpr | +| conditionals.rb:144:1:148:3 | if ... | IfExpr | | loops.rb:9:1:12:3 | for ... in ... | ForExpr | | loops.rb:9:5:9:5 | if ... | IfExpr | | loops.rb:16:1:19:3 | for ... in ... | ForExpr | diff --git a/ruby/ql/test/library-tests/ast/control/conditionals.rb b/ruby/ql/test/library-tests/ast/control/conditionals.rb index 85e008f5c1d5..b5c63afbc81c 100644 --- a/ruby/ql/test/library-tests/ast/control/conditionals.rb +++ b/ruby/ql/test/library-tests/ast/control/conditionals.rb @@ -67,4 +67,82 @@ if a > b then else c +end + +# If expr with `&&` on same line as condition and then +if a && b then + c +end + +# If expr with `&&` at the start of a separate line before then +if a + && b +then + c +end + +# If expr with `and` at the start of a separate line before then +# NOTE: This is not parsed correctly, `and b` is parsed as a call +if a + and b +then + c +end + +# If expr with `||` at the start of a separate line before then +# NOTE: This is not parsed correctly due to the leading `||` +# if a +# || b +# then +# c +# end + +# If expr with `or` at the start of a separate line before then +# NOTE: This is not parsed correctly, `or b` is parsed as a call +if a + or b +then + c +end + +# If expr with repeated && at the start of a separate line before then +if a + && b + && c +then + d +end + +# If expr with alternating && and || at the start of lines +# NOTE: This is not parsed correctly due to the leading `||` +# if a +# && b +# || c +# then +# d +# end + +# If expr with operator at start of line and parentheses +# NOTE: This is not parsed correctly due to the leading `||` +# if a +# && (b +# || c) +# then +# d +# end + +# If expr with operator at start of line and parentheses +# NOTE: This is not parsed correctly due to the leading `||` +# if a +# || (b +# && c) +# then +# d +# end + +# If expr with && at end of line +if a && + b +then + c end \ No newline at end of file diff --git a/ruby/ql/test/library-tests/ast/operations/assignment.expected b/ruby/ql/test/library-tests/ast/operations/assignment.expected index 5349ebf5cef6..54f6a0c00fa5 100644 --- a/ruby/ql/test/library-tests/ast/operations/assignment.expected +++ b/ruby/ql/test/library-tests/ast/operations/assignment.expected @@ -43,34 +43,35 @@ assignments | operations.rb:84:2:84:12 | ... \|= ... | \|= | operations.rb:84:2:84:4 | bar | operations.rb:84:9:84:12 | 0x01 | AssignBitwiseOrExpr | | operations.rb:85:2:85:11 | ... = ... | = | operations.rb:85:2:85:4 | baz | operations.rb:85:6:85:7 | ... ^ ... | AssignExpr | | operations.rb:85:2:85:11 | ... ^= ... | ^= | operations.rb:85:2:85:4 | baz | operations.rb:85:9:85:11 | qux | AssignBitwiseXorExpr | -| operations.rb:88:3:88:8 | ... = ... | = | operations.rb:88:3:88:4 | @x | operations.rb:88:8:88:8 | 1 | AssignExpr | -| operations.rb:89:3:89:9 | ... += ... | += | operations.rb:89:3:89:4 | @x | operations.rb:89:9:89:9 | 2 | AssignAddExpr | -| operations.rb:89:3:89:9 | ... = ... | = | operations.rb:89:3:89:4 | @x | operations.rb:89:6:89:7 | ... + ... | AssignExpr | -| operations.rb:91:3:91:9 | ... = ... | = | operations.rb:91:3:91:5 | @@y | operations.rb:91:9:91:9 | 3 | AssignExpr | -| operations.rb:92:3:92:10 | ... /= ... | /= | operations.rb:92:3:92:5 | @@y | operations.rb:92:10:92:10 | 4 | AssignDivExpr | -| operations.rb:92:3:92:10 | ... = ... | = | operations.rb:92:3:92:5 | @@y | operations.rb:92:7:92:8 | ... / ... | AssignExpr | -| operations.rb:95:1:95:15 | ... = ... | = | operations.rb:95:1:95:11 | $global_var | operations.rb:95:15:95:15 | 5 | AssignExpr | -| operations.rb:96:1:96:16 | ... *= ... | *= | operations.rb:96:1:96:11 | $global_var | operations.rb:96:16:96:16 | 6 | AssignMulExpr | -| operations.rb:96:1:96:16 | ... = ... | = | operations.rb:96:1:96:11 | $global_var | operations.rb:96:13:96:14 | ... * ... | AssignExpr | -| operations.rb:98:1:98:13 | ... = ... | = | operations.rb:98:1:98:9 | CONSTANT1 | operations.rb:98:13:98:13 | 5 | AssignExpr | -| operations.rb:99:1:99:14 | ... += ... | += | operations.rb:99:1:99:9 | CONSTANT2 | operations.rb:99:14:99:14 | 6 | AssignAddExpr | -| operations.rb:99:1:99:14 | ... = ... | = | operations.rb:99:1:99:9 | CONSTANT2 | operations.rb:99:11:99:12 | ... + ... | AssignExpr | -| operations.rb:100:1:100:15 | ... = ... | = | operations.rb:100:1:100:9 | CONSTANT3 | operations.rb:100:11:100:13 | ... \|\| ... | AssignExpr | -| operations.rb:100:1:100:15 | ... \|\|= ... | \|\|= | operations.rb:100:1:100:9 | CONSTANT3 | operations.rb:100:15:100:15 | 7 | AssignLogicalOrExpr | -| operations.rb:101:1:101:3 | ... = ... | = | operations.rb:101:1:101:3 | __synth__0 | operations.rb:101:1:101:3 | Foo | AssignExpr | -| operations.rb:101:1:101:25 | ... = ... | = | operations.rb:101:1:101:19 | MemberConstant | operations.rb:101:21:101:23 | ... \|\| ... | AssignExpr | -| operations.rb:101:1:101:25 | ... \|\|= ... | \|\|= | operations.rb:101:1:101:19 | MemberConstant | operations.rb:101:25:101:25 | 8 | AssignLogicalOrExpr | -| operations.rb:102:1:102:10 | ... = ... | = | operations.rb:102:1:102:10 | __synth__0 | operations.rb:102:1:102:10 | call to bar | AssignExpr | -| operations.rb:102:1:102:31 | ... = ... | = | operations.rb:102:1:102:25 | OtherConstant | operations.rb:102:27:102:29 | ... \|\| ... | AssignExpr | -| operations.rb:102:1:102:31 | ... \|\|= ... | \|\|= | operations.rb:102:1:102:25 | OtherConstant | operations.rb:102:31:102:31 | 7 | AssignLogicalOrExpr | -| operations.rb:103:1:103:17 | ... = ... | = | operations.rb:103:1:103:11 | CONSTANT4 | operations.rb:103:13:103:15 | ... \|\| ... | AssignExpr | -| operations.rb:103:1:103:17 | ... \|\|= ... | \|\|= | operations.rb:103:1:103:11 | CONSTANT4 | operations.rb:103:17:103:17 | 7 | AssignLogicalOrExpr | -| operations.rb:104:1:104:3 | ... = ... | = | operations.rb:104:1:104:3 | FOO | operations.rb:104:1:104:3 | call to [] | AssignExpr | -| operations.rb:104:1:104:32 | ... = ... | = | operations.rb:104:1:104:20 | (..., ...) | operations.rb:104:24:104:32 | [...] | AssignExpr | -| operations.rb:104:6:104:10 | ... = ... | = | operations.rb:104:6:104:10 | BAR | operations.rb:104:6:104:10 | call to [] | AssignExpr | -| operations.rb:104:13:104:15 | ... = ... | = | operations.rb:104:13:104:15 | __synth__2 | operations.rb:104:13:104:15 | foo | AssignExpr | -| operations.rb:104:13:104:20 | ... = ... | = | operations.rb:104:13:104:20 | FOO | operations.rb:104:13:104:20 | call to [] | AssignExpr | -| operations.rb:104:24:104:32 | ... = ... | = | operations.rb:104:24:104:32 | __synth__3 | operations.rb:104:24:104:32 | * ... | AssignExpr | +| operations.rb:88:1:89:6 | ... = ... | = | operations.rb:88:1:88:3 | foo | operations.rb:88:7:89:6 | ... && ... | AssignExpr | +| operations.rb:108:3:108:8 | ... = ... | = | operations.rb:108:3:108:4 | @x | operations.rb:108:8:108:8 | 1 | AssignExpr | +| operations.rb:109:3:109:9 | ... += ... | += | operations.rb:109:3:109:4 | @x | operations.rb:109:9:109:9 | 2 | AssignAddExpr | +| operations.rb:109:3:109:9 | ... = ... | = | operations.rb:109:3:109:4 | @x | operations.rb:109:6:109:7 | ... + ... | AssignExpr | +| operations.rb:111:3:111:9 | ... = ... | = | operations.rb:111:3:111:5 | @@y | operations.rb:111:9:111:9 | 3 | AssignExpr | +| operations.rb:112:3:112:10 | ... /= ... | /= | operations.rb:112:3:112:5 | @@y | operations.rb:112:10:112:10 | 4 | AssignDivExpr | +| operations.rb:112:3:112:10 | ... = ... | = | operations.rb:112:3:112:5 | @@y | operations.rb:112:7:112:8 | ... / ... | AssignExpr | +| operations.rb:115:1:115:15 | ... = ... | = | operations.rb:115:1:115:11 | $global_var | operations.rb:115:15:115:15 | 5 | AssignExpr | +| operations.rb:116:1:116:16 | ... *= ... | *= | operations.rb:116:1:116:11 | $global_var | operations.rb:116:16:116:16 | 6 | AssignMulExpr | +| operations.rb:116:1:116:16 | ... = ... | = | operations.rb:116:1:116:11 | $global_var | operations.rb:116:13:116:14 | ... * ... | AssignExpr | +| operations.rb:118:1:118:13 | ... = ... | = | operations.rb:118:1:118:9 | CONSTANT1 | operations.rb:118:13:118:13 | 5 | AssignExpr | +| operations.rb:119:1:119:14 | ... += ... | += | operations.rb:119:1:119:9 | CONSTANT2 | operations.rb:119:14:119:14 | 6 | AssignAddExpr | +| operations.rb:119:1:119:14 | ... = ... | = | operations.rb:119:1:119:9 | CONSTANT2 | operations.rb:119:11:119:12 | ... + ... | AssignExpr | +| operations.rb:120:1:120:15 | ... = ... | = | operations.rb:120:1:120:9 | CONSTANT3 | operations.rb:120:11:120:13 | ... \|\| ... | AssignExpr | +| operations.rb:120:1:120:15 | ... \|\|= ... | \|\|= | operations.rb:120:1:120:9 | CONSTANT3 | operations.rb:120:15:120:15 | 7 | AssignLogicalOrExpr | +| operations.rb:121:1:121:3 | ... = ... | = | operations.rb:121:1:121:3 | __synth__0 | operations.rb:121:1:121:3 | Foo | AssignExpr | +| operations.rb:121:1:121:25 | ... = ... | = | operations.rb:121:1:121:19 | MemberConstant | operations.rb:121:21:121:23 | ... \|\| ... | AssignExpr | +| operations.rb:121:1:121:25 | ... \|\|= ... | \|\|= | operations.rb:121:1:121:19 | MemberConstant | operations.rb:121:25:121:25 | 8 | AssignLogicalOrExpr | +| operations.rb:122:1:122:10 | ... = ... | = | operations.rb:122:1:122:10 | __synth__0 | operations.rb:122:1:122:10 | call to bar | AssignExpr | +| operations.rb:122:1:122:31 | ... = ... | = | operations.rb:122:1:122:25 | OtherConstant | operations.rb:122:27:122:29 | ... \|\| ... | AssignExpr | +| operations.rb:122:1:122:31 | ... \|\|= ... | \|\|= | operations.rb:122:1:122:25 | OtherConstant | operations.rb:122:31:122:31 | 7 | AssignLogicalOrExpr | +| operations.rb:123:1:123:17 | ... = ... | = | operations.rb:123:1:123:11 | CONSTANT4 | operations.rb:123:13:123:15 | ... \|\| ... | AssignExpr | +| operations.rb:123:1:123:17 | ... \|\|= ... | \|\|= | operations.rb:123:1:123:11 | CONSTANT4 | operations.rb:123:17:123:17 | 7 | AssignLogicalOrExpr | +| operations.rb:124:1:124:3 | ... = ... | = | operations.rb:124:1:124:3 | FOO | operations.rb:124:1:124:3 | call to [] | AssignExpr | +| operations.rb:124:1:124:32 | ... = ... | = | operations.rb:124:1:124:20 | (..., ...) | operations.rb:124:24:124:32 | [...] | AssignExpr | +| operations.rb:124:6:124:10 | ... = ... | = | operations.rb:124:6:124:10 | BAR | operations.rb:124:6:124:10 | call to [] | AssignExpr | +| operations.rb:124:13:124:15 | ... = ... | = | operations.rb:124:13:124:15 | __synth__2 | operations.rb:124:13:124:15 | foo | AssignExpr | +| operations.rb:124:13:124:20 | ... = ... | = | operations.rb:124:13:124:20 | FOO | operations.rb:124:13:124:20 | call to [] | AssignExpr | +| operations.rb:124:24:124:32 | ... = ... | = | operations.rb:124:24:124:32 | __synth__3 | operations.rb:124:24:124:32 | * ... | AssignExpr | assignOperations | operations.rb:69:1:69:8 | ... += ... | += | operations.rb:69:1:69:1 | x | operations.rb:69:6:69:8 | 128 | AssignAddExpr | | operations.rb:70:1:70:7 | ... -= ... | -= | operations.rb:70:1:70:1 | y | operations.rb:70:6:70:7 | 32 | AssignSubExpr | @@ -85,14 +86,14 @@ assignOperations | operations.rb:83:2:83:12 | ... &= ... | &= | operations.rb:83:2:83:4 | foo | operations.rb:83:9:83:12 | mask | AssignBitwiseAndExpr | | operations.rb:84:2:84:12 | ... \|= ... | \|= | operations.rb:84:2:84:4 | bar | operations.rb:84:9:84:12 | 0x01 | AssignBitwiseOrExpr | | operations.rb:85:2:85:11 | ... ^= ... | ^= | operations.rb:85:2:85:4 | baz | operations.rb:85:9:85:11 | qux | AssignBitwiseXorExpr | -| operations.rb:89:3:89:9 | ... += ... | += | operations.rb:89:3:89:4 | @x | operations.rb:89:9:89:9 | 2 | AssignAddExpr | -| operations.rb:92:3:92:10 | ... /= ... | /= | operations.rb:92:3:92:5 | @@y | operations.rb:92:10:92:10 | 4 | AssignDivExpr | -| operations.rb:96:1:96:16 | ... *= ... | *= | operations.rb:96:1:96:11 | $global_var | operations.rb:96:16:96:16 | 6 | AssignMulExpr | -| operations.rb:99:1:99:14 | ... += ... | += | operations.rb:99:1:99:9 | CONSTANT2 | operations.rb:99:14:99:14 | 6 | AssignAddExpr | -| operations.rb:100:1:100:15 | ... \|\|= ... | \|\|= | operations.rb:100:1:100:9 | CONSTANT3 | operations.rb:100:15:100:15 | 7 | AssignLogicalOrExpr | -| operations.rb:101:1:101:25 | ... \|\|= ... | \|\|= | operations.rb:101:1:101:19 | MemberConstant | operations.rb:101:25:101:25 | 8 | AssignLogicalOrExpr | -| operations.rb:102:1:102:31 | ... \|\|= ... | \|\|= | operations.rb:102:1:102:25 | OtherConstant | operations.rb:102:31:102:31 | 7 | AssignLogicalOrExpr | -| operations.rb:103:1:103:17 | ... \|\|= ... | \|\|= | operations.rb:103:1:103:11 | CONSTANT4 | operations.rb:103:17:103:17 | 7 | AssignLogicalOrExpr | +| operations.rb:109:3:109:9 | ... += ... | += | operations.rb:109:3:109:4 | @x | operations.rb:109:9:109:9 | 2 | AssignAddExpr | +| operations.rb:112:3:112:10 | ... /= ... | /= | operations.rb:112:3:112:5 | @@y | operations.rb:112:10:112:10 | 4 | AssignDivExpr | +| operations.rb:116:1:116:16 | ... *= ... | *= | operations.rb:116:1:116:11 | $global_var | operations.rb:116:16:116:16 | 6 | AssignMulExpr | +| operations.rb:119:1:119:14 | ... += ... | += | operations.rb:119:1:119:9 | CONSTANT2 | operations.rb:119:14:119:14 | 6 | AssignAddExpr | +| operations.rb:120:1:120:15 | ... \|\|= ... | \|\|= | operations.rb:120:1:120:9 | CONSTANT3 | operations.rb:120:15:120:15 | 7 | AssignLogicalOrExpr | +| operations.rb:121:1:121:25 | ... \|\|= ... | \|\|= | operations.rb:121:1:121:19 | MemberConstant | operations.rb:121:25:121:25 | 8 | AssignLogicalOrExpr | +| operations.rb:122:1:122:31 | ... \|\|= ... | \|\|= | operations.rb:122:1:122:25 | OtherConstant | operations.rb:122:31:122:31 | 7 | AssignLogicalOrExpr | +| operations.rb:123:1:123:17 | ... \|\|= ... | \|\|= | operations.rb:123:1:123:11 | CONSTANT4 | operations.rb:123:17:123:17 | 7 | AssignLogicalOrExpr | assignArithmeticOperations | operations.rb:69:1:69:8 | ... += ... | += | operations.rb:69:1:69:1 | x | operations.rb:69:6:69:8 | 128 | AssignAddExpr | | operations.rb:70:1:70:7 | ... -= ... | -= | operations.rb:70:1:70:1 | y | operations.rb:70:6:70:7 | 32 | AssignSubExpr | @@ -100,17 +101,17 @@ assignArithmeticOperations | operations.rb:72:1:72:6 | ... /= ... | /= | operations.rb:72:1:72:1 | b | operations.rb:72:6:72:6 | 4 | AssignDivExpr | | operations.rb:73:1:73:6 | ... %= ... | %= | operations.rb:73:1:73:1 | z | operations.rb:73:6:73:6 | 2 | AssignModuloExpr | | operations.rb:74:1:74:11 | ... **= ... | **= | operations.rb:74:1:74:3 | foo | operations.rb:74:9:74:11 | bar | AssignExponentExpr | -| operations.rb:89:3:89:9 | ... += ... | += | operations.rb:89:3:89:4 | @x | operations.rb:89:9:89:9 | 2 | AssignAddExpr | -| operations.rb:92:3:92:10 | ... /= ... | /= | operations.rb:92:3:92:5 | @@y | operations.rb:92:10:92:10 | 4 | AssignDivExpr | -| operations.rb:96:1:96:16 | ... *= ... | *= | operations.rb:96:1:96:11 | $global_var | operations.rb:96:16:96:16 | 6 | AssignMulExpr | -| operations.rb:99:1:99:14 | ... += ... | += | operations.rb:99:1:99:9 | CONSTANT2 | operations.rb:99:14:99:14 | 6 | AssignAddExpr | +| operations.rb:109:3:109:9 | ... += ... | += | operations.rb:109:3:109:4 | @x | operations.rb:109:9:109:9 | 2 | AssignAddExpr | +| operations.rb:112:3:112:10 | ... /= ... | /= | operations.rb:112:3:112:5 | @@y | operations.rb:112:10:112:10 | 4 | AssignDivExpr | +| operations.rb:116:1:116:16 | ... *= ... | *= | operations.rb:116:1:116:11 | $global_var | operations.rb:116:16:116:16 | 6 | AssignMulExpr | +| operations.rb:119:1:119:14 | ... += ... | += | operations.rb:119:1:119:9 | CONSTANT2 | operations.rb:119:14:119:14 | 6 | AssignAddExpr | assignLogicalOperations | operations.rb:77:2:77:8 | ... &&= ... | &&= | operations.rb:77:2:77:2 | x | operations.rb:77:8:77:8 | y | AssignLogicalAndExpr | | operations.rb:78:2:78:8 | ... \|\|= ... | \|\|= | operations.rb:78:2:78:2 | a | operations.rb:78:8:78:8 | b | AssignLogicalOrExpr | -| operations.rb:100:1:100:15 | ... \|\|= ... | \|\|= | operations.rb:100:1:100:9 | CONSTANT3 | operations.rb:100:15:100:15 | 7 | AssignLogicalOrExpr | -| operations.rb:101:1:101:25 | ... \|\|= ... | \|\|= | operations.rb:101:1:101:19 | MemberConstant | operations.rb:101:25:101:25 | 8 | AssignLogicalOrExpr | -| operations.rb:102:1:102:31 | ... \|\|= ... | \|\|= | operations.rb:102:1:102:25 | OtherConstant | operations.rb:102:31:102:31 | 7 | AssignLogicalOrExpr | -| operations.rb:103:1:103:17 | ... \|\|= ... | \|\|= | operations.rb:103:1:103:11 | CONSTANT4 | operations.rb:103:17:103:17 | 7 | AssignLogicalOrExpr | +| operations.rb:120:1:120:15 | ... \|\|= ... | \|\|= | operations.rb:120:1:120:9 | CONSTANT3 | operations.rb:120:15:120:15 | 7 | AssignLogicalOrExpr | +| operations.rb:121:1:121:25 | ... \|\|= ... | \|\|= | operations.rb:121:1:121:19 | MemberConstant | operations.rb:121:25:121:25 | 8 | AssignLogicalOrExpr | +| operations.rb:122:1:122:31 | ... \|\|= ... | \|\|= | operations.rb:122:1:122:25 | OtherConstant | operations.rb:122:31:122:31 | 7 | AssignLogicalOrExpr | +| operations.rb:123:1:123:17 | ... \|\|= ... | \|\|= | operations.rb:123:1:123:11 | CONSTANT4 | operations.rb:123:17:123:17 | 7 | AssignLogicalOrExpr | assignBitwiseOperations | operations.rb:81:2:81:8 | ... <<= ... | <<= | operations.rb:81:2:81:2 | x | operations.rb:81:8:81:8 | 2 | AssignLShiftExpr | | operations.rb:82:2:82:8 | ... >>= ... | >>= | operations.rb:82:2:82:2 | y | operations.rb:82:8:82:8 | 3 | AssignRShiftExpr | diff --git a/ruby/ql/test/library-tests/ast/operations/binary.expected b/ruby/ql/test/library-tests/ast/operations/binary.expected index 2b632384663d..3f29a82a2c49 100644 --- a/ruby/ql/test/library-tests/ast/operations/binary.expected +++ b/ruby/ql/test/library-tests/ast/operations/binary.expected @@ -37,15 +37,17 @@ binaryOperations | operations.rb:83:6:83:7 | ... & ... | & | operations.rb:83:2:83:4 | foo | operations.rb:83:9:83:12 | mask | BitwiseAndExpr | | operations.rb:84:6:84:7 | ... \| ... | \| | operations.rb:84:2:84:4 | bar | operations.rb:84:9:84:12 | 0x01 | BitwiseOrExpr | | operations.rb:85:6:85:7 | ... ^ ... | ^ | operations.rb:85:2:85:4 | baz | operations.rb:85:9:85:11 | qux | BitwiseXorExpr | -| operations.rb:89:6:89:7 | ... + ... | + | operations.rb:89:3:89:4 | @x | operations.rb:89:9:89:9 | 2 | AddExpr | -| operations.rb:92:7:92:8 | ... / ... | / | operations.rb:92:3:92:5 | @@y | operations.rb:92:10:92:10 | 4 | DivExpr | -| operations.rb:96:13:96:14 | ... * ... | * | operations.rb:96:1:96:11 | $global_var | operations.rb:96:16:96:16 | 6 | MulExpr | -| operations.rb:99:11:99:12 | ... + ... | + | operations.rb:99:1:99:9 | CONSTANT2 | operations.rb:99:14:99:14 | 6 | AddExpr | -| operations.rb:100:11:100:13 | ... \|\| ... | \|\| | operations.rb:100:1:100:9 | CONSTANT3 | operations.rb:100:15:100:15 | 7 | LogicalOrExpr | -| operations.rb:101:21:101:23 | ... \|\| ... | \|\| | operations.rb:101:1:101:19 | MemberConstant | operations.rb:101:25:101:25 | 8 | LogicalOrExpr | -| operations.rb:102:27:102:29 | ... \|\| ... | \|\| | operations.rb:102:1:102:25 | OtherConstant | operations.rb:102:31:102:31 | 7 | LogicalOrExpr | -| operations.rb:103:13:103:15 | ... \|\| ... | \|\| | operations.rb:103:1:103:11 | CONSTANT4 | operations.rb:103:17:103:17 | 7 | LogicalOrExpr | -| operations.rb:106:1:107:1 | ... / ... | / | operations.rb:106:1:106:3 | foo | operations.rb:107:1:107:1 | 5 | DivExpr | +| operations.rb:88:7:89:6 | ... && ... | && | operations.rb:88:7:88:7 | a | operations.rb:89:6:89:6 | b | LogicalAndExpr | +| operations.rb:96:10:97:8 | ... && ... | && | operations.rb:96:10:96:10 | a | operations.rb:97:8:97:8 | b | LogicalAndExpr | +| operations.rb:109:6:109:7 | ... + ... | + | operations.rb:109:3:109:4 | @x | operations.rb:109:9:109:9 | 2 | AddExpr | +| operations.rb:112:7:112:8 | ... / ... | / | operations.rb:112:3:112:5 | @@y | operations.rb:112:10:112:10 | 4 | DivExpr | +| operations.rb:116:13:116:14 | ... * ... | * | operations.rb:116:1:116:11 | $global_var | operations.rb:116:16:116:16 | 6 | MulExpr | +| operations.rb:119:11:119:12 | ... + ... | + | operations.rb:119:1:119:9 | CONSTANT2 | operations.rb:119:14:119:14 | 6 | AddExpr | +| operations.rb:120:11:120:13 | ... \|\| ... | \|\| | operations.rb:120:1:120:9 | CONSTANT3 | operations.rb:120:15:120:15 | 7 | LogicalOrExpr | +| operations.rb:121:21:121:23 | ... \|\| ... | \|\| | operations.rb:121:1:121:19 | MemberConstant | operations.rb:121:25:121:25 | 8 | LogicalOrExpr | +| operations.rb:122:27:122:29 | ... \|\| ... | \|\| | operations.rb:122:1:122:25 | OtherConstant | operations.rb:122:31:122:31 | 7 | LogicalOrExpr | +| operations.rb:123:13:123:15 | ... \|\| ... | \|\| | operations.rb:123:1:123:11 | CONSTANT4 | operations.rb:123:17:123:17 | 7 | LogicalOrExpr | +| operations.rb:126:1:127:1 | ... / ... | / | operations.rb:126:1:126:3 | foo | operations.rb:127:1:127:1 | 5 | DivExpr | binaryArithmeticOperations | operations.rb:32:1:32:7 | ... + ... | + | operations.rb:32:1:32:1 | w | operations.rb:32:5:32:7 | 234 | AddExpr | | operations.rb:33:1:33:6 | ... - ... | - | operations.rb:33:1:33:1 | x | operations.rb:33:5:33:6 | 17 | SubExpr | @@ -59,11 +61,11 @@ binaryArithmeticOperations | operations.rb:72:3:72:4 | ... / ... | / | operations.rb:72:1:72:1 | b | operations.rb:72:6:72:6 | 4 | DivExpr | | operations.rb:73:3:73:4 | ... % ... | % | operations.rb:73:1:73:1 | z | operations.rb:73:6:73:6 | 2 | ModuloExpr | | operations.rb:74:5:74:7 | ... ** ... | ** | operations.rb:74:1:74:3 | foo | operations.rb:74:9:74:11 | bar | ExponentExpr | -| operations.rb:89:6:89:7 | ... + ... | + | operations.rb:89:3:89:4 | @x | operations.rb:89:9:89:9 | 2 | AddExpr | -| operations.rb:92:7:92:8 | ... / ... | / | operations.rb:92:3:92:5 | @@y | operations.rb:92:10:92:10 | 4 | DivExpr | -| operations.rb:96:13:96:14 | ... * ... | * | operations.rb:96:1:96:11 | $global_var | operations.rb:96:16:96:16 | 6 | MulExpr | -| operations.rb:99:11:99:12 | ... + ... | + | operations.rb:99:1:99:9 | CONSTANT2 | operations.rb:99:14:99:14 | 6 | AddExpr | -| operations.rb:106:1:107:1 | ... / ... | / | operations.rb:106:1:106:3 | foo | operations.rb:107:1:107:1 | 5 | DivExpr | +| operations.rb:109:6:109:7 | ... + ... | + | operations.rb:109:3:109:4 | @x | operations.rb:109:9:109:9 | 2 | AddExpr | +| operations.rb:112:7:112:8 | ... / ... | / | operations.rb:112:3:112:5 | @@y | operations.rb:112:10:112:10 | 4 | DivExpr | +| operations.rb:116:13:116:14 | ... * ... | * | operations.rb:116:1:116:11 | $global_var | operations.rb:116:16:116:16 | 6 | MulExpr | +| operations.rb:119:11:119:12 | ... + ... | + | operations.rb:119:1:119:9 | CONSTANT2 | operations.rb:119:14:119:14 | 6 | AddExpr | +| operations.rb:126:1:127:1 | ... / ... | / | operations.rb:126:1:126:3 | foo | operations.rb:127:1:127:1 | 5 | DivExpr | binaryLogicalOperations | operations.rb:40:1:40:10 | ... && ... | && | operations.rb:40:1:40:3 | foo | operations.rb:40:8:40:10 | bar | LogicalAndExpr | | operations.rb:41:1:41:11 | ... and ... | and | operations.rb:41:1:41:3 | baz | operations.rb:41:9:41:11 | qux | LogicalAndExpr | @@ -71,10 +73,12 @@ binaryLogicalOperations | operations.rb:43:1:43:6 | ... \|\| ... | \|\| | operations.rb:43:1:43:1 | x | operations.rb:43:6:43:6 | y | LogicalOrExpr | | operations.rb:77:4:77:6 | ... && ... | && | operations.rb:77:2:77:2 | x | operations.rb:77:8:77:8 | y | LogicalAndExpr | | operations.rb:78:4:78:6 | ... \|\| ... | \|\| | operations.rb:78:2:78:2 | a | operations.rb:78:8:78:8 | b | LogicalOrExpr | -| operations.rb:100:11:100:13 | ... \|\| ... | \|\| | operations.rb:100:1:100:9 | CONSTANT3 | operations.rb:100:15:100:15 | 7 | LogicalOrExpr | -| operations.rb:101:21:101:23 | ... \|\| ... | \|\| | operations.rb:101:1:101:19 | MemberConstant | operations.rb:101:25:101:25 | 8 | LogicalOrExpr | -| operations.rb:102:27:102:29 | ... \|\| ... | \|\| | operations.rb:102:1:102:25 | OtherConstant | operations.rb:102:31:102:31 | 7 | LogicalOrExpr | -| operations.rb:103:13:103:15 | ... \|\| ... | \|\| | operations.rb:103:1:103:11 | CONSTANT4 | operations.rb:103:17:103:17 | 7 | LogicalOrExpr | +| operations.rb:88:7:89:6 | ... && ... | && | operations.rb:88:7:88:7 | a | operations.rb:89:6:89:6 | b | LogicalAndExpr | +| operations.rb:96:10:97:8 | ... && ... | && | operations.rb:96:10:96:10 | a | operations.rb:97:8:97:8 | b | LogicalAndExpr | +| operations.rb:120:11:120:13 | ... \|\| ... | \|\| | operations.rb:120:1:120:9 | CONSTANT3 | operations.rb:120:15:120:15 | 7 | LogicalOrExpr | +| operations.rb:121:21:121:23 | ... \|\| ... | \|\| | operations.rb:121:1:121:19 | MemberConstant | operations.rb:121:25:121:25 | 8 | LogicalOrExpr | +| operations.rb:122:27:122:29 | ... \|\| ... | \|\| | operations.rb:122:1:122:25 | OtherConstant | operations.rb:122:31:122:31 | 7 | LogicalOrExpr | +| operations.rb:123:13:123:15 | ... \|\| ... | \|\| | operations.rb:123:1:123:11 | CONSTANT4 | operations.rb:123:17:123:17 | 7 | LogicalOrExpr | binaryBitwiseOperations | operations.rb:46:1:46:6 | ... << ... | << | operations.rb:46:1:46:1 | x | operations.rb:46:6:46:6 | 3 | LShiftExpr | | operations.rb:47:1:47:7 | ... >> ... | >> | operations.rb:47:1:47:1 | y | operations.rb:47:6:47:7 | 16 | RShiftExpr | diff --git a/ruby/ql/test/library-tests/ast/operations/operation.expected b/ruby/ql/test/library-tests/ast/operations/operation.expected index 29abf236af69..7f7833f707dd 100644 --- a/ruby/ql/test/library-tests/ast/operations/operation.expected +++ b/ruby/ql/test/library-tests/ast/operations/operation.expected @@ -170,78 +170,84 @@ | operations.rb:85:2:85:11 | ... ^= ... | ^= | operations.rb:85:9:85:11 | qux | AssignBitwiseXorExpr | | operations.rb:85:6:85:7 | ... ^ ... | ^ | operations.rb:85:2:85:4 | baz | BitwiseXorExpr | | operations.rb:85:6:85:7 | ... ^ ... | ^ | operations.rb:85:9:85:11 | qux | BitwiseXorExpr | -| operations.rb:88:3:88:8 | ... = ... | = | operations.rb:88:3:88:4 | @x | AssignExpr | -| operations.rb:88:3:88:8 | ... = ... | = | operations.rb:88:8:88:8 | 1 | AssignExpr | -| operations.rb:89:3:89:9 | ... += ... | += | operations.rb:89:3:89:4 | @x | AssignAddExpr | -| operations.rb:89:3:89:9 | ... += ... | += | operations.rb:89:9:89:9 | 2 | AssignAddExpr | -| operations.rb:89:3:89:9 | ... = ... | = | operations.rb:89:3:89:4 | @x | AssignExpr | -| operations.rb:89:3:89:9 | ... = ... | = | operations.rb:89:6:89:7 | ... + ... | AssignExpr | -| operations.rb:89:6:89:7 | ... + ... | + | operations.rb:89:3:89:4 | @x | AddExpr | -| operations.rb:89:6:89:7 | ... + ... | + | operations.rb:89:9:89:9 | 2 | AddExpr | -| operations.rb:91:3:91:9 | ... = ... | = | operations.rb:91:3:91:5 | @@y | AssignExpr | -| operations.rb:91:3:91:9 | ... = ... | = | operations.rb:91:9:91:9 | 3 | AssignExpr | -| operations.rb:92:3:92:10 | ... /= ... | /= | operations.rb:92:3:92:5 | @@y | AssignDivExpr | -| operations.rb:92:3:92:10 | ... /= ... | /= | operations.rb:92:10:92:10 | 4 | AssignDivExpr | -| operations.rb:92:3:92:10 | ... = ... | = | operations.rb:92:3:92:5 | @@y | AssignExpr | -| operations.rb:92:3:92:10 | ... = ... | = | operations.rb:92:7:92:8 | ... / ... | AssignExpr | -| operations.rb:92:7:92:8 | ... / ... | / | operations.rb:92:3:92:5 | @@y | DivExpr | -| operations.rb:92:7:92:8 | ... / ... | / | operations.rb:92:10:92:10 | 4 | DivExpr | -| operations.rb:95:1:95:15 | ... = ... | = | operations.rb:95:1:95:11 | $global_var | AssignExpr | -| operations.rb:95:1:95:15 | ... = ... | = | operations.rb:95:15:95:15 | 5 | AssignExpr | -| operations.rb:96:1:96:16 | ... *= ... | *= | operations.rb:96:1:96:11 | $global_var | AssignMulExpr | -| operations.rb:96:1:96:16 | ... *= ... | *= | operations.rb:96:16:96:16 | 6 | AssignMulExpr | -| operations.rb:96:1:96:16 | ... = ... | = | operations.rb:96:1:96:11 | $global_var | AssignExpr | -| operations.rb:96:1:96:16 | ... = ... | = | operations.rb:96:13:96:14 | ... * ... | AssignExpr | -| operations.rb:96:13:96:14 | ... * ... | * | operations.rb:96:1:96:11 | $global_var | MulExpr | -| operations.rb:96:13:96:14 | ... * ... | * | operations.rb:96:16:96:16 | 6 | MulExpr | -| operations.rb:98:1:98:13 | ... = ... | = | operations.rb:98:1:98:9 | CONSTANT1 | AssignExpr | -| operations.rb:98:1:98:13 | ... = ... | = | operations.rb:98:13:98:13 | 5 | AssignExpr | -| operations.rb:99:1:99:14 | ... += ... | += | operations.rb:99:1:99:9 | CONSTANT2 | AssignAddExpr | -| operations.rb:99:1:99:14 | ... += ... | += | operations.rb:99:14:99:14 | 6 | AssignAddExpr | -| operations.rb:99:1:99:14 | ... = ... | = | operations.rb:99:1:99:9 | CONSTANT2 | AssignExpr | -| operations.rb:99:1:99:14 | ... = ... | = | operations.rb:99:11:99:12 | ... + ... | AssignExpr | -| operations.rb:99:11:99:12 | ... + ... | + | operations.rb:99:1:99:9 | CONSTANT2 | AddExpr | -| operations.rb:99:11:99:12 | ... + ... | + | operations.rb:99:14:99:14 | 6 | AddExpr | -| operations.rb:100:1:100:15 | ... = ... | = | operations.rb:100:1:100:9 | CONSTANT3 | AssignExpr | -| operations.rb:100:1:100:15 | ... = ... | = | operations.rb:100:11:100:13 | ... \|\| ... | AssignExpr | -| operations.rb:100:1:100:15 | ... \|\|= ... | \|\|= | operations.rb:100:1:100:9 | CONSTANT3 | AssignLogicalOrExpr | -| operations.rb:100:1:100:15 | ... \|\|= ... | \|\|= | operations.rb:100:15:100:15 | 7 | AssignLogicalOrExpr | -| operations.rb:100:11:100:13 | ... \|\| ... | \|\| | operations.rb:100:1:100:9 | CONSTANT3 | LogicalOrExpr | -| operations.rb:100:11:100:13 | ... \|\| ... | \|\| | operations.rb:100:15:100:15 | 7 | LogicalOrExpr | -| operations.rb:101:1:101:3 | ... = ... | = | operations.rb:101:1:101:3 | Foo | AssignExpr | -| operations.rb:101:1:101:3 | ... = ... | = | operations.rb:101:1:101:3 | __synth__0 | AssignExpr | -| operations.rb:101:1:101:25 | ... = ... | = | operations.rb:101:1:101:19 | MemberConstant | AssignExpr | -| operations.rb:101:1:101:25 | ... = ... | = | operations.rb:101:21:101:23 | ... \|\| ... | AssignExpr | -| operations.rb:101:1:101:25 | ... \|\|= ... | \|\|= | operations.rb:101:1:101:19 | MemberConstant | AssignLogicalOrExpr | -| operations.rb:101:1:101:25 | ... \|\|= ... | \|\|= | operations.rb:101:25:101:25 | 8 | AssignLogicalOrExpr | -| operations.rb:101:21:101:23 | ... \|\| ... | \|\| | operations.rb:101:1:101:19 | MemberConstant | LogicalOrExpr | -| operations.rb:101:21:101:23 | ... \|\| ... | \|\| | operations.rb:101:25:101:25 | 8 | LogicalOrExpr | -| operations.rb:102:1:102:10 | ... = ... | = | operations.rb:102:1:102:10 | __synth__0 | AssignExpr | -| operations.rb:102:1:102:10 | ... = ... | = | operations.rb:102:1:102:10 | call to bar | AssignExpr | -| operations.rb:102:1:102:31 | ... = ... | = | operations.rb:102:1:102:25 | OtherConstant | AssignExpr | -| operations.rb:102:1:102:31 | ... = ... | = | operations.rb:102:27:102:29 | ... \|\| ... | AssignExpr | -| operations.rb:102:1:102:31 | ... \|\|= ... | \|\|= | operations.rb:102:1:102:25 | OtherConstant | AssignLogicalOrExpr | -| operations.rb:102:1:102:31 | ... \|\|= ... | \|\|= | operations.rb:102:31:102:31 | 7 | AssignLogicalOrExpr | -| operations.rb:102:27:102:29 | ... \|\| ... | \|\| | operations.rb:102:1:102:25 | OtherConstant | LogicalOrExpr | -| operations.rb:102:27:102:29 | ... \|\| ... | \|\| | operations.rb:102:31:102:31 | 7 | LogicalOrExpr | -| operations.rb:103:1:103:17 | ... = ... | = | operations.rb:103:1:103:11 | CONSTANT4 | AssignExpr | -| operations.rb:103:1:103:17 | ... = ... | = | operations.rb:103:13:103:15 | ... \|\| ... | AssignExpr | -| operations.rb:103:1:103:17 | ... \|\|= ... | \|\|= | operations.rb:103:1:103:11 | CONSTANT4 | AssignLogicalOrExpr | -| operations.rb:103:1:103:17 | ... \|\|= ... | \|\|= | operations.rb:103:17:103:17 | 7 | AssignLogicalOrExpr | -| operations.rb:103:13:103:15 | ... \|\| ... | \|\| | operations.rb:103:1:103:11 | CONSTANT4 | LogicalOrExpr | -| operations.rb:103:13:103:15 | ... \|\| ... | \|\| | operations.rb:103:17:103:17 | 7 | LogicalOrExpr | -| operations.rb:104:1:104:3 | ... = ... | = | operations.rb:104:1:104:3 | FOO | AssignExpr | -| operations.rb:104:1:104:3 | ... = ... | = | operations.rb:104:1:104:3 | call to [] | AssignExpr | -| operations.rb:104:1:104:32 | ... = ... | = | operations.rb:104:1:104:20 | (..., ...) | AssignExpr | -| operations.rb:104:1:104:32 | ... = ... | = | operations.rb:104:24:104:32 | [...] | AssignExpr | -| operations.rb:104:6:104:10 | ... = ... | = | operations.rb:104:6:104:10 | BAR | AssignExpr | -| operations.rb:104:6:104:10 | ... = ... | = | operations.rb:104:6:104:10 | call to [] | AssignExpr | -| operations.rb:104:13:104:15 | ... = ... | = | operations.rb:104:13:104:15 | __synth__2 | AssignExpr | -| operations.rb:104:13:104:15 | ... = ... | = | operations.rb:104:13:104:15 | foo | AssignExpr | -| operations.rb:104:13:104:20 | ... = ... | = | operations.rb:104:13:104:20 | FOO | AssignExpr | -| operations.rb:104:13:104:20 | ... = ... | = | operations.rb:104:13:104:20 | call to [] | AssignExpr | -| operations.rb:104:24:104:32 | * ... | * | operations.rb:104:24:104:32 | [...] | SplatExpr | -| operations.rb:104:24:104:32 | ... = ... | = | operations.rb:104:24:104:32 | * ... | AssignExpr | -| operations.rb:104:24:104:32 | ... = ... | = | operations.rb:104:24:104:32 | __synth__3 | AssignExpr | -| operations.rb:106:1:107:1 | ... / ... | / | operations.rb:106:1:106:3 | foo | DivExpr | -| operations.rb:106:1:107:1 | ... / ... | / | operations.rb:107:1:107:1 | 5 | DivExpr | +| operations.rb:88:1:89:6 | ... = ... | = | operations.rb:88:1:88:3 | foo | AssignExpr | +| operations.rb:88:1:89:6 | ... = ... | = | operations.rb:88:7:89:6 | ... && ... | AssignExpr | +| operations.rb:88:7:89:6 | ... && ... | && | operations.rb:88:7:88:7 | a | LogicalAndExpr | +| operations.rb:88:7:89:6 | ... && ... | && | operations.rb:89:6:89:6 | b | LogicalAndExpr | +| operations.rb:96:10:97:8 | ... && ... | && | operations.rb:96:10:96:10 | a | LogicalAndExpr | +| operations.rb:96:10:97:8 | ... && ... | && | operations.rb:97:8:97:8 | b | LogicalAndExpr | +| operations.rb:108:3:108:8 | ... = ... | = | operations.rb:108:3:108:4 | @x | AssignExpr | +| operations.rb:108:3:108:8 | ... = ... | = | operations.rb:108:8:108:8 | 1 | AssignExpr | +| operations.rb:109:3:109:9 | ... += ... | += | operations.rb:109:3:109:4 | @x | AssignAddExpr | +| operations.rb:109:3:109:9 | ... += ... | += | operations.rb:109:9:109:9 | 2 | AssignAddExpr | +| operations.rb:109:3:109:9 | ... = ... | = | operations.rb:109:3:109:4 | @x | AssignExpr | +| operations.rb:109:3:109:9 | ... = ... | = | operations.rb:109:6:109:7 | ... + ... | AssignExpr | +| operations.rb:109:6:109:7 | ... + ... | + | operations.rb:109:3:109:4 | @x | AddExpr | +| operations.rb:109:6:109:7 | ... + ... | + | operations.rb:109:9:109:9 | 2 | AddExpr | +| operations.rb:111:3:111:9 | ... = ... | = | operations.rb:111:3:111:5 | @@y | AssignExpr | +| operations.rb:111:3:111:9 | ... = ... | = | operations.rb:111:9:111:9 | 3 | AssignExpr | +| operations.rb:112:3:112:10 | ... /= ... | /= | operations.rb:112:3:112:5 | @@y | AssignDivExpr | +| operations.rb:112:3:112:10 | ... /= ... | /= | operations.rb:112:10:112:10 | 4 | AssignDivExpr | +| operations.rb:112:3:112:10 | ... = ... | = | operations.rb:112:3:112:5 | @@y | AssignExpr | +| operations.rb:112:3:112:10 | ... = ... | = | operations.rb:112:7:112:8 | ... / ... | AssignExpr | +| operations.rb:112:7:112:8 | ... / ... | / | operations.rb:112:3:112:5 | @@y | DivExpr | +| operations.rb:112:7:112:8 | ... / ... | / | operations.rb:112:10:112:10 | 4 | DivExpr | +| operations.rb:115:1:115:15 | ... = ... | = | operations.rb:115:1:115:11 | $global_var | AssignExpr | +| operations.rb:115:1:115:15 | ... = ... | = | operations.rb:115:15:115:15 | 5 | AssignExpr | +| operations.rb:116:1:116:16 | ... *= ... | *= | operations.rb:116:1:116:11 | $global_var | AssignMulExpr | +| operations.rb:116:1:116:16 | ... *= ... | *= | operations.rb:116:16:116:16 | 6 | AssignMulExpr | +| operations.rb:116:1:116:16 | ... = ... | = | operations.rb:116:1:116:11 | $global_var | AssignExpr | +| operations.rb:116:1:116:16 | ... = ... | = | operations.rb:116:13:116:14 | ... * ... | AssignExpr | +| operations.rb:116:13:116:14 | ... * ... | * | operations.rb:116:1:116:11 | $global_var | MulExpr | +| operations.rb:116:13:116:14 | ... * ... | * | operations.rb:116:16:116:16 | 6 | MulExpr | +| operations.rb:118:1:118:13 | ... = ... | = | operations.rb:118:1:118:9 | CONSTANT1 | AssignExpr | +| operations.rb:118:1:118:13 | ... = ... | = | operations.rb:118:13:118:13 | 5 | AssignExpr | +| operations.rb:119:1:119:14 | ... += ... | += | operations.rb:119:1:119:9 | CONSTANT2 | AssignAddExpr | +| operations.rb:119:1:119:14 | ... += ... | += | operations.rb:119:14:119:14 | 6 | AssignAddExpr | +| operations.rb:119:1:119:14 | ... = ... | = | operations.rb:119:1:119:9 | CONSTANT2 | AssignExpr | +| operations.rb:119:1:119:14 | ... = ... | = | operations.rb:119:11:119:12 | ... + ... | AssignExpr | +| operations.rb:119:11:119:12 | ... + ... | + | operations.rb:119:1:119:9 | CONSTANT2 | AddExpr | +| operations.rb:119:11:119:12 | ... + ... | + | operations.rb:119:14:119:14 | 6 | AddExpr | +| operations.rb:120:1:120:15 | ... = ... | = | operations.rb:120:1:120:9 | CONSTANT3 | AssignExpr | +| operations.rb:120:1:120:15 | ... = ... | = | operations.rb:120:11:120:13 | ... \|\| ... | AssignExpr | +| operations.rb:120:1:120:15 | ... \|\|= ... | \|\|= | operations.rb:120:1:120:9 | CONSTANT3 | AssignLogicalOrExpr | +| operations.rb:120:1:120:15 | ... \|\|= ... | \|\|= | operations.rb:120:15:120:15 | 7 | AssignLogicalOrExpr | +| operations.rb:120:11:120:13 | ... \|\| ... | \|\| | operations.rb:120:1:120:9 | CONSTANT3 | LogicalOrExpr | +| operations.rb:120:11:120:13 | ... \|\| ... | \|\| | operations.rb:120:15:120:15 | 7 | LogicalOrExpr | +| operations.rb:121:1:121:3 | ... = ... | = | operations.rb:121:1:121:3 | Foo | AssignExpr | +| operations.rb:121:1:121:3 | ... = ... | = | operations.rb:121:1:121:3 | __synth__0 | AssignExpr | +| operations.rb:121:1:121:25 | ... = ... | = | operations.rb:121:1:121:19 | MemberConstant | AssignExpr | +| operations.rb:121:1:121:25 | ... = ... | = | operations.rb:121:21:121:23 | ... \|\| ... | AssignExpr | +| operations.rb:121:1:121:25 | ... \|\|= ... | \|\|= | operations.rb:121:1:121:19 | MemberConstant | AssignLogicalOrExpr | +| operations.rb:121:1:121:25 | ... \|\|= ... | \|\|= | operations.rb:121:25:121:25 | 8 | AssignLogicalOrExpr | +| operations.rb:121:21:121:23 | ... \|\| ... | \|\| | operations.rb:121:1:121:19 | MemberConstant | LogicalOrExpr | +| operations.rb:121:21:121:23 | ... \|\| ... | \|\| | operations.rb:121:25:121:25 | 8 | LogicalOrExpr | +| operations.rb:122:1:122:10 | ... = ... | = | operations.rb:122:1:122:10 | __synth__0 | AssignExpr | +| operations.rb:122:1:122:10 | ... = ... | = | operations.rb:122:1:122:10 | call to bar | AssignExpr | +| operations.rb:122:1:122:31 | ... = ... | = | operations.rb:122:1:122:25 | OtherConstant | AssignExpr | +| operations.rb:122:1:122:31 | ... = ... | = | operations.rb:122:27:122:29 | ... \|\| ... | AssignExpr | +| operations.rb:122:1:122:31 | ... \|\|= ... | \|\|= | operations.rb:122:1:122:25 | OtherConstant | AssignLogicalOrExpr | +| operations.rb:122:1:122:31 | ... \|\|= ... | \|\|= | operations.rb:122:31:122:31 | 7 | AssignLogicalOrExpr | +| operations.rb:122:27:122:29 | ... \|\| ... | \|\| | operations.rb:122:1:122:25 | OtherConstant | LogicalOrExpr | +| operations.rb:122:27:122:29 | ... \|\| ... | \|\| | operations.rb:122:31:122:31 | 7 | LogicalOrExpr | +| operations.rb:123:1:123:17 | ... = ... | = | operations.rb:123:1:123:11 | CONSTANT4 | AssignExpr | +| operations.rb:123:1:123:17 | ... = ... | = | operations.rb:123:13:123:15 | ... \|\| ... | AssignExpr | +| operations.rb:123:1:123:17 | ... \|\|= ... | \|\|= | operations.rb:123:1:123:11 | CONSTANT4 | AssignLogicalOrExpr | +| operations.rb:123:1:123:17 | ... \|\|= ... | \|\|= | operations.rb:123:17:123:17 | 7 | AssignLogicalOrExpr | +| operations.rb:123:13:123:15 | ... \|\| ... | \|\| | operations.rb:123:1:123:11 | CONSTANT4 | LogicalOrExpr | +| operations.rb:123:13:123:15 | ... \|\| ... | \|\| | operations.rb:123:17:123:17 | 7 | LogicalOrExpr | +| operations.rb:124:1:124:3 | ... = ... | = | operations.rb:124:1:124:3 | FOO | AssignExpr | +| operations.rb:124:1:124:3 | ... = ... | = | operations.rb:124:1:124:3 | call to [] | AssignExpr | +| operations.rb:124:1:124:32 | ... = ... | = | operations.rb:124:1:124:20 | (..., ...) | AssignExpr | +| operations.rb:124:1:124:32 | ... = ... | = | operations.rb:124:24:124:32 | [...] | AssignExpr | +| operations.rb:124:6:124:10 | ... = ... | = | operations.rb:124:6:124:10 | BAR | AssignExpr | +| operations.rb:124:6:124:10 | ... = ... | = | operations.rb:124:6:124:10 | call to [] | AssignExpr | +| operations.rb:124:13:124:15 | ... = ... | = | operations.rb:124:13:124:15 | __synth__2 | AssignExpr | +| operations.rb:124:13:124:15 | ... = ... | = | operations.rb:124:13:124:15 | foo | AssignExpr | +| operations.rb:124:13:124:20 | ... = ... | = | operations.rb:124:13:124:20 | FOO | AssignExpr | +| operations.rb:124:13:124:20 | ... = ... | = | operations.rb:124:13:124:20 | call to [] | AssignExpr | +| operations.rb:124:24:124:32 | * ... | * | operations.rb:124:24:124:32 | [...] | SplatExpr | +| operations.rb:124:24:124:32 | ... = ... | = | operations.rb:124:24:124:32 | * ... | AssignExpr | +| operations.rb:124:24:124:32 | ... = ... | = | operations.rb:124:24:124:32 | __synth__3 | AssignExpr | +| operations.rb:126:1:127:1 | ... / ... | / | operations.rb:126:1:126:3 | foo | DivExpr | +| operations.rb:126:1:127:1 | ... / ... | / | operations.rb:127:1:127:1 | 5 | DivExpr | diff --git a/ruby/ql/test/library-tests/ast/operations/operations.rb b/ruby/ql/test/library-tests/ast/operations/operations.rb index cee2acedc707..93ddc39d6384 100644 --- a/ruby/ql/test/library-tests/ast/operations/operations.rb +++ b/ruby/ql/test/library-tests/ast/operations/operations.rb @@ -84,6 +84,26 @@ def foo; return 1, *[2], a:3, **{b:4, c:5} end bar |= 0x01 baz ^= qux +# Assignments with operation at start of line +foo = a + && b +# NOTE: This is not parsed correctly, `|| b` is dropped +# bar = a +# || b + +# Return with `&&` at start of line +def foo(a, b) + return a + && b +end + +# Return with `||` at start of line +# NOTE: This is not parsed correctly, `|| b` is dropped +# def bar(a, b) +# return a +# || b +# end + class X @x = 1 @x += 2 diff --git a/ruby/ql/test/library-tests/ast/operations/unary.expected b/ruby/ql/test/library-tests/ast/operations/unary.expected index 43c23fff0312..2ea6dcf07681 100644 --- a/ruby/ql/test/library-tests/ast/operations/unary.expected +++ b/ruby/ql/test/library-tests/ast/operations/unary.expected @@ -7,7 +7,7 @@ unaryOperations | operations.rb:28:1:28:12 | defined? ... | defined? | operations.rb:28:10:28:12 | foo | DefinedExpr | | operations.rb:29:20:29:23 | * ... | * | operations.rb:29:21:29:23 | [...] | SplatExpr | | operations.rb:29:31:29:42 | ** ... | ** | operations.rb:29:33:29:42 | {...} | HashSplatExpr | -| operations.rb:104:24:104:32 | * ... | * | operations.rb:104:24:104:32 | [...] | SplatExpr | +| operations.rb:124:24:124:32 | * ... | * | operations.rb:124:24:124:32 | [...] | SplatExpr | unaryLogicalOperations | operations.rb:23:1:23:2 | ! ... | ! | operations.rb:23:2:23:2 | a | NotExpr | | operations.rb:24:1:24:5 | not ... | not | operations.rb:24:5:24:5 | b | NotExpr | diff --git a/rust/ql/lib/CHANGELOG.md b/rust/ql/lib/CHANGELOG.md index b913efd02f06..3887b67b4dfd 100644 --- a/rust/ql/lib/CHANGELOG.md +++ b/rust/ql/lib/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.2.6 + +No user-facing changes. + ## 0.2.5 ### Minor Analysis Improvements diff --git a/rust/ql/lib/change-notes/released/0.2.6.md b/rust/ql/lib/change-notes/released/0.2.6.md new file mode 100644 index 000000000000..edaefe75481e --- /dev/null +++ b/rust/ql/lib/change-notes/released/0.2.6.md @@ -0,0 +1,3 @@ +## 0.2.6 + +No user-facing changes. diff --git a/rust/ql/lib/codeql-pack.release.yml b/rust/ql/lib/codeql-pack.release.yml index 211454ed3064..248dd0f4594b 100644 --- a/rust/ql/lib/codeql-pack.release.yml +++ b/rust/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.2.5 +lastReleaseVersion: 0.2.6 diff --git a/rust/ql/lib/codeql/rust/internal/PathResolution.qll b/rust/ql/lib/codeql/rust/internal/PathResolution.qll index f30625807b43..432608f6f9d6 100644 --- a/rust/ql/lib/codeql/rust/internal/PathResolution.qll +++ b/rust/ql/lib/codeql/rust/internal/PathResolution.qll @@ -110,18 +110,24 @@ pragma[nomagic] private ItemNode getAChildSuccessor(ItemNode item, string name, SuccessorKind kind) { item = result.getImmediateParent() and name = result.getName() and + // Associated items in `impl` and `trait` blocks are handled elsewhere + not (item instanceof ImplOrTraitItemNode and result instanceof AssocItem) and // type parameters are only available inside the declaring item if result instanceof TypeParam then kind.isInternal() else - // associated items must always be qualified, also within the declaring - // item (using `Self`) - if item instanceof ImplOrTraitItemNode and result instanceof AssocItem - then kind.isExternal() - else - if result.isPublic() - then kind.isBoth() - else kind.isInternal() + if result.isPublic() + then kind.isBoth() + else kind.isInternal() + or + // `Self` has scoping rules similar to type parameters and can be considered + // an implicit type parameter child of the introducing item. + // - https://doc.rust-lang.org/stable/reference/paths.html#r-paths.qualifiers.type-self + // - https://doc.rust-lang.org/stable/reference/names/scopes.html#r-names.scopes.self + (item instanceof TypeItemTypeItemNode or item instanceof ImplOrTraitItemNode) and + name = "Self" and + kind.isInternal() and + result = item } private module UseOption = Option; @@ -327,30 +333,25 @@ abstract class ItemNode extends Locatable { ) ) or - // a trait has access to the associated items of its supertraits this = any(TraitItemNodeImpl trait | - result = trait.resolveABoundCand().getASuccessor(name, kind, useOpt) and - kind.isExternalOrBoth() and - result instanceof AssocItemNode and - not trait.hasAssocItem(name) - ) + result = trait.getAssocItem(name) + or + // a trait has access to the associated items of its supertraits + not trait.hasAssocItem(name) and + result = trait.resolveABoundCand().getASuccessor(name).(AssocItemNode) + ) and + kind.isExternal() and + useOpt.isNone() or // items made available by an implementation where `this` is the implementing type - typeImplEdge(this, _, name, kind, result, useOpt) - or - // trait items with default implementations made available in an implementation - exists(ImplItemNodeImpl impl, TraitItemNode trait | - this = impl and - trait = impl.resolveTraitTyCand() and - result = trait.getASuccessor(name, kind, useOpt) and - // do not inherit default implementations from super traits; those are inherited by - // their `impl` blocks - result = trait.getAssocItem(name) and - result.(AssocItemNode).hasImplementation() and - kind.isExternalOrBoth() and - not impl.hasAssocItem(name) - ) + typeImplEdge(this, _, name, result) and + kind.isExternal() and + useOpt.isNone() + or + implEdge(this, name, result) and + kind.isExternal() and + useOpt.isNone() or // type parameters have access to the associated items of its bounds result = @@ -413,15 +414,6 @@ abstract class ItemNode extends Locatable { this instanceof SourceFile and builtin(name, result) or - exists(ImplOrTraitItemNode i | - name = "Self" and - this = i.getAnItemInSelfScope() - | - result = i.(Trait) - or - result = i.(ImplItemNodeImpl).resolveSelfTyCand() - ) - or name = "crate" and this = result.(CrateItemNode).getASourceFile() ) @@ -732,30 +724,16 @@ class FunctionItemNode extends AssocItemNode, ParameterizableItemNode instanceof } abstract class ImplOrTraitItemNode extends ItemNode { - /** Gets an item that may refer to this node using `Self`. */ - pragma[nomagic] - ItemNode getAnItemInSelfScope() { - result = this - or - result.getImmediateParent() = this - or - exists(ItemNode mid | - mid = this.getAnItemInSelfScope() and - result.getImmediateParent() = mid and - not mid instanceof ImplOrTraitItemNode - ) - } - /** Gets a `Self` path that refers to this item. */ cached Path getASelfPath() { Stages::PathResolutionStage::ref() and isUnqualifiedSelfPath(result) and - result = this.getAnItemInSelfScope().getADescendant() + this = unqualifiedPathLookup(result, _, _) } /** Gets an associated item belonging to this trait or `impl` block. */ - abstract AssocItemNode getAnAssocItem(); + AssocItemNode getAnAssocItem() { result = this.getADescendant() } /** Gets the associated item named `name` belonging to this trait or `impl` block. */ pragma[nomagic] @@ -807,12 +785,12 @@ final class ImplItemNode extends ImplOrTraitItemNode instanceof Impl { TraitItemNode resolveTraitTy() { result = resolvePath(this.getTraitPath()) } - override AssocItemNode getAnAssocItem() { result = this.getADescendant() } - override string getName() { result = "(impl)" } override Namespace getNamespace() { - result.isType() // can be referenced with `Self` + // `impl` blocks are referred to using `Self` paths which can appear both as + // types and as values (when the implementing type is a tuple-like struct). + result.isType() or result.isValue() } override TypeParam getTypeParam(int i) { result = super.getGenericParamList().getTypeParam(i) } @@ -985,6 +963,18 @@ private class ImplItemNodeImpl extends ImplItemNode { } TraitItemNodeImpl resolveTraitTyCand() { result = resolvePathCand(this.getTraitPath()) } + + /** + * Gets the associated item named `name` in this impl block or the default + * inherited from the trait being implemented. + */ + AssocItemNode getAssocItemOrDefault(string name) { + result = this.getAssocItem(name) + or + not this.hasAssocItem(name) and + result = this.resolveTraitTyCand().getAssocItem(name) and + result.hasImplementation() + } } private class StructItemNode extends TypeItemTypeItemNode, ParameterizableItemNode instanceof Struct @@ -1020,8 +1010,6 @@ final class TraitItemNode extends ImplOrTraitItemNode, TypeItemNode instanceof T ItemNode resolveABound() { result = this.resolveBound(_) } - override AssocItemNode getAnAssocItem() { result = this.getADescendant() } - override string getName() { result = Trait.super.getName().getText() } override Namespace getNamespace() { result.isType() } @@ -1560,7 +1548,8 @@ private class PathExtPath extends PathExt instanceof Path { tree.hasPath() and this = getAUseTreeUseTree(tree).getPath().getQualifier*() ) and - name = Path.super.getText() + // For a `` path we resolve the trait name + name = [Path.super.getText(), Path.super.getSegment().getTraitTypeRepr().getPath().getText()] } override Path getQualifier() { result = Path.super.getQualifier() } @@ -1614,11 +1603,7 @@ private predicate unqualifiedPathLookup(ItemNode ancestor, string name, Namespac // lookup in an outer scope, but only if the item is not declared in inner scope exists(ItemNode mid | unqualifiedPathLookup(mid, name, ns, encl) and - not declares(mid, ns, name) and - not ( - name = "Self" and - mid = any(ImplOrTraitItemNode i).getAnItemInSelfScope() - ) + not declares(mid, ns, name) | ancestor = getOuterScope(mid) or @@ -1790,7 +1775,17 @@ private module DollarCrateResolution { pragma[nomagic] private ItemNode resolvePathCand0(PathExt path, Namespace ns) { - result = unqualifiedPathLookup(path, ns, _) + exists(ItemNode res | + res = unqualifiedPathLookup(path, ns, _) and + if + // `Self` paths that are not used as qualifiers (for instance `Self` in + // `fn(..) -> Self`) should resolve to the type being implemented. + not any(PathExt parent).getQualifier() = path and + isUnqualifiedSelfPath(path) and + res instanceof ImplItemNode + then result = res.(ImplItemNodeImpl).resolveSelfTyCand() + else result = res + ) or DollarCrateResolution::resolveDollarCrate(path, result) and ns = result.getNamespace() @@ -1852,35 +1847,12 @@ private predicate checkQualifiedVisibility( not i instanceof TypeParam } -pragma[nomagic] -private predicate isImplSelfQualifiedPath( - ImplItemNode impl, PathExt qualifier, PathExt path, string name -) { - qualifier = impl.getASelfPath() and - qualifier = path.getQualifier() and - name = path.getText() -} - -private ItemNode resolveImplSelfQualified(PathExt qualifier, PathExt path, Namespace ns) { - exists(ImplItemNode impl, string name | - isImplSelfQualifiedPath(impl, qualifier, path, name) and - result = impl.getAssocItem(name) and - ns = result.getNamespace() - ) -} - /** * Gets the item that `path` resolves to in `ns` when `qualifier` is the * qualifier of `path` and `qualifier` resolves to `q`, if any. */ pragma[nomagic] private ItemNode resolvePathCandQualified(PathExt qualifier, ItemNode q, PathExt path, Namespace ns) { - // Special case for `Self::Assoc`; this always refers to the associated - // item in the enclosing `impl` block, if available. - q = resolvePathCandQualifier(qualifier, path, _) and - result = resolveImplSelfQualified(qualifier, path, ns) - or - not exists(resolveImplSelfQualified(qualifier, path, ns)) and exists(string name, SuccessorKind kind, UseOption useOpt | q = resolvePathCandQualifier(qualifier, path, name) and result = getASuccessor(q, name, ns, kind, useOpt) and @@ -1940,6 +1912,37 @@ private predicate macroExportEdge(CrateItemNode crate, string name, MacroItemNod name = macro.getName() } +/** + * Holds if a `Self` path inside `impl` might refer to a function named `name` + * from another impl block. + */ +pragma[nomagic] +private predicate relevantSelfFunctionName(ImplItemNodeImpl impl, string name) { + any(Path path | path.getQualifier() = impl.getASelfPath()).getText() = name and + not impl.hasAssocItem(name) +} + +/** + * Holds if `impl` has a `node` available externally at `name`. + * + * Since `Self` in an impl block resolves to the impl block, this corresponds to + * the items that should be available on `Self` within the `impl` block. + */ +private predicate implEdge(ImplItemNodeImpl impl, string name, ItemNode node) { + node = impl.getAssocItemOrDefault(name) + or + // Associated types from the implemented trait are available on `Self`. + not impl.hasAssocItem(name) and + node = impl.resolveTraitTyCand().getASuccessor(name).(TypeAliasItemNode) + or + // Items available on the implementing type are available on `Self`. We only + // add these edges when they are relevant. If a type has `n` impl blocks with + // `m` functions each, we would otherwise end up always constructing something + // proportional to `O(n * m)`. + relevantSelfFunctionName(impl, name) and + node = impl.resolveSelfTyCand().getASuccessor(name) +} + /** * Holds if item `i` contains a `mod` or `extern crate` definition that * makes the macro `macro` named `name` available using a `#[macro_use]` @@ -2009,9 +2012,10 @@ private ItemNode resolvePathCand(PathExt path) { /** Get a trait that should be visible when `path` resolves to `node`, if any. */ private Trait getResolvePathTraitUsed(PathExt path, AssocItemNode node) { - exists(TypeItemNode type, ImplItemNodeImpl impl | - node = resolvePathCandQualified(_, type, path, _) and - typeImplEdge(type, impl, _, _, node, _) and + exists(TypeItemNode type, ItemNode qual, ImplItemNodeImpl impl | + node = resolvePathCandQualified(_, qual, path, _) and + type = [qual, qual.(ImplItemNodeImpl).resolveSelfTyCand()] and + typeImplEdge(type, impl, _, node) and result = impl.resolveTraitTyCand() ) } @@ -2132,7 +2136,7 @@ private predicate useImportEdge(Use use, string name, ItemNode item, SuccessorKi checkQualifiedVisibility(use, item, kind1, useOpt) and // glob imports can be shadowed not declares(encl, ns, name) and - not name = ["super", "self"] + not name = ["super", "self", "Self"] ) else ( item = used and @@ -2179,15 +2183,17 @@ private predicate externCrateEdge( /** * Holds if `typeItem` is the implementing type of `impl` and the implementation - * makes `assoc` available as `name` at `kind`. + * makes `assoc` available as `name`. */ private predicate typeImplEdge( - TypeItemNode typeItem, ImplItemNodeImpl impl, string name, SuccessorKind kind, - AssocItemNode assoc, UseOption useOpt + TypeItemNode typeItem, ImplItemNodeImpl impl, string name, AssocItemNode assoc ) { + assoc = impl.getAssocItemOrDefault(name) and typeItem = impl.resolveSelfTyCand() and - assoc = impl.getASuccessor(name, kind, useOpt) and - kind.isExternalOrBoth() + // Functions in `impl` blocks are made available on the implementing type + // (e.g., `S::fun` is valid) but associated types are not (e.g., `S::Output` + // is invalid). + not assoc instanceof TypeAlias } pragma[nomagic] diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedType.qll b/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedType.qll new file mode 100644 index 000000000000..6bd0db33158c --- /dev/null +++ b/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedType.qll @@ -0,0 +1,64 @@ +/** + * Provides classes and helper predicates for associated types. + */ + +private import rust +private import codeql.rust.internal.PathResolution +private import TypeMention +private import Type +private import TypeInference + +/** An associated type, that is, a type alias in a trait block. */ +final class AssocType extends TypeAlias { + Trait trait; + + AssocType() { this = trait.getAssocItemList().getAnAssocItem() } + + Trait getTrait() { result = trait } + + string getText() { result = this.getName().getText() } +} + +/** Gets an associated type of `trait` or of a supertrait of `trait`. */ +AssocType getTraitAssocType(Trait trait) { result.getTrait() = trait.getSupertrait*() } + +/** Holds if `path` is of the form `::name` */ +pragma[nomagic] +predicate pathTypeAsTraitAssoc(Path path, TypeRepr typeRepr, Path traitPath, string name) { + exists(PathSegment segment | + segment = path.getQualifier().getSegment() and + typeRepr = segment.getTypeRepr() and + traitPath = segment.getTraitTypeRepr().getPath() and + name = path.getText() + ) +} + +/** + * Holds if `assoc` is accessed on `tp` in `path`. + * + * That is, this is the case when `path` is of the form `::AssocType` or `tp::AssocType`; and `AssocType` resolves to `assoc`. + */ +predicate tpAssociatedType(TypeParam tp, AssocType assoc, Path path) { + resolvePath(path.getQualifier()) = tp and + resolvePath(path) = assoc + or + exists(PathTypeRepr typeRepr, Path traitPath, string name | + pathTypeAsTraitAssoc(path, typeRepr, traitPath, name) and + tp = resolvePath(typeRepr.getPath()) and + assoc = resolvePath(traitPath).(TraitItemNode).getAssocItem(name) + ) +} + +/** + * Holds if `bound` is a type bound for `tp` that gives rise to `assoc` being + * present for `tp`. + */ +predicate tpBoundAssociatedType( + TypeParam tp, TypeBound bound, Path path, TraitItemNode trait, AssocType assoc +) { + bound = tp.getATypeBound() and + path = bound.getTypeRepr().(PathTypeRepr).getPath() and + trait = resolvePath(path) and + assoc = getTraitAssocType(trait) +} diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll b/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll index 6b8c57812486..5c40f623f170 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll @@ -20,13 +20,12 @@ class DerefImplItemNode extends ImplItemNode { Type resolveSelfTypeAt(TypePath path) { result = resolveImplSelfTypeAt(this, path) } /** - * Holds if the target type of the dereference implemention mentions a type - * parameter at `path`. + * Holds if the target type of the dereference implementation mentions type + * parameter `tp` at `path`. */ pragma[nomagic] - predicate targetHasTypeParameterAt(TypePath path) { - this.getAssocItem("Target").(TypeAlias).getTypeRepr().(TypeMention).getTypeAt(path) instanceof - TypeParameter + predicate targetHasTypeParameterAt(TypePath path, TypeParameter tp) { + tp = this.getAssocItem("Target").(TypeAlias).getTypeRepr().(TypeMention).getTypeAt(path) } /** Gets the first type parameter of the type being implemented, if any. */ diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll index e1da3352d0cd..d96fd892c73e 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll @@ -77,32 +77,23 @@ pragma[nomagic] private predicate implHasSibling(ImplItemNode impl, Trait trait) { implSiblings(trait, impl, _) } /** - * Holds if type parameter `tp` of `trait` occurs in the function `f` with the name - * `functionName` at position `pos` and path `path`. - * - * Note that `pos` can also be the special `return` position, which is sometimes - * needed to disambiguate associated function calls like `Default::default()` - * (in this case, `tp` is the special `Self` type parameter). + * Holds if `f` is a function declared inside `trait`, and the type of `f` at + * `pos` and `path` is `traitTp`, which is a type parameter of `trait`. */ -bindingset[trait] -pragma[inline_late] +pragma[nomagic] predicate traitTypeParameterOccurrence( TraitItemNode trait, Function f, string functionName, FunctionPosition pos, TypePath path, - TypeParameter tp + TypeParameter traitTp ) { - f = trait.getASuccessor(functionName) and - tp = getAssocFunctionTypeAt(f, trait, pos, path) and - tp = trait.(TraitTypeAbstraction).getATypeParameter() + f = trait.getAssocItem(functionName) and + traitTp = getAssocFunctionTypeInclNonMethodSelfAt(f, trait, pos, path) and + traitTp = trait.(TraitTypeAbstraction).getATypeParameter() } -/** - * Holds if resolving the function `f` in `impl` with the name `functionName` - * requires inspecting the type of applied _arguments_ at position `pos` in - * order to determine whether it is the correct resolution. - */ pragma[nomagic] -predicate functionResolutionDependsOnArgument( - ImplItemNode impl, Function f, FunctionPosition pos, TypePath path, Type type +private predicate functionResolutionDependsOnArgumentCand( + ImplItemNode impl, Function f, string functionName, TypeParameter traitTp, FunctionPosition pos, + TypePath path ) { /* * As seen in the example below, when an implementation has a sibling for a @@ -129,11 +120,114 @@ predicate functionResolutionDependsOnArgument( * method. In that case we will still resolve several methods. */ - exists(TraitItemNode trait, string functionName | + exists(TraitItemNode trait | implHasSibling(impl, trait) and - traitTypeParameterOccurrence(trait, _, functionName, pos, path, _) and - type = getAssocFunctionTypeAt(f, impl, pos, path) and + traitTypeParameterOccurrence(trait, _, functionName, pos, path, traitTp) and f = impl.getASuccessor(functionName) and + not pos.isSelf() + ) +} + +private predicate functionResolutionDependsOnPositionalArgumentCand( + ImplItemNode impl, Function f, string functionName, TypeParameter traitTp +) { + exists(FunctionPosition pos | + functionResolutionDependsOnArgumentCand(impl, f, functionName, traitTp, pos, _) and + pos.isPosition() + ) +} + +pragma[nomagic] +private Type getAssocFunctionNonTypeParameterTypeAt( + ImplItemNode impl, Function f, FunctionPosition pos, TypePath path +) { + result = getAssocFunctionTypeInclNonMethodSelfAt(f, impl, pos, path) and + not result instanceof TypeParameter +} + +/** + * Holds if `f` inside `impl` has a sibling implementation inside `sibling`, where + * those two implementations agree on the instantiation of `traitTp`, which occurs + * in a positional position inside `f`. + */ +pragma[nomagic] +private predicate hasEquivalentPositionalSibling( + ImplItemNode impl, ImplItemNode sibling, Function f, TypeParameter traitTp +) { + exists(string functionName, FunctionPosition pos, TypePath path | + functionResolutionDependsOnArgumentCand(impl, f, functionName, traitTp, pos, path) and pos.isPosition() + | + exists(Function f1 | + implSiblings(_, impl, sibling) and + f1 = sibling.getASuccessor(functionName) + | + forall(TypePath path0, Type t | + t = getAssocFunctionNonTypeParameterTypeAt(impl, f, pos, path0) and + path = path0.getAPrefix() + | + t = getAssocFunctionNonTypeParameterTypeAt(sibling, f1, pos, path0) + ) and + forall(TypePath path0, Type t | + t = getAssocFunctionNonTypeParameterTypeAt(sibling, f1, pos, path0) and + path = path0.getAPrefix() + | + t = getAssocFunctionNonTypeParameterTypeAt(impl, f, pos, path0) + ) + ) + ) +} + +/** + * Holds if resolving the function `f` in `impl` requires inspecting the type + * of applied _arguments_ or possibly knowing the return type. + * + * `traitTp` is a type parameter of the trait being implemented by `impl`, and + * we need to check that the type of `f` corresponding to `traitTp` is satisfied + * at any one of the positions `pos` in which that type occurs in `f`. + * + * Type parameters that only occur in return positions are only included when + * all other type parameters that occur in a positional position are insufficient + * to disambiguate. + * + * Example: + * + * ```rust + * trait Trait1 { + * fn f(self, x: T1) -> T1; + * } + * + * impl Trait1 for i32 { + * fn f(self, x: i32) -> i32 { 0 } // f1 + * } + * + * impl Trait1 for i32 { + * fn f(self, x: i64) -> i64 { 0 } // f2 + * } + * ``` + * + * The type for `T1` above occurs in both a positional position and a return position + * in `f`, so both may be used to disambiguate between `f1` and `f2`. That is, `f(0i32)` + * is sufficient to resolve to `f1`, and so is `let y: i64 = f(Default::default())`. + */ +pragma[nomagic] +predicate functionResolutionDependsOnArgument( + ImplItemNode impl, Function f, TypeParameter traitTp, FunctionPosition pos +) { + exists(string functionName | + functionResolutionDependsOnArgumentCand(impl, f, functionName, traitTp, pos, _) + | + if functionResolutionDependsOnPositionalArgumentCand(impl, f, functionName, traitTp) + then any() + else + // `traitTp` only occurs in return position; check that it is indeed needed for disambiguation + exists(ImplItemNode sibling | + implSiblings(_, impl, sibling) and + forall(TypeParameter otherTraitTp | + functionResolutionDependsOnPositionalArgumentCand(impl, f, functionName, otherTraitTp) + | + hasEquivalentPositionalSibling(impl, sibling, f, otherTraitTp) + ) + ) ) } diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll index 02c0b45c8e9b..74d8385bdf20 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll @@ -82,7 +82,9 @@ private newtype TAssocFunctionType = // through `i`. This ensures that `parent` is either a supertrait of `i` or // `i` in an `impl` block implementing `parent`. (parent = i or BaseTypes::rootTypesSatisfaction(_, TTrait(parent), i, _, _)) and - exists(pos.getTypeMention(f)) + // We always include the `self` position, even for non-methods, where it is used + // to match type qualifiers against the `impl` or trait type, such as in `Vec::new`. + (exists(pos.getTypeMention(f)) or pos.isSelf()) } bindingset[abs, constraint, tp] @@ -116,6 +118,22 @@ Type getAssocFunctionTypeAt(Function f, ImplOrTraitItemNode i, FunctionPosition ) } +/** + * Same as `getAssocFunctionTypeAt`, but also includes types at the `self` position + * for non-methods. + */ +pragma[nomagic] +Type getAssocFunctionTypeInclNonMethodSelfAt( + Function f, ImplOrTraitItemNode i, FunctionPosition pos, TypePath path +) { + result = getAssocFunctionTypeAt(f, i, pos, path) + or + f = i.getASuccessor(_) and + not f.hasSelfParam() and + pos.isSelf() and + result = resolveImplOrTraitType(i, path) +} + /** * The type of an associated function at a given position, when its implicit * `Self` type parameter is specialized to a given trait or `impl` block. @@ -174,7 +192,7 @@ class AssocFunctionType extends MkAssocFunctionType { Type getTypeAt(TypePath path) { exists(Function f, FunctionPosition pos, ImplOrTraitItemNode i, Type t | this.appliesTo(f, i, pos) and - t = getAssocFunctionTypeAt(f, i, pos, path) + t = getAssocFunctionTypeInclNonMethodSelfAt(f, i, pos, path) | not t instanceof SelfTypeParameter and result = t @@ -183,16 +201,19 @@ class AssocFunctionType extends MkAssocFunctionType { ) } - private TypeMention getTypeMention() { - exists(Function f, FunctionPosition pos | - this.appliesTo(f, _, pos) and + private AstNode getIdentifyingNode() { + exists(Function f, ImplOrTraitItemNode i, FunctionPosition pos | this.appliesTo(f, i, pos) | result = pos.getTypeMention(f) + or + pos.isSelf() and + not f.hasSelfParam() and + result = [i.(Impl).getSelfTy().(AstNode), i.(Trait).getName()] ) } - string toString() { result = this.getTypeMention().toString() } + string toString() { result = this.getIdentifyingNode().toString() } - Location getLocation() { result = this.getTypeMention().getLocation() } + Location getLocation() { result = this.getIdentifyingNode().getLocation() } } pragma[nomagic] @@ -294,10 +315,15 @@ module ArgIsInstantiationOf< */ signature module ArgsAreInstantiationsOfInputSig { /** - * Holds if types need to be matched against the type `t` at position `pos` of - * `f` inside `i`. + * Holds if `f` inside `i` needs to have the type corresponding to type parameter + * `tp` checked. + * + * If `i` is an inherent implementation, `tp` is a type parameter of the type being + * implemented, otherwise `tp` is a type parameter of the trait (being implemented). + * + * `pos` is one of the positions in `f` in which the relevant type occours. */ - predicate toCheck(ImplOrTraitItemNode i, Function f, FunctionPosition pos, AssocFunctionType t); + predicate toCheck(ImplOrTraitItemNode i, Function f, TypeParameter tp, FunctionPosition pos); /** A call whose argument types are to be checked. */ class Call { @@ -318,23 +344,27 @@ signature module ArgsAreInstantiationsOfInputSig { */ module ArgsAreInstantiationsOf { pragma[nomagic] - private predicate toCheckRanked(ImplOrTraitItemNode i, Function f, FunctionPosition pos, int rnk) { - Input::toCheck(i, f, pos, _) and - pos = - rank[rnk + 1](FunctionPosition pos0, int j | - Input::toCheck(i, f, pos0, _) and - ( - j = pos0.asPosition() - or - pos0.isSelf() and j = -1 - or - pos0.isReturn() and j = -2 - ) + private predicate toCheckRanked( + ImplOrTraitItemNode i, Function f, TypeParameter tp, FunctionPosition pos, int rnk + ) { + Input::toCheck(i, f, tp, pos) and + tp = + rank[rnk + 1](TypeParameter tp0, int j | + Input::toCheck(i, f, tp0, _) and + j = getTypeParameterId(tp0) | - pos0 order by j + tp0 order by j ) } + pragma[nomagic] + private predicate toCheck( + ImplOrTraitItemNode i, Function f, TypeParameter tp, FunctionPosition pos, AssocFunctionType t + ) { + Input::toCheck(i, f, tp, pos) and + t.appliesTo(f, i, pos) + } + private newtype TCallAndPos = MkCallAndPos(Input::Call call, FunctionPosition pos) { exists(call.getArgType(pos, _)) } @@ -356,26 +386,26 @@ module ArgsAreInstantiationsOf { string toString() { result = call.toString() + " [arg " + pos + "]" } } + pragma[nomagic] + private predicate potentialInstantiationOf0( + CallAndPos cp, Input::Call call, TypeParameter tp, FunctionPosition pos, Function f, + TypeAbstraction abs, AssocFunctionType constraint + ) { + cp = MkCallAndPos(call, pragma[only_bind_into](pos)) and + call.hasTargetCand(abs, f) and + toCheck(abs, f, tp, pragma[only_bind_into](pos), constraint) + } + private module ArgIsInstantiationOfToIndexInput implements IsInstantiationOfInputSig { - pragma[nomagic] - private predicate potentialInstantiationOf0( - CallAndPos cp, Input::Call call, FunctionPosition pos, int rnk, Function f, - TypeAbstraction abs, AssocFunctionType constraint - ) { - cp = MkCallAndPos(call, pragma[only_bind_into](pos)) and - call.hasTargetCand(abs, f) and - toCheckRanked(abs, f, pragma[only_bind_into](pos), rnk) and - Input::toCheck(abs, f, pragma[only_bind_into](pos), constraint) - } - pragma[nomagic] predicate potentialInstantiationOf( CallAndPos cp, TypeAbstraction abs, AssocFunctionType constraint ) { - exists(Input::Call call, int rnk, Function f | - potentialInstantiationOf0(cp, call, _, rnk, f, abs, constraint) + exists(Input::Call call, TypeParameter tp, FunctionPosition pos, int rnk, Function f | + potentialInstantiationOf0(cp, call, tp, pos, f, abs, constraint) and + toCheckRanked(abs, f, tp, pos, rnk) | rnk = 0 or @@ -383,54 +413,83 @@ module ArgsAreInstantiationsOf { ) } - predicate relevantConstraint(AssocFunctionType constraint) { - Input::toCheck(_, _, _, constraint) - } + predicate relevantConstraint(AssocFunctionType constraint) { toCheck(_, _, _, _, constraint) } } private module ArgIsInstantiationOfToIndex = ArgIsInstantiationOf; + pragma[nomagic] + private predicate argIsInstantiationOf( + Input::Call call, FunctionPosition pos, ImplOrTraitItemNode i, Function f, int rnk + ) { + ArgIsInstantiationOfToIndex::argIsInstantiationOf(MkCallAndPos(call, pos), i, _) and + toCheckRanked(i, f, _, pos, rnk) + } + pragma[nomagic] private predicate argsAreInstantiationsOfToIndex( Input::Call call, ImplOrTraitItemNode i, Function f, int rnk ) { exists(FunctionPosition pos | - ArgIsInstantiationOfToIndex::argIsInstantiationOf(MkCallAndPos(call, pos), i, _) and - call.hasTargetCand(i, f) and - toCheckRanked(i, f, pos, rnk) + argIsInstantiationOf(call, pos, i, f, rnk) and + call.hasTargetCand(i, f) + | + rnk = 0 + or + argsAreInstantiationsOfToIndex(call, i, f, rnk - 1) ) } /** * Holds if all arguments of `call` have types that are instantiations of the * types of the corresponding parameters of `f` inside `i`. + * + * TODO: Check type parameter constraints as well. */ pragma[nomagic] predicate argsAreInstantiationsOf(Input::Call call, ImplOrTraitItemNode i, Function f) { exists(int rnk | argsAreInstantiationsOfToIndex(call, i, f, rnk) and - rnk = max(int r | toCheckRanked(i, f, _, r)) + rnk = max(int r | toCheckRanked(i, f, _, _, r)) ) } + private module ArgsAreNotInstantiationOfInput implements + IsInstantiationOfInputSig + { + pragma[nomagic] + predicate potentialInstantiationOf( + CallAndPos cp, TypeAbstraction abs, AssocFunctionType constraint + ) { + potentialInstantiationOf0(cp, _, _, _, _, abs, constraint) + } + + predicate relevantConstraint(AssocFunctionType constraint) { toCheck(_, _, _, _, constraint) } + } + + private module ArgsAreNotInstantiationOf = + ArgIsInstantiationOf; + pragma[nomagic] private predicate argsAreNotInstantiationsOf0( Input::Call call, FunctionPosition pos, ImplOrTraitItemNode i ) { - ArgIsInstantiationOfToIndex::argIsNotInstantiationOf(MkCallAndPos(call, pos), i, _, _) + ArgsAreNotInstantiationOf::argIsNotInstantiationOf(MkCallAndPos(call, pos), i, _, _) } /** * Holds if _some_ argument of `call` has a type that is not an instantiation of the * type of the corresponding parameter of `f` inside `i`. + * + * TODO: Check type parameter constraints as well. */ pragma[nomagic] predicate argsAreNotInstantiationsOf(Input::Call call, ImplOrTraitItemNode i, Function f) { exists(FunctionPosition pos | argsAreNotInstantiationsOf0(call, pos, i) and call.hasTargetCand(i, f) and - Input::toCheck(i, f, pos, _) + Input::toCheck(i, f, _, pos) ) } } diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll b/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll index bf25d96cfa4c..05b6557522af 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll @@ -8,11 +8,7 @@ private import codeql.rust.elements.internal.generated.Raw private import codeql.rust.elements.internal.generated.Synth private import codeql.rust.frameworks.stdlib.Stdlib private import codeql.rust.frameworks.stdlib.Builtins as Builtins - -/** Gets a type alias of `trait` or of a supertrait of `trait`. */ -private TypeAlias getTraitTypeAlias(Trait trait) { - result = trait.getSupertrait*().getAssocItemList().getAnAssocItem() -} +private import AssociatedType /** * Holds if a dyn trait type for the trait `trait` should have a type parameter @@ -31,7 +27,7 @@ private TypeAlias getTraitTypeAlias(Trait trait) { */ private predicate dynTraitTypeParameter(Trait trait, AstNode n) { trait = any(DynTraitTypeRepr dt).getTrait() and - n = [trait.getGenericParamList().getATypeParam().(AstNode), getTraitTypeAlias(trait)] + n = [trait.getGenericParamList().getATypeParam().(AstNode), getTraitAssocType(trait)] } cached @@ -43,8 +39,11 @@ newtype TType = TNeverType() or TUnknownType() or TTypeParamTypeParameter(TypeParam t) or - TAssociatedTypeTypeParameter(Trait trait, TypeAlias typeAlias) { - getTraitTypeAlias(trait) = typeAlias + TAssociatedTypeTypeParameter(Trait trait, AssocType typeAlias) { + getTraitAssocType(trait) = typeAlias + } or + TTypeParamAssociatedTypeTypeParameter(TypeParam tp, AssocType assoc) { + tpAssociatedType(tp, assoc, _) } or TDynTraitTypeParameter(Trait trait, AstNode n) { dynTraitTypeParameter(trait, n) } or TImplTraitTypeParameter(ImplTraitTypeRepr implTrait, TypeParam tp) { @@ -75,7 +74,7 @@ abstract class Type extends TType { abstract TypeParameter getPositionalTypeParameter(int i); /** Gets the default type for the `i`th type parameter, if any. */ - TypeMention getTypeParameterDefault(int i) { none() } + TypeRepr getTypeParameterDefault(int i) { none() } /** * Gets a type parameter of this type. @@ -129,7 +128,7 @@ class DataType extends Type, TDataType { result = TTypeParamTypeParameter(typeItem.getGenericParamList().getTypeParam(i)) } - override TypeMention getTypeParameterDefault(int i) { + override TypeRepr getTypeParameterDefault(int i) { result = typeItem.getGenericParamList().getTypeParam(i).getDefaultType() } @@ -189,7 +188,7 @@ class TraitType extends Type, TTrait { result.(SelfTypeParameter).getTrait() = trait } - override TypeMention getTypeParameterDefault(int i) { + override TypeRepr getTypeParameterDefault(int i) { result = trait.getGenericParamList().getTypeParam(i).getDefaultType() } @@ -464,6 +463,52 @@ class AssociatedTypeTypeParameter extends TypeParameter, TAssociatedTypeTypePara override Location getLocation() { result = typeAlias.getLocation() } } +/** + * A type parameter corresponding to an associated type accessed on a type + * parameter, for example `T::AssociatedType` where `T` is a type parameter. + * + * These type parameters are created when a function signature accesses an + * associated type on a type parameter. For example, in + * ```rust + * fn foo(arg: T::Assoc) { } + * ``` + * we create a `TypeParamAssociatedTypeTypeParameter` for `Assoc` on `T` and the + * mention `T::Assoc` resolves to this type parameter. If denoting the type + * parameter by `T_Assoc` then the above function is treated as if it was + * ```rust + * fn foo, T_Assoc>(arg: T_Assoc) { } + * ``` + */ +class TypeParamAssociatedTypeTypeParameter extends TypeParameter, + TTypeParamAssociatedTypeTypeParameter +{ + private TypeParam typeParam; + private AssocType assoc; + + TypeParamAssociatedTypeTypeParameter() { + this = TTypeParamAssociatedTypeTypeParameter(typeParam, assoc) + } + + /** Gets the type parameter that this associated type is accessed on. */ + TypeParam getTypeParam() { result = typeParam } + + /** Gets the associated type alias. */ + AssocType getTypeAlias() { result = assoc } + + /** Gets a path that accesses this type parameter. */ + Path getAPath() { tpAssociatedType(typeParam, assoc, result) } + + override ItemNode getDeclaringItem() { result.getTypeParam(_) = typeParam } + + override string toString() { + result = + typeParam.toString() + "::" + assoc.getName().getText() + "[" + + assoc.getTrait().getName().getText() + "]" + } + + override Location getLocation() { result = typeParam.getLocation() } +} + /** Gets the associated type type-parameter corresponding directly to `typeAlias`. */ AssociatedTypeTypeParameter getAssociatedTypeTypeParameter(TypeAlias typeAlias) { result.isDirect() and result.getTypeAlias() = typeAlias diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index b051d60d8b4d..a4812ad08786 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -30,7 +30,7 @@ private newtype TTypeArgumentPosition = } or TTypeParamTypeArgumentPosition(TypeParam tp) -private module Input1 implements InputSig1 { +private module Input implements InputSig1, InputSig2 { private import Type as T private import codeql.rust.elements.internal.generated.Raw private import codeql.rust.elements.internal.generated.Synth @@ -108,6 +108,10 @@ private module Input1 implements InputSig1 { id2 = idOfTypeParameterAstNode(tp0.(AssociatedTypeTypeParameter).getTypeAlias()) or kind = 4 and + id1 = idOfTypeParameterAstNode(tp0.(TypeParamAssociatedTypeTypeParameter).getTypeParam()) and + id2 = idOfTypeParameterAstNode(tp0.(TypeParamAssociatedTypeTypeParameter).getTypeAlias()) + or + kind = 5 and id1 = 0 and exists(AstNode node | id2 = idOfTypeParameterAstNode(node) | node = tp0.(TypeParamTypeParameter).getTypeParam() or @@ -120,22 +124,8 @@ private module Input1 implements InputSig1 { } int getTypePathLimit() { result = 10 } -} - -private import Input1 - -private module M1 = Make1; - -import M1 - -predicate getTypePathLimit = Input1::getTypePathLimit/0; - -class TypePath = M1::TypePath; - -module TypePath = M1::TypePath; -private module Input2 implements InputSig2 { - TypeMention getABaseTypeMention(Type t) { none() } + PreTypeMention getABaseTypeMention(Type t) { none() } Type getATypeParameterConstraint(TypeParameter tp, TypePath path) { exists(TypeMention tm | result = tm.getTypeAt(path) | @@ -158,7 +148,7 @@ private module Input2 implements InputSig2 { * inference module for more information. */ predicate conditionSatisfiesConstraint( - TypeAbstraction abs, TypeMention condition, TypeMention constraint, boolean transitive + TypeAbstraction abs, PreTypeMention condition, PreTypeMention constraint, boolean transitive ) { // `impl` blocks implementing traits transitive = false and @@ -208,7 +198,21 @@ private module Input2 implements InputSig2 { } } -private module M2 = Make2; +private import Input + +private module M1 = Make1; + +import M1 + +predicate getTypePathLimit = Input::getTypePathLimit/0; + +predicate getTypeParameterId = Input::getTypeParameterId/1; + +class TypePath = M1::TypePath; + +module TypePath = M1::TypePath; + +private module M2 = Make2; import M2 @@ -270,13 +274,21 @@ private class FunctionDeclaration extends Function { this = i.asSome().getAnAssocItem() } + TypeParam getTypeParam(ImplOrTraitItemNodeOption i) { + i = parent and + result = [this.getGenericParamList().getATypeParam(), i.asSome().getTypeParam(_)] + } + TypeParameter getTypeParameter(ImplOrTraitItemNodeOption i, TypeParameterPosition ppos) { + typeParamMatchPosition(this.getTypeParam(i), result, ppos) + or + // For every `TypeParam` of this function, any associated types accessed on + // the type parameter are also type parameters. + ppos.isImplicit() and + result.(TypeParamAssociatedTypeTypeParameter).getTypeParam() = this.getTypeParam(i) + or i = parent and ( - typeParamMatchPosition(this.getGenericParamList().getATypeParam(), result, ppos) - or - typeParamMatchPosition(i.asSome().getTypeParam(_), result, ppos) - or ppos.isImplicit() and result = TSelfTypeParameter(i.asSome()) or ppos.isImplicit() and result.(AssociatedTypeTypeParameter).getTrait() = i.asSome() @@ -286,11 +298,13 @@ private class FunctionDeclaration extends Function { } pragma[nomagic] - Type getParameterType(ImplOrTraitItemNodeOption i, FunctionPosition pos, TypePath path) { + Type getParameterTypeInclNonMethodSelf( + ImplOrTraitItemNodeOption i, FunctionPosition pos, TypePath path + ) { i = parent and ( not pos.isReturn() and - result = getAssocFunctionTypeAt(this, i.asSome(), pos, path) + result = getAssocFunctionTypeInclNonMethodSelfAt(this, i.asSome(), pos, path) or i.isNone() and result = this.getParam(pos.asPosition()).getTypeRepr().(TypeMention).getTypeAt(path) @@ -322,13 +336,6 @@ private class FunctionDeclaration extends Function { else result = this.resolveRetType(i, path) } - Type getDeclaredType(ImplOrTraitItemNodeOption i, FunctionPosition pos, TypePath path) { - result = this.getParameterType(i, pos, path) - or - pos.isReturn() and - result = this.getReturnType(i, path) - } - string toStringExt(ImplOrTraitItemNode i) { i = parent.asSome() and if this = i.getAnAssocItem() @@ -1058,14 +1065,29 @@ private Path getCallExprPathQualifier(CallExpr ce) { * Gets the type qualifier of function call `ce`, if any. * * For example, the type qualifier of `Foo::::default()` is `Foo::`, - * but only when `Foo` is not a trait. + * but only when `Foo` is not a trait. The type qualifier of `::baz()` + * is `Foo`. + * + * `isDefaultTypeArg` indicates whether the returned type is a default type + * argument, for example in `Vec::new()` the default type for the type parameter + * `A` of `Vec` is `Global`. */ pragma[nomagic] -private Type getCallExprTypeQualifier(CallExpr ce, TypePath path) { - exists(TypeMention tm | - tm = getCallExprPathQualifier(ce) and +private Type getCallExprTypeQualifier(CallExpr ce, TypePath path, boolean isDefaultTypeArg) { + exists(Path p, TypeMention tm | + p = getCallExprPathQualifier(ce) and + tm = [p.(AstNode), p.getSegment().getTypeRepr()] + | result = tm.getTypeAt(path) and - not resolvePath(tm) instanceof Trait + not resolvePath(tm) instanceof Trait and + isDefaultTypeArg = false + or + exists(TypeParameter tp, TypePath suffix | + result = + tm.(NonAliasPathTypeMention).getDefaultTypeForTypeParameterInNonAnnotationAt(tp, suffix) and + path = TypePath::cons(tp, suffix) and + isDefaultTypeArg = true + ) ) } @@ -1148,7 +1170,7 @@ private module ContextTyping { ) and not ( tp instanceof TSelfTypeParameter and - exists(getCallExprTypeQualifier(this, _)) + exists(getCallExprTypeQualifier(this, _, _)) ) ) } @@ -1172,15 +1194,10 @@ private module ContextTyping { */ module CheckContextTyping { pragma[nomagic] - private Type inferCallTypeFromContextCand(AstNode n, TypePath path, TypePath prefix) { + private Type inferCallTypeFromContextCand(AstNode n, TypePath prefix, TypePath path) { result = inferCallType(n, false, path) and hasUnknownType(n) and - prefix = path - or - exists(TypePath mid | - result = inferCallTypeFromContextCand(n, path, mid) and - mid.isSnoc(prefix, _) - ) + prefix = path.getAPrefix() } pragma[nomagic] @@ -1188,7 +1205,7 @@ private module ContextTyping { result = inferCallType(n, true, path) or exists(TypePath prefix | - result = inferCallTypeFromContextCand(n, path, prefix) and + result = inferCallTypeFromContextCand(n, prefix, path) and hasUnknownTypeAt(n, prefix) ) } @@ -1285,13 +1302,6 @@ private class BorrowKind extends TBorrowKind { } } -// for now, we do not handle ambiguous targets when one of the types is itself -// a constrained type parameter; we should be checking the constraints in this case -private predicate typeCanBeUsedForDisambiguation(Type t) { - not t instanceof TypeParameter or - t.(TypeParamTypeParameter).getTypeParam() = any(TypeParam tp | not tp.hasTypeBound()) -} - /** * Provides logic for resolving calls to methods. * @@ -1422,9 +1432,7 @@ private module MethodResolution { private module MethodTraitIsVisible = TraitIsVisible; - private predicate methodCallVisibleTraitCandidate(MethodCall mc, Trait trait) { - MethodTraitIsVisible::traitIsVisible(mc, trait) - } + private predicate methodCallVisibleTraitCandidate = MethodTraitIsVisible::traitIsVisible/2; bindingset[mc, impl] pragma[inline_late] @@ -1949,9 +1957,23 @@ private module MethodResolution { forall(ItemNode i | i = CallExprImpl::getResolvedFunction(this) | i instanceof Method) } + bindingset[this, f] + pragma[inline_late] + private predicate hasTypeQualifiedCandidateFilter(Function f, ImplItemNode impl) { + f = impl.getAnAssocItem() + or + exists(TraitItemNode trait | + f = trait.getAnAssocItem() and + methodCallVisibleTraitCandidate(this, trait) and + impl.resolveTraitTy() = trait + ) + } + /** * Holds if this call has a type qualifier, and we are able to resolve, - * using path resolution, the method to a member of `impl`. + * using path resolution, the method to a member of `impl` or the trait + * being implemented by `impl` (when this call os of the kind + * `::f()`). * * When this is the case, we still want to check that the type qualifier * is an instance of the type being implemented, which is done in @@ -1959,8 +1981,11 @@ private module MethodResolution { */ pragma[nomagic] predicate hasTypeQualifiedCandidate(ImplItemNode impl) { - exists(getCallExprTypeQualifier(this, _)) and - CallExprImpl::getResolvedFunction(this) = impl.getASuccessor(_) + exists(Function f | + exists(getCallExprTypeQualifier(this, _, _)) and + f = CallExprImpl::getResolvedFunction(this) and + this.hasTypeQualifiedCandidateFilter(f, impl) + ) } pragma[nomagic] @@ -1978,7 +2003,13 @@ private module MethodResolution { // needed for `TypeQualifierIsInstantiationOfImplSelfInput` Type getTypeAt(TypePath path) { - result = substituteLookupTraits(getCallExprTypeQualifier(this, path)) + result = substituteLookupTraits(getCallExprTypeQualifier(this, path, _)) + } + + pragma[nomagic] + predicate hasNoInherentTarget() { + // `_` is fine below, because auto-deref/borrow is not supported + MkMethodCallCand(this, _, _).(MethodCallCand).hasNoInherentTarget() } override predicate supportsAutoDerefAndBorrow() { none() } @@ -2109,6 +2140,8 @@ private module MethodResolution { */ pragma[nomagic] predicate hasNoInherentTarget() { + mc_.hasTrait() + or exists(TypePath strippedTypePath, Type strippedType, string name, int arity | this.hasSignature(_, strippedTypePath, strippedType, name, arity) and forall(Impl i | @@ -2121,7 +2154,7 @@ private module MethodResolution { } pragma[nomagic] - private predicate typeQualifierIsInstantiationOf(ImplOrTraitItemNode i) { + private predicate typeQualifierIsInstantiationOf(ImplItemNode i) { TypeQualifierIsInstantiationOfImplSelf::isInstantiationOf(mc_, i, _) } @@ -2147,7 +2180,7 @@ private module MethodResolution { pragma[nomagic] Method resolveCallTarget(ImplOrTraitItemNode i) { result = this.resolveCallTargetCand(i) and - not FunctionOverloading::functionResolutionDependsOnArgument(i, _, _, _, _) + not FunctionOverloading::functionResolutionDependsOnArgument(i, result, _, _) or MethodArgsAreInstantiationsOf::argsAreInstantiationsOf(this, i, result) } @@ -2345,7 +2378,7 @@ private module MethodResolution { then // inherent methods take precedence over trait methods, so only allow // trait methods when there are no matching inherent methods - MkMethodCallCand(ce, _, _).(MethodCallCand).hasNoInherentTarget() + ce.hasNoInherentTarget() else any() } @@ -2381,16 +2414,15 @@ private module MethodResolution { * types of parameters, when needed to disambiguate the call. */ private module MethodArgsAreInstantiationsOfInput implements ArgsAreInstantiationsOfInputSig { - predicate toCheck(ImplOrTraitItemNode i, Function f, FunctionPosition pos, AssocFunctionType t) { - exists(TypePath path, Type t0 | - FunctionOverloading::functionResolutionDependsOnArgument(i, f, pos, path, t0) and - t.appliesTo(f, i, pos) and - typeCanBeUsedForDisambiguation(t0) - ) + predicate toCheck(ImplOrTraitItemNode i, Function f, TypeParameter traitTp, FunctionPosition pos) { + FunctionOverloading::functionResolutionDependsOnArgument(i, f, traitTp, pos) } class Call extends MethodCallCand { Type getArgType(FunctionPosition pos, TypePath path) { + result = mc_.getArgumentTypeAt(pos.asArgumentPosition(), path) + or + pos.isReturn() and result = inferType(mc_.getNodeAt(pos), path) } @@ -2435,7 +2467,10 @@ private module MethodCallMatchingInput implements MatchingWithEnvironmentInputSi } Type getDeclaredType(DeclarationPosition dpos, TypePath path) { - result = m.getDeclaredType(someParent, dpos, path) + result = m.getParameterTypeInclNonMethodSelf(someParent, dpos, path) + or + dpos.isReturn() and + result = m.getReturnType(someParent, path) } string toString() { result = m.toStringExt(parent) } @@ -2454,10 +2489,10 @@ private module MethodCallMatchingInput implements MatchingWithEnvironmentInputSi additional predicate decodeDerefChainBorrow( string derefChainBorrow, DerefChain derefChain, BorrowKind borrow ) { - exists(string regexp | - regexp = "^(.*);(.*)$" and - derefChain = derefChainBorrow.regexpCapture(regexp, 1) and - borrow.toString() = derefChainBorrow.regexpCapture(regexp, 2) + exists(int i | + i = derefChainBorrow.indexOf(";") and + derefChain = derefChainBorrow.prefix(i) and + borrow.toString() = derefChainBorrow.suffix(i + 1) ) } @@ -2581,27 +2616,30 @@ private Type inferMethodCallTypeNonSelf(AstNode n, boolean isReturn, TypePath pa } /** - * Gets the type of `n` at `path` after applying `derefChain` and `borrow`, - * where `n` is the `self` argument of a method call. + * Gets the type of `n` at `path` after applying `derefChain`, where `n` is the + * `self` argument of a method call. * * The predicate recursively pops the head of `derefChain` until it becomes * empty, at which point the inferred type can be applied back to `n`. */ pragma[nomagic] -private Type inferMethodCallTypeSelf( - AstNode n, DerefChain derefChain, BorrowKind borrow, TypePath path -) { - exists(MethodCallMatchingInput::AccessPosition apos, string derefChainBorrow | - result = inferMethodCallType0(_, apos, n, derefChainBorrow, path) and +private Type inferMethodCallTypeSelf(AstNode n, DerefChain derefChain, TypePath path) { + exists( + MethodCallMatchingInput::AccessPosition apos, string derefChainBorrow, BorrowKind borrow, + TypePath path0 + | + result = inferMethodCallType0(_, apos, n, derefChainBorrow, path0) and apos.isSelf() and MethodCallMatchingInput::decodeDerefChainBorrow(derefChainBorrow, derefChain, borrow) - ) - or - // adjust for implicit borrow - exists(TypePath path0, BorrowKind borrow0 | - result = inferMethodCallTypeSelf(n, derefChain, borrow0, path0) and - path0.isCons(borrow0.getRefType().getPositionalTypeParameter(0), path) and - borrow.isNoBorrow() + | + borrow.isNoBorrow() and + path = path0 + or + // adjust for implicit borrow + exists(TypePath prefix | + prefix = TypePath::singleton(borrow.getRefType().getPositionalTypeParameter(0)) and + path0 = prefix.appendInverse(path) + ) ) or // adjust for implicit deref @@ -2609,9 +2647,8 @@ private Type inferMethodCallTypeSelf( DerefChain derefChain0, Type t0, TypePath path0, DerefImplItemNode impl, Type selfParamType, TypePath selfPath | - t0 = inferMethodCallTypeSelf(n, derefChain0, borrow, path0) and + t0 = inferMethodCallTypeSelf(n, derefChain0, path0) and derefChain0.isCons(impl, derefChain) and - borrow.isNoBorrow() and selfParamType = impl.resolveSelfTypeAt(selfPath) | result = selfParamType and @@ -2619,7 +2656,7 @@ private Type inferMethodCallTypeSelf( not result instanceof TypeParameter or exists(TypePath pathToTypeParam, TypePath suffix | - impl.targetHasTypeParameterAt(pathToTypeParam) and + impl.targetHasTypeParameterAt(pathToTypeParam, selfParamType) and path0 = pathToTypeParam.appendInverse(suffix) and result = t0 and path = selfPath.append(suffix) @@ -2630,7 +2667,7 @@ private Type inferMethodCallTypeSelf( private Type inferMethodCallTypePreCheck(AstNode n, boolean isReturn, TypePath path) { result = inferMethodCallTypeNonSelf(n, isReturn, path) or - result = inferMethodCallTypeSelf(n, DerefChain::nil(), TNoBorrowKind(), path) and + result = inferMethodCallTypeSelf(n, DerefChain::nil(), path) and isReturn = false } @@ -2646,39 +2683,93 @@ private predicate inferMethodCallType = * "calls" to tuple variants and tuple structs. */ private module NonMethodResolution { + pragma[nomagic] + private predicate traitFunctionResolutionDependsOnArgument0( + TraitItemNode trait, NonMethodFunction traitFunction, FunctionPosition pos, ImplItemNode impl, + NonMethodFunction implFunction, TypePath path, TypeParameter traitTp + ) { + implFunction = impl.getAnAssocItem() and + implFunction.implements(traitFunction) and + FunctionOverloading::traitTypeParameterOccurrence(trait, traitFunction, _, pos, path, traitTp) and + ( + traitTp = TSelfTypeParameter(trait) + or + FunctionOverloading::functionResolutionDependsOnArgument(impl, implFunction, traitTp, pos) + ) + } + /** - * Holds if the associated function `implFunction` at `impl` implements - * `traitFunction`, which belongs to `trait`, and resolving the function - * `implFunction` requires inspecting the type at position `pos` in order - * to determine whether it is the correct resolution. + * Holds if resolving the function `implFunction` in `impl` requires inspecting + * the type of applied _arguments_ or possibly knowing the return type. * - * `type` is the type at `pos` of `implFunction` which mathces a type parameter of - * `traitFunction` at `pos`. + * `traitTp` is a type parameter of the trait being implemented by `impl`, and + * we need to check that the type of `f` corresponding to `traitTp` is satisfied + * at any one of the positions `pos` in which that type occurs in `f` (at `path`). + * + * As for method resolution, we always check the type being implemented (corresponding + * to `traitTp` being the special `Self` type parameter). */ pragma[nomagic] - private predicate traitFunctionDependsOnPos( - TraitItemNode trait, NonMethodFunction traitFunction, FunctionPosition pos, Type type, - ImplItemNode impl, NonMethodFunction implFunction + private predicate traitFunctionResolutionDependsOnArgument( + TraitItemNode trait, NonMethodFunction traitFunction, FunctionPosition pos, ImplItemNode impl, + NonMethodFunction implFunction, TypePath path, TypeParameter traitTp ) { - exists(TypePath path | - type = getAssocFunctionTypeAt(implFunction, impl, pos, path) and - implFunction.implements(traitFunction) and - FunctionOverloading::traitTypeParameterOccurrence(trait, traitFunction, _, pos, path, _) + traitFunctionResolutionDependsOnArgument0(trait, traitFunction, pos, impl, implFunction, path, + traitTp) and + // Exclude functions where we cannot resolve all relevant type mentions; this allows + // for blanket implementations to be applied in those cases + forall(TypeParameter traitTp0 | + traitFunctionResolutionDependsOnArgument0(trait, traitFunction, _, impl, implFunction, _, + traitTp0) | - if pos.isReturn() - then - // We only check that the context of the call provides relevant type information - // when no argument can - not exists(FunctionPosition pos0 | - FunctionOverloading::traitTypeParameterOccurrence(trait, traitFunction, _, pos0, _, _) and - not pos0.isReturn() - or - FunctionOverloading::functionResolutionDependsOnArgument(impl, implFunction, pos0, _, _) - ) - else any() + exists(FunctionPosition pos0, TypePath path0 | + traitFunctionResolutionDependsOnArgument0(trait, traitFunction, pos0, impl, implFunction, + path0, traitTp0) and + exists(getAssocFunctionTypeInclNonMethodSelfAt(implFunction, impl, pos0, path0)) + ) ) } + /** + * Holds if `f` inside `i` either implements trait function `traitFunction` inside `trait` + * or is equal to `traitFunction`, and the type of `f` at `pos` and `path` is `t`, which + * corresponds to the `Self` type parameter of `trait`. + */ + pragma[nomagic] + private predicate traitFunctionHasSelfType( + TraitItemNode trait, NonMethodFunction traitFunction, FunctionPosition pos, TypePath path, + Type t, ImplOrTraitItemNode i, NonMethodFunction f + ) { + exists(ImplItemNode impl, NonMethodFunction implFunction, AssocFunctionType aft | + traitFunctionResolutionDependsOnArgument(trait, traitFunction, pos, impl, implFunction, path, + TSelfTypeParameter(trait)) and + aft.appliesTo(f, i, pos) and + t = aft.getTypeAt(path) + | + i = trait and + f = traitFunction + or + i = impl and + f = implFunction and + not BlanketImplementation::isBlanketLike(i, _, _) + ) + } + + pragma[nomagic] + private predicate functionResolutionDependsOnArgument( + ImplItemNode impl, NonMethodFunction f, FunctionPosition pos, TypeParameter tp + ) { + traitFunctionResolutionDependsOnArgument(_, _, pos, impl, f, _, tp) + or + // For inherent implementations of generic types, we also need to check the type being + // implemented. We arbitrarily choose the first type parameter of the type being implemented + // to represent this case. + f = impl.getAnAssocItem() and + not impl.(Impl).hasTrait() and + tp = TTypeParamTypeParameter(impl.resolveSelfTy().getTypeParam(0)) and + pos.isSelf() + } + pragma[nomagic] private predicate functionInfoBlanketLikeRelevantPos( NonMethodFunction f, string name, int arity, ImplItemNode impl, Trait trait, @@ -2740,6 +2831,16 @@ private module NonMethodResolution { not result.(Function).hasSelfParam() } + /** + * Gets the associated function that this function call resolves to using path + * resolution, if any. + */ + pragma[nomagic] + NonMethodFunction getPathResolutionResolved(ImplOrTraitItemNode i) { + result = this.getPathResolutionResolved() and + result = i.getAnAssocItem() + } + /** * Gets the blanket function that this call may resolve to, if any. */ @@ -2758,14 +2859,6 @@ private module NonMethodResolution { /** Holds if this call targets a trait. */ predicate hasTrait() { exists(this.getTrait()) } - pragma[nomagic] - NonMethodFunction resolveCallTargetNonBlanketCand(ImplItemNode i) { - not this.hasTrait() and - result = this.getPathResolutionResolved() and - result = i.getASuccessor(_) and - FunctionOverloading::functionResolutionDependsOnArgument(_, result, _, _, _) - } - AstNode getNodeAt(FunctionPosition pos) { result = this.getSyntacticArgument(pos.asArgumentPosition()) or @@ -2777,7 +2870,15 @@ private module NonMethodResolution { } pragma[nomagic] - predicate resolveCallTargetBlanketLikeCandidate( + NonMethodFunction resolveCallTargetNonBlanketCand(ImplItemNode i) { + not this.hasTrait() and + result = this.getPathResolutionResolved(i) and + not exists(this.resolveCallTargetViaPathResolution()) and + functionResolutionDependsOnArgument(i, result, _, _) + } + + pragma[nomagic] + predicate resolveCallTargetBlanketLikeCand( ImplItemNode impl, FunctionPosition pos, TypePath blanketPath, TypeParam blanketTypeParam ) { exists(string name, int arity, Trait trait, AssocFunctionType t | @@ -2786,6 +2887,10 @@ private module NonMethodResolution { functionInfoBlanketLikeRelevantPos(_, name, arity, impl, trait, pos, t, blanketPath, blanketTypeParam) and BlanketTraitIsVisible::traitIsVisible(this, trait) + | + not this.hasTrait() + or + trait = this.getTrait() ) } @@ -2801,12 +2906,27 @@ private module NonMethodResolution { */ pragma[nomagic] predicate hasNoCompatibleNonBlanketTarget() { - this.resolveCallTargetBlanketLikeCandidate(_, _, _, _) and + this.resolveCallTargetBlanketLikeCand(_, _, _, _) and not exists(this.resolveCallTargetViaPathResolution()) and - forall(ImplOrTraitItemNode i, Function f | - this.(NonMethodArgsAreInstantiationsOfNonBlanketInput::Call).hasTargetCand(i, f) - | + forall(ImplOrTraitItemNode i, Function f | f = this.resolveCallTargetNonBlanketCand(i) | NonMethodArgsAreInstantiationsOfNonBlanket::argsAreNotInstantiationsOf(this, i, f) + ) and + ( + not this.hasTraitResolved(_, _) + or + exists( + TraitItemNode trait, NonMethodFunction resolved, FunctionPosition pos, TypePath path, + Type t + | + this.(NonMethodArgsAreInstantiationsOfNonBlanketInput::Call) + .hasTraitResolvedSelfType(trait, resolved, pos, path, t) + | + forall(ImplOrTraitItemNode i, Function f | + traitFunctionHasSelfType(trait, resolved, pos, path, t, i, f) + | + NonMethodArgsAreInstantiationsOfNonBlanket::argsAreNotInstantiationsOf(this, i, f) + ) + ) ) } @@ -2817,7 +2937,7 @@ private module NonMethodResolution { ItemNode resolveCallTargetViaPathResolution() { not this.hasTrait() and result = this.getPathResolutionResolved() and - not FunctionOverloading::functionResolutionDependsOnArgument(_, result, _, _, _) + not functionResolutionDependsOnArgument(_, result, _, _) } /** @@ -2826,24 +2946,17 @@ private module NonMethodResolution { pragma[nomagic] NonMethodFunction resolveCallTargetViaTypeInference(ImplOrTraitItemNode i) { result = this.resolveCallTargetBlanketCand(i) and - not FunctionOverloading::functionResolutionDependsOnArgument(_, result, _, _, _) + not FunctionOverloading::functionResolutionDependsOnArgument(_, result, _, _) or NonMethodArgsAreInstantiationsOfBlanket::argsAreInstantiationsOf(this, i, result) or NonMethodArgsAreInstantiationsOfNonBlanket::argsAreInstantiationsOf(this, i, result) } - - pragma[nomagic] - NonMethodFunction resolveTraitFunctionViaPathResolution(TraitItemNode trait) { - this.hasTrait() and - result = this.getPathResolutionResolved() and - result = trait.getASuccessor(_) - } } private newtype TCallAndBlanketPos = MkCallAndBlanketPos(NonMethodCall fc, FunctionPosition pos) { - fc.resolveCallTargetBlanketLikeCandidate(_, pos, _, _) + fc.resolveCallTargetBlanketLikeCand(_, pos, _, _) } /** A call tagged with a position. */ @@ -2869,7 +2982,7 @@ private module NonMethodResolution { ) { exists(NonMethodCall fc, FunctionPosition pos | fcp = MkCallAndBlanketPos(fc, pos) and - fc.resolveCallTargetBlanketLikeCandidate(impl, pos, blanketPath, blanketTypeParam) and + fc.resolveCallTargetBlanketLikeCand(impl, pos, blanketPath, blanketTypeParam) and // Only apply blanket implementations when no other implementations are possible; // this is to account for codebases that use the (unstable) specialization feature // (https://rust-lang.github.io/rfcs/1210-impl-specialization.html), as well as @@ -2909,41 +3022,30 @@ private module NonMethodResolution { private module ArgIsInstantiationOfBlanketParam = ArgIsInstantiationOf; + private Type getArgType( + NonMethodCall call, FunctionPosition pos, TypePath path, boolean isDefaultTypeArg + ) { + result = inferType(call.getNodeAt(pos), path) and + isDefaultTypeArg = false + or + result = getCallExprTypeQualifier(call, path, isDefaultTypeArg) and + pos.isSelf() + } + private module NonMethodArgsAreInstantiationsOfBlanketInput implements ArgsAreInstantiationsOfInputSig { - predicate toCheck(ImplOrTraitItemNode i, Function f, FunctionPosition pos, AssocFunctionType t) { - t.appliesTo(f, i, pos) and - exists(Type t0 | typeCanBeUsedForDisambiguation(t0) | - FunctionOverloading::functionResolutionDependsOnArgument(i, f, pos, _, t0) - or - traitFunctionDependsOnPos(_, _, pos, t0, i, f) - ) + predicate toCheck(ImplOrTraitItemNode i, Function f, TypeParameter tp, FunctionPosition pos) { + functionResolutionDependsOnArgument(i, f, pos, tp) } final class Call extends NonMethodCall { Type getArgType(FunctionPosition pos, TypePath path) { - result = inferType(this.getNodeAt(pos), path) - } - - predicate hasTraitResolvedCand(ImplOrTraitItemNode i, Function f) { - exists(TraitItemNode trait, NonMethodFunction resolved, ImplItemNode i1, Function f1 | - this.hasTraitResolved(trait, resolved) and - traitFunctionDependsOnPos(trait, resolved, _, _, i1, f1) - | - f = f1 and - i = i1 - or - f = resolved and - i = trait - ) + result = getArgType(this, pos, path, false) } predicate hasTargetCand(ImplOrTraitItemNode i, Function f) { f = this.resolveCallTargetBlanketCand(i) - or - this.hasTraitResolvedCand(i, f) and - BlanketImplementation::isBlanketLike(i, _, _) } } } @@ -2954,23 +3056,44 @@ private module NonMethodResolution { private module NonMethodArgsAreInstantiationsOfNonBlanketInput implements ArgsAreInstantiationsOfInputSig { - predicate toCheck(ImplOrTraitItemNode i, Function f, FunctionPosition pos, AssocFunctionType t) { - NonMethodArgsAreInstantiationsOfBlanketInput::toCheck(i, f, pos, t) + predicate toCheck(ImplOrTraitItemNode i, Function f, TypeParameter traitTp, FunctionPosition pos) { + functionResolutionDependsOnArgument(i, f, pos, traitTp) or - // match against the trait function itself - t.appliesTo(f, i, pos) and - exists(Trait trait | - FunctionOverloading::traitTypeParameterOccurrence(trait, f, _, pos, _, - TSelfTypeParameter(trait)) - ) + // Also match against the trait function itself + FunctionOverloading::traitTypeParameterOccurrence(i, f, _, pos, _, traitTp) and + traitTp = TSelfTypeParameter(i) } - class Call extends NonMethodArgsAreInstantiationsOfBlanketInput::Call { + class Call extends NonMethodCall { + Type getArgType(FunctionPosition pos, TypePath path) { + result = getArgType(this, pos, path, _) + } + + /** + * Holds if this call is of the form `Trait::function(args)`, and the type at `pos` and + * `path` matches the `Self` type parameter of `Trait`. + */ + pragma[nomagic] + predicate hasTraitResolvedSelfType( + TraitItemNode trait, NonMethodFunction function, FunctionPosition pos, TypePath path, Type t + ) { + this.hasTraitResolved(trait, function) and + FunctionOverloading::traitTypeParameterOccurrence(trait, function, _, pos, path, + TSelfTypeParameter(trait)) and + t = substituteLookupTraits(this.getArgType(pos, path)) and + t != TUnknownType() + } + predicate hasTargetCand(ImplOrTraitItemNode i, Function f) { f = this.resolveCallTargetNonBlanketCand(i) or - this.hasTraitResolvedCand(i, f) and - not BlanketImplementation::isBlanketLike(i, _, _) + exists( + TraitItemNode trait, NonMethodFunction resolved, FunctionPosition pos, TypePath path, + Type t + | + this.hasTraitResolvedSelfType(trait, resolved, pos, path, t) and + traitFunctionHasSelfType(trait, resolved, pos, path, t, i, f) + ) } } } @@ -3076,26 +3199,7 @@ private module NonMethodCallMatchingInput implements MatchingInputSig { } override Type getParameterType(DeclarationPosition dpos, TypePath path) { - // For associated functions, we may also need to match type arguments against - // the `Self` type. For example, in - // - // ```rust - // struct Foo(T); - // - // impl Foo { - // fn default() -> Self { - // Foo(Default::default()) - // } - // } - // - // Foo::::default(); - // ``` - // - // we need to match `i32` against the type parameter `T` of the `impl` block. - dpos.isSelf() and - result = resolveImplOrTraitType(i.asSome(), path) - or - result = f.getParameterType(i, dpos, path) + result = f.getParameterTypeInclNonMethodSelf(i, dpos, path) } override Type getReturnType(TypePath path) { result = f.getReturnType(i, path) } @@ -3140,7 +3244,7 @@ private module NonMethodCallMatchingInput implements MatchingInputSig { pragma[nomagic] Type getInferredType(AccessPosition apos, TypePath path) { apos.isSelf() and - result = getCallExprTypeQualifier(this, path) + result = getCallExprTypeQualifier(this, path, false) or result = inferType(this.getNodeAt(apos), path) } @@ -3152,8 +3256,6 @@ private module NonMethodCallMatchingInput implements MatchingInputSig { | f = this.resolveCallTargetViaTypeInference(i.asSome()) // mutual recursion; resolving some associated function calls requires resolving types or - f = this.resolveTraitFunctionViaPathResolution(i.asSome()) - or f = this.resolveCallTargetViaPathResolution() and f.isDirectlyFor(i) ) @@ -3174,6 +3276,12 @@ private module NonMethodCallMatchingInput implements MatchingInputSig { this.hasUnknownTypeAt(i.asSome(), f, pos, path) ) or + forex(ImplOrTraitItemNode i, NonMethodFunctionDeclaration f | + f = this.getPathResolutionResolved(i) + | + this.hasUnknownTypeAt(i, f, pos, path) + ) + or // Tuple declarations, such as `Result::Ok(...)`, may also be context typed exists(TupleLikeConstructor tc, TypeParameter tp | tc = this.resolveCallTargetViaPathResolution() and @@ -4152,7 +4260,7 @@ private module Debug { TypeAbstraction abs, TypeMention condition, TypeMention constraint, boolean transitive ) { abs = getRelevantLocatable() and - Input2::conditionSatisfiesConstraint(abs, condition, constraint, transitive) + Input::conditionSatisfiesConstraint(abs, condition, constraint, transitive) } predicate debugInferShorthandSelfType(ShorthandSelfParameterMention self, TypePath path, Type t) { diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll index e50c7393f727..96e0bea2f189 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll @@ -10,7 +10,11 @@ private import TypeInference::Consistency as Consistency import TypeInference::Consistency query predicate illFormedTypeMention(TypeMention tm) { - Consistency::illFormedTypeMention(tm) and + // NOTE: We do not use `illFormedTypeMention` from the shared library as it is + // instantiated with `PreTypeMention` and we are interested in inconsistencies + // for `TypeMention`. + not exists(tm.getTypeAt(TypePath::nil())) and + exists(tm.getLocation()) and // avoid overlap with `PathTypeMention` not tm instanceof PathTypeReprMention and // known limitation for type mentions that would mention an escaping type parameter @@ -27,7 +31,8 @@ query predicate illFormedTypeMention(TypeMention tm) { } query predicate nonUniqueCertainType(AstNode n, TypePath path) { - Consistency::nonUniqueCertainType(n, path, _) + Consistency::nonUniqueCertainType(n, path, _) and + n.fromSource() // Only include inconsistencies in the source. } int getTypeInferenceInconsistencyCounts(string type) { diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll index a5a9eae37156..ef54fe18bb92 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll @@ -6,603 +6,745 @@ private import codeql.rust.frameworks.stdlib.Stdlib private import Type private import TypeAbstraction private import TypeInference +private import AssociatedType -/** An AST node that may mention a type. */ -abstract class TypeMention extends AstNode { - /** Gets the type at `path` that this mention resolves to, if any. */ - pragma[nomagic] - abstract Type getTypeAt(TypePath path); - - /** Gets the type that this node resolves to, if any. */ - pragma[nomagic] - final Type getType() { result = this.getTypeAt(TypePath::nil()) } +bindingset[trait, name] +pragma[inline_late] +private TypeAlias getTraitAssocType(TraitItemNode trait, string name) { + result = trait.getAssocItem(name) } -class TupleTypeReprMention extends TypeMention instanceof TupleTypeRepr { - override Type getTypeAt(TypePath path) { - path.isEmpty() and - result.(TupleType).getArity() = super.getNumberOfFields() - or - exists(TypePath suffix, int i | - result = super.getField(i).(TypeMention).getTypeAt(suffix) and - path = TypePath::cons(getTupleTypeParameter(super.getNumberOfFields(), i), suffix) - ) - } -} +private signature Type getAdditionalPathTypeAtSig(Path p, TypePath typePath); -class ParenthesizedArgListMention extends TypeMention instanceof ParenthesizedArgList { - override Type getTypeAt(TypePath path) { - path.isEmpty() and - result.(TupleType).getArity() = super.getNumberOfTypeArgs() - or - exists(TypePath suffix, int index | - result = super.getTypeArg(index).getTypeRepr().(TypeMention).getTypeAt(suffix) and - path = TypePath::cons(getTupleTypeParameter(super.getNumberOfTypeArgs(), index), suffix) - ) - } -} +/** + * Constructing the "type hierarchy" (that is, the trait hierarchy and how types + * implement traits) in the shared type inference library relies on type + * mentions. + * + * Furthermore, resolving type mentions such as `::AssocType` + * relies on knowing how `Type` implements `Trait`. This makes type mentions and + * the type hierarchy recursively dependent, which causes non-monotonic + * recursion. + * + * To avoid the recursion, we parameterize the `TypeMention` by a predicate for + * resolving "additional" types for paths. A first instantiation uses the empty + * predicate to create `PreTypeMention` which is used to construct the type + * hierarchy. Afterwards, a second instantiation uses a predicate that can + * resolve paths that rely on the type hierarchy to create the actual + * `TypeMention`. + */ +private module MkTypeMention { + /** An AST node that may mention a type. */ + abstract private class TypeMentionImpl extends AstNode { + /** Gets the type at `path` that this type mention resolves to, if any. */ + pragma[nomagic] + abstract Type getTypeAt(TypePath path); -class ArrayTypeReprMention extends TypeMention instanceof ArrayTypeRepr { - override Type getTypeAt(TypePath path) { - path.isEmpty() and - result instanceof ArrayType - or - exists(TypePath suffix | - result = super.getElementTypeRepr().(TypeMention).getTypeAt(suffix) and - path = TypePath::cons(getArrayTypeParameter(), suffix) - ) + /** Gets the root type that this type mention resolves to, if any. */ + pragma[nomagic] + final Type getType() { result = this.getTypeAt(TypePath::nil()) } } -} -class RefTypeReprMention extends TypeMention instanceof RefTypeRepr { - private RefType resolveRootType() { - if super.isMut() then result instanceof RefMutType else result instanceof RefSharedType + final class TypeMention = TypeMentionImpl; + + class TupleTypeReprMention extends TypeMentionImpl instanceof TupleTypeRepr { + override Type getTypeAt(TypePath path) { + path.isEmpty() and + result.(TupleType).getArity() = super.getNumberOfFields() + or + exists(TypePath suffix, int i | + result = super.getField(i).(TypeMention).getTypeAt(suffix) and + path = TypePath::cons(getTupleTypeParameter(super.getNumberOfFields(), i), suffix) + ) + } } - override Type getTypeAt(TypePath path) { - path.isEmpty() and result = this.resolveRootType() - or - exists(TypePath suffix | - result = super.getTypeRepr().(TypeMention).getTypeAt(suffix) and - path = TypePath::cons(this.resolveRootType().getPositionalTypeParameter(0), suffix) - ) + class ParenthesizedArgListMention extends TypeMentionImpl instanceof ParenthesizedArgList { + override Type getTypeAt(TypePath path) { + path.isEmpty() and + result.(TupleType).getArity() = super.getNumberOfTypeArgs() + or + exists(TypePath suffix, int index | + result = super.getTypeArg(index).getTypeRepr().(TypeMention).getTypeAt(suffix) and + path = TypePath::cons(getTupleTypeParameter(super.getNumberOfTypeArgs(), index), suffix) + ) + } } -} -class SliceTypeReprMention extends TypeMention instanceof SliceTypeRepr { - override Type getTypeAt(TypePath path) { - path.isEmpty() and - result instanceof SliceType - or - exists(TypePath suffix | - result = super.getTypeRepr().(TypeMention).getTypeAt(suffix) and - path = TypePath::cons(getSliceTypeParameter(), suffix) - ) + class ArrayTypeReprMention extends TypeMentionImpl instanceof ArrayTypeRepr { + override Type getTypeAt(TypePath path) { + path.isEmpty() and + result instanceof ArrayType + or + exists(TypePath suffix | + result = super.getElementTypeRepr().(TypeMention).getTypeAt(suffix) and + path = TypePath::cons(getArrayTypeParameter(), suffix) + ) + } } -} -abstract class PathTypeMention extends TypeMention, Path { - abstract Type resolvePathTypeAt(TypePath typePath); + class RefTypeReprMention extends TypeMentionImpl instanceof RefTypeRepr { + private RefType resolveRootType() { + if super.isMut() then result instanceof RefMutType else result instanceof RefSharedType + } - final override Type getTypeAt(TypePath typePath) { - result = this.resolvePathTypeAt(typePath) and - ( - not result instanceof TypeParameter + override Type getTypeAt(TypePath path) { + path.isEmpty() and result = this.resolveRootType() or - // Prevent type parameters from escaping their scope - this = result.(TypeParameter).getDeclaringItem().getAChild*().getADescendant() - ) + exists(TypePath suffix | + result = super.getTypeRepr().(TypeMention).getTypeAt(suffix) and + path = TypePath::cons(this.resolveRootType().getPositionalTypeParameter(0), suffix) + ) + } } -} -class AliasPathTypeMention extends PathTypeMention { - TypeAlias resolved; - TypeMention rhs; - - AliasPathTypeMention() { - resolved = resolvePath(this) and - rhs = resolved.getTypeRepr() + class SliceTypeReprMention extends TypeMentionImpl instanceof SliceTypeRepr { + override Type getTypeAt(TypePath path) { + path.isEmpty() and + result instanceof SliceType + or + exists(TypePath suffix | + result = super.getTypeRepr().(TypeMention).getTypeAt(suffix) and + path = TypePath::cons(getSliceTypeParameter(), suffix) + ) + } } - TypeItemNode getResolved() { result = resolved } + abstract class PathTypeMention extends TypeMentionImpl, Path { + abstract Type resolvePathTypeAt(TypePath typePath); - /** - * Holds if this path resolved to a type alias with a rhs. that has the - * resulting type at `typePath`. - */ - override Type resolvePathTypeAt(TypePath typePath) { - result = rhs.getTypeAt(typePath) and - not result = pathGetTypeParameter(resolved, _) - or - exists(TypeParameter tp, TypeMention arg, TypePath prefix, TypePath suffix, int i | - tp = rhs.getTypeAt(prefix) and - tp = pathGetTypeParameter(resolved, pragma[only_bind_into](i)) and - arg = this.getSegment().getGenericArgList().getTypeArg(pragma[only_bind_into](i)) and - result = arg.getTypeAt(suffix) and - typePath = prefix.append(suffix) - ) + final override Type getTypeAt(TypePath typePath) { + result = this.resolvePathTypeAt(typePath) and + ( + not result instanceof TypeParameter + or + // Prevent type parameters from escaping their scope + this = result.(TypeParameter).getDeclaringItem().getAChild*().getADescendant() + ) + } } -} -/** - * Gets the `i`th type argument of `p`. - * - * Takes into account that variants can have type arguments applied to both the - * enum and the variant itself, e.g. `Option::::Some` is valid in addition - * to `Option::Some::`. - */ -TypeMention getPathTypeArgument(Path p, int i) { - result = p.getSegment().getGenericArgList().getTypeArg(i) - or - resolvePath(p) instanceof Variant and - result = p.getQualifier().getSegment().getGenericArgList().getTypeArg(i) -} - -class NonAliasPathTypeMention extends PathTypeMention { - TypeItemNode resolved; + class AdditionalPathTypeMention extends PathTypeMention { + AdditionalPathTypeMention() { exists(getAdditionalPathTypeAt(this, _)) } - NonAliasPathTypeMention() { - resolved = [resolvePath(this), resolvePath(this).(Variant).getEnum().(TypeItemNode)] and - not exists(resolved.(TypeAlias).getTypeRepr()) and - not this = any(ImplItemNode i).getASelfPath() // handled by `ImplSelfMention` + override Type resolvePathTypeAt(TypePath typePath) { + result = getAdditionalPathTypeAt(this, typePath) + } } - TypeItemNode getResolved() { result = resolved } + class AliasPathTypeMention extends PathTypeMention { + TypeAlias resolved; + TypeMention rhs; - pragma[nomagic] - private TypeMention getAssocTypeArg(string name) { - result = this.getSegment().getGenericArgList().getAssocTypeArg(name) + AliasPathTypeMention() { + resolved = resolvePath(this) and + rhs = resolved.getTypeRepr() + } + + TypeItemNode getResolved() { result = resolved } + + /** + * Holds if this path resolved to a type alias with a rhs. that has the + * resulting type at `typePath`. + */ + override Type resolvePathTypeAt(TypePath typePath) { + result = rhs.getTypeAt(typePath) and + not result = pathGetTypeParameter(resolved, _) + or + exists(TypeParameter tp, TypeMention arg, TypePath prefix, TypePath suffix, int i | + tp = rhs.getTypeAt(prefix) and + tp = pathGetTypeParameter(resolved, pragma[only_bind_into](i)) and + arg = this.getSegment().getGenericArgList().getTypeArg(pragma[only_bind_into](i)) and + result = arg.getTypeAt(suffix) and + typePath = prefix.append(suffix) + ) + } } /** - * Gets the type mention that instantiates the implicit `Self` type parameter - * for this path, if it occurs in the position of a trait bound. + * Gets the `i`th type argument of `p`. + * + * Takes into account that variants can have type arguments applied to both the + * enum and the variant itself, e.g. `Option::::Some` is valid in addition + * to `Option::Some::`. */ - private TypeMention getSelfTraitBoundArg() { - exists(ImplItemNode impl | this = impl.getTraitPath() and result = impl.(Impl).getSelfTy()) - or - exists(Trait subTrait | - this = subTrait.getATypeBound().getTypeRepr().(PathTypeRepr).getPath() and - result.(SelfTypeParameterMention).getTrait() = subTrait - ) + TypeMention getPathTypeArgument(Path p, int i) { + result = p.getSegment().getGenericArgList().getTypeArg(i) or - exists(TypeParamItemNode tp | this = tp.getABoundPath() and result = tp) + resolvePath(p) instanceof Variant and + result = p.getQualifier().getSegment().getGenericArgList().getTypeArg(i) } - private Type getDefaultPositionalTypeArgument(int i, TypePath path) { - // If a type argument is not given in the path, then we use the default for - // the type parameter if one exists for the type. - not exists(getPathTypeArgument(this, i)) and - // Defaults only apply to type mentions in type annotations - this = any(PathTypeRepr ptp).getPath().getQualifier*() and - exists(Type ty, TypePath prefix | - ty = this.resolveRootType().getTypeParameterDefault(i).getTypeAt(prefix) and - if not ty = TSelfTypeParameter(resolved) - then result = ty and path = prefix - else - // When a default contains an implicit `Self` type parameter, it should - // be substituted for the type that implements the trait. - exists(TypePath suffix | - path = prefix.append(suffix) and - result = this.getSelfTraitBoundArg().getTypeAt(suffix) - ) - ) - } + class NonAliasPathTypeMention extends PathTypeMention { + TypeItemNode resolved; - private Type getPositionalTypeArgument(int i, TypePath path) { - result = getPathTypeArgument(this, i).getTypeAt(path) - or - result = this.getDefaultPositionalTypeArgument(i, path) - } + NonAliasPathTypeMention() { + resolved = [resolvePath(this), resolvePath(this).(Variant).getEnum().(TypeItemNode)] and + not exists(resolved.(TypeAlias).getTypeRepr()) and + not exists(getAdditionalPathTypeAt(this, _)) and // handled by `AdditionalPathTypeMention` + not this = any(ImplItemNode i).getASelfPath() // handled by `ImplSelfMention` + } - /** - * Gets the type for this path for the type parameter `tp` at `path`, when the - * type parameter does not correspond directly to a type mention. - */ - private Type getTypeForTypeParameterAt(TypeParameter tp, TypePath path) { - exists(int i | - result = this.getPositionalTypeArgument(pragma[only_bind_into](i), path) and - tp = this.resolveRootType().getPositionalTypeParameter(pragma[only_bind_into](i)) - ) - or - // Handle the special syntactic sugar for function traits. The syntactic - // form is detected by the presence of a parenthesized argument list which - // is a mandatory part of the syntax [1]. - // - // For now we only support `FnOnce` as we can't support the "inherited" - // associated types of `Fn` and `FnMut` yet. - // - // [1]: https://doc.rust-lang.org/reference/paths.html#grammar-TypePathFn - exists(AnyFnTrait t, PathSegment s | - t = resolved and - s = this.getSegment() and - s.hasParenthesizedArgList() - | - tp = TTypeParamTypeParameter(t.getTypeParam()) and - result = s.getParenthesizedArgList().(TypeMention).getTypeAt(path) + TypeItemNode getResolved() { result = resolved } + + pragma[nomagic] + private TypeMention getAssocTypeArg(string name) { + result = this.getSegment().getGenericArgList().getAssocTypeArg(name) + } + + /** + * Gets the type mention that instantiates the implicit `Self` type parameter + * for this path, if it occurs in the position of a trait bound. + */ + private TypeMention getSelfTraitBoundArg() { + exists(ImplItemNode impl | this = impl.getTraitPath() and result = impl.(Impl).getSelfTy()) or - tp = TAssociatedTypeTypeParameter(t, any(FnOnceTrait tr).getOutputType()) and - ( - result = s.getRetType().getTypeRepr().(TypeMention).getTypeAt(path) + exists(Trait subTrait | + this = subTrait.getATypeBound().getTypeRepr().(PathTypeRepr).getPath() and + result.(SelfTypeParameterMention).getTrait() = subTrait + ) + or + exists(TypeParamItemNode tp | this = tp.getABoundPath() and result = tp) + } + + pragma[nomagic] + private Type getDefaultPositionalTypeArgument(int i, TypePath path) { + // If a type argument is not given in the path, then we use the default for + // the type parameter if one exists for the type. + not exists(getPathTypeArgument(this, i)) and + exists(Type ty, TypePath prefix | + ty = this.resolveRootType().getTypeParameterDefault(i).(TypeMention).getTypeAt(prefix) and + if not ty = TSelfTypeParameter(resolved) + then result = ty and path = prefix + else + // When a default contains an implicit `Self` type parameter, it should + // be substituted for the type that implements the trait. + exists(TypePath suffix | + path = prefix.append(suffix) and + result = this.getSelfTraitBoundArg().getTypeAt(suffix) + ) + ) + } + + private predicate isInTypeAnnotation() { + this = any(PathTypeRepr ptp).getPath().getQualifier*() + } + + pragma[nomagic] + private TypeParameter getPositionalTypeParameter(int i) { + result = this.resolveRootType().getPositionalTypeParameter(i) + } + + /** + * Gets the default type for the type parameter `tp` at `path`, if any. + * + * This predicate is restricted to mentions that are _not_ part of a type + * annotation, such as a qualifier in a call, `Vec::new()`, where the + * default type for type parameter `A` of `Vec` is `Global`. + * + * In these cases, whether or not the default type actually applies may + * depend on the types of arguments. + */ + pragma[nomagic] + Type getDefaultTypeForTypeParameterInNonAnnotationAt(TypeParameter tp, TypePath path) { + not this.isInTypeAnnotation() and + exists(int i | + result = this.getDefaultPositionalTypeArgument(i, path) and + tp = this.getPositionalTypeParameter(i) + ) + } + + pragma[nomagic] + private Type getPositionalTypeArgument(int i, TypePath path) { + result = getPathTypeArgument(this, i).getTypeAt(path) + } + + /** + * Gets the type for this path for the type parameter `tp` at `path`, when the + * type parameter does not correspond directly to a type mention. + */ + private Type getTypeForTypeParameterAt(TypeParameter tp, TypePath path) { + exists(int i | tp = this.getPositionalTypeParameter(i) | + result = this.getPositionalTypeArgument(i, path) or - // When the `-> ...` return type is omitted, it defaults to `()`. - not s.hasRetType() and - result instanceof UnitType and + // Defaults only apply to type mentions in type annotations + this.isInTypeAnnotation() and + result = this.getDefaultPositionalTypeArgument(i, path) + ) + or + // Handle the special syntactic sugar for function traits. The syntactic + // form is detected by the presence of a parenthesized argument list which + // is a mandatory part of the syntax [1]. + // + // For now we only support `FnOnce` as we can't support the "inherited" + // associated types of `Fn` and `FnMut` yet. + // + // [1]: https://doc.rust-lang.org/reference/paths.html#grammar-TypePathFn + exists(AnyFnTrait t, PathSegment s | + t = resolved and + s = this.getSegment() and + s.hasParenthesizedArgList() + | + tp = TTypeParamTypeParameter(t.getTypeParam()) and + result = s.getParenthesizedArgList().(TypeMention).getTypeAt(path) + or + tp = TAssociatedTypeTypeParameter(t, any(FnOnceTrait tr).getOutputType()) and + ( + result = s.getRetType().getTypeRepr().(TypeMention).getTypeAt(path) + or + // When the `-> ...` return type is omitted, it defaults to `()`. + not s.hasRetType() and + result instanceof UnitType and + path.isEmpty() + ) + ) + or + // If `path` is the supertrait of a trait block then any associated types + // of the supertrait should be instantiated with the subtrait's + // corresponding copies. + // + // As an example, for + // ```rust + // trait Sub: Super { + // // ^^^^^ this + // ``` + // we do something to the effect of: + // ```rust + // trait Sub: Super + // ``` + // Where `Assoc` is an associated type of `Super` and `Assoc[Sub]` denotes + // the copy of the type parameter inherited by `Sub`. + exists(Trait subtrait, TypeAlias alias | + subtrait.getATypeBound().getTypeRepr().(PathTypeRepr).getPath() = this and + result = TAssociatedTypeTypeParameter(subtrait, alias) and + tp = TAssociatedTypeTypeParameter(resolved, alias) and path.isEmpty() ) - ) - or - // If `path` is the supertrait of a trait block then any associated types - // of the supertrait should be instantiated with the subtrait's - // corresponding copies. - // - // As an example, for - // ```rust - // trait Sub: Super { - // // ^^^^^ this - // ``` - // we do something to the effect of: - // ```rust - // trait Sub: Super - // ``` - // Where `Assoc` is an associated type of `Super` and `Assoc[Sub]` denotes - // the copy of the type parameter inherited by `Sub`. - exists(Trait subtrait, TypeAlias alias | - subtrait.getATypeBound().getTypeRepr().(PathTypeRepr).getPath() = this and - result = TAssociatedTypeTypeParameter(subtrait, alias) and - tp = TAssociatedTypeTypeParameter(resolved, alias) and - path.isEmpty() - ) - } + or + // If this path is a type parameter bound, then any associated types + // accessed on the type parameter, which originate from this bound, should + // be instantiated into the bound, as explained in the comment for + // `TypeParamAssociatedTypeTypeParameter`. + // ```rust + // fn foo, T_Assoc>(arg: T_Assoc) { } + // ^^^^^^^^^ ^^^^^ ^^^^^^^ + // this path result + // ``` + exists(TypeParam typeParam, Trait trait, AssocType assoc | + tpBoundAssociatedType(typeParam, _, this, trait, assoc) and + tp = TAssociatedTypeTypeParameter(resolved, assoc) and + result = TTypeParamAssociatedTypeTypeParameter(typeParam, assoc) and + path.isEmpty() + ) + } + + bindingset[name] + private TypeAlias getResolvedTraitAssocType(string name) { + result = resolved.(TraitItemNode).getASuccessor(name) + } + + /** Gets the type mention in this path for the type parameter `tp`, if any. */ + pragma[nomagic] + private TypeMention getTypeMentionForAssociatedTypeTypeParameter(AssociatedTypeTypeParameter tp) { + exists(TypeAlias alias, string name | + result = this.getAssocTypeArg(name) and + tp = TAssociatedTypeTypeParameter(resolved, alias) and + alias = this.getResolvedTraitAssocType(name) + ) + or + // If `path` is the trait of an `impl` block then any associated types + // defined in the `impl` block are type arguments to the trait. + // + // For instance, for a trait implementation like this + // ```rust + // impl MyTrait for MyType { + // ^^^^^^^ path + // type AssociatedType = i64 + // ^^^ result + // // ... + // } + // ``` + // the rhs. of the type alias is a type argument to the trait. + exists(ImplItemNode impl, TypeAlias alias, string name | + this = impl.getTraitPath() and + alias = impl.getASuccessor(name) and + result = alias.getTypeRepr() and + tp = TAssociatedTypeTypeParameter(resolved, resolved.(TraitItemNode).getAssocItem(name)) + ) + } - bindingset[name] - private TypeAlias getResolvedAlias(string name) { - result = resolved.(TraitItemNode).getAssocItem(name) - } + pragma[nomagic] + private Type resolveRootType() { + result = TDataType(resolved) + or + exists(TraitItemNode trait | trait = resolved | + // If this is a `Self` path, then it resolves to the implicit `Self` + // type parameter, otherwise it is a trait bound. + if this = trait.getASelfPath() + then result = TSelfTypeParameter(trait) + else result = TTrait(trait) + ) + or + result = TTypeParamTypeParameter(resolved) + or + // Handles paths of the form `Self::AssocType` within a trait block + result = TAssociatedTypeTypeParameter(resolvePath(this.getQualifier()), resolved) + or + result.(TypeParamAssociatedTypeTypeParameter).getAPath() = this + } - bindingset[name] - private TypeAlias getResolvedTraitAssocType(string name) { - result = resolved.(TraitItemNode).getASuccessor(name) + override Type resolvePathTypeAt(TypePath typePath) { + typePath.isEmpty() and + result = this.resolveRootType() + or + exists(TypeParameter tp, TypePath suffix | typePath = TypePath::cons(tp, suffix) | + result = this.getTypeForTypeParameterAt(tp, suffix) + or + result = this.getTypeMentionForAssociatedTypeTypeParameter(tp).getTypeAt(suffix) + ) + or + // When the path refers to a trait, then the implicit `Self` type parameter + // should be instantiated from the context. + exists(TypePath suffix | + result = this.getSelfTraitBoundArg().getTypeAt(suffix) and + typePath = TypePath::cons(TSelfTypeParameter(resolved), suffix) + ) + or + not this.getSegment().hasTraitTypeRepr() and + result = this.getSegment().getTypeRepr().(TypeMention).getTypeAt(typePath) + } } - /** Gets the type mention in this path for the type parameter `tp`, if any. */ pragma[nomagic] - private TypeMention getTypeMentionForTypeParameter(TypeParameter tp) { - exists(TypeAlias alias, string name | - result = this.getAssocTypeArg(name) and - tp = TAssociatedTypeTypeParameter(resolved, alias) and - alias = this.getResolvedTraitAssocType(name) - ) - or - // If `path` is the trait of an `impl` block then any associated types - // defined in the `impl` block are type arguments to the trait. - // - // For instance, for a trait implementation like this - // ```rust - // impl MyTrait for MyType { - // ^^^^^^^ path - // type AssociatedType = i64 - // ^^^ result - // // ... - // } - // ``` - // the rhs. of the type alias is a type argument to the trait. - exists(ImplItemNode impl, TypeAlias alias, string name | - this = impl.getTraitPath() and - alias = impl.getASuccessor(name) and - result = alias.getTypeRepr() and - tp = TAssociatedTypeTypeParameter(resolved, this.getResolvedAlias(name)) - ) + Type resolveImplSelfTypeAt(Impl i, TypePath path) { + result = i.getSelfTy().(TypeMention).getTypeAt(path) } - pragma[nomagic] - private Type resolveRootType() { - result = TDataType(resolved) - or - exists(TraitItemNode trait | trait = resolved | - // If this is a `Self` path, then it resolves to the implicit `Self` - // type parameter, otherwise it is a trait bound. - if this = trait.getASelfPath() - then result = TSelfTypeParameter(trait) - else result = TTrait(trait) - ) - or - result = TTypeParamTypeParameter(resolved) - or - result = TAssociatedTypeTypeParameter(resolvePath(this.getQualifier()), resolved) - } + class ImplSelfMention extends PathTypeMention { + private ImplItemNode impl; - override Type resolvePathTypeAt(TypePath typePath) { - typePath.isEmpty() and - result = this.resolveRootType() - or - exists(TypeParameter tp, TypePath suffix | typePath = TypePath::cons(tp, suffix) | - result = this.getTypeForTypeParameterAt(tp, suffix) - or - result = this.getTypeMentionForTypeParameter(tp).getTypeAt(suffix) - ) - or - // When the path refers to a trait, then the implicit `Self` type parameter - // should be instantiated from the context. - exists(TypePath suffix | - result = this.getSelfTraitBoundArg().getTypeAt(suffix) and - typePath = TypePath::cons(TSelfTypeParameter(resolved), suffix) - ) - or - not this.getSegment().hasTraitTypeRepr() and - result = this.getSegment().getTypeRepr().(TypeMention).getTypeAt(typePath) - } -} + ImplSelfMention() { this = impl.getASelfPath() } -pragma[nomagic] -Type resolveImplSelfTypeAt(Impl i, TypePath path) { - result = i.getSelfTy().(TypeMention).getTypeAt(path) -} + override Type resolvePathTypeAt(TypePath typePath) { + result = resolveImplSelfTypeAt(impl, typePath) + } + } -class ImplSelfMention extends PathTypeMention { - private ImplItemNode impl; + class PathTypeReprMention extends TypeMentionImpl, PathTypeRepr { + private PathTypeMention path; - ImplSelfMention() { this = impl.getASelfPath() } + PathTypeReprMention() { path = this.getPath() } - override Type resolvePathTypeAt(TypePath typePath) { - result = resolveImplSelfTypeAt(impl, typePath) + override Type getTypeAt(TypePath typePath) { result = path.getTypeAt(typePath) } } -} -class PathTypeReprMention extends TypeMention, PathTypeRepr { - private PathTypeMention path; + class ImplTraitTypeReprMention extends TypeMentionImpl instanceof ImplTraitTypeRepr { + override Type getTypeAt(TypePath typePath) { + typePath.isEmpty() and + result.(ImplTraitType).getImplTraitTypeRepr() = this + or + exists(ImplTraitTypeParameter tp | + this = tp.getImplTraitTypeRepr() and + typePath = TypePath::singleton(tp) and + result = TTypeParamTypeParameter(tp.getTypeParam()) + ) + } + } - PathTypeReprMention() { path = this.getPath() } + private TypeParameter pathGetTypeParameter(TypeAlias alias, int i) { + result = TTypeParamTypeParameter(alias.getGenericParamList().getTypeParam(i)) + } - override Type getTypeAt(TypePath typePath) { result = path.getTypeAt(typePath) } -} + // Used to represent implicit `Self` type arguments in traits and `impl` blocks, + // see `PathMention` for details. + class TypeParamMention extends TypeMentionImpl instanceof TypeParam { + override Type getTypeAt(TypePath typePath) { + typePath.isEmpty() and + result = TTypeParamTypeParameter(this) + } + } -class ImplTraitTypeReprMention extends TypeMention instanceof ImplTraitTypeRepr { - override Type getTypeAt(TypePath typePath) { - typePath.isEmpty() and - result.(ImplTraitType).getImplTraitTypeRepr() = this - or - exists(ImplTraitTypeParameter tp | - this = tp.getImplTraitTypeRepr() and - typePath = TypePath::singleton(tp) and - result = TTypeParamTypeParameter(tp.getTypeParam()) - ) + class TraitMention extends TypeMentionImpl instanceof TraitItemNode { + override Type getTypeAt(TypePath typePath) { + typePath.isEmpty() and + result = TTrait(this) + or + // The implicit `Self` type parameter occurs at the `Self` type parameter + // position. + typePath = TypePath::singleton(TSelfTypeParameter(this)) and + result = TSelfTypeParameter(this) + or + exists(TypeAlias alias | + typePath = TypePath::singleton(result) and + result = TAssociatedTypeTypeParameter(this, alias) + ) + or + exists(TypeParam tp | + tp = super.getTypeParam(_) and + typePath = TypePath::singleton(result) and + result = TTypeParamTypeParameter(tp) + ) + } } -} -private TypeParameter pathGetTypeParameter(TypeAlias alias, int i) { - result = TTypeParamTypeParameter(alias.getGenericParamList().getTypeParam(i)) -} + // NOTE: Since the implicit type parameter for the self type parameter never + // appears in the AST, we (somewhat arbitrarily) choose the name of a trait as a + // type mention. This works because there is a one-to-one correspondence between + // a trait and its name. + class SelfTypeParameterMention extends TypeMentionImpl instanceof Name { + Trait trait; + + SelfTypeParameterMention() { trait.getName() = this } + + Trait getTrait() { result = trait } -// Used to represent implicit `Self` type arguments in traits and `impl` blocks, -// see `PathMention` for details. -class TypeParamMention extends TypeMention instanceof TypeParam { - override Type getTypeAt(TypePath typePath) { - typePath.isEmpty() and - result = TTypeParamTypeParameter(this) + override Type getTypeAt(TypePath typePath) { + typePath.isEmpty() and + result = TSelfTypeParameter(trait) + } } -} -class TraitMention extends TypeMention instanceof TraitItemNode { - override Type getTypeAt(TypePath typePath) { - typePath.isEmpty() and - result = TTrait(this) - or - // The implicit `Self` type parameter occurs at the `Self` type parameter - // position. - typePath = TypePath::singleton(TSelfTypeParameter(this)) and - result = TSelfTypeParameter(this) - or - exists(TypeAlias alias | - typePath = TypePath::singleton(result) and - result = TAssociatedTypeTypeParameter(this, alias) - ) + /** + * Gets the type at `path` of the type being implemented in `i`, when + * `i` is an `impl` block, or the synthetic `Self` type parameter when + * `i` is a trait. + */ + pragma[nomagic] + Type resolveImplOrTraitType(ImplOrTraitItemNode i, TypePath path) { + result = resolveImplSelfTypeAt(i, path) or - exists(TypeParam tp | - tp = super.getTypeParam(_) and - typePath = TypePath::singleton(result) and - result = TTypeParamTypeParameter(tp) - ) + result = TSelfTypeParameter(i) and path.isEmpty() } -} -// NOTE: Since the implicit type parameter for the self type parameter never -// appears in the AST, we (somewhat arbitrarily) choose the name of a trait as a -// type mention. This works because there is a one-to-one correspondence between -// a trait and its name. -class SelfTypeParameterMention extends TypeMention instanceof Name { - Trait trait; - - SelfTypeParameterMention() { trait.getName() = this } + pragma[nomagic] + private ImplOrTraitItemNode getSelfParamEnclosingImplOrTrait(SelfParam self) { + self = result.getAnAssocItem().(Function).getSelfParam() + } - Trait getTrait() { result = trait } + /** + * An element used to represent the type of a `self` parameter that uses [shorthand + * syntax][1], which is sugar for an explicit annotation. + * + * [1]: https://doc.rust-lang.org/stable/reference/items/associated-items.html#r-associated.fn.method.self-pat-shorthands + */ + class ShorthandSelfParameterMention extends TypeMentionImpl instanceof SelfParam { + private ImplOrTraitItemNode encl; - override Type getTypeAt(TypePath typePath) { - typePath.isEmpty() and - result = TSelfTypeParameter(trait) - } -} + ShorthandSelfParameterMention() { + not super.hasTypeRepr() and + encl = getSelfParamEnclosingImplOrTrait(this) and + ( + not encl instanceof Impl + or + // avoid generating a type mention if the type being implemented does not have a type mention + encl.(Impl).getSelfTy() instanceof TypeMentionImpl + ) + } -/** - * Gets the type at `path` of the type being implemented in `i`, when - * `i` is an `impl` block, or the synthetic `Self` type parameter when - * `i` is a trait. - */ -pragma[nomagic] -Type resolveImplOrTraitType(ImplOrTraitItemNode i, TypePath path) { - result = resolveImplSelfTypeAt(i, path) - or - result = TSelfTypeParameter(i) and path.isEmpty() -} + private Type resolveSelfType(TypePath path) { result = resolveImplOrTraitType(encl, path) } -pragma[nomagic] -private ImplOrTraitItemNode getSelfParamEnclosingImplOrTrait(SelfParam self) { - self = result.getAnAssocItem().(Function).getSelfParam() -} + private RefType resolveSelfRefRootType() { + super.isRef() and + if super.isMut() then result instanceof RefMutType else result instanceof RefSharedType + } -/** - * An element used to represent the type of a `self` parameter that uses [shorthand - * syntax][1], which is sugar for an explicit annotation. - * - * [1]: https://doc.rust-lang.org/stable/reference/items/associated-items.html#r-associated.fn.method.self-pat-shorthands - */ -class ShorthandSelfParameterMention extends TypeMention instanceof SelfParam { - private ImplOrTraitItemNode encl; - - ShorthandSelfParameterMention() { - not super.hasTypeRepr() and - encl = getSelfParamEnclosingImplOrTrait(this) and - ( - not encl instanceof Impl + override Type getTypeAt(TypePath typePath) { + // `fn f(&self, ...)` + typePath.isEmpty() and + result = this.resolveSelfRefRootType() or - // avoid generating a type mention if the type being implemented does not have a type mention - encl.(Impl).getSelfTy() instanceof TypeMention - ) + exists(TypePath suffix | + result = this.resolveSelfType(suffix) and + typePath = + TypePath::cons(this.resolveSelfRefRootType().getPositionalTypeParameter(0), suffix) + ) + or + // `fn f(self, ...)` + not super.isRef() and + result = this.resolveSelfType(typePath) + } } - private Type resolveSelfType(TypePath path) { result = resolveImplOrTraitType(encl, path) } + pragma[nomagic] + TypeMention getSelfParamTypeMention(SelfParam self) { + result = self.(ShorthandSelfParameterMention) + or + result = self.getTypeRepr() + } + + /** + * An element used to represent the implicit `()` return type of a function. + * + * Since the implicit type does not appear in the AST, we (somewhat arbitrarily) + * choose the name of the function as a type mention. This works because there + * is a one-to-one correspondence between a function and its name. + */ + class ShorthandReturnTypeMention extends TypeMentionImpl instanceof Name { + private Function f; + + ShorthandReturnTypeMention() { + this = f.getName() and + not f.getRetType().hasTypeRepr() + } - private RefType resolveSelfRefRootType() { - super.isRef() and - if super.isMut() then result instanceof RefMutType else result instanceof RefSharedType + override Type getTypeAt(TypePath typePath) { + typePath.isEmpty() and + result instanceof UnitType + } } - override Type getTypeAt(TypePath typePath) { - // `fn f(&self, ...)` - typePath.isEmpty() and - result = this.resolveSelfRefRootType() - or - exists(TypePath suffix | - result = this.resolveSelfType(suffix) and - typePath = TypePath::cons(this.resolveSelfRefRootType().getPositionalTypeParameter(0), suffix) - ) + pragma[nomagic] + TypeMention getReturnTypeMention(Function f) { + result.(ShorthandReturnTypeMention) = f.getName() or - // `fn f(self, ...)` - not super.isRef() and - result = this.resolveSelfType(typePath) + result = f.getRetType().getTypeRepr() } -} -pragma[nomagic] -TypeMention getSelfParamTypeMention(SelfParam self) { - result = self.(ShorthandSelfParameterMention) - or - result = self.getTypeRepr() -} + class DynTraitTypeReprMention extends TypeMentionImpl instanceof DynTraitTypeRepr { + private DynTraitType dynType; -/** - * An element used to represent the implicit `()` return type of a function. - * - * Since the implicit type does not appear in the AST, we (somewhat arbitrarily) - * choose the name of the function as a type mention. This works because there - * is a one-to-one correspondence between a function and its name. - */ -class ShorthandReturnTypeMention extends TypeMention instanceof Name { - private Function f; + DynTraitTypeReprMention() { + // This excludes `DynTraitTypeRepr` elements where `getTrait` is not + // defined, i.e., where path resolution can't find a trait. + dynType.getTrait() = super.getTrait() + } + + override Type getTypeAt(TypePath path) { + path.isEmpty() and + result = dynType + or + exists(DynTraitTypeParameter tp, TypePath path0, TypePath suffix | + dynType = tp.getDynTraitType() and + path = TypePath::cons(tp, suffix) and + result = super.getTypeBoundList().getBound(0).getTypeRepr().(TypeMention).getTypeAt(path0) and + path0.isCons(tp.getTraitTypeParameter(), suffix) + ) + } + } + + // We want a type of the form `dyn Trait` to implement `Trait`. If `Trait` has + // type parameters then `dyn Trait` has equivalent type parameters and the + // implementation should be abstracted over them. + // + // Intuitively we want something to the effect of: + // ``` + // impl Trait for (dyn Trait) + // ``` + // To achieve this: + // - `DynTypeAbstraction` is an abstraction over the type parameters of the trait. + // - `DynTypeBoundListMention` (this class) is a type mention which has `dyn + // Trait` at the root and which for every type parameter of `dyn Trait` has the + // corresponding type parameter of the trait. + // - `TraitMention` (which is used for other things as well) is a type mention + // for the trait applied to its own type parameters. + // + // We arbitrarily use the `TypeBoundList` inside `DynTraitTypeRepr` to encode + // this type mention, since it doesn't syntactically appear in the AST. This + // works because there is a one-to-one correspondence between a trait object and + // its list of type bounds. + class DynTypeBoundListMention extends TypeMentionImpl instanceof TypeBoundList { + private Trait trait; + + DynTypeBoundListMention() { + exists(DynTraitTypeRepr dyn | + // We only need this type mention when the `dyn Trait` is a type + // abstraction, that is, when it's "canonical" and used in + // `conditionSatisfiesConstraint`. + dyn instanceof DynTypeAbstraction and + this = dyn.getTypeBoundList() and + trait = dyn.getTrait() + ) + } - ShorthandReturnTypeMention() { - this = f.getName() and - not f.getRetType().hasTypeRepr() + override Type getTypeAt(TypePath path) { + path.isEmpty() and + result.(DynTraitType).getTrait() = trait + or + exists(DynTraitTypeParameter tp | + trait = tp.getTrait() and + path = TypePath::singleton(tp) and + result = tp.getTraitTypeParameter() + ) + } } - override Type getTypeAt(TypePath typePath) { - typePath.isEmpty() and - result instanceof UnitType + class NeverTypeReprMention extends TypeMentionImpl, NeverTypeRepr { + override Type getTypeAt(TypePath path) { result = TNeverType() and path.isEmpty() } } -} -pragma[nomagic] -TypeMention getReturnTypeMention(Function f) { - result.(ShorthandReturnTypeMention) = f.getName() - or - result = f.getRetType().getTypeRepr() + class PtrTypeReprMention extends TypeMentionImpl instanceof PtrTypeRepr { + private PtrType resolveRootType() { + super.isConst() and result instanceof PtrConstType + or + super.isMut() and result instanceof PtrMutType + } + + override Type getTypeAt(TypePath path) { + path.isEmpty() and result = this.resolveRootType() + or + exists(TypePath suffix | + result = super.getTypeRepr().(TypeMention).getTypeAt(suffix) and + path = TypePath::cons(this.resolveRootType().getPositionalTypeParameter(0), suffix) + ) + } + } } -class DynTraitTypeReprMention extends TypeMention instanceof DynTraitTypeRepr { - private DynTraitType dynType; +private Type preGetAdditionalPathTypeAt(Path p, TypePath typePath) { none() } - DynTraitTypeReprMention() { - // This excludes `DynTraitTypeRepr` elements where `getTrait` is not - // defined, i.e., where path resolution can't find a trait. - dynType.getTrait() = super.getTrait() - } +private module PreTypeMention = MkTypeMention; - override Type getTypeAt(TypePath path) { - path.isEmpty() and - result = dynType - or - exists(DynTraitTypeParameter tp, TypePath path0, TypePath suffix | - dynType = tp.getDynTraitType() and - path = TypePath::cons(tp, suffix) and - result = super.getTypeBoundList().getBound(0).getTypeRepr().(TypeMention).getTypeAt(path0) and - path0.isCons(tp.getTraitTypeParameter(), suffix) - ) - } -} +class PreTypeMention = PreTypeMention::TypeMention; -// We want a type of the form `dyn Trait` to implement `Trait`. If `Trait` has -// type parameters then `dyn Trait` has equivalent type parameters and the -// implementation should be abstracted over them. -// -// Intuitively we want something to the effect of: -// ``` -// impl Trait for (dyn Trait) -// ``` -// To achieve this: -// - `DynTypeAbstraction` is an abstraction over the type parameters of the trait. -// - `DynTypeBoundListMention` (this class) is a type mention which has `dyn -// Trait` at the root and which for every type parameter of `dyn Trait` has the -// corresponding type parameter of the trait. -// - `TraitMention` (which is used for other things as well) is a type mention -// for the trait applied to its own type parameters. -// -// We arbitrarily use the `TypeBoundList` inside `DynTraitTypeRepr` to encode -// this type mention, since it doesn't syntactically appear in the AST. This -// works because there is a one-to-one correspondence between a trait object and -// its list of type bounds. -class DynTypeBoundListMention extends TypeMention instanceof TypeBoundList { - private Trait trait; - - DynTypeBoundListMention() { - exists(DynTraitTypeRepr dyn | - // We only need this type mention when the `dyn Trait` is a type - // abstraction, that is, when it's "canonical" and used in - // `conditionSatisfiesConstraint`. - dyn instanceof DynTypeAbstraction and - this = dyn.getTypeBoundList() and - trait = dyn.getTrait() +/** + * Holds if `path` accesses an associated type `alias` from `trait` on a + * concrete type given by `tm`. + */ +private predicate pathConcreteTypeAssocType( + Path path, PreTypeMention tm, Trait trait, TypeAlias alias +) { + exists(Path qualifier | + qualifier = path.getQualifier() and + not resolvePath(tm.(PathTypeRepr).getPath()) instanceof TypeParam + | + // path of the form `::AssocType` + // ^^^ tm ^^^^^^^^^ name + exists(string name, Path traitPath | + pathTypeAsTraitAssoc(path, tm, traitPath, name) and + trait = resolvePath(traitPath) and + getTraitAssocType(trait, name) = alias ) - } - - override Type getTypeAt(TypePath path) { - path.isEmpty() and - result.(DynTraitType).getTrait() = trait or - exists(DynTraitTypeParameter tp | - trait = tp.getTrait() and - path = TypePath::singleton(tp) and - result = tp.getTraitTypeParameter() + // path of the form `Self::AssocType` within an `impl` block + // tm ^^^^ ^^^^^^^^^ name + exists(ImplItemNode impl | + alias = resolvePath(path) and + qualifier = impl.getASelfPath() and + tm = impl.(Impl).getSelfTy() and + trait.(TraitItemNode).getAnAssocItem() = alias ) - } + ) } -class NeverTypeReprMention extends TypeMention, NeverTypeRepr { - override Type getTypeAt(TypePath path) { result = TNeverType() and path.isEmpty() } +private module PathSatisfiesConstraintInput implements SatisfiesConstraintInputSig { + predicate relevantConstraint(PreTypeMention tm, Type constraint) { + pathConcreteTypeAssocType(_, tm, constraint.(TraitType).getTrait(), _) + } } -class PtrTypeReprMention extends TypeMention instanceof PtrTypeRepr { - private PtrType resolveRootType() { - super.isConst() and result instanceof PtrConstType - or - super.isMut() and result instanceof PtrMutType - } +private module PathSatisfiesConstraint = + SatisfiesConstraint; - override Type getTypeAt(TypePath path) { - path.isEmpty() and result = this.resolveRootType() - or - exists(TypePath suffix | - result = super.getTypeRepr().(TypeMention).getTypeAt(suffix) and - path = TypePath::cons(this.resolveRootType().getPositionalTypeParameter(0), suffix) - ) - } +/** + * Gets the type of `path` at `typePath` when `path` accesses an associated type + * on a concrete type. + */ +private Type getPathConcreteAssocTypeAt(Path path, TypePath typePath) { + exists(PreTypeMention tm, TraitItemNode t, TypeAlias alias, TypePath path0 | + pathConcreteTypeAssocType(path, tm, t, alias) and + PathSatisfiesConstraint::satisfiesConstraintType(tm, TTrait(t), path0, result) and + path0.isCons(TAssociatedTypeTypeParameter(t, alias), typePath) + ) } + +import MkTypeMention diff --git a/rust/ql/lib/qlpack.yml b/rust/ql/lib/qlpack.yml index 4f33822af63e..f7428ef10877 100644 --- a/rust/ql/lib/qlpack.yml +++ b/rust/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rust-all -version: 0.2.5 +version: 0.2.7-dev groups: rust extractor: rust dbscheme: rust.dbscheme diff --git a/rust/ql/lib/utils/test/PathResolutionInlineExpectationsTest.qll b/rust/ql/lib/utils/test/PathResolutionInlineExpectationsTest.qll index bde96ace1a4a..f4544cafacc1 100644 --- a/rust/ql/lib/utils/test/PathResolutionInlineExpectationsTest.qll +++ b/rust/ql/lib/utils/test/PathResolutionInlineExpectationsTest.qll @@ -8,7 +8,7 @@ private import codeql.rust.internal.typeinference.TypeInference private import utils.test.InlineExpectationsTest private module ResolveTest implements TestSig { - string getARelevantTag() { result = "item" } + string getARelevantTag() { result = ["item", "target", "item_not_target"] } private predicate itemAt(ItemNode i, string filepath, int line) { i.getLocation().hasLocationInfo(filepath, _, _, line, _) @@ -36,19 +36,37 @@ private module ResolveTest implements TestSig { ) } + private Item getCallExprTarget(Path p) { + exists(CallExpr ce | + p = ce.getFunction().(PathExpr).getPath() and + result = ce.getResolvedTarget() + ) + } + predicate hasActualResult(Location location, string element, string tag, string value) { - exists(AstNode n | + exists(AstNode n, ItemNode i | not n = any(Path parent).getQualifier() and location = n.getLocation() and n.fromSource() and not location.getFile().getAbsolutePath().matches("%proc_macro.rs") and not n.isFromMacroExpansion() and element = n.toString() and - tag = "item" + item(i, value) | - item(resolvePath(n), value) + i = resolvePath(n) and + ( + if exists(getCallExprTarget(n)) and not i = getCallExprTarget(n) + then tag = "item_not_target" + else tag = "item" + ) or - item(n.(MethodCallExpr).getStaticTarget(), value) + tag = "target" and + ( + i = n.(MethodCallExpr).getStaticTarget() + or + i = getCallExprTarget(n) and + not i = resolvePath(n) + ) ) } } diff --git a/rust/ql/src/CHANGELOG.md b/rust/ql/src/CHANGELOG.md index fe96ab5baad8..72f10e760fc4 100644 --- a/rust/ql/src/CHANGELOG.md +++ b/rust/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.1.27 + +No user-facing changes. + ## 0.1.26 No user-facing changes. diff --git a/rust/ql/src/change-notes/released/0.1.27.md b/rust/ql/src/change-notes/released/0.1.27.md new file mode 100644 index 000000000000..3e409381bd91 --- /dev/null +++ b/rust/ql/src/change-notes/released/0.1.27.md @@ -0,0 +1,3 @@ +## 0.1.27 + +No user-facing changes. diff --git a/rust/ql/src/codeql-pack.release.yml b/rust/ql/src/codeql-pack.release.yml index e2396c0532fa..35535ba43d50 100644 --- a/rust/ql/src/codeql-pack.release.yml +++ b/rust/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.1.26 +lastReleaseVersion: 0.1.27 diff --git a/rust/ql/src/qlpack.yml b/rust/ql/src/qlpack.yml index 61ff8e48167c..21011bd93d53 100644 --- a/rust/ql/src/qlpack.yml +++ b/rust/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rust-queries -version: 0.1.26 +version: 0.1.28-dev groups: - rust - queries diff --git a/rust/ql/src/queries/summary/NodesWithTypeAtLengthLimit.ql b/rust/ql/src/queries/summary/NodesWithTypeAtLengthLimit.ql index 135bb8098ca1..d8f772b01a64 100644 --- a/rust/ql/src/queries/summary/NodesWithTypeAtLengthLimit.ql +++ b/rust/ql/src/queries/summary/NodesWithTypeAtLengthLimit.ql @@ -3,7 +3,7 @@ * @description Counts the number of AST nodes with a type at the type path length limit. * @kind metric * @id rust/summary/nodes-at-type-path-length-limit - * @tags summary + * @tags summary telemetry */ import rust diff --git a/rust/ql/src/queries/summary/QuerySinkCounts.ql b/rust/ql/src/queries/summary/QuerySinkCounts.ql index ed1c6bee3900..2072dcb342d4 100644 --- a/rust/ql/src/queries/summary/QuerySinkCounts.ql +++ b/rust/ql/src/queries/summary/QuerySinkCounts.ql @@ -5,7 +5,7 @@ * operations are excluded. * @kind metric * @id rust/summary/query-sink-counts - * @tags summary + * @tags summary telemetry */ import rust diff --git a/rust/ql/src/queries/summary/SummaryStats.ql b/rust/ql/src/queries/summary/SummaryStats.ql index 515c78c7268c..47a2c91a9eda 100644 --- a/rust/ql/src/queries/summary/SummaryStats.ql +++ b/rust/ql/src/queries/summary/SummaryStats.ql @@ -3,7 +3,7 @@ * @description A table of summary statistics about a database. * @kind metric * @id rust/summary/summary-statistics - * @tags summary + * @tags summary telemetry */ import rust diff --git a/rust/ql/src/queries/summary/SummaryStatsReduced.ql b/rust/ql/src/queries/summary/SummaryStatsReduced.ql index 47669f9da589..19b36b9224b7 100644 --- a/rust/ql/src/queries/summary/SummaryStatsReduced.ql +++ b/rust/ql/src/queries/summary/SummaryStatsReduced.ql @@ -4,7 +4,7 @@ * has been found to be noisy on tests removed. * @kind metric * @id rust/summary/reduced-summary-statistics - * @tags summary + * @tags summary telemetry */ import rust diff --git a/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected b/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected index 23ac5e722d5c..71fffe00c961 100644 --- a/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected +++ b/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected @@ -1,9 +1,2 @@ multipleResolvedTargets | main.rs:126:9:126:11 | f(...) | -| main.rs:366:9:368:16 | ...::f(...) | -| main.rs:369:9:371:16 | ...::f(...) | -| main.rs:450:9:454:16 | ...::f(...) | -| main.rs:455:9:459:16 | ...::f(...) | -| main.rs:565:9:566:15 | ...::Assoc(...) | -| main.rs:568:9:569:12 | ...::f1(...) | -| main.rs:571:9:572:12 | ...::f1(...) | diff --git a/rust/ql/test/library-tests/path-resolution/main.rs b/rust/ql/test/library-tests/path-resolution/main.rs index 0c60ac9d2d01..c96f9ef30f0a 100644 --- a/rust/ql/test/library-tests/path-resolution/main.rs +++ b/rust/ql/test/library-tests/path-resolution/main.rs @@ -189,18 +189,18 @@ mod m8 { #[rustfmt::skip] pub fn g() { let x = MyStruct {}; // $ item=I50 - MyTrait::f(&x); // $ item=I48 + MyTrait::f(&x); // $ item_not_target=I48 target=I53 MyStruct::f(&x); // $ item=I53 // $ MISSING: item=52 - ::f(&x); // $ MISSING: item=I53 + ::f(&x); // $ item_not_target=I48 target=I53 let x = MyStruct {}; // $ item=I50 - x.f(); // $ item=I53 + x.f(); // $ target=I53 let x = MyStruct {}; // $ item=I50 - x.g(); // $ item=I54 + x.g(); // $ target=I54 MyStruct::h(&x); // $ item=I74 - x.h(); // $ item=I74 + x.h(); // $ target=I74 } // I55 } // I46 @@ -305,7 +305,7 @@ mod m13 { mod m15 { trait Trait1 { - fn f(&self); + fn f(&self); // Trait1::f fn g(&self); // I80 } // I79 @@ -316,8 +316,8 @@ mod m15 { fn f(&self) { println!("m15::Trait2::f"); // $ item=println Self::g(self); // $ item=I80 - self.g(); // $ item=I80 - } + self.g(); // $ target=I80 + } // Trait2::f } // I82 #[rustfmt::skip] @@ -331,7 +331,7 @@ mod m15 { fn f(&self, tt: TT) { // $ item=ITT Self::g(self); // $ item=I80 TT::g(&tt); // $ item=I80 - self.g(); // $ item=I80 + self.g(); // $ target=I80 } } // ITrait3 @@ -343,7 +343,7 @@ mod m15 { fn f(&self) { println!("m15::::f"); // $ item=println Self::g(self); // $ item=I77 - self.g(); // $ item=I77 + self.g(); // $ target=I77 } // I76 fn g(&self) { @@ -365,12 +365,12 @@ mod m15 { let x = S; // $ item=I81 ::f(&x); // $ MISSING: item=I76 + >::f(&x); // $ item_not_target=Trait1::f target=I76 ::f(&x); // $ MISSING: item=I78 + >::f(&x); // $ item_not_target=Trait2::f target=I78 S::g(&x); // $ item=I77 - x.g(); // $ item=I77 + x.g(); // $ target=I77 } // I75 } @@ -379,15 +379,16 @@ mod m16 { trait Trait1< T // I84 > { - fn f(&self) -> T; // $ item=I84 + fn f(&self) -> T // $ item=I84 + ; // Trait1::f fn g(&self) -> T {// $ item=I84 - self.f() // $ item=f + self.f() // $ target=Trait1::f } // I85 fn h(&self) -> T { // $ item=I84 Self::g(&self); // $ item=I85 - self.g() // $ item=I85 + self.g() // $ target=I85 } // I96 const c: T // $ item=I84 @@ -404,9 +405,9 @@ mod m16 { fn f(&self) -> T { // $ item=I87 println!("m16::Trait2::f"); // $ item=println Self::g(self); // $ item=I85 - self.g(); // $ item=I85 + self.g(); // $ target=I85 Self::c // $ item=I94 - } + } // Trait2::f } // I89 struct S; // I90 @@ -419,7 +420,7 @@ mod m16 { fn f(&self) -> S { // $ item=I90 println!("m16::>::f"); // $ item=println Self::g(self); // $ item=I92 - self.g() // $ item=I92 + self.g() // $ target=I92 } // I91 fn g(&self) -> S { // $ item=I90 @@ -451,22 +452,22 @@ mod m16 { as Trait1< S // $ item=I90 > // $ item=I86 - >::f(&x); // $ MISSING: item=I91 + >::f(&x); // $ item_not_target=Trait1::f target=I91 // $ item=I89 - >::f(&x); // $ MISSING: item=I93 + >::f(&x); // $ item_not_target=Trait2::f target=I93 S::g(&x); // $ item=I92 - x.g(); // $ item=I92 + x.g(); // $ target=I92 S::h(&x); // $ item=I96 - x.h(); // $ item=I96 + x.h(); // $ target=I96 S::c; // $ item=I95 // $ item=I86 - >::c; // $ MISSING: item=I95 + >::c; // $ item=I94 } // I83 trait Trait3 { @@ -563,13 +564,13 @@ mod m16 { #[rustfmt::skip] fn foo() { S3:::: // $ item=i32 - Assoc(); // $ item=S3i32AssocFunc $ SPURIOUS: item=S3boolAssocFunc + Assoc(); // $ item=S3i32AssocFunc item_not_target=S3boolAssocFunc S3:::: // $ item=bool - f1(); // $ item=S3boolf1 $ SPURIOUS: item=S3i32f1 + f1(); // $ item=S3boolf1 item_not_target=S3i32f1 S3:::: // $ item=i32 - f1(); // $ item=S3i32f1 $ SPURIOUS: item=S3boolf1 + f1(); // $ item=S3i32f1 item_not_target=S3boolf1 } } @@ -606,6 +607,13 @@ mod trait_visibility { // Only the `Foo` trait is visible use m::Foo; // $ item=Foo X::a_method(&x); // $ item=X_Foo::a_method + + #[rustfmt::skip] + impl X { // $ item=X + fn test(&self) { + Self::a_method(self); // $ item=X_Foo::a_method + } + } } { // Only the `Bar` trait is visible @@ -620,7 +628,7 @@ mod trait_visibility { { // The `Bar` trait is not visible, but we can refer to its method // with a full path. - m::Bar::a_method(&x); // $ item=Bar::a_method + m::Bar::a_method(&x); // $ item_not_target=Bar::a_method target=X_Bar::a_method } } // trait_visibility::f } @@ -644,7 +652,7 @@ mod m17 { fn g(x: T) { // $ item=I5 - x.f(); // $ item=I1 + x.f(); // $ target=I1 T::f(&x); // $ item=I1 MyTrait::f(&x); // $ item=I1 } // I6 @@ -722,12 +730,12 @@ mod m23 { fn f(&self) { println!("m23::>::f"); // $ item=println } // I5 - } + } // implTrait1forS #[rustfmt::skip] pub fn f() { let x = S; // $ item=I4 - x.f(); // $ item=I5 + x.f(); // $ target=I5 } // I108 } @@ -752,7 +760,7 @@ mod m24 { T: TraitA // $ item=I111 item=I1151 { fn call_trait_a(&self) { - self.data.trait_a_method(); // $ item=I110 + self.data.trait_a_method(); // $ target=I110 } // I116 } @@ -764,8 +772,8 @@ mod m24 { T: TraitA, // $ item=I111 item=I1161 { fn call_both(&self) { - self.data.trait_a_method(); // $ item=I110 - self.data.trait_b_method(); // $ item=I112 + self.data.trait_a_method(); // $ target=I110 + self.data.trait_b_method(); // $ target=I112 } // I117 } @@ -790,8 +798,8 @@ mod m24 { let impl_obj = Implementor; // $ item=I118 let generic = GenericStruct { data: impl_obj }; // $ item=I115 - generic.call_trait_a(); // $ item=I116 - generic.call_both(); // $ item=I117 + generic.call_trait_a(); // $ target=I116 + generic.call_both(); // $ target=I117 // Access through where clause type parameter constraint GenericStruct::::call_trait_a(&generic); // $ item=I116 item=I118 @@ -870,6 +878,81 @@ mod associated_types { } } +mod associated_types_subtrait { + trait Super { + type Out; // SuperAssoc + } // Super + + trait Sub: Super // $ item=Super + { + fn f() -> Self::Out // $ item=SuperAssoc + ; // Sub_f + } // Sub + + struct S( + ST, // $ item=ST + ); + + #[rustfmt::skip] + impl Super for S { // $ item=Super item=S item=i32 + type Out = char // $ item=char + ; // S::Out + } + + #[rustfmt::skip] + impl Super for S { // $ item=Super item=S item=bool + type Out = i64 // $ item=i64 + ; // S::Out + } + + #[rustfmt::skip] + impl Sub for S { // $ item=Sub item=S item=i32 + fn f() -> Self::Out { // $ item=SuperAssoc + 'a' + } + } + + #[rustfmt::skip] + impl Sub for S { // $ item=Sub item=S item=bool + fn f() -> Self::Out { // $ item=SuperAssoc + 1 + } + } + + trait SuperAlt { + type Out; // SuperAltAssoc + } // SuperAlt + + trait SubAlt: SuperAlt // $ item=SuperAlt + { + fn f(self) -> Self::Out // $ item=SuperAltAssoc + ; // SubAlt_f + } // SubAlt + + #[rustfmt::skip] + impl SuperAlt for S { // $ item=SuperAlt item=S item=A + type Out = A // $ item=A + ; // S::Out + } + + #[rustfmt::skip] + impl SubAlt for S { // $ item=SubAlt item=S item=A + fn f(self) -> Self::Out { // $ item=SuperAltAssoc + self.0 + } + } + + #[rustfmt::skip] + impl S { // $ item=S item=bool + fn _test() { + let _c: as Super>::Out = 'a'; // $ item=S item=i32 item=Super item=SuperAssoc + let _i: as Super>::Out = 1; // $ item=S item=bool item=Super item=SuperAssoc + + let _b: as SuperAlt>::Out = true; // $ item=S item=bool item=SuperAlt item=SuperAltAssoc + } + } +} + use std::{self as ztd}; // $ item=std fn use_ztd(x: ztd::string::String) {} // $ item=String @@ -984,6 +1067,37 @@ mod self_constructors { } } +/// Tests for using `Self` in type definitions. +mod self_types { + struct NonEmptyListStruct { + head: T, // $ item=T + tail: Option>, // $ item=Option item=Box item=NonEmptyListStruct + } + + enum NonEmptyListEnum { + Single(T), // $ item=T + Cons(T, Box), // $ item=T item=Box item=NonEmptyListEnum + } + + #[rustfmt::skip] + impl NonEmptyListEnum { // $ item=NonEmptyListEnum item=i32 + fn new_single(value: i32) -> Self { // $ item=i32 item=NonEmptyListEnum + use NonEmptyListEnum::*; // $ item=NonEmptyListEnum + Self::Single(value) // $ item=Single + } + } + + #[rustfmt::skip] + union NonEmptyListUnion< + 'a, + T // T + : Copy // $ item=Copy + > { + single: T, // $ item=T + cons: (T, &'a Self), // $ item=T item=NonEmptyListUnion + } +} + fn main() { my::nested::nested1::nested2::f(); // $ item=I4 my::f(); // $ item=I38 @@ -1018,7 +1132,7 @@ fn main() { zelf::h(); // $ item=I25 z_changed(); // $ item=I122 AStruct::z_on_type(); // $ item=I124 - AStruct {}.z_on_instance(); // $ item=I123 item=I125 + AStruct {}.z_on_instance(); // $ item=I123 target=I125 impl_with_attribute_macro::test(); // $ item=impl_with_attribute_macro::test patterns::test(); // $ item=patterns::test } diff --git a/rust/ql/test/library-tests/path-resolution/my.rs b/rust/ql/test/library-tests/path-resolution/my.rs index 612e40d493f9..c506ba3c196a 100644 --- a/rust/ql/test/library-tests/path-resolution/my.rs +++ b/rust/ql/test/library-tests/path-resolution/my.rs @@ -30,7 +30,7 @@ fn int_div( ) -> Result // $ item=my::Result $ item=i32 { if y == 0 { - return Err("Div by zero".to_string()); // $ item=Err item=to_string + return Err("Div by zero".to_string()); // $ item=Err target=to_string } Ok(x / y) // $ item=Ok } diff --git a/rust/ql/test/library-tests/path-resolution/path-resolution.expected b/rust/ql/test/library-tests/path-resolution/path-resolution.expected index b204368cdb53..153d80db4cca 100644 --- a/rust/ql/test/library-tests/path-resolution/path-resolution.expected +++ b/rust/ql/test/library-tests/path-resolution/path-resolution.expected @@ -18,22 +18,24 @@ mod | main.rs:291:1:304:1 | mod m13 | | main.rs:295:5:303:5 | mod m14 | | main.rs:306:1:375:1 | mod m15 | -| main.rs:377:1:574:1 | mod m16 | -| main.rs:576:1:626:1 | mod trait_visibility | -| main.rs:577:5:599:5 | mod m | -| main.rs:628:1:658:1 | mod m17 | -| main.rs:660:1:678:1 | mod m18 | -| main.rs:665:5:677:5 | mod m19 | -| main.rs:670:9:676:9 | mod m20 | -| main.rs:680:1:705:1 | mod m21 | -| main.rs:681:5:687:5 | mod m22 | -| main.rs:689:5:704:5 | mod m33 | -| main.rs:707:1:732:1 | mod m23 | -| main.rs:734:1:802:1 | mod m24 | -| main.rs:819:1:871:1 | mod associated_types | -| main.rs:877:1:896:1 | mod impl_with_attribute_macro | -| main.rs:898:1:939:1 | mod patterns | -| main.rs:941:1:985:1 | mod self_constructors | +| main.rs:377:1:575:1 | mod m16 | +| main.rs:577:1:634:1 | mod trait_visibility | +| main.rs:578:5:600:5 | mod m | +| main.rs:636:1:666:1 | mod m17 | +| main.rs:668:1:686:1 | mod m18 | +| main.rs:673:5:685:5 | mod m19 | +| main.rs:678:9:684:9 | mod m20 | +| main.rs:688:1:713:1 | mod m21 | +| main.rs:689:5:695:5 | mod m22 | +| main.rs:697:5:712:5 | mod m33 | +| main.rs:715:1:740:1 | mod m23 | +| main.rs:742:1:810:1 | mod m24 | +| main.rs:827:1:879:1 | mod associated_types | +| main.rs:881:1:954:1 | mod associated_types_subtrait | +| main.rs:960:1:979:1 | mod impl_with_attribute_macro | +| main.rs:981:1:1022:1 | mod patterns | +| main.rs:1024:1:1068:1 | mod self_constructors | +| main.rs:1070:1:1099:1 | mod self_types | | my2/mod.rs:1:1:1:16 | mod nested2 | | my2/mod.rs:20:1:20:12 | mod my3 | | my2/mod.rs:22:1:23:10 | mod mymod | @@ -74,7 +76,7 @@ resolvePath | main.rs:37:17:37:24 | ...::f | main.rs:26:9:28:9 | fn f | | main.rs:39:17:39:23 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:40:17:40:17 | f | main.rs:26:9:28:9 | fn f | -| main.rs:47:9:47:13 | super | main.rs:1:1:1024:2 | SourceFile | +| main.rs:47:9:47:13 | super | main.rs:1:1:1138:2 | SourceFile | | main.rs:47:9:47:17 | ...::m1 | main.rs:20:1:44:1 | mod m1 | | main.rs:47:9:47:21 | ...::m2 | main.rs:25:5:43:5 | mod m2 | | main.rs:47:9:47:24 | ...::g | main.rs:30:9:34:9 | fn g | @@ -89,7 +91,7 @@ resolvePath | main.rs:68:17:68:19 | Foo | main.rs:66:9:66:21 | struct Foo | | main.rs:71:13:71:15 | Foo | main.rs:60:5:60:17 | struct Foo | | main.rs:73:5:73:5 | f | main.rs:62:5:69:5 | fn f | -| main.rs:75:5:75:8 | self | main.rs:1:1:1024:2 | SourceFile | +| main.rs:75:5:75:8 | self | main.rs:1:1:1138:2 | SourceFile | | main.rs:75:5:75:11 | ...::i | main.rs:78:1:90:1 | fn i | | main.rs:79:5:79:11 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:81:13:81:15 | Foo | main.rs:55:1:55:13 | struct Foo | @@ -111,7 +113,7 @@ resolvePath | main.rs:112:9:112:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:118:9:118:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:122:9:122:15 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:125:13:125:17 | super | main.rs:1:1:1024:2 | SourceFile | +| main.rs:125:13:125:17 | super | main.rs:1:1:1138:2 | SourceFile | | main.rs:125:13:125:21 | ...::m5 | main.rs:110:1:114:1 | mod m5 | | main.rs:126:9:126:9 | f | main.rs:111:5:113:5 | fn f | | main.rs:126:9:126:9 | f | main.rs:117:5:119:5 | fn f | @@ -134,7 +136,7 @@ resolvePath | main.rs:169:22:169:29 | MyStruct | main.rs:162:5:162:22 | struct MyStruct | | main.rs:171:13:171:19 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:172:13:172:13 | f | main.rs:164:5:166:5 | fn f | -| main.rs:173:13:173:16 | Self | main.rs:162:5:162:22 | struct MyStruct | +| main.rs:173:13:173:16 | Self | main.rs:168:5:179:5 | impl MyTrait for MyStruct { ... } | | main.rs:173:13:173:19 | ...::g | main.rs:176:9:178:9 | fn g | | main.rs:177:13:177:19 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:182:10:182:17 | MyStruct | main.rs:162:5:162:22 | struct MyStruct | @@ -145,6 +147,8 @@ resolvePath | main.rs:192:9:192:18 | ...::f | main.rs:153:9:153:20 | fn f | | main.rs:193:9:193:16 | MyStruct | main.rs:162:5:162:22 | struct MyStruct | | main.rs:193:9:193:19 | ...::f | main.rs:169:33:174:9 | fn f | +| main.rs:194:9:196:9 | <...> | main.rs:152:5:160:5 | trait MyTrait | +| main.rs:194:9:197:11 | ...::f | main.rs:153:9:153:20 | fn f | | main.rs:194:10:194:17 | MyStruct | main.rs:162:5:162:22 | struct MyStruct | | main.rs:195:10:195:16 | MyTrait | main.rs:152:5:160:5 | trait MyTrait | | main.rs:198:17:198:24 | MyStruct | main.rs:162:5:162:22 | struct MyStruct | @@ -198,7 +202,7 @@ resolvePath | main.rs:341:10:341:15 | Trait1 | main.rs:307:5:311:5 | trait Trait1 | | main.rs:342:11:342:11 | S | main.rs:338:5:338:13 | struct S | | main.rs:344:13:344:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:345:13:345:16 | Self | main.rs:338:5:338:13 | struct S | +| main.rs:345:13:345:16 | Self | main.rs:340:5:352:5 | impl Trait1 for S { ... } | | main.rs:345:13:345:19 | ...::g | main.rs:349:9:351:9 | fn g | | main.rs:350:13:350:19 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:355:10:355:15 | Trait2 | main.rs:313:5:321:5 | trait Trait2 | @@ -206,367 +210,450 @@ resolvePath | main.rs:358:13:358:19 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:364:9:364:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:365:17:365:17 | S | main.rs:338:5:338:13 | struct S | +| main.rs:366:9:368:9 | <...> | main.rs:307:5:311:5 | trait Trait1 | +| main.rs:366:9:368:12 | ...::f | main.rs:308:9:308:20 | fn f | | main.rs:366:10:366:10 | S | main.rs:338:5:338:13 | struct S | | main.rs:367:14:367:19 | Trait1 | main.rs:307:5:311:5 | trait Trait1 | +| main.rs:369:9:371:9 | <...> | main.rs:313:5:321:5 | trait Trait2 | +| main.rs:369:9:371:12 | ...::f | main.rs:315:18:320:9 | fn f | | main.rs:369:10:369:10 | S | main.rs:338:5:338:13 | struct S | | main.rs:370:14:370:19 | Trait2 | main.rs:313:5:321:5 | trait Trait2 | | main.rs:372:9:372:9 | S | main.rs:338:5:338:13 | struct S | | main.rs:372:9:372:12 | ...::g | main.rs:349:9:351:9 | fn g | | main.rs:382:24:382:24 | T | main.rs:380:7:380:7 | T | -| main.rs:384:24:384:24 | T | main.rs:380:7:380:7 | T | -| main.rs:388:24:388:24 | T | main.rs:380:7:380:7 | T | -| main.rs:389:13:389:16 | Self | main.rs:378:5:395:5 | trait Trait1 | -| main.rs:389:13:389:19 | ...::g | main.rs:384:9:386:9 | fn g | -| main.rs:393:18:393:18 | T | main.rs:380:7:380:7 | T | -| main.rs:401:9:403:9 | Trait1::<...> | main.rs:378:5:395:5 | trait Trait1 | -| main.rs:402:11:402:11 | T | main.rs:399:7:399:7 | T | -| main.rs:404:24:404:24 | T | main.rs:399:7:399:7 | T | -| main.rs:405:13:405:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:406:13:406:16 | Self | main.rs:397:5:410:5 | trait Trait2 | -| main.rs:406:13:406:19 | ...::g | main.rs:384:9:386:9 | fn g | -| main.rs:408:13:408:16 | Self | main.rs:397:5:410:5 | trait Trait2 | -| main.rs:408:13:408:19 | ...::c | main.rs:393:9:394:9 | Const | -| main.rs:415:10:417:5 | Trait1::<...> | main.rs:378:5:395:5 | trait Trait1 | -| main.rs:416:7:416:7 | S | main.rs:412:5:412:13 | struct S | -| main.rs:418:11:418:11 | S | main.rs:412:5:412:13 | struct S | -| main.rs:419:24:419:24 | S | main.rs:412:5:412:13 | struct S | -| main.rs:420:13:420:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:421:13:421:16 | Self | main.rs:412:5:412:13 | struct S | -| main.rs:421:13:421:19 | ...::g | main.rs:425:9:428:9 | fn g | -| main.rs:425:24:425:24 | S | main.rs:412:5:412:13 | struct S | -| main.rs:426:13:426:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:427:13:427:16 | Self | main.rs:412:5:412:13 | struct S | -| main.rs:427:13:427:19 | ...::c | main.rs:430:9:431:9 | Const | -| main.rs:430:18:430:18 | S | main.rs:412:5:412:13 | struct S | -| main.rs:430:22:430:22 | S | main.rs:412:5:412:13 | struct S | -| main.rs:435:10:437:5 | Trait2::<...> | main.rs:397:5:410:5 | trait Trait2 | -| main.rs:436:7:436:7 | S | main.rs:412:5:412:13 | struct S | -| main.rs:438:11:438:11 | S | main.rs:412:5:412:13 | struct S | -| main.rs:439:24:439:24 | S | main.rs:412:5:412:13 | struct S | -| main.rs:440:13:440:16 | Self | main.rs:412:5:412:13 | struct S | -| main.rs:440:13:440:19 | ...::g | main.rs:425:9:428:9 | fn g | -| main.rs:441:13:441:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:442:13:442:16 | Self | main.rs:412:5:412:13 | struct S | -| main.rs:442:13:442:19 | ...::c | main.rs:430:9:431:9 | Const | -| main.rs:448:9:448:15 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:449:17:449:17 | S | main.rs:412:5:412:13 | struct S | -| main.rs:450:10:450:10 | S | main.rs:412:5:412:13 | struct S | -| main.rs:451:14:453:11 | Trait1::<...> | main.rs:378:5:395:5 | trait Trait1 | -| main.rs:452:13:452:13 | S | main.rs:412:5:412:13 | struct S | -| main.rs:455:10:455:10 | S | main.rs:412:5:412:13 | struct S | -| main.rs:456:14:458:11 | Trait2::<...> | main.rs:397:5:410:5 | trait Trait2 | -| main.rs:457:13:457:13 | S | main.rs:412:5:412:13 | struct S | -| main.rs:460:9:460:9 | S | main.rs:412:5:412:13 | struct S | -| main.rs:460:9:460:12 | ...::g | main.rs:425:9:428:9 | fn g | -| main.rs:462:9:462:9 | S | main.rs:412:5:412:13 | struct S | -| main.rs:462:9:462:12 | ...::h | main.rs:388:9:391:9 | fn h | -| main.rs:464:9:464:9 | S | main.rs:412:5:412:13 | struct S | -| main.rs:464:9:464:12 | ...::c | main.rs:430:9:431:9 | Const | -| main.rs:465:10:465:10 | S | main.rs:412:5:412:13 | struct S | -| main.rs:466:14:468:11 | Trait1::<...> | main.rs:378:5:395:5 | trait Trait1 | -| main.rs:467:13:467:13 | S | main.rs:412:5:412:13 | struct S | -| main.rs:487:10:487:15 | Trait3 | main.rs:472:5:476:5 | trait Trait3 | -| main.rs:487:21:487:22 | S2 | main.rs:484:5:484:14 | struct S2 | -| main.rs:488:26:488:28 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:492:20:492:23 | Self | main.rs:484:5:484:14 | struct S2 | -| main.rs:492:20:492:34 | ...::AssocType | main.rs:487:26:489:9 | type AssocType | -| main.rs:497:10:497:15 | Trait4 | main.rs:478:5:482:5 | trait Trait4 | -| main.rs:497:21:497:22 | S2 | main.rs:484:5:484:14 | struct S2 | -| main.rs:498:26:498:29 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:502:13:502:16 | Self | main.rs:484:5:484:14 | struct S2 | -| main.rs:502:13:502:19 | ...::f | main.rs:489:11:493:9 | fn f | -| main.rs:503:13:503:14 | S2 | main.rs:484:5:484:14 | struct S2 | -| main.rs:503:13:503:17 | ...::f | main.rs:489:11:493:9 | fn f | -| main.rs:504:20:504:23 | Self | main.rs:484:5:484:14 | struct S2 | -| main.rs:504:20:504:34 | ...::AssocType | main.rs:497:26:499:9 | type AssocType | -| main.rs:511:23:511:26 | Self | main.rs:508:5:512:5 | trait Trait5 | -| main.rs:511:23:511:33 | ...::Assoc | main.rs:509:9:509:19 | type Assoc | -| main.rs:515:10:515:15 | Trait5 | main.rs:508:5:512:5 | trait Trait5 | -| main.rs:515:21:515:21 | S | main.rs:412:5:412:13 | struct S | -| main.rs:516:22:516:24 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:520:16:520:19 | Self | main.rs:412:5:412:13 | struct S | -| main.rs:520:16:520:26 | ...::Assoc | main.rs:515:25:517:9 | type Assoc | -| main.rs:521:13:521:16 | Self | main.rs:412:5:412:13 | struct S | -| main.rs:521:13:521:23 | ...::Assoc | main.rs:519:9:522:9 | fn Assoc | -| main.rs:525:19:525:20 | T3 | main.rs:525:15:525:16 | T3 | -| main.rs:528:10:528:15 | Trait5 | main.rs:508:5:512:5 | trait Trait5 | -| main.rs:528:21:528:27 | S3::<...> | main.rs:525:5:525:22 | struct S3 | -| main.rs:528:24:528:26 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:529:22:529:24 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:533:16:533:19 | Self | main.rs:525:5:525:22 | struct S3 | -| main.rs:533:16:533:26 | ...::Assoc | main.rs:528:31:530:9 | type Assoc | -| main.rs:534:13:534:16 | Self | main.rs:525:5:525:22 | struct S3 | -| main.rs:534:13:534:23 | ...::Assoc | main.rs:532:9:535:9 | fn Assoc | -| main.rs:539:10:539:15 | Trait5 | main.rs:508:5:512:5 | trait Trait5 | -| main.rs:539:21:539:28 | S3::<...> | main.rs:525:5:525:22 | struct S3 | -| main.rs:539:24:539:27 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:540:22:540:25 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:544:16:544:19 | Self | main.rs:525:5:525:22 | struct S3 | -| main.rs:544:16:544:26 | ...::Assoc | main.rs:539:32:541:9 | type Assoc | -| main.rs:545:14:545:17 | Self | main.rs:525:5:525:22 | struct S3 | -| main.rs:545:14:545:24 | ...::Assoc | main.rs:543:9:546:9 | fn Assoc | -| main.rs:550:10:550:16 | S3::<...> | main.rs:525:5:525:22 | struct S3 | -| main.rs:550:13:550:15 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:551:20:551:22 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:557:10:557:17 | S3::<...> | main.rs:525:5:525:22 | struct S3 | -| main.rs:557:13:557:16 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:558:20:558:23 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:565:9:565:17 | S3::<...> | main.rs:525:5:525:22 | struct S3 | -| main.rs:565:9:566:13 | ...::Assoc | main.rs:532:9:535:9 | fn Assoc | -| main.rs:565:9:566:13 | ...::Assoc | main.rs:543:9:546:9 | fn Assoc | -| main.rs:565:14:565:16 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:568:9:568:18 | S3::<...> | main.rs:525:5:525:22 | struct S3 | -| main.rs:568:9:569:10 | ...::f1 | main.rs:550:20:553:9 | fn f1 | -| main.rs:568:9:569:10 | ...::f1 | main.rs:557:21:560:9 | fn f1 | -| main.rs:568:14:568:17 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:571:9:571:17 | S3::<...> | main.rs:525:5:525:22 | struct S3 | -| main.rs:571:9:572:10 | ...::f1 | main.rs:550:20:553:9 | fn f1 | -| main.rs:571:9:572:10 | ...::f1 | main.rs:557:21:560:9 | fn f1 | -| main.rs:571:14:571:16 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:588:14:588:16 | Foo | main.rs:578:9:580:9 | trait Foo | -| main.rs:588:22:588:22 | X | main.rs:586:9:586:21 | struct X | -| main.rs:590:17:590:23 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:594:14:594:16 | Bar | main.rs:582:9:584:9 | trait Bar | -| main.rs:594:22:594:22 | X | main.rs:586:9:586:21 | struct X | -| main.rs:596:17:596:23 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:601:9:601:9 | m | main.rs:577:5:599:5 | mod m | -| main.rs:601:9:601:12 | ...::X | main.rs:586:9:586:21 | struct X | -| main.rs:604:17:604:17 | X | main.rs:586:9:586:21 | struct X | -| main.rs:607:17:607:17 | m | main.rs:577:5:599:5 | mod m | -| main.rs:607:17:607:22 | ...::Foo | main.rs:578:9:580:9 | trait Foo | -| main.rs:608:13:608:13 | X | main.rs:586:9:586:21 | struct X | -| main.rs:608:13:608:23 | ...::a_method | main.rs:588:26:591:13 | fn a_method | -| main.rs:612:17:612:17 | m | main.rs:577:5:599:5 | mod m | -| main.rs:612:17:612:22 | ...::Bar | main.rs:582:9:584:9 | trait Bar | -| main.rs:613:13:613:13 | X | main.rs:586:9:586:21 | struct X | -| main.rs:613:13:613:23 | ...::a_method | main.rs:594:26:597:13 | fn a_method | -| main.rs:617:17:617:17 | m | main.rs:577:5:599:5 | mod m | -| main.rs:617:17:617:22 | ...::Bar | main.rs:582:9:584:9 | trait Bar | -| main.rs:618:13:618:13 | X | main.rs:586:9:586:21 | struct X | -| main.rs:618:13:618:23 | ...::a_method | main.rs:594:26:597:13 | fn a_method | -| main.rs:623:13:623:13 | m | main.rs:577:5:599:5 | mod m | -| main.rs:623:13:623:18 | ...::Bar | main.rs:582:9:584:9 | trait Bar | -| main.rs:623:13:623:28 | ...::a_method | main.rs:583:13:583:31 | fn a_method | -| main.rs:636:10:636:16 | MyTrait | main.rs:629:5:631:5 | trait MyTrait | -| main.rs:637:9:637:9 | S | main.rs:633:5:633:13 | struct S | -| main.rs:639:13:639:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:645:7:645:13 | MyTrait | main.rs:629:5:631:5 | trait MyTrait | -| main.rs:646:10:646:10 | T | main.rs:644:10:644:10 | T | -| main.rs:648:9:648:9 | T | main.rs:644:10:644:10 | T | -| main.rs:648:9:648:12 | ...::f | main.rs:630:9:630:20 | fn f | -| main.rs:649:9:649:15 | MyTrait | main.rs:629:5:631:5 | trait MyTrait | -| main.rs:649:9:649:18 | ...::f | main.rs:630:9:630:20 | fn f | -| main.rs:654:9:654:9 | g | main.rs:643:5:650:5 | fn g | -| main.rs:655:11:655:11 | S | main.rs:633:5:633:13 | struct S | -| main.rs:662:9:662:15 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:667:13:667:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:672:17:672:23 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:673:17:673:21 | super | main.rs:665:5:677:5 | mod m19 | -| main.rs:673:17:673:24 | ...::f | main.rs:666:9:668:9 | fn f | -| main.rs:674:17:674:21 | super | main.rs:665:5:677:5 | mod m19 | -| main.rs:674:17:674:28 | ...::super | main.rs:660:1:678:1 | mod m18 | -| main.rs:674:17:674:31 | ...::f | main.rs:661:5:663:5 | fn f | -| main.rs:691:13:691:17 | super | main.rs:680:1:705:1 | mod m21 | -| main.rs:691:13:691:22 | ...::m22 | main.rs:681:5:687:5 | mod m22 | -| main.rs:691:13:691:30 | ...::MyEnum | main.rs:682:9:684:9 | enum MyEnum | -| main.rs:692:13:692:16 | self | main.rs:682:9:684:9 | enum MyEnum | -| main.rs:696:13:696:17 | super | main.rs:680:1:705:1 | mod m21 | -| main.rs:696:13:696:22 | ...::m22 | main.rs:681:5:687:5 | mod m22 | -| main.rs:696:13:696:32 | ...::MyStruct | main.rs:686:9:686:28 | struct MyStruct | -| main.rs:697:13:697:16 | self | main.rs:686:9:686:28 | struct MyStruct | -| main.rs:701:21:701:26 | MyEnum | main.rs:682:9:684:9 | enum MyEnum | -| main.rs:701:21:701:29 | ...::A | main.rs:683:13:683:13 | A | -| main.rs:702:21:702:28 | MyStruct | main.rs:686:9:686:28 | struct MyStruct | -| main.rs:718:10:720:5 | Trait1::<...> | main.rs:708:5:713:5 | trait Trait1 | -| main.rs:719:7:719:10 | Self | main.rs:715:5:715:13 | struct S | -| main.rs:721:11:721:11 | S | main.rs:715:5:715:13 | struct S | -| main.rs:723:13:723:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:729:17:729:17 | S | main.rs:715:5:715:13 | struct S | -| main.rs:745:15:745:15 | T | main.rs:744:26:744:26 | T | -| main.rs:750:9:750:24 | GenericStruct::<...> | main.rs:743:5:746:5 | struct GenericStruct | -| main.rs:750:23:750:23 | T | main.rs:749:10:749:10 | T | -| main.rs:752:9:752:9 | T | main.rs:749:10:749:10 | T | -| main.rs:752:12:752:17 | TraitA | main.rs:735:5:737:5 | trait TraitA | -| main.rs:761:9:761:24 | GenericStruct::<...> | main.rs:743:5:746:5 | struct GenericStruct | -| main.rs:761:23:761:23 | T | main.rs:760:10:760:10 | T | -| main.rs:763:9:763:9 | T | main.rs:760:10:760:10 | T | -| main.rs:763:12:763:17 | TraitB | main.rs:739:5:741:5 | trait TraitB | -| main.rs:764:9:764:9 | T | main.rs:760:10:760:10 | T | -| main.rs:764:12:764:17 | TraitA | main.rs:735:5:737:5 | trait TraitA | -| main.rs:775:10:775:15 | TraitA | main.rs:735:5:737:5 | trait TraitA | -| main.rs:775:21:775:31 | Implementor | main.rs:772:5:772:23 | struct Implementor | -| main.rs:777:13:777:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:782:10:782:15 | TraitB | main.rs:739:5:741:5 | trait TraitB | -| main.rs:782:21:782:31 | Implementor | main.rs:772:5:772:23 | struct Implementor | -| main.rs:784:13:784:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:790:24:790:34 | Implementor | main.rs:772:5:772:23 | struct Implementor | -| main.rs:791:23:791:35 | GenericStruct | main.rs:743:5:746:5 | struct GenericStruct | -| main.rs:797:9:797:36 | GenericStruct::<...> | main.rs:743:5:746:5 | struct GenericStruct | -| main.rs:797:9:797:50 | ...::call_trait_a | main.rs:754:9:756:9 | fn call_trait_a | -| main.rs:797:25:797:35 | Implementor | main.rs:772:5:772:23 | struct Implementor | -| main.rs:800:9:800:36 | GenericStruct::<...> | main.rs:743:5:746:5 | struct GenericStruct | -| main.rs:800:9:800:47 | ...::call_both | main.rs:766:9:769:9 | fn call_both | -| main.rs:800:25:800:35 | Implementor | main.rs:772:5:772:23 | struct Implementor | -| main.rs:806:3:806:12 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | -| main.rs:806:3:806:24 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | -| main.rs:810:6:810:12 | AStruct | main.rs:809:1:809:17 | struct AStruct | -| main.rs:812:7:812:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | -| main.rs:812:7:812:28 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | -| main.rs:815:7:815:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | -| main.rs:815:7:815:28 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | -| main.rs:820:9:820:11 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:820:9:820:19 | ...::marker | {EXTERNAL LOCATION} | mod marker | -| main.rs:820:9:820:32 | ...::PhantomData | {EXTERNAL LOCATION} | struct PhantomData | -| main.rs:821:9:821:11 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:821:9:821:19 | ...::result | {EXTERNAL LOCATION} | mod result | -| main.rs:821:9:821:27 | ...::Result | {EXTERNAL LOCATION} | enum Result | -| main.rs:829:19:829:22 | Self | main.rs:823:5:831:5 | trait Reduce | -| main.rs:829:19:829:29 | ...::Input | main.rs:824:9:824:19 | type Input | -| main.rs:830:14:830:46 | Result::<...> | {EXTERNAL LOCATION} | enum Result | -| main.rs:830:21:830:24 | Self | main.rs:823:5:831:5 | trait Reduce | -| main.rs:830:21:830:32 | ...::Output | main.rs:825:21:826:20 | type Output | -| main.rs:830:35:830:38 | Self | main.rs:823:5:831:5 | trait Reduce | -| main.rs:830:35:830:45 | ...::Error | main.rs:824:21:825:19 | type Error | -| main.rs:834:17:834:34 | PhantomData::<...> | {EXTERNAL LOCATION} | struct PhantomData | -| main.rs:834:29:834:33 | Input | main.rs:833:19:833:23 | Input | -| main.rs:835:17:835:34 | PhantomData::<...> | {EXTERNAL LOCATION} | struct PhantomData | -| main.rs:835:29:835:33 | Error | main.rs:833:26:833:30 | Error | -| main.rs:842:11:842:16 | Reduce | main.rs:823:5:831:5 | trait Reduce | -| main.rs:843:13:846:9 | MyImpl::<...> | main.rs:833:5:836:5 | struct MyImpl | -| main.rs:844:13:844:17 | Input | main.rs:840:13:840:17 | Input | -| main.rs:845:13:845:17 | Error | main.rs:841:13:841:17 | Error | -| main.rs:848:22:851:9 | Result::<...> | {EXTERNAL LOCATION} | enum Result | -| main.rs:849:13:849:17 | Input | main.rs:840:13:840:17 | Input | -| main.rs:850:13:850:16 | Self | main.rs:833:5:836:5 | struct MyImpl | -| main.rs:850:13:850:23 | ...::Error | main.rs:852:11:856:9 | type Error | -| main.rs:853:22:855:9 | Option::<...> | {EXTERNAL LOCATION} | enum Option | -| main.rs:854:11:854:15 | Error | main.rs:841:13:841:17 | Error | -| main.rs:858:13:858:17 | Input | main.rs:840:13:840:17 | Input | -| main.rs:863:19:863:22 | Self | main.rs:833:5:836:5 | struct MyImpl | -| main.rs:863:19:863:29 | ...::Input | main.rs:848:9:852:9 | type Input | -| main.rs:864:14:867:9 | Result::<...> | {EXTERNAL LOCATION} | enum Result | -| main.rs:865:13:865:16 | Self | main.rs:833:5:836:5 | struct MyImpl | -| main.rs:865:13:865:24 | ...::Output | main.rs:856:11:859:9 | type Output | -| main.rs:866:13:866:16 | Self | main.rs:833:5:836:5 | struct MyImpl | -| main.rs:866:13:866:23 | ...::Error | main.rs:852:11:856:9 | type Error | -| main.rs:873:5:873:7 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:873:11:873:14 | self | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:875:15:875:17 | ztd | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:875:15:875:25 | ...::string | {EXTERNAL LOCATION} | mod string | -| main.rs:875:15:875:33 | ...::String | {EXTERNAL LOCATION} | struct String | -| main.rs:885:7:885:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | -| main.rs:885:7:885:26 | ...::identity | proc_macro.rs:15:1:18:1 | fn identity | -| main.rs:886:10:886:15 | ATrait | main.rs:881:5:883:5 | trait ATrait | -| main.rs:886:21:886:23 | i64 | {EXTERNAL LOCATION} | struct i64 | -| main.rs:888:11:888:13 | i64 | {EXTERNAL LOCATION} | struct i64 | -| main.rs:894:17:894:19 | Foo | main.rs:879:5:879:15 | struct Foo | -| main.rs:900:22:900:32 | Option::<...> | {EXTERNAL LOCATION} | enum Option | -| main.rs:900:29:900:31 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:901:17:901:20 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:902:17:902:27 | Option::<...> | {EXTERNAL LOCATION} | enum Option | -| main.rs:902:24:902:26 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:903:13:903:16 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:904:17:904:20 | None | {EXTERNAL LOCATION} | None | -| main.rs:906:13:906:16 | None | {EXTERNAL LOCATION} | None | -| main.rs:907:17:907:20 | None | {EXTERNAL LOCATION} | None | -| main.rs:916:19:916:29 | Option::<...> | {EXTERNAL LOCATION} | enum Option | -| main.rs:916:26:916:28 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:917:26:917:29 | test | main.rs:899:5:913:5 | fn test | -| main.rs:923:14:923:16 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:928:17:928:20 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:930:13:930:16 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:935:13:935:16 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:935:18:935:18 | z | main.rs:922:5:924:12 | Const | -| main.rs:935:24:935:24 | z | main.rs:922:5:924:12 | Const | -| main.rs:943:24:943:26 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:946:10:946:20 | TupleStruct | main.rs:943:5:943:28 | struct TupleStruct | -| main.rs:948:19:948:21 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:948:27:948:30 | Self | main.rs:943:5:943:28 | struct TupleStruct | -| main.rs:949:21:949:24 | Self | main.rs:943:5:943:28 | struct TupleStruct | -| main.rs:950:31:950:34 | Self | main.rs:943:5:943:28 | struct TupleStruct | -| main.rs:956:12:956:14 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:960:10:960:21 | StructStruct | main.rs:955:5:957:5 | struct StructStruct | -| main.rs:962:19:962:21 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:962:27:962:30 | Self | main.rs:955:5:957:5 | struct StructStruct | -| main.rs:963:13:963:16 | Self | main.rs:955:5:957:5 | struct StructStruct | -| main.rs:969:13:969:15 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:974:10:974:15 | MyEnum | main.rs:967:5:971:5 | enum MyEnum | -| main.rs:975:25:975:27 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:977:17:977:20 | Self | main.rs:967:5:971:5 | enum MyEnum | -| main.rs:977:17:977:23 | ...::A | main.rs:968:9:970:9 | A | -| main.rs:988:5:988:6 | my | main.rs:1:1:1:7 | mod my | -| main.rs:988:5:988:14 | ...::nested | my.rs:1:1:1:15 | mod nested | -| main.rs:988:5:988:23 | ...::nested1 | my/nested.rs:1:1:17:1 | mod nested1 | -| main.rs:988:5:988:32 | ...::nested2 | my/nested.rs:2:5:11:5 | mod nested2 | -| main.rs:988:5:988:35 | ...::f | my/nested.rs:3:9:5:9 | fn f | -| main.rs:989:5:989:6 | my | main.rs:1:1:1:7 | mod my | -| main.rs:989:5:989:9 | ...::f | my.rs:5:1:7:1 | fn f | -| main.rs:990:5:990:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | -| main.rs:990:5:990:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | -| main.rs:990:5:990:29 | ...::nested4 | my2/nested2.rs:2:5:10:5 | mod nested4 | -| main.rs:990:5:990:32 | ...::f | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:991:5:991:5 | f | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:992:5:992:5 | g | my2/nested2.rs:7:9:9:9 | fn g | -| main.rs:993:5:993:9 | crate | main.rs:0:0:0:0 | Crate(main@0.0.1) | -| main.rs:993:5:993:12 | ...::h | main.rs:57:1:76:1 | fn h | -| main.rs:994:5:994:6 | m1 | main.rs:20:1:44:1 | mod m1 | -| main.rs:994:5:994:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | -| main.rs:994:5:994:13 | ...::g | main.rs:30:9:34:9 | fn g | -| main.rs:995:5:995:6 | m1 | main.rs:20:1:44:1 | mod m1 | -| main.rs:995:5:995:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | -| main.rs:995:5:995:14 | ...::m3 | main.rs:36:9:42:9 | mod m3 | -| main.rs:995:5:995:17 | ...::h | main.rs:37:27:41:13 | fn h | -| main.rs:996:5:996:6 | m4 | main.rs:46:1:53:1 | mod m4 | -| main.rs:996:5:996:9 | ...::i | main.rs:49:5:52:5 | fn i | -| main.rs:997:5:997:5 | h | main.rs:57:1:76:1 | fn h | -| main.rs:998:5:998:11 | f_alias | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:999:5:999:11 | g_alias | my2/nested2.rs:7:9:9:9 | fn g | -| main.rs:1000:5:1000:5 | j | main.rs:104:1:108:1 | fn j | -| main.rs:1001:5:1001:6 | m6 | main.rs:116:1:128:1 | mod m6 | -| main.rs:1001:5:1001:9 | ...::g | main.rs:121:5:127:5 | fn g | -| main.rs:1002:5:1002:6 | m7 | main.rs:130:1:149:1 | mod m7 | -| main.rs:1002:5:1002:9 | ...::f | main.rs:141:5:148:5 | fn f | -| main.rs:1003:5:1003:6 | m8 | main.rs:151:1:205:1 | mod m8 | -| main.rs:1003:5:1003:9 | ...::g | main.rs:189:5:204:5 | fn g | -| main.rs:1004:5:1004:6 | m9 | main.rs:207:1:215:1 | mod m9 | -| main.rs:1004:5:1004:9 | ...::f | main.rs:210:5:214:5 | fn f | -| main.rs:1005:5:1005:7 | m11 | main.rs:238:1:275:1 | mod m11 | -| main.rs:1005:5:1005:10 | ...::f | main.rs:243:5:246:5 | fn f | -| main.rs:1006:5:1006:7 | m15 | main.rs:306:1:375:1 | mod m15 | -| main.rs:1006:5:1006:10 | ...::f | main.rs:362:5:374:5 | fn f | -| main.rs:1007:5:1007:7 | m16 | main.rs:377:1:574:1 | mod m16 | -| main.rs:1007:5:1007:10 | ...::f | main.rs:446:5:470:5 | fn f | -| main.rs:1008:5:1008:20 | trait_visibility | main.rs:576:1:626:1 | mod trait_visibility | -| main.rs:1008:5:1008:23 | ...::f | main.rs:603:5:625:5 | fn f | -| main.rs:1009:5:1009:7 | m17 | main.rs:628:1:658:1 | mod m17 | -| main.rs:1009:5:1009:10 | ...::f | main.rs:652:5:657:5 | fn f | -| main.rs:1010:5:1010:11 | nested6 | my2/nested2.rs:14:5:18:5 | mod nested6 | -| main.rs:1010:5:1010:14 | ...::f | my2/nested2.rs:15:9:17:9 | fn f | -| main.rs:1011:5:1011:11 | nested8 | my2/nested2.rs:22:5:26:5 | mod nested8 | -| main.rs:1011:5:1011:14 | ...::f | my2/nested2.rs:23:9:25:9 | fn f | -| main.rs:1012:5:1012:7 | my3 | my2/mod.rs:20:1:20:12 | mod my3 | -| main.rs:1012:5:1012:10 | ...::f | my2/my3/mod.rs:1:1:5:1 | fn f | -| main.rs:1013:5:1013:12 | nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | -| main.rs:1014:5:1014:12 | my_alias | main.rs:1:1:1:7 | mod my | -| main.rs:1014:5:1014:22 | ...::nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | -| main.rs:1015:5:1015:7 | m18 | main.rs:660:1:678:1 | mod m18 | -| main.rs:1015:5:1015:12 | ...::m19 | main.rs:665:5:677:5 | mod m19 | -| main.rs:1015:5:1015:17 | ...::m20 | main.rs:670:9:676:9 | mod m20 | -| main.rs:1015:5:1015:20 | ...::g | main.rs:671:13:675:13 | fn g | -| main.rs:1016:5:1016:7 | m23 | main.rs:707:1:732:1 | mod m23 | -| main.rs:1016:5:1016:10 | ...::f | main.rs:727:5:731:5 | fn f | -| main.rs:1017:5:1017:7 | m24 | main.rs:734:1:802:1 | mod m24 | -| main.rs:1017:5:1017:10 | ...::f | main.rs:788:5:801:5 | fn f | -| main.rs:1018:5:1018:8 | zelf | main.rs:0:0:0:0 | Crate(main@0.0.1) | -| main.rs:1018:5:1018:11 | ...::h | main.rs:57:1:76:1 | fn h | -| main.rs:1019:5:1019:13 | z_changed | main.rs:807:1:807:9 | fn z_changed | -| main.rs:1020:5:1020:11 | AStruct | main.rs:809:1:809:17 | struct AStruct | -| main.rs:1020:5:1020:22 | ...::z_on_type | main.rs:813:5:813:17 | fn z_on_type | -| main.rs:1021:5:1021:11 | AStruct | main.rs:809:1:809:17 | struct AStruct | -| main.rs:1022:5:1022:29 | impl_with_attribute_macro | main.rs:877:1:896:1 | mod impl_with_attribute_macro | -| main.rs:1022:5:1022:35 | ...::test | main.rs:892:5:895:5 | fn test | -| main.rs:1023:5:1023:12 | patterns | main.rs:898:1:939:1 | mod patterns | -| main.rs:1023:5:1023:18 | ...::test | main.rs:899:5:913:5 | fn test | +| main.rs:385:24:385:24 | T | main.rs:380:7:380:7 | T | +| main.rs:389:24:389:24 | T | main.rs:380:7:380:7 | T | +| main.rs:390:13:390:16 | Self | main.rs:378:5:396:5 | trait Trait1 | +| main.rs:390:13:390:19 | ...::g | main.rs:385:9:387:9 | fn g | +| main.rs:394:18:394:18 | T | main.rs:380:7:380:7 | T | +| main.rs:402:9:404:9 | Trait1::<...> | main.rs:378:5:396:5 | trait Trait1 | +| main.rs:403:11:403:11 | T | main.rs:400:7:400:7 | T | +| main.rs:405:24:405:24 | T | main.rs:400:7:400:7 | T | +| main.rs:406:13:406:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:407:13:407:16 | Self | main.rs:398:5:411:5 | trait Trait2 | +| main.rs:407:13:407:19 | ...::g | main.rs:385:9:387:9 | fn g | +| main.rs:409:13:409:16 | Self | main.rs:398:5:411:5 | trait Trait2 | +| main.rs:409:13:409:19 | ...::c | main.rs:394:9:395:9 | Const | +| main.rs:416:10:418:5 | Trait1::<...> | main.rs:378:5:396:5 | trait Trait1 | +| main.rs:417:7:417:7 | S | main.rs:413:5:413:13 | struct S | +| main.rs:419:11:419:11 | S | main.rs:413:5:413:13 | struct S | +| main.rs:420:24:420:24 | S | main.rs:413:5:413:13 | struct S | +| main.rs:421:13:421:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:422:13:422:16 | Self | main.rs:415:5:433:5 | impl Trait1::<...> for S { ... } | +| main.rs:422:13:422:19 | ...::g | main.rs:426:9:429:9 | fn g | +| main.rs:426:24:426:24 | S | main.rs:413:5:413:13 | struct S | +| main.rs:427:13:427:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:428:13:428:16 | Self | main.rs:415:5:433:5 | impl Trait1::<...> for S { ... } | +| main.rs:428:13:428:19 | ...::c | main.rs:431:9:432:9 | Const | +| main.rs:431:18:431:18 | S | main.rs:413:5:413:13 | struct S | +| main.rs:431:22:431:22 | S | main.rs:413:5:413:13 | struct S | +| main.rs:436:10:438:5 | Trait2::<...> | main.rs:398:5:411:5 | trait Trait2 | +| main.rs:437:7:437:7 | S | main.rs:413:5:413:13 | struct S | +| main.rs:439:11:439:11 | S | main.rs:413:5:413:13 | struct S | +| main.rs:440:24:440:24 | S | main.rs:413:5:413:13 | struct S | +| main.rs:441:13:441:16 | Self | main.rs:435:5:445:5 | impl Trait2::<...> for S { ... } | +| main.rs:441:13:441:19 | ...::g | main.rs:426:9:429:9 | fn g | +| main.rs:442:13:442:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:443:13:443:16 | Self | main.rs:435:5:445:5 | impl Trait2::<...> for S { ... } | +| main.rs:443:13:443:19 | ...::c | main.rs:431:9:432:9 | Const | +| main.rs:449:9:449:15 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:450:17:450:17 | S | main.rs:413:5:413:13 | struct S | +| main.rs:451:9:455:9 | <...> | main.rs:378:5:396:5 | trait Trait1 | +| main.rs:451:9:455:12 | ...::f | main.rs:382:9:383:9 | fn f | +| main.rs:451:10:451:10 | S | main.rs:413:5:413:13 | struct S | +| main.rs:452:14:454:11 | Trait1::<...> | main.rs:378:5:396:5 | trait Trait1 | +| main.rs:453:13:453:13 | S | main.rs:413:5:413:13 | struct S | +| main.rs:456:9:460:9 | <...> | main.rs:398:5:411:5 | trait Trait2 | +| main.rs:456:9:460:12 | ...::f | main.rs:404:13:410:9 | fn f | +| main.rs:456:10:456:10 | S | main.rs:413:5:413:13 | struct S | +| main.rs:457:14:459:11 | Trait2::<...> | main.rs:398:5:411:5 | trait Trait2 | +| main.rs:458:13:458:13 | S | main.rs:413:5:413:13 | struct S | +| main.rs:461:9:461:9 | S | main.rs:413:5:413:13 | struct S | +| main.rs:461:9:461:12 | ...::g | main.rs:426:9:429:9 | fn g | +| main.rs:463:9:463:9 | S | main.rs:413:5:413:13 | struct S | +| main.rs:463:9:463:12 | ...::h | main.rs:389:9:392:9 | fn h | +| main.rs:465:9:465:9 | S | main.rs:413:5:413:13 | struct S | +| main.rs:465:9:465:12 | ...::c | main.rs:431:9:432:9 | Const | +| main.rs:466:9:470:9 | <...> | main.rs:378:5:396:5 | trait Trait1 | +| main.rs:466:9:470:12 | ...::c | main.rs:394:9:395:9 | Const | +| main.rs:466:10:466:10 | S | main.rs:413:5:413:13 | struct S | +| main.rs:467:14:469:11 | Trait1::<...> | main.rs:378:5:396:5 | trait Trait1 | +| main.rs:468:13:468:13 | S | main.rs:413:5:413:13 | struct S | +| main.rs:488:10:488:15 | Trait3 | main.rs:473:5:477:5 | trait Trait3 | +| main.rs:488:21:488:22 | S2 | main.rs:485:5:485:14 | struct S2 | +| main.rs:489:26:489:28 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:493:20:493:23 | Self | main.rs:487:5:495:5 | impl Trait3 for S2 { ... } | +| main.rs:493:20:493:34 | ...::AssocType | main.rs:488:26:490:9 | type AssocType | +| main.rs:498:10:498:15 | Trait4 | main.rs:479:5:483:5 | trait Trait4 | +| main.rs:498:21:498:22 | S2 | main.rs:485:5:485:14 | struct S2 | +| main.rs:499:26:499:29 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:503:13:503:16 | Self | main.rs:497:5:507:5 | impl Trait4 for S2 { ... } | +| main.rs:503:13:503:19 | ...::f | main.rs:490:11:494:9 | fn f | +| main.rs:504:13:504:14 | S2 | main.rs:485:5:485:14 | struct S2 | +| main.rs:504:13:504:17 | ...::f | main.rs:490:11:494:9 | fn f | +| main.rs:505:20:505:23 | Self | main.rs:497:5:507:5 | impl Trait4 for S2 { ... } | +| main.rs:505:20:505:34 | ...::AssocType | main.rs:498:26:500:9 | type AssocType | +| main.rs:512:23:512:26 | Self | main.rs:509:5:513:5 | trait Trait5 | +| main.rs:512:23:512:33 | ...::Assoc | main.rs:510:9:510:19 | type Assoc | +| main.rs:516:10:516:15 | Trait5 | main.rs:509:5:513:5 | trait Trait5 | +| main.rs:516:21:516:21 | S | main.rs:413:5:413:13 | struct S | +| main.rs:517:22:517:24 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:521:16:521:19 | Self | main.rs:515:5:524:5 | impl Trait5 for S { ... } | +| main.rs:521:16:521:26 | ...::Assoc | main.rs:516:25:518:9 | type Assoc | +| main.rs:522:13:522:16 | Self | main.rs:515:5:524:5 | impl Trait5 for S { ... } | +| main.rs:522:13:522:23 | ...::Assoc | main.rs:520:9:523:9 | fn Assoc | +| main.rs:526:19:526:20 | T3 | main.rs:526:15:526:16 | T3 | +| main.rs:529:10:529:15 | Trait5 | main.rs:509:5:513:5 | trait Trait5 | +| main.rs:529:21:529:27 | S3::<...> | main.rs:526:5:526:22 | struct S3 | +| main.rs:529:24:529:26 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:530:22:530:24 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:534:16:534:19 | Self | main.rs:528:5:537:5 | impl Trait5 for S3::<...> { ... } | +| main.rs:534:16:534:26 | ...::Assoc | main.rs:529:31:531:9 | type Assoc | +| main.rs:535:13:535:16 | Self | main.rs:528:5:537:5 | impl Trait5 for S3::<...> { ... } | +| main.rs:535:13:535:23 | ...::Assoc | main.rs:533:9:536:9 | fn Assoc | +| main.rs:540:10:540:15 | Trait5 | main.rs:509:5:513:5 | trait Trait5 | +| main.rs:540:21:540:28 | S3::<...> | main.rs:526:5:526:22 | struct S3 | +| main.rs:540:24:540:27 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:541:22:541:25 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:545:16:545:19 | Self | main.rs:539:5:548:5 | impl Trait5 for S3::<...> { ... } | +| main.rs:545:16:545:26 | ...::Assoc | main.rs:540:32:542:9 | type Assoc | +| main.rs:546:14:546:17 | Self | main.rs:539:5:548:5 | impl Trait5 for S3::<...> { ... } | +| main.rs:546:14:546:24 | ...::Assoc | main.rs:544:9:547:9 | fn Assoc | +| main.rs:551:10:551:16 | S3::<...> | main.rs:526:5:526:22 | struct S3 | +| main.rs:551:13:551:15 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:552:20:552:22 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:558:10:558:17 | S3::<...> | main.rs:526:5:526:22 | struct S3 | +| main.rs:558:13:558:16 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:559:20:559:23 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:566:9:566:17 | S3::<...> | main.rs:526:5:526:22 | struct S3 | +| main.rs:566:9:567:13 | ...::Assoc | main.rs:533:9:536:9 | fn Assoc | +| main.rs:566:9:567:13 | ...::Assoc | main.rs:544:9:547:9 | fn Assoc | +| main.rs:566:14:566:16 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:569:9:569:18 | S3::<...> | main.rs:526:5:526:22 | struct S3 | +| main.rs:569:9:570:10 | ...::f1 | main.rs:551:20:554:9 | fn f1 | +| main.rs:569:9:570:10 | ...::f1 | main.rs:558:21:561:9 | fn f1 | +| main.rs:569:14:569:17 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:572:9:572:17 | S3::<...> | main.rs:526:5:526:22 | struct S3 | +| main.rs:572:9:573:10 | ...::f1 | main.rs:551:20:554:9 | fn f1 | +| main.rs:572:9:573:10 | ...::f1 | main.rs:558:21:561:9 | fn f1 | +| main.rs:572:14:572:16 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:589:14:589:16 | Foo | main.rs:579:9:581:9 | trait Foo | +| main.rs:589:22:589:22 | X | main.rs:587:9:587:21 | struct X | +| main.rs:591:17:591:23 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:595:14:595:16 | Bar | main.rs:583:9:585:9 | trait Bar | +| main.rs:595:22:595:22 | X | main.rs:587:9:587:21 | struct X | +| main.rs:597:17:597:23 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:602:9:602:9 | m | main.rs:578:5:600:5 | mod m | +| main.rs:602:9:602:12 | ...::X | main.rs:587:9:587:21 | struct X | +| main.rs:605:17:605:17 | X | main.rs:587:9:587:21 | struct X | +| main.rs:608:17:608:17 | m | main.rs:578:5:600:5 | mod m | +| main.rs:608:17:608:22 | ...::Foo | main.rs:579:9:581:9 | trait Foo | +| main.rs:609:13:609:13 | X | main.rs:587:9:587:21 | struct X | +| main.rs:609:13:609:23 | ...::a_method | main.rs:589:26:592:13 | fn a_method | +| main.rs:612:18:612:18 | X | main.rs:587:9:587:21 | struct X | +| main.rs:614:21:614:24 | Self | main.rs:611:13:616:13 | impl X { ... } | +| main.rs:614:21:614:34 | ...::a_method | main.rs:589:26:592:13 | fn a_method | +| main.rs:620:17:620:17 | m | main.rs:578:5:600:5 | mod m | +| main.rs:620:17:620:22 | ...::Bar | main.rs:583:9:585:9 | trait Bar | +| main.rs:621:13:621:13 | X | main.rs:587:9:587:21 | struct X | +| main.rs:621:13:621:23 | ...::a_method | main.rs:595:26:598:13 | fn a_method | +| main.rs:625:17:625:17 | m | main.rs:578:5:600:5 | mod m | +| main.rs:625:17:625:22 | ...::Bar | main.rs:583:9:585:9 | trait Bar | +| main.rs:626:13:626:13 | X | main.rs:587:9:587:21 | struct X | +| main.rs:626:13:626:23 | ...::a_method | main.rs:595:26:598:13 | fn a_method | +| main.rs:631:13:631:13 | m | main.rs:578:5:600:5 | mod m | +| main.rs:631:13:631:18 | ...::Bar | main.rs:583:9:585:9 | trait Bar | +| main.rs:631:13:631:28 | ...::a_method | main.rs:584:13:584:31 | fn a_method | +| main.rs:644:10:644:16 | MyTrait | main.rs:637:5:639:5 | trait MyTrait | +| main.rs:645:9:645:9 | S | main.rs:641:5:641:13 | struct S | +| main.rs:647:13:647:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:653:7:653:13 | MyTrait | main.rs:637:5:639:5 | trait MyTrait | +| main.rs:654:10:654:10 | T | main.rs:652:10:652:10 | T | +| main.rs:656:9:656:9 | T | main.rs:652:10:652:10 | T | +| main.rs:656:9:656:12 | ...::f | main.rs:638:9:638:20 | fn f | +| main.rs:657:9:657:15 | MyTrait | main.rs:637:5:639:5 | trait MyTrait | +| main.rs:657:9:657:18 | ...::f | main.rs:638:9:638:20 | fn f | +| main.rs:662:9:662:9 | g | main.rs:651:5:658:5 | fn g | +| main.rs:663:11:663:11 | S | main.rs:641:5:641:13 | struct S | +| main.rs:670:9:670:15 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:675:13:675:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:680:17:680:23 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:681:17:681:21 | super | main.rs:673:5:685:5 | mod m19 | +| main.rs:681:17:681:24 | ...::f | main.rs:674:9:676:9 | fn f | +| main.rs:682:17:682:21 | super | main.rs:673:5:685:5 | mod m19 | +| main.rs:682:17:682:28 | ...::super | main.rs:668:1:686:1 | mod m18 | +| main.rs:682:17:682:31 | ...::f | main.rs:669:5:671:5 | fn f | +| main.rs:699:13:699:17 | super | main.rs:688:1:713:1 | mod m21 | +| main.rs:699:13:699:22 | ...::m22 | main.rs:689:5:695:5 | mod m22 | +| main.rs:699:13:699:30 | ...::MyEnum | main.rs:690:9:692:9 | enum MyEnum | +| main.rs:700:13:700:16 | self | main.rs:690:9:692:9 | enum MyEnum | +| main.rs:704:13:704:17 | super | main.rs:688:1:713:1 | mod m21 | +| main.rs:704:13:704:22 | ...::m22 | main.rs:689:5:695:5 | mod m22 | +| main.rs:704:13:704:32 | ...::MyStruct | main.rs:694:9:694:28 | struct MyStruct | +| main.rs:705:13:705:16 | self | main.rs:694:9:694:28 | struct MyStruct | +| main.rs:709:21:709:26 | MyEnum | main.rs:690:9:692:9 | enum MyEnum | +| main.rs:709:21:709:29 | ...::A | main.rs:691:13:691:13 | A | +| main.rs:710:21:710:28 | MyStruct | main.rs:694:9:694:28 | struct MyStruct | +| main.rs:726:10:728:5 | Trait1::<...> | main.rs:716:5:721:5 | trait Trait1 | +| main.rs:727:7:727:10 | Self | main.rs:723:5:723:13 | struct S | +| main.rs:729:11:729:11 | S | main.rs:723:5:723:13 | struct S | +| main.rs:731:13:731:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:737:17:737:17 | S | main.rs:723:5:723:13 | struct S | +| main.rs:753:15:753:15 | T | main.rs:752:26:752:26 | T | +| main.rs:758:9:758:24 | GenericStruct::<...> | main.rs:751:5:754:5 | struct GenericStruct | +| main.rs:758:23:758:23 | T | main.rs:757:10:757:10 | T | +| main.rs:760:9:760:9 | T | main.rs:757:10:757:10 | T | +| main.rs:760:12:760:17 | TraitA | main.rs:743:5:745:5 | trait TraitA | +| main.rs:769:9:769:24 | GenericStruct::<...> | main.rs:751:5:754:5 | struct GenericStruct | +| main.rs:769:23:769:23 | T | main.rs:768:10:768:10 | T | +| main.rs:771:9:771:9 | T | main.rs:768:10:768:10 | T | +| main.rs:771:12:771:17 | TraitB | main.rs:747:5:749:5 | trait TraitB | +| main.rs:772:9:772:9 | T | main.rs:768:10:768:10 | T | +| main.rs:772:12:772:17 | TraitA | main.rs:743:5:745:5 | trait TraitA | +| main.rs:783:10:783:15 | TraitA | main.rs:743:5:745:5 | trait TraitA | +| main.rs:783:21:783:31 | Implementor | main.rs:780:5:780:23 | struct Implementor | +| main.rs:785:13:785:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:790:10:790:15 | TraitB | main.rs:747:5:749:5 | trait TraitB | +| main.rs:790:21:790:31 | Implementor | main.rs:780:5:780:23 | struct Implementor | +| main.rs:792:13:792:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:798:24:798:34 | Implementor | main.rs:780:5:780:23 | struct Implementor | +| main.rs:799:23:799:35 | GenericStruct | main.rs:751:5:754:5 | struct GenericStruct | +| main.rs:805:9:805:36 | GenericStruct::<...> | main.rs:751:5:754:5 | struct GenericStruct | +| main.rs:805:9:805:50 | ...::call_trait_a | main.rs:762:9:764:9 | fn call_trait_a | +| main.rs:805:25:805:35 | Implementor | main.rs:780:5:780:23 | struct Implementor | +| main.rs:808:9:808:36 | GenericStruct::<...> | main.rs:751:5:754:5 | struct GenericStruct | +| main.rs:808:9:808:47 | ...::call_both | main.rs:774:9:777:9 | fn call_both | +| main.rs:808:25:808:35 | Implementor | main.rs:780:5:780:23 | struct Implementor | +| main.rs:814:3:814:12 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | +| main.rs:814:3:814:24 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | +| main.rs:818:6:818:12 | AStruct | main.rs:817:1:817:17 | struct AStruct | +| main.rs:820:7:820:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | +| main.rs:820:7:820:28 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | +| main.rs:823:7:823:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | +| main.rs:823:7:823:28 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | +| main.rs:828:9:828:11 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:828:9:828:19 | ...::marker | {EXTERNAL LOCATION} | mod marker | +| main.rs:828:9:828:32 | ...::PhantomData | {EXTERNAL LOCATION} | struct PhantomData | +| main.rs:829:9:829:11 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:829:9:829:19 | ...::result | {EXTERNAL LOCATION} | mod result | +| main.rs:829:9:829:27 | ...::Result | {EXTERNAL LOCATION} | enum Result | +| main.rs:837:19:837:22 | Self | main.rs:831:5:839:5 | trait Reduce | +| main.rs:837:19:837:29 | ...::Input | main.rs:832:9:832:19 | type Input | +| main.rs:838:14:838:46 | Result::<...> | {EXTERNAL LOCATION} | enum Result | +| main.rs:838:21:838:24 | Self | main.rs:831:5:839:5 | trait Reduce | +| main.rs:838:21:838:32 | ...::Output | main.rs:833:21:834:20 | type Output | +| main.rs:838:35:838:38 | Self | main.rs:831:5:839:5 | trait Reduce | +| main.rs:838:35:838:45 | ...::Error | main.rs:832:21:833:19 | type Error | +| main.rs:842:17:842:34 | PhantomData::<...> | {EXTERNAL LOCATION} | struct PhantomData | +| main.rs:842:29:842:33 | Input | main.rs:841:19:841:23 | Input | +| main.rs:843:17:843:34 | PhantomData::<...> | {EXTERNAL LOCATION} | struct PhantomData | +| main.rs:843:29:843:33 | Error | main.rs:841:26:841:30 | Error | +| main.rs:850:11:850:16 | Reduce | main.rs:831:5:839:5 | trait Reduce | +| main.rs:851:13:854:9 | MyImpl::<...> | main.rs:841:5:844:5 | struct MyImpl | +| main.rs:852:13:852:17 | Input | main.rs:848:13:848:17 | Input | +| main.rs:853:13:853:17 | Error | main.rs:849:13:849:17 | Error | +| main.rs:856:22:859:9 | Result::<...> | {EXTERNAL LOCATION} | enum Result | +| main.rs:857:13:857:17 | Input | main.rs:848:13:848:17 | Input | +| main.rs:858:13:858:16 | Self | main.rs:846:5:878:5 | impl Reduce for MyImpl::<...> { ... } | +| main.rs:858:13:858:23 | ...::Error | main.rs:860:11:864:9 | type Error | +| main.rs:861:22:863:9 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:862:11:862:15 | Error | main.rs:849:13:849:17 | Error | +| main.rs:866:13:866:17 | Input | main.rs:848:13:848:17 | Input | +| main.rs:871:19:871:22 | Self | main.rs:846:5:878:5 | impl Reduce for MyImpl::<...> { ... } | +| main.rs:871:19:871:29 | ...::Input | main.rs:856:9:860:9 | type Input | +| main.rs:872:14:875:9 | Result::<...> | {EXTERNAL LOCATION} | enum Result | +| main.rs:873:13:873:16 | Self | main.rs:846:5:878:5 | impl Reduce for MyImpl::<...> { ... } | +| main.rs:873:13:873:24 | ...::Output | main.rs:864:11:867:9 | type Output | +| main.rs:874:13:874:16 | Self | main.rs:846:5:878:5 | impl Reduce for MyImpl::<...> { ... } | +| main.rs:874:13:874:23 | ...::Error | main.rs:860:11:864:9 | type Error | +| main.rs:886:16:886:20 | Super | main.rs:882:5:884:5 | trait Super | +| main.rs:888:19:888:22 | Self | main.rs:886:5:890:5 | trait Sub | +| main.rs:888:19:888:27 | ...::Out | main.rs:883:9:883:17 | type Out | +| main.rs:893:9:893:10 | ST | main.rs:892:14:892:15 | ST | +| main.rs:897:10:897:14 | Super | main.rs:882:5:884:5 | trait Super | +| main.rs:897:20:897:25 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:897:22:897:24 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:898:20:898:23 | char | {EXTERNAL LOCATION} | struct char | +| main.rs:903:10:903:14 | Super | main.rs:882:5:884:5 | trait Super | +| main.rs:903:20:903:26 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:903:22:903:25 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:904:20:904:22 | i64 | {EXTERNAL LOCATION} | struct i64 | +| main.rs:909:10:909:12 | Sub | main.rs:886:5:890:5 | trait Sub | +| main.rs:909:18:909:23 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:909:20:909:22 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:910:19:910:22 | Self | main.rs:908:5:913:5 | impl Sub for S::<...> { ... } | +| main.rs:910:19:910:27 | ...::Out | main.rs:883:9:883:17 | type Out | +| main.rs:916:10:916:12 | Sub | main.rs:886:5:890:5 | trait Sub | +| main.rs:916:18:916:24 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:916:20:916:23 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:917:19:917:22 | Self | main.rs:915:5:920:5 | impl Sub for S::<...> { ... } | +| main.rs:917:19:917:27 | ...::Out | main.rs:883:9:883:17 | type Out | +| main.rs:926:19:926:26 | SuperAlt | main.rs:922:5:924:5 | trait SuperAlt | +| main.rs:928:23:928:26 | Self | main.rs:926:5:930:5 | trait SubAlt | +| main.rs:928:23:928:31 | ...::Out | main.rs:923:9:923:17 | type Out | +| main.rs:933:13:933:20 | SuperAlt | main.rs:922:5:924:5 | trait SuperAlt | +| main.rs:933:26:933:29 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:933:28:933:28 | A | main.rs:933:10:933:10 | A | +| main.rs:934:20:934:20 | A | main.rs:933:10:933:10 | A | +| main.rs:939:13:939:18 | SubAlt | main.rs:926:5:930:5 | trait SubAlt | +| main.rs:939:24:939:27 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:939:26:939:26 | A | main.rs:939:10:939:10 | A | +| main.rs:940:23:940:26 | Self | main.rs:938:5:943:5 | impl SubAlt for S::<...> { ... } | +| main.rs:940:23:940:31 | ...::Out | main.rs:923:9:923:17 | type Out | +| main.rs:946:10:946:16 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:946:12:946:15 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:948:21:948:37 | <...> | main.rs:882:5:884:5 | trait Super | +| main.rs:948:21:948:42 | ...::Out | main.rs:883:9:883:17 | type Out | +| main.rs:948:22:948:27 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:948:24:948:26 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:948:32:948:36 | Super | main.rs:882:5:884:5 | trait Super | +| main.rs:949:21:949:38 | <...> | main.rs:882:5:884:5 | trait Super | +| main.rs:949:21:949:43 | ...::Out | main.rs:883:9:883:17 | type Out | +| main.rs:949:22:949:28 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:949:24:949:27 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:949:33:949:37 | Super | main.rs:882:5:884:5 | trait Super | +| main.rs:951:21:951:41 | <...> | main.rs:922:5:924:5 | trait SuperAlt | +| main.rs:951:21:951:46 | ...::Out | main.rs:923:9:923:17 | type Out | +| main.rs:951:22:951:28 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:951:24:951:27 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:951:33:951:40 | SuperAlt | main.rs:922:5:924:5 | trait SuperAlt | +| main.rs:956:5:956:7 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:956:11:956:14 | self | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:958:15:958:17 | ztd | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:958:15:958:25 | ...::string | {EXTERNAL LOCATION} | mod string | +| main.rs:958:15:958:33 | ...::String | {EXTERNAL LOCATION} | struct String | +| main.rs:968:7:968:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | +| main.rs:968:7:968:26 | ...::identity | proc_macro.rs:15:1:18:1 | fn identity | +| main.rs:969:10:969:15 | ATrait | main.rs:964:5:966:5 | trait ATrait | +| main.rs:969:21:969:23 | i64 | {EXTERNAL LOCATION} | struct i64 | +| main.rs:971:11:971:13 | i64 | {EXTERNAL LOCATION} | struct i64 | +| main.rs:977:17:977:19 | Foo | main.rs:962:5:962:15 | struct Foo | +| main.rs:983:22:983:32 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:983:29:983:31 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:984:17:984:20 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:985:17:985:27 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:985:24:985:26 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:986:13:986:16 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:987:17:987:20 | None | {EXTERNAL LOCATION} | None | +| main.rs:989:13:989:16 | None | {EXTERNAL LOCATION} | None | +| main.rs:990:17:990:20 | None | {EXTERNAL LOCATION} | None | +| main.rs:999:19:999:29 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:999:26:999:28 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1000:26:1000:29 | test | main.rs:982:5:996:5 | fn test | +| main.rs:1006:14:1006:16 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1011:17:1011:20 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:1013:13:1013:16 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:1018:13:1018:16 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:1018:18:1018:18 | z | main.rs:1005:5:1007:12 | Const | +| main.rs:1018:24:1018:24 | z | main.rs:1005:5:1007:12 | Const | +| main.rs:1026:24:1026:26 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1029:10:1029:20 | TupleStruct | main.rs:1026:5:1026:28 | struct TupleStruct | +| main.rs:1031:19:1031:21 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1031:27:1031:30 | Self | main.rs:1026:5:1026:28 | struct TupleStruct | +| main.rs:1032:21:1032:24 | Self | main.rs:1026:5:1026:28 | struct TupleStruct | +| main.rs:1033:31:1033:34 | Self | main.rs:1026:5:1026:28 | struct TupleStruct | +| main.rs:1039:12:1039:14 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1043:10:1043:21 | StructStruct | main.rs:1038:5:1040:5 | struct StructStruct | +| main.rs:1045:19:1045:21 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1045:27:1045:30 | Self | main.rs:1038:5:1040:5 | struct StructStruct | +| main.rs:1046:13:1046:16 | Self | main.rs:1038:5:1040:5 | struct StructStruct | +| main.rs:1052:13:1052:15 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1057:10:1057:15 | MyEnum | main.rs:1050:5:1054:5 | enum MyEnum | +| main.rs:1058:25:1058:27 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1060:17:1060:20 | Self | main.rs:1056:5:1067:5 | impl MyEnum { ... } | +| main.rs:1060:17:1060:23 | ...::A | main.rs:1051:9:1053:9 | A | +| main.rs:1073:15:1073:15 | T | main.rs:1072:31:1072:31 | T | +| main.rs:1074:15:1074:31 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:1074:22:1074:30 | Box::<...> | {EXTERNAL LOCATION} | struct Box | +| main.rs:1074:26:1074:29 | Self | main.rs:1072:5:1075:5 | struct NonEmptyListStruct | +| main.rs:1078:16:1078:16 | T | main.rs:1077:27:1077:27 | T | +| main.rs:1079:14:1079:14 | T | main.rs:1077:27:1077:27 | T | +| main.rs:1079:17:1079:25 | Box::<...> | {EXTERNAL LOCATION} | struct Box | +| main.rs:1079:21:1079:24 | Self | main.rs:1077:5:1080:5 | enum NonEmptyListEnum | +| main.rs:1083:10:1083:30 | NonEmptyListEnum::<...> | main.rs:1077:5:1080:5 | enum NonEmptyListEnum | +| main.rs:1083:27:1083:29 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1084:30:1084:32 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1084:38:1084:41 | Self | main.rs:1077:5:1080:5 | enum NonEmptyListEnum | +| main.rs:1085:17:1085:32 | NonEmptyListEnum | main.rs:1077:5:1080:5 | enum NonEmptyListEnum | +| main.rs:1086:13:1086:16 | Self | main.rs:1082:5:1088:5 | impl NonEmptyListEnum::<...> { ... } | +| main.rs:1086:13:1086:24 | ...::Single | main.rs:1078:9:1078:17 | Single | +| main.rs:1094:13:1094:16 | Copy | {EXTERNAL LOCATION} | trait Copy | +| main.rs:1096:17:1096:17 | T | main.rs:1093:9:1093:9 | T | +| main.rs:1097:16:1097:16 | T | main.rs:1093:9:1093:9 | T | +| main.rs:1097:23:1097:26 | Self | main.rs:1090:5:1098:5 | union NonEmptyListUnion | +| main.rs:1102:5:1102:6 | my | main.rs:1:1:1:7 | mod my | +| main.rs:1102:5:1102:14 | ...::nested | my.rs:1:1:1:15 | mod nested | +| main.rs:1102:5:1102:23 | ...::nested1 | my/nested.rs:1:1:17:1 | mod nested1 | +| main.rs:1102:5:1102:32 | ...::nested2 | my/nested.rs:2:5:11:5 | mod nested2 | +| main.rs:1102:5:1102:35 | ...::f | my/nested.rs:3:9:5:9 | fn f | +| main.rs:1103:5:1103:6 | my | main.rs:1:1:1:7 | mod my | +| main.rs:1103:5:1103:9 | ...::f | my.rs:5:1:7:1 | fn f | +| main.rs:1104:5:1104:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | +| main.rs:1104:5:1104:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | +| main.rs:1104:5:1104:29 | ...::nested4 | my2/nested2.rs:2:5:10:5 | mod nested4 | +| main.rs:1104:5:1104:32 | ...::f | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1105:5:1105:5 | f | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1106:5:1106:5 | g | my2/nested2.rs:7:9:9:9 | fn g | +| main.rs:1107:5:1107:9 | crate | main.rs:0:0:0:0 | Crate(main@0.0.1) | +| main.rs:1107:5:1107:12 | ...::h | main.rs:57:1:76:1 | fn h | +| main.rs:1108:5:1108:6 | m1 | main.rs:20:1:44:1 | mod m1 | +| main.rs:1108:5:1108:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | +| main.rs:1108:5:1108:13 | ...::g | main.rs:30:9:34:9 | fn g | +| main.rs:1109:5:1109:6 | m1 | main.rs:20:1:44:1 | mod m1 | +| main.rs:1109:5:1109:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | +| main.rs:1109:5:1109:14 | ...::m3 | main.rs:36:9:42:9 | mod m3 | +| main.rs:1109:5:1109:17 | ...::h | main.rs:37:27:41:13 | fn h | +| main.rs:1110:5:1110:6 | m4 | main.rs:46:1:53:1 | mod m4 | +| main.rs:1110:5:1110:9 | ...::i | main.rs:49:5:52:5 | fn i | +| main.rs:1111:5:1111:5 | h | main.rs:57:1:76:1 | fn h | +| main.rs:1112:5:1112:11 | f_alias | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1113:5:1113:11 | g_alias | my2/nested2.rs:7:9:9:9 | fn g | +| main.rs:1114:5:1114:5 | j | main.rs:104:1:108:1 | fn j | +| main.rs:1115:5:1115:6 | m6 | main.rs:116:1:128:1 | mod m6 | +| main.rs:1115:5:1115:9 | ...::g | main.rs:121:5:127:5 | fn g | +| main.rs:1116:5:1116:6 | m7 | main.rs:130:1:149:1 | mod m7 | +| main.rs:1116:5:1116:9 | ...::f | main.rs:141:5:148:5 | fn f | +| main.rs:1117:5:1117:6 | m8 | main.rs:151:1:205:1 | mod m8 | +| main.rs:1117:5:1117:9 | ...::g | main.rs:189:5:204:5 | fn g | +| main.rs:1118:5:1118:6 | m9 | main.rs:207:1:215:1 | mod m9 | +| main.rs:1118:5:1118:9 | ...::f | main.rs:210:5:214:5 | fn f | +| main.rs:1119:5:1119:7 | m11 | main.rs:238:1:275:1 | mod m11 | +| main.rs:1119:5:1119:10 | ...::f | main.rs:243:5:246:5 | fn f | +| main.rs:1120:5:1120:7 | m15 | main.rs:306:1:375:1 | mod m15 | +| main.rs:1120:5:1120:10 | ...::f | main.rs:362:5:374:5 | fn f | +| main.rs:1121:5:1121:7 | m16 | main.rs:377:1:575:1 | mod m16 | +| main.rs:1121:5:1121:10 | ...::f | main.rs:447:5:471:5 | fn f | +| main.rs:1122:5:1122:20 | trait_visibility | main.rs:577:1:634:1 | mod trait_visibility | +| main.rs:1122:5:1122:23 | ...::f | main.rs:604:5:633:5 | fn f | +| main.rs:1123:5:1123:7 | m17 | main.rs:636:1:666:1 | mod m17 | +| main.rs:1123:5:1123:10 | ...::f | main.rs:660:5:665:5 | fn f | +| main.rs:1124:5:1124:11 | nested6 | my2/nested2.rs:14:5:18:5 | mod nested6 | +| main.rs:1124:5:1124:14 | ...::f | my2/nested2.rs:15:9:17:9 | fn f | +| main.rs:1125:5:1125:11 | nested8 | my2/nested2.rs:22:5:26:5 | mod nested8 | +| main.rs:1125:5:1125:14 | ...::f | my2/nested2.rs:23:9:25:9 | fn f | +| main.rs:1126:5:1126:7 | my3 | my2/mod.rs:20:1:20:12 | mod my3 | +| main.rs:1126:5:1126:10 | ...::f | my2/my3/mod.rs:1:1:5:1 | fn f | +| main.rs:1127:5:1127:12 | nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | +| main.rs:1128:5:1128:12 | my_alias | main.rs:1:1:1:7 | mod my | +| main.rs:1128:5:1128:22 | ...::nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | +| main.rs:1129:5:1129:7 | m18 | main.rs:668:1:686:1 | mod m18 | +| main.rs:1129:5:1129:12 | ...::m19 | main.rs:673:5:685:5 | mod m19 | +| main.rs:1129:5:1129:17 | ...::m20 | main.rs:678:9:684:9 | mod m20 | +| main.rs:1129:5:1129:20 | ...::g | main.rs:679:13:683:13 | fn g | +| main.rs:1130:5:1130:7 | m23 | main.rs:715:1:740:1 | mod m23 | +| main.rs:1130:5:1130:10 | ...::f | main.rs:735:5:739:5 | fn f | +| main.rs:1131:5:1131:7 | m24 | main.rs:742:1:810:1 | mod m24 | +| main.rs:1131:5:1131:10 | ...::f | main.rs:796:5:809:5 | fn f | +| main.rs:1132:5:1132:8 | zelf | main.rs:0:0:0:0 | Crate(main@0.0.1) | +| main.rs:1132:5:1132:11 | ...::h | main.rs:57:1:76:1 | fn h | +| main.rs:1133:5:1133:13 | z_changed | main.rs:815:1:815:9 | fn z_changed | +| main.rs:1134:5:1134:11 | AStruct | main.rs:817:1:817:17 | struct AStruct | +| main.rs:1134:5:1134:22 | ...::z_on_type | main.rs:821:5:821:17 | fn z_on_type | +| main.rs:1135:5:1135:11 | AStruct | main.rs:817:1:817:17 | struct AStruct | +| main.rs:1136:5:1136:29 | impl_with_attribute_macro | main.rs:960:1:979:1 | mod impl_with_attribute_macro | +| main.rs:1136:5:1136:35 | ...::test | main.rs:975:5:978:5 | fn test | +| main.rs:1137:5:1137:12 | patterns | main.rs:981:1:1022:1 | mod patterns | +| main.rs:1137:5:1137:18 | ...::test | main.rs:982:5:996:5 | fn test | | my2/mod.rs:4:5:4:11 | println | {EXTERNAL LOCATION} | MacroRules | | my2/mod.rs:5:5:5:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | | my2/mod.rs:5:5:5:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | @@ -592,7 +679,7 @@ resolvePath | my2/my3/mod.rs:3:5:3:5 | g | my2/mod.rs:3:1:6:1 | fn g | | my2/my3/mod.rs:4:5:4:5 | h | main.rs:57:1:76:1 | fn h | | my2/my3/mod.rs:7:5:7:9 | super | my2/mod.rs:1:1:25:34 | SourceFile | -| my2/my3/mod.rs:7:5:7:16 | ...::super | main.rs:1:1:1024:2 | SourceFile | +| my2/my3/mod.rs:7:5:7:16 | ...::super | main.rs:1:1:1138:2 | SourceFile | | my2/my3/mod.rs:7:5:7:19 | ...::h | main.rs:57:1:76:1 | fn h | | my2/my3/mod.rs:8:5:8:9 | super | my2/mod.rs:1:1:25:34 | SourceFile | | my2/my3/mod.rs:8:5:8:12 | ...::g | my2/mod.rs:3:1:6:1 | fn g | diff --git a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected index 97dfe4bc278c..734601169687 100644 --- a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected +++ b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected @@ -1,2 +1,4 @@ multipleResolvedTargets -| main.rs:2871:13:2871:17 | x.f() | +| main.rs:2223:9:2223:31 | ... .my_add(...) | +| main.rs:2225:9:2225:29 | ... .my_add(...) | +| main.rs:2723:13:2723:17 | x.f() | diff --git a/rust/ql/test/library-tests/type-inference/CONSISTENCY/TypeInferenceConsistency.expected b/rust/ql/test/library-tests/type-inference/CONSISTENCY/TypeInferenceConsistency.expected new file mode 100644 index 000000000000..2dc4ca7791aa --- /dev/null +++ b/rust/ql/test/library-tests/type-inference/CONSISTENCY/TypeInferenceConsistency.expected @@ -0,0 +1,2 @@ +nonUniqueCertainType +| associated_types.rs:232:9:234:9 | { ... } | | diff --git a/rust/ql/test/library-tests/type-inference/associated_types.rs b/rust/ql/test/library-tests/type-inference/associated_types.rs index b08be0264a04..ea050377c216 100644 --- a/rust/ql/test/library-tests/type-inference/associated_types.rs +++ b/rust/ql/test/library-tests/type-inference/associated_types.rs @@ -7,7 +7,7 @@ impl Wrapper { } } -#[derive(Debug, Default)] +#[derive(Debug, Default, Clone, Copy)] struct S; #[derive(Debug, Default)] @@ -46,6 +46,15 @@ impl GetSet for S { } } +impl AnotherGet for S { + type AnotherOutput = bool; + + // S::get_another + fn get_another(&self) -> Self::AnotherOutput { + true + } +} + impl GetSet for Wrapper { type Output = T; @@ -55,6 +64,24 @@ impl GetSet for Wrapper { } } +struct Odd(OddT); + +impl GetSet for Odd { + type Output = bool; + + fn get(&self) -> Self::Output { + true + } +} + +impl GetSet for Odd { + type Output = char; + + fn get(&self) -> Self::Output { + 'a' + } +} + mod default_method_using_associated_type { use super::*; @@ -110,7 +137,111 @@ mod default_method_using_associated_type { } } -// Tests for signatures that access associated types from type parameters +mod concrete_type_access_associated_type { + use super::*; + + fn using_as( + a: ::Output, + b: as GetSet>::Output, + c: as GetSet>::Output, + d: as GetSet>::Output, + ) { + let _a = a; // $ type=_a:S3 + let _b = b; // $ type=_b:i32 + let _c = c; // $ type=_c:bool + let _d = d; // $ type=_d:char + } + + // NOTE: The below seems like it should work, but is currently rejected by + // the Rust compiler. This behavior does not seem to be documented and + // there's an open issue about it: + // https://github.com/rust-lang/rust/issues/104119 + // fn without_as( + // a: S::Output, + // b: Wrapper::Output, + // c: Odd::Output, + // d: Odd::Output, + // ) { + // let _a = a; // $ type=_a:S3 + // let _b = b; // $ type=_b:i32 + // let _c = c; // $ type=_c:bool + // let _d = d; // $ type=_d:char + // } + + impl Odd { + // Odd::proj + fn proj(&self) -> ::Output { + let x = Default::default(); // $ target=default + x // $ type=x:bool + } + } + + impl Odd { + // Odd::proj + fn proj(&self) -> ::Output { + let x = Default::default(); // $ target=default + x // $ type=x:char + } + } + + pub fn test() { + using_as(S3, 1, true, 'a'); // $ target=using_as + + let _a = Odd(42i32).proj(); // $ target=Odd::proj type=_a:bool + let _b = Odd(true).proj(); // $ target=Odd::proj type=_b:char + } +} + +// Tests a `::Assoc` type mention where the `Trait` type mention +// contains a generic. +// +// In `convert` below the type of `>::Output` depends on how +// `convert` is called and thus the correct type cannot be determined when the +// `TypeMention` is constructed. +mod concrete_type_as_generic_access_associated_type { + use super::*; + + trait Trans { + type Output; + fn through(t: T) -> Self::Output; + } + + impl Trans for S { + type Output = i32; + fn through(t: bool) -> Self::Output { + if t { + 1 + } else { + 0 + } + } + } + + impl Trans for S { + type Output = bool; + fn through(t: i32) -> Self::Output { + t != 0 // $ target=ne + } + } + + impl S { + // S::convert + fn convert(&self, t: T) -> >::Output + where + Self: Trans, + { + S::through(t) + } + } + + pub fn test() { + let s = S; + let _a = s.convert(true); // $ target=S::convert type=_a:i32 SPURIOUS: bool + let _b = s.convert(42); // $ target=S::convert type=_b:bool SPURIOUS: i32 + } +} + +// Tests for signatures that access associated types on type parameters mod type_param_access_associated_type { use super::*; @@ -122,9 +253,72 @@ mod type_param_access_associated_type { thing.get() // $ target=GetSet::get } + fn tp_assoc_from_supertrait(thing: T) -> (T::Output, T::AnotherOutput) { + ( + thing.get(), // $ target=GetSet::get + thing.get_another(), // $ target=AnotherGet::get_another + ) + } + + // Associated type accessed on a type parameter of an impl block + impl Wrapper + where + TI: GetSet, + { + fn extract(&self) -> TI::Output { + self.0.get() // $ fieldof=Wrapper target=GetSet::get + } + } + + // Associated type accessed on another associated type + + fn tp_nested_assoc_type(thing: T) -> <::Output as GetSet>::Output + where + ::Output: GetSet, + { + thing.get().get() // $ target=GetSet::get target=GetSet::get + } + + pub trait GetSetWrap { + type Assoc: GetSet; + + // GetSetWrap::get_wrap + fn get_wrap(&self) -> Self::Assoc; + } + + impl GetSetWrap for S { + type Assoc = S; + + // S::get_wrap + fn get_wrap(&self) -> Self::Assoc { + S + } + } + + // Nested associated type accessed on a type parameter of an impl block + impl Wrapper + where + TI: GetSetWrap, + { + fn extract2(&self) -> <::Assoc as GetSet>::Output { + self.0.get_wrap().get() // $ fieldof=Wrapper target=GetSetWrap::get_wrap $ MISSING: target=GetSet::get + } + } + pub fn test() { - let _o1 = tp_with_as(S); // $ target=tp_with_as MISSING: type=_o1:S3 - let _o2 = tp_without_as(S); // $ target=tp_without_as MISSING: type=_o2:S3 + let _o1 = tp_with_as(S); // $ target=tp_with_as type=_o1:S3 + let _o2 = tp_without_as(S); // $ target=tp_without_as type=_o2:S3 + let ( + _o3, // $ MISSING: type=_o3:S3 + _o4, // $ type=_o4:bool + ) = tp_assoc_from_supertrait(S); // $ target=tp_assoc_from_supertrait + + let _o5 = tp_nested_assoc_type(Wrapper(S)); // $ target=tp_nested_assoc_type MISSING: type=_o5:S3 + + let w = Wrapper(S); + let _extracted = w.extract(); // $ target=extract type=_extracted:S3 + + let _extracted2 = w.extract2(); // $ target=extract2 MISSING: type=_extracted2:S3 } } @@ -173,7 +367,7 @@ mod equality_on_associated_type { T: GetSet, { let _a = x.get(); // $ type=_a:i32 target=GetSet::get - let _b = x.get2(); // $ target=AssocNameClash::get2 MISSING: type=_b:char + let _b = x.get2(); // $ target=AssocNameClash::get2 type=_b:char } } @@ -293,6 +487,21 @@ mod associated_type_in_supertrait { } } + impl Subtrait for Odd { + // Odd::get_content + fn get_content(&self) -> Self::Output { + // let _x = Self::get(self); + Default::default() // $ target=default + } + } + + impl Subtrait for Odd { + // Odd::get_content + fn get_content(&self) -> Self::Output { + Default::default() // $ target=default + } + } + fn get_content(item: &T) -> T::Output { item.get_content() // $ target=Subtrait::get_content } @@ -304,10 +513,13 @@ mod associated_type_in_supertrait { pub fn test() { let item1 = MyType(42i64); - let _content1 = item1.get_content(); // $ target=MyType::get_content MISSING: type=_content1:i64 + let _content1 = item1.get_content(); // $ target=MyType::get_content type=_content1:i64 let item2 = MyType(true); let _content2 = get_content(&item2); // $ target=get_content MISSING: type=_content2:bool + + let _content3 = Odd(42i32).get_content(); // $ target=Odd::get_content type=_content3:bool + let _content4 = Odd(true).get_content(); // $ target=Odd::get_content type=_content4:char } } @@ -356,6 +568,8 @@ mod dyn_trait { pub fn test() { default_method_using_associated_type::test(); // $ target=test + concrete_type_access_associated_type::test(); // $ target=test + concrete_type_as_generic_access_associated_type::test(); // $ target=test type_param_access_associated_type::test(); // $ target=test generic_associated_type::test(); // $ target=test multiple_associated_types::test(); // $ target=test diff --git a/rust/ql/test/library-tests/type-inference/main.rs b/rust/ql/test/library-tests/type-inference/main.rs index e72fecf32f1a..204bd7e55cb5 100644 --- a/rust/ql/test/library-tests/type-inference/main.rs +++ b/rust/ql/test/library-tests/type-inference/main.rs @@ -129,6 +129,9 @@ mod trait_impl { let y = MyThing { field: false }; let b = MyTrait::trait_method(y); // $ type=b:bool target=MyThing::trait_method + + let z = MyThing { field: false }; + let c = >::trait_method(z); // $ type=c:bool target=MyThing::trait_method } } @@ -453,158 +456,7 @@ mod method_non_parametric_trait_impl { } } -mod impl_overlap { - #[derive(Debug, Clone, Copy)] - struct S1; - - trait OverlappingTrait { - fn common_method(self) -> S1; - - fn common_method_2(self, s1: S1) -> S1; - } - - impl OverlappingTrait for S1 { - // ::common_method - fn common_method(self) -> S1 { - S1 - } - - // ::common_method_2 - fn common_method_2(self, s1: S1) -> S1 { - S1 - } - } - - impl S1 { - // S1::common_method - fn common_method(self) -> S1 { - self - } - - // S1::common_method_2 - fn common_method_2(self) -> S1 { - self - } - } - - struct S2(T2); - - impl S2 { - // S2::common_method - fn common_method(self) -> S1 { - S1 - } - - // S2::common_method - fn common_method_2(self) -> S1 { - S1 - } - } - - impl OverlappingTrait for S2 { - // _as_OverlappingTrait>::common_method - fn common_method(self) -> S1 { - S1 - } - - // _as_OverlappingTrait>::common_method_2 - fn common_method_2(self, s1: S1) -> S1 { - S1 - } - } - - impl OverlappingTrait for S2 { - // _as_OverlappingTrait>::common_method - fn common_method(self) -> S1 { - S1 - } - - // _as_OverlappingTrait>::common_method_2 - fn common_method_2(self, s1: S1) -> S1 { - S1 - } - } - - #[derive(Debug)] - struct S3(T3); - - trait OverlappingTrait2 { - fn m(&self, x: &T) -> &Self; - } - - impl OverlappingTrait2 for S3 { - // _as_OverlappingTrait2>::m - fn m(&self, x: &T) -> &Self { - self - } - } - - impl S3 { - // S3::m - fn m(&self, x: T) -> &Self { - self - } - } - - trait MyTrait1 { - // MyTrait1::m - fn m(&self) {} - } - - trait MyTrait2: MyTrait1 {} - - #[derive(Debug)] - struct S4; - - impl MyTrait1 for S4 { - // ::m - fn m(&self) {} - } - - impl MyTrait2 for S4 {} - - #[derive(Debug)] - struct S5(T5); - - impl MyTrait1 for S5 { - // _as_MyTrait1>::m - fn m(&self) {} - } - - impl MyTrait2 for S5 {} - - impl MyTrait1 for S5 {} - - impl MyTrait2 for S5 {} - - pub fn f() { - let x = S1; - println!("{:?}", x.common_method()); // $ target=S1::common_method - println!("{:?}", S1::common_method(x)); // $ target=S1::common_method - println!("{:?}", x.common_method_2()); // $ target=S1::common_method_2 - println!("{:?}", S1::common_method_2(x)); // $ target=S1::common_method_2 - - let y = S2(S1); - println!("{:?}", y.common_method()); // $ target=_as_OverlappingTrait>::common_method - println!("{:?}", S2::::common_method(S2(S1))); // $ target=_as_OverlappingTrait>::common_method - - let z = S2(0); - println!("{:?}", z.common_method()); // $ target=S2::common_method - println!("{:?}", S2::common_method(S2(0))); // $ target=S2::common_method - println!("{:?}", S2::::common_method(S2(0))); // $ target=S2::common_method - - let w = S3(S1); - println!("{:?}", w.m(x)); // $ target=S3::m - println!("{:?}", S3::m(&w, x)); // $ target=S3::m - - S4.m(); // $ target=::m - S4::m(&S4); // $ target=::m - S5(0i32).m(); // $ target=_as_MyTrait1>::m - S5::m(&S5(0i32)); // $ target=_as_MyTrait1>::m - S5(true).m(); // $ target=MyTrait1::m - S5::m(&S5(true)); // $ target=MyTrait1::m - } -} +mod overloading; mod type_parameter_bounds { use std::fmt::Debug; @@ -1896,7 +1748,7 @@ mod overloadable_operators { let i64_mul = 17i64 * 18i64; // $ type=i64_mul:i64 target=mul let i64_div = 19i64 / 20i64; // $ type=i64_div:i64 target=div let i64_rem = 21i64 % 22i64; // $ type=i64_rem:i64 target=rem - let i64_param_add = param_add(1i64, 2i64); // $ target=param_add $ MISSING: type=i64_param_add:i64 + let i64_param_add = param_add(1i64, 2i64); // $ target=param_add $ type=i64_param_add:i64 // Arithmetic assignment operators let mut i64_add_assign = 23i64; @@ -2201,7 +2053,7 @@ mod indexers { let xs: [S; 1] = [S]; let x = xs[0].foo(); // $ target=foo type=x:S target=index - let y = param_index(vec, 0); // $ target=param_index $ MISSING: type=y:S + let y = param_index(vec, 0); // $ target=param_index $ type=y:S analyze_slice(&xs); // $ target=analyze_slice } @@ -2368,9 +2220,9 @@ mod method_determined_by_argument_type { x.my_add(&5i64); // $ target=MyAdd<&i64>::my_add x.my_add(true); // $ target=MyAdd::my_add - S(1i64).my_add(S(2i64)); // $ target=S::my_add1 - S(1i64).my_add(3i64); // $ MISSING: target=S::my_add2 - S(1i64).my_add(&3i64); // $ target=S::my_add3 + S(1i64).my_add(S(2i64)); // $ target=S::my_add1 $ SPURIOUS: target=S::my_add2 -- we do not check the `T: MyAdd` constraint yet + S(1i64).my_add(3i64); // $ target=S::my_add2 + S(1i64).my_add(&3i64); // $ target=S::my_add3 $ SPURIOUS: target=S::my_add2 -- we do not check the `T: MyAdd` constraint yet let x = i64::my_from(73i64); // $ target=MyFrom::my_from let y = i64::my_from(true); // $ target=MyFrom::my_from diff --git a/rust/ql/test/library-tests/type-inference/overloading.rs b/rust/ql/test/library-tests/type-inference/overloading.rs new file mode 100644 index 000000000000..0bf6598c1d12 --- /dev/null +++ b/rust/ql/test/library-tests/type-inference/overloading.rs @@ -0,0 +1,402 @@ +mod method_call_trait_path_disambig { + trait FirstTrait { + // FirstTrait::method + fn method(&self) -> bool { + true + } + + fn method2(&self) -> bool; + + fn function() -> bool; + } + trait SecondTrait { + // SecondTrait::method + fn method(&self) -> i64 { + 1 + } + + fn method2(&self) -> i64; + } + #[derive(Default)] + struct S; + impl FirstTrait for S { + // S_as_FirstTrait::method2 + fn method2(&self) -> bool { + true + } + + // S::function + fn function() -> bool { + true + } + } + impl SecondTrait for S { + // S_as_SecondTrait::method2 + fn method2(&self) -> i64 { + 1 + } + } + + struct S2; + impl FirstTrait for S2 { + // S2::method2 + fn method2(&self) -> bool { + false + } + + // S2::function + fn function() -> bool { + false + } + } + + fn _test() { + let s = S; + + let _b1 = FirstTrait::method(&s); // $ type=_b1:bool target=FirstTrait::method + let _b2 = ::method(&s); // $ type=_b2:bool target=FirstTrait::method + let _b3 = ::method(&Default::default()); // $ type=_b3:bool target=FirstTrait::method target=default + let _b4 = ::method2(&s); // $ type=_b4:bool target=S_as_FirstTrait::method2 + let _b5 = ::method2(&Default::default()); // $ type=_b5:bool target=S_as_FirstTrait::method2 target=default + + let _n1 = SecondTrait::method(&s); // $ type=_n1:i64 target=SecondTrait::method + let _n2 = ::method(&s); // $ type=_n2:i64 target=SecondTrait::method + let _n3 = ::method(&Default::default()); // $ type=_n3:i64 target=SecondTrait::method target=default + let _n4 = ::method2(&s); // $ type=_n4:i64 target=S_as_SecondTrait::method2 + let _n5 = ::method2(&Default::default()); // $ type=_n5:i64 target=S_as_SecondTrait::method2 target=default + + ::function(); // $ target=S::function + ::function(); // $ target=S2::function + } +} + +pub mod impl_overlap { + #[derive(Debug, Clone, Copy)] + struct S1; + + trait OverlappingTrait { + fn common_method(self) -> S1; + + fn common_method_2(self, s1: S1) -> S1; + } + + impl OverlappingTrait for S1 { + // ::common_method + fn common_method(self) -> S1 { + S1 + } + + // ::common_method_2 + fn common_method_2(self, s1: S1) -> S1 { + S1 + } + } + + impl S1 { + // S1::common_method + fn common_method(self) -> S1 { + self + } + + // S1::common_method_2 + fn common_method_2(self) -> S1 { + self + } + } + + struct S2(T2); + + impl S2 { + // S2::common_method + fn common_method(self) -> S1 { + S1 + } + + // S2::common_method + fn common_method_2(self) -> S1 { + S1 + } + } + + impl OverlappingTrait for S2 { + // _as_OverlappingTrait>::common_method + fn common_method(self) -> S1 { + S1 + } + + // _as_OverlappingTrait>::common_method_2 + fn common_method_2(self, s1: S1) -> S1 { + S1 + } + } + + impl OverlappingTrait for S2 { + // _as_OverlappingTrait>::common_method + fn common_method(self) -> S1 { + S1 + } + + // _as_OverlappingTrait>::common_method_2 + fn common_method_2(self, s1: S1) -> S1 { + S1 + } + } + + #[derive(Debug)] + struct S3(T3); + + trait OverlappingTrait2 { + fn m(&self, x: &T) -> &Self; + } + + impl OverlappingTrait2 for S3 { + // _as_OverlappingTrait2>::m + fn m(&self, x: &T) -> &Self { + self + } + } + + impl S3 { + // S3::m + fn m(&self, x: T) -> &Self { + self + } + } + + trait MyTrait1 { + // MyTrait1::m + fn m(&self) {} + } + + trait MyTrait2: MyTrait1 {} + + #[derive(Debug)] + struct S4; + + impl MyTrait1 for S4 { + // ::m + fn m(&self) {} + } + + impl MyTrait2 for S4 {} + + #[derive(Debug)] + struct S5(T5); + + impl MyTrait1 for S5 { + // _as_MyTrait1>::m + fn m(&self) {} + } + + impl MyTrait2 for S5 {} + + impl MyTrait1 for S5 {} + + impl MyTrait2 for S5 {} + + pub fn f() { + let x = S1; + println!("{:?}", x.common_method()); // $ target=S1::common_method + println!("{:?}", S1::common_method(x)); // $ target=S1::common_method + println!("{:?}", x.common_method_2()); // $ target=S1::common_method_2 + println!("{:?}", S1::common_method_2(x)); // $ target=S1::common_method_2 + + let y = S2(S1); + println!("{:?}", y.common_method()); // $ target=_as_OverlappingTrait>::common_method + println!("{:?}", S2::::common_method(S2(S1))); // $ target=_as_OverlappingTrait>::common_method + + let z = S2(0); + println!("{:?}", z.common_method()); // $ target=S2::common_method + println!("{:?}", S2::common_method(S2(0))); // $ target=S2::common_method + println!("{:?}", S2::::common_method(S2(0))); // $ target=S2::common_method + + let w = S3(S1); + println!("{:?}", w.m(x)); // $ target=S3::m + println!("{:?}", S3::m(&w, x)); // $ target=S3::m + + S4.m(); // $ target=::m + S4::m(&S4); // $ target=::m + S5(0i32).m(); // $ target=_as_MyTrait1>::m + S5::m(&S5(0i32)); // $ target=_as_MyTrait1>::m + S5(true).m(); // $ target=MyTrait1::m + S5::m(&S5(true)); // $ target=MyTrait1::m + } +} + +mod impl_overlap2 { + trait Trait1 { + fn f(self, x: T1) -> T1; + } + + impl Trait1 for i32 { + // f1 + fn f(self, x: i32) -> i32 { + 0 + } + } + + impl Trait1 for i32 { + // f2 + fn f(self, x: i64) -> i64 { + 0 + } + } + + trait Trait2 { + fn g(self, x: T1) -> T2; + } + + impl Trait2 for i32 { + // g3 + fn g(self, x: i32) -> i32 { + 0 + } + } + + impl Trait2 for i32 { + // g4 + fn g(self, x: i32) -> i64 { + 0 + } + } + + fn f() { + let x = 0; + let y = x.f(0i32); // $ target=f1 + let z: i32 = x.f(Default::default()); // $ target=f1 target=default + let z = x.f(0i64); // $ target=f2 + let z: i64 = x.f(Default::default()); // $ target=f2 target=default + let z: i64 = x.g(0i32); // $ target=g4 + } +} + +mod impl_overlap3 { + trait Trait { + type Assoc; + + fn Assoc() -> Self::Assoc; + } + + struct S(T); + + impl Trait for S { + type Assoc = i32; + + // S3i32AssocFunc + fn Assoc() -> Self::Assoc { + 0 + } + } + + impl Trait for S { + type Assoc = bool; + + // S3boolAssocFunc + fn Assoc() -> Self::Assoc { + true + } + } + + impl S { + // S3i32f + fn f(x: i32) -> i32 { + 0 + } + } + + impl S { + // S3boolf + fn f(x: bool) -> bool { + true + } + } + + fn f() { + S::::Assoc(); // $ target=S3i32AssocFunc + S::::Assoc(); // $ target=S3boolAssocFunc + + // `S::f(true)` results in "multiple applicable items in scope", even though the argument is actually enough to disambiguate + S::::f(true); // $ target=S3boolf + S::::f(0); // $ target=S3i32f + } +} + +mod default_type_args { + struct S(T); + + trait MyTrait { + type AssocType; + + fn g(self) -> Self::AssocType; + } + + impl S { + fn f(self) -> i64 { + self.0 // $ fieldof=S + } + + fn g(self) -> i64 { + self.0 // $ fieldof=S + } + } + + impl S { + fn g(self) -> bool { + self.0 // $ fieldof=S + } + } + + impl MyTrait for S { + type AssocType = S; + + fn g(self) -> S { + let x = S::f(S(Default::default())); // $ target=f target=default type=x:i64 + let x = Self::AssocType::f(S(Default::default())); // $ target=f target=default type=x:i64 + let x = S::::g(S(Default::default())); // $ target=g target=default type=x:bool + let x = S::::g(S(Default::default())); // $ target=g target=default type=x:i64 + let x = Self::AssocType::g(S(Default::default())); // $ target=g target=default type=x:i64 + S(0) + } + } +} + +mod from_default { + #[derive(Default)] + struct S; + + fn f() -> S { + let x = Default::default(); // $ target=default type=x:S + From::from(x) // $ target=from + } + + struct S1; + + struct S2; + + impl From for S1 { + // from1 + fn from(_: S) -> Self { + S1 + } + } + + impl From for S1 { + // from2 + fn from(_: S2) -> Self { + S1 + } + } + + impl From for S2 { + // from3 + fn from(_: S) -> Self { + S2 + } + } + + fn g(b: bool) -> S1 { + let s = if b { S } else { Default::default() }; // $ target=default type=s:S + let x = From::from(s); // $ target=from1 type=x:S1 + x + } +} diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index 36663b1dc4bf..1b750fab4586 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -20,212 +20,319 @@ inferCertainType | associated_types.rs:44:12:44:16 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:44:12:44:16 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | | associated_types.rs:44:35:46:5 | { ... } | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:53:12:53:16 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:53:12:53:16 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:53:12:53:16 | SelfParam | TRef.A | associated_types.rs:49:6:49:12 | T | -| associated_types.rs:53:35:55:5 | { ... } | | associated_types.rs:49:6:49:12 | T | -| associated_types.rs:54:9:54:12 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:54:9:54:12 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:54:9:54:12 | self | TRef.A | associated_types.rs:49:6:49:12 | T | -| associated_types.rs:65:15:65:18 | SelfParam | | associated_types.rs:61:5:76:5 | Self [trait MyTrait] | -| associated_types.rs:67:15:67:18 | SelfParam | | associated_types.rs:61:5:76:5 | Self [trait MyTrait] | -| associated_types.rs:71:9:75:9 | { ... } | | associated_types.rs:62:9:62:28 | AssociatedType[MyTrait] | -| associated_types.rs:72:13:72:16 | self | | associated_types.rs:61:5:76:5 | Self [trait MyTrait] | -| associated_types.rs:82:15:82:18 | SelfParam | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:82:45:84:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:91:15:91:18 | SelfParam | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:91:45:93:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:91:45:93:9 | { ... } | A | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:92:21:92:24 | self | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:96:19:110:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:99:18:99:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:99:18:99:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:99:18:99:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:99:18:99:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:104:18:104:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:104:18:104:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:104:18:104:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:104:18:104:26 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:107:18:107:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:107:18:107:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:107:18:107:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:107:18:107:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:109:18:109:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:109:18:109:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:109:18:109:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:109:18:109:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:117:30:117:34 | thing | | associated_types.rs:117:19:117:27 | T | -| associated_types.rs:118:9:118:13 | thing | | associated_types.rs:117:19:117:27 | T | -| associated_types.rs:121:33:121:37 | thing | | associated_types.rs:121:22:121:30 | T | -| associated_types.rs:122:9:122:13 | thing | | associated_types.rs:121:22:121:30 | T | -| associated_types.rs:125:19:128:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:135:26:135:26 | x | | associated_types.rs:135:23:135:23 | T | -| associated_types.rs:138:5:140:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:139:18:139:18 | x | | associated_types.rs:135:23:135:23 | T | -| associated_types.rs:143:24:143:24 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:146:5:150:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:147:19:147:19 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:148:23:148:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:148:24:148:24 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:149:18:149:18 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:153:23:153:23 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:157:5:161:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:158:19:158:19 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:159:23:159:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:159:24:159:24 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:160:18:160:18 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:167:17:167:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:167:17:167:21 | SelfParam | TRef | associated_types.rs:163:5:168:5 | Self [trait AssocNameClash] | -| associated_types.rs:170:34:170:34 | x | | associated_types.rs:170:31:170:31 | T | -| associated_types.rs:174:5:177:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:175:18:175:18 | x | | associated_types.rs:170:31:170:31 | T | -| associated_types.rs:176:18:176:18 | x | | associated_types.rs:170:31:170:31 | T | -| associated_types.rs:187:19:187:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:187:19:187:23 | SelfParam | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:187:26:187:26 | a | | associated_types.rs:187:16:187:16 | A | -| associated_types.rs:190:23:190:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:190:23:190:27 | SelfParam | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:190:30:190:30 | a | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:190:36:190:36 | b | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:190:76:193:9 | { ... } | | associated_types.rs:184:9:184:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:191:13:191:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:191:13:191:16 | self | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:191:22:191:22 | a | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:192:13:192:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:192:13:192:16 | self | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:192:22:192:22 | b | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:201:19:201:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:201:19:201:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:201:26:201:26 | a | | associated_types.rs:201:16:201:16 | A | -| associated_types.rs:201:46:203:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:201:46:203:9 | { ... } | A | associated_types.rs:201:16:201:16 | A | -| associated_types.rs:202:21:202:21 | a | | associated_types.rs:201:16:201:16 | A | -| associated_types.rs:206:19:213:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:209:25:209:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:212:29:212:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:212:35:212:39 | false | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:224:21:224:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:224:21:224:25 | SelfParam | TRef | associated_types.rs:219:5:229:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:226:20:226:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:226:20:226:24 | SelfParam | TRef | associated_types.rs:219:5:229:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:228:20:228:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:228:20:228:24 | SelfParam | TRef | associated_types.rs:219:5:229:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:235:21:235:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:235:21:235:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:235:34:237:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:239:20:239:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:239:20:239:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:239:43:241:9 | { ... } | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:243:20:243:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:243:20:243:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:243:43:245:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:248:19:252:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:260:24:260:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:260:24:260:28 | SelfParam | TRef | associated_types.rs:258:5:261:5 | Self [trait Subtrait] | -| associated_types.rs:269:23:269:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:269:23:269:27 | SelfParam | TRef | associated_types.rs:263:5:273:5 | Self [trait Subtrait2] | -| associated_types.rs:269:30:269:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:269:48:269:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:269:66:272:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:270:13:270:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:270:13:270:16 | self | TRef | associated_types.rs:263:5:273:5 | Self [trait Subtrait2] | -| associated_types.rs:270:22:270:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:271:13:271:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:271:13:271:16 | self | TRef | associated_types.rs:263:5:273:5 | Self [trait Subtrait2] | -| associated_types.rs:271:22:271:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:280:16:280:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:280:16:280:20 | SelfParam | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:280:16:280:20 | SelfParam | TRef.T | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:280:39:282:9 | { ... } | | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:281:13:281:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:281:13:281:16 | self | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:281:13:281:16 | self | TRef.T | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:284:16:284:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:284:16:284:20 | SelfParam | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:284:16:284:20 | SelfParam | TRef.T | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:284:23:284:30 | _content | | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:284:47:286:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:285:22:285:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:285:22:285:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:285:22:285:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:285:22:285:42 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:291:24:291:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:291:24:291:28 | SelfParam | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:291:24:291:28 | SelfParam | TRef.T | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:292:15:292:18 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:292:15:292:18 | self | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:292:15:292:18 | self | TRef.T | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:296:33:296:36 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:296:33:296:36 | item | TRef | associated_types.rs:296:20:296:30 | T | -| associated_types.rs:297:9:297:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:297:9:297:12 | item | TRef | associated_types.rs:296:20:296:30 | T | -| associated_types.rs:300:35:300:38 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:300:35:300:38 | item | TRef | associated_types.rs:300:21:300:32 | T | -| associated_types.rs:300:90:303:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:301:9:301:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:301:9:301:12 | item | TRef | associated_types.rs:300:21:300:32 | T | -| associated_types.rs:302:9:302:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:302:9:302:12 | item | TRef | associated_types.rs:300:21:300:32 | T | -| associated_types.rs:305:19:311:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:306:28:306:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:309:28:309:31 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:310:37:310:42 | &item2 | | {EXTERNAL LOCATION} | & | -| associated_types.rs:324:16:324:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:324:16:324:20 | SelfParam | TRef | associated_types.rs:317:5:317:20 | ST | -| associated_types.rs:324:16:324:20 | SelfParam | TRef.T | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:324:39:326:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:324:39:326:9 | { ... } | E | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:324:39:326:9 | { ... } | T | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:325:16:325:19 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:325:16:325:19 | self | TRef | associated_types.rs:317:5:317:20 | ST | -| associated_types.rs:325:16:325:19 | self | TRef.T | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:329:19:331:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:330:21:330:24 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:338:31:338:31 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:338:31:338:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:338:31:338:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:338:61:346:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:340:21:340:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:340:21:340:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:340:21:340:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:343:19:343:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:343:19:343:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:343:19:343:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:345:23:345:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:345:23:345:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:345:23:345:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:348:36:348:36 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:348:36:348:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:348:36:348:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:348:36:348:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:348:92:354:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:349:21:349:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:349:21:349:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:349:21:349:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:349:21:349:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:350:19:350:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:350:19:350:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:350:19:350:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:350:19:350:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:351:23:351:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:351:23:351:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:351:23:351:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:351:23:351:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:352:21:352:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:352:21:352:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:352:21:352:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:352:21:352:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:353:19:353:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:353:19:353:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:353:19:353:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:353:19:353:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:357:15:364:1 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:358:5:358:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:359:5:359:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:360:5:360:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:361:5:361:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:362:5:362:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:363:5:363:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:53:20:53:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:53:20:53:24 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:53:50:55:5 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:54:9:54:12 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:62:12:62:16 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:62:12:62:16 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:62:12:62:16 | SelfParam | TRef.A | associated_types.rs:58:6:58:12 | T | +| associated_types.rs:62:35:64:5 | { ... } | | associated_types.rs:58:6:58:12 | T | +| associated_types.rs:63:9:63:12 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:63:9:63:12 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:63:9:63:12 | self | TRef.A | associated_types.rs:58:6:58:12 | T | +| associated_types.rs:72:12:72:16 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:72:12:72:16 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:72:12:72:16 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:72:35:74:5 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:73:9:73:12 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:80:12:80:16 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:80:12:80:16 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:80:12:80:16 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:80:35:82:5 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:81:9:81:11 | 'a' | | {EXTERNAL LOCATION} | char | +| associated_types.rs:92:15:92:18 | SelfParam | | associated_types.rs:88:5:103:5 | Self [trait MyTrait] | +| associated_types.rs:94:15:94:18 | SelfParam | | associated_types.rs:88:5:103:5 | Self [trait MyTrait] | +| associated_types.rs:98:9:102:9 | { ... } | | associated_types.rs:89:9:89:28 | AssociatedType[MyTrait] | +| associated_types.rs:99:13:99:16 | self | | associated_types.rs:88:5:103:5 | Self [trait MyTrait] | +| associated_types.rs:109:15:109:18 | SelfParam | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:109:45:111:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:118:15:118:18 | SelfParam | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:118:45:120:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:118:45:120:9 | { ... } | A | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:119:21:119:24 | self | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:123:19:137:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:126:18:126:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:126:18:126:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:126:18:126:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:126:18:126:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:131:18:131:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:131:18:131:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:131:18:131:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:131:18:131:26 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:134:18:134:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:134:18:134:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:134:18:134:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:134:18:134:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:136:18:136:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:136:18:136:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:136:18:136:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:136:18:136:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:144:9:144:9 | a | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:145:9:145:9 | b | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:146:9:146:9 | c | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:147:9:147:9 | d | | {EXTERNAL LOCATION} | char | +| associated_types.rs:148:7:153:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:149:13:149:14 | _a | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:149:18:149:18 | a | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:150:13:150:14 | _b | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:150:18:150:18 | b | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:151:13:151:14 | _c | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:151:18:151:18 | c | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:152:13:152:14 | _d | | {EXTERNAL LOCATION} | char | +| associated_types.rs:152:18:152:18 | d | | {EXTERNAL LOCATION} | char | +| associated_types.rs:173:17:173:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:173:17:173:21 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:173:17:173:21 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:173:52:176:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:181:17:181:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:181:17:181:21 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:181:17:181:21 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:181:52:184:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:187:19:192:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:188:9:188:34 | using_as(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:188:25:188:28 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:188:31:188:33 | 'a' | | {EXTERNAL LOCATION} | char | +| associated_types.rs:190:22:190:26 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:191:22:191:25 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:206:20:206:20 | t | | associated_types.rs:204:17:204:17 | T | +| associated_types.rs:211:20:211:20 | t | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:211:45:217:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:212:16:212:16 | t | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:222:20:222:20 | t | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:222:44:224:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:223:13:223:13 | t | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:229:23:229:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:229:23:229:27 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:229:30:229:30 | t | | associated_types.rs:229:20:229:20 | T | +| associated_types.rs:232:9:234:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:232:9:234:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:233:24:233:24 | t | | associated_types.rs:229:20:229:20 | T | +| associated_types.rs:237:19:241:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:239:28:239:31 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:248:30:248:34 | thing | | associated_types.rs:248:19:248:27 | T | +| associated_types.rs:248:65:250:5 | { ... } | | associated_types.rs:248:19:248:27 | T::Output[GetSet] | +| associated_types.rs:249:9:249:13 | thing | | associated_types.rs:248:19:248:27 | T | +| associated_types.rs:252:33:252:37 | thing | | associated_types.rs:252:22:252:30 | T | +| associated_types.rs:252:56:254:5 | { ... } | | associated_types.rs:252:22:252:30 | T::Output[GetSet] | +| associated_types.rs:253:9:253:13 | thing | | associated_types.rs:252:22:252:30 | T | +| associated_types.rs:256:48:256:52 | thing | | associated_types.rs:256:33:256:45 | T | +| associated_types.rs:256:91:261:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:256:91:261:5 | { ... } | T0 | associated_types.rs:256:33:256:45 | T::Output[GetSet] | +| associated_types.rs:256:91:261:5 | { ... } | T1 | associated_types.rs:256:33:256:45 | T::AnotherOutput[AnotherGet] | +| associated_types.rs:257:9:260:9 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:258:13:258:17 | thing | | associated_types.rs:256:33:256:45 | T | +| associated_types.rs:259:13:259:17 | thing | | associated_types.rs:256:33:256:45 | T | +| associated_types.rs:268:20:268:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:268:20:268:24 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:268:20:268:24 | SelfParam | TRef.A | associated_types.rs:264:10:264:11 | TI | +| associated_types.rs:268:41:270:9 | { ... } | | associated_types.rs:264:10:264:11 | TI::Output[GetSet] | +| associated_types.rs:269:13:269:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:269:13:269:16 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:269:13:269:16 | self | TRef.A | associated_types.rs:264:10:264:11 | TI | +| associated_types.rs:275:40:275:44 | thing | | associated_types.rs:275:29:275:37 | T | +| associated_types.rs:279:9:279:13 | thing | | associated_types.rs:275:29:275:37 | T | +| associated_types.rs:286:21:286:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:286:21:286:25 | SelfParam | TRef | associated_types.rs:282:5:287:5 | Self [trait GetSetWrap] | +| associated_types.rs:293:21:293:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:293:21:293:25 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:293:43:295:9 | { ... } | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:303:21:303:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:303:21:303:25 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:303:21:303:25 | SelfParam | TRef.A | associated_types.rs:299:10:299:11 | TI | +| associated_types.rs:304:13:304:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:304:13:304:16 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:304:13:304:16 | self | TRef.A | associated_types.rs:299:10:299:11 | TI | +| associated_types.rs:308:19:322:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:311:13:314:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:314:13:314:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:329:26:329:26 | x | | associated_types.rs:329:23:329:23 | T | +| associated_types.rs:332:5:334:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:333:18:333:18 | x | | associated_types.rs:329:23:329:23 | T | +| associated_types.rs:337:24:337:24 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:340:5:344:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:341:19:341:19 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:342:23:342:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:342:24:342:24 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:343:18:343:18 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:347:23:347:23 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:351:5:355:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:352:19:352:19 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:353:23:353:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:353:24:353:24 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:354:18:354:18 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:361:17:361:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:361:17:361:21 | SelfParam | TRef | associated_types.rs:357:5:362:5 | Self [trait AssocNameClash] | +| associated_types.rs:364:34:364:34 | x | | associated_types.rs:364:31:364:31 | T | +| associated_types.rs:368:5:371:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:369:18:369:18 | x | | associated_types.rs:364:31:364:31 | T | +| associated_types.rs:370:18:370:18 | x | | associated_types.rs:364:31:364:31 | T | +| associated_types.rs:381:19:381:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:381:19:381:23 | SelfParam | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:381:26:381:26 | a | | associated_types.rs:381:16:381:16 | A | +| associated_types.rs:384:23:384:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:384:23:384:27 | SelfParam | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:384:30:384:30 | a | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:384:36:384:36 | b | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:384:76:387:9 | { ... } | | associated_types.rs:378:9:378:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:385:13:385:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:385:13:385:16 | self | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:385:22:385:22 | a | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:386:13:386:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:386:13:386:16 | self | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:386:22:386:22 | b | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:395:19:395:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:395:19:395:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:395:26:395:26 | a | | associated_types.rs:395:16:395:16 | A | +| associated_types.rs:395:46:397:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:395:46:397:9 | { ... } | A | associated_types.rs:395:16:395:16 | A | +| associated_types.rs:396:21:396:21 | a | | associated_types.rs:395:16:395:16 | A | +| associated_types.rs:400:19:407:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:403:25:403:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:406:29:406:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:406:35:406:39 | false | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:418:21:418:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:418:21:418:25 | SelfParam | TRef | associated_types.rs:413:5:423:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:420:20:420:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:420:20:420:24 | SelfParam | TRef | associated_types.rs:413:5:423:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:422:20:422:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:422:20:422:24 | SelfParam | TRef | associated_types.rs:413:5:423:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:429:21:429:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:429:21:429:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:429:34:431:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:433:20:433:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:433:20:433:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:433:43:435:9 | { ... } | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:437:20:437:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:437:20:437:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:437:43:439:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:442:19:446:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:454:24:454:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:454:24:454:28 | SelfParam | TRef | associated_types.rs:452:5:455:5 | Self [trait Subtrait] | +| associated_types.rs:463:23:463:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:463:23:463:27 | SelfParam | TRef | associated_types.rs:457:5:467:5 | Self [trait Subtrait2] | +| associated_types.rs:463:30:463:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:463:48:463:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:463:66:466:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:464:13:464:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:464:13:464:16 | self | TRef | associated_types.rs:457:5:467:5 | Self [trait Subtrait2] | +| associated_types.rs:464:22:464:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:465:13:465:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:465:13:465:16 | self | TRef | associated_types.rs:457:5:467:5 | Self [trait Subtrait2] | +| associated_types.rs:465:22:465:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:474:16:474:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:474:16:474:20 | SelfParam | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:474:16:474:20 | SelfParam | TRef.T | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:474:39:476:9 | { ... } | | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:475:13:475:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:475:13:475:16 | self | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:475:13:475:16 | self | TRef.T | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:478:16:478:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:478:16:478:20 | SelfParam | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:478:16:478:20 | SelfParam | TRef.T | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:478:23:478:30 | _content | | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:478:47:480:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:479:22:479:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:479:22:479:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:479:22:479:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:479:22:479:42 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:485:24:485:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:485:24:485:28 | SelfParam | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:485:24:485:28 | SelfParam | TRef.T | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:485:47:487:9 | { ... } | | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:486:15:486:18 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:486:15:486:18 | self | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:486:15:486:18 | self | TRef.T | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:492:24:492:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:492:24:492:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:492:24:492:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:492:47:495:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:500:24:500:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:500:24:500:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:500:24:500:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:500:47:502:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:505:33:505:36 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:505:33:505:36 | item | TRef | associated_types.rs:505:20:505:30 | T | +| associated_types.rs:505:56:507:5 | { ... } | | associated_types.rs:505:20:505:30 | T::Output[GetSet] | +| associated_types.rs:506:9:506:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:506:9:506:12 | item | TRef | associated_types.rs:505:20:505:30 | T | +| associated_types.rs:509:35:509:38 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:509:35:509:38 | item | TRef | associated_types.rs:509:21:509:32 | T | +| associated_types.rs:509:45:509:46 | c1 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:509:60:509:61 | c2 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:509:75:509:76 | c3 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:509:90:512:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:510:9:510:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:510:9:510:12 | item | TRef | associated_types.rs:509:21:509:32 | T | +| associated_types.rs:510:18:510:19 | c1 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:511:9:511:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:511:9:511:12 | item | TRef | associated_types.rs:509:21:509:32 | T | +| associated_types.rs:511:25:511:26 | c2 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:511:29:511:30 | c3 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:514:19:523:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:515:28:515:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:518:28:518:31 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:519:37:519:42 | &item2 | | {EXTERNAL LOCATION} | & | +| associated_types.rs:521:29:521:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:522:29:522:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:536:16:536:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:536:16:536:20 | SelfParam | TRef | associated_types.rs:529:5:529:20 | ST | +| associated_types.rs:536:16:536:20 | SelfParam | TRef.T | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:536:39:538:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:536:39:538:9 | { ... } | E | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:536:39:538:9 | { ... } | T | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:537:16:537:19 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:537:16:537:19 | self | TRef | associated_types.rs:529:5:529:20 | ST | +| associated_types.rs:537:16:537:19 | self | TRef.T | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:541:19:543:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:542:21:542:24 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:550:31:550:31 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:550:31:550:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:550:31:550:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:550:61:558:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:552:21:552:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:552:21:552:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:552:21:552:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:555:19:555:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:555:19:555:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:555:19:555:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:557:23:557:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:557:23:557:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:557:23:557:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:560:36:560:36 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:560:36:560:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:560:36:560:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:560:36:560:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:560:92:566:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:561:21:561:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:561:21:561:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:561:21:561:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:561:21:561:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:562:19:562:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:562:19:562:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:562:19:562:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:562:19:562:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:563:23:563:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:563:23:563:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:563:23:563:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:563:23:563:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:564:21:564:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:564:21:564:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:564:21:564:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:564:21:564:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:565:19:565:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:565:19:565:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:565:19:565:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:565:19:565:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:569:15:578:1 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:570:5:570:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:571:5:571:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:572:5:572:59 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:573:5:573:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:574:5:574:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:575:5:575:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:576:5:576:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:577:5:577:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:15:18:15:22 | SelfParam | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:15:18:15:22 | SelfParam | TRef | blanket_impl.rs:9:5:10:14 | S2 | | blanket_impl.rs:15:42:17:9 | { ... } | | {EXTERNAL LOCATION} | & | @@ -1028,7 +1135,7 @@ inferCertainType | main.rs:121:25:121:28 | SelfParam | | main.rs:110:5:113:5 | MyThing | | main.rs:121:39:123:9 | { ... } | | {EXTERNAL LOCATION} | bool | | main.rs:122:13:122:16 | self | | main.rs:110:5:113:5 | MyThing | -| main.rs:126:16:132:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:126:16:135:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:127:13:127:13 | x | | main.rs:110:5:113:5 | MyThing | | main.rs:127:17:127:39 | MyThing {...} | | main.rs:110:5:113:5 | MyThing | | main.rs:127:34:127:37 | true | | {EXTERNAL LOCATION} | bool | @@ -1037,2738 +1144,2873 @@ inferCertainType | main.rs:130:17:130:40 | MyThing {...} | | main.rs:110:5:113:5 | MyThing | | main.rs:130:34:130:38 | false | | {EXTERNAL LOCATION} | bool | | main.rs:131:39:131:39 | y | | main.rs:110:5:113:5 | MyThing | -| main.rs:141:25:141:29 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:141:25:141:29 | SelfParam | TRef | main.rs:139:9:144:9 | Self [trait Foo] | -| main.rs:141:32:143:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:142:26:142:31 | "foo!\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:142:26:142:31 | "foo!\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:142:26:142:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:142:26:142:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:148:25:148:29 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:148:25:148:29 | SelfParam | TRef | main.rs:146:9:151:9 | Self [trait Bar] | -| main.rs:148:32:150:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:149:26:149:31 | "bar!\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:149:26:149:31 | "bar!\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:149:26:149:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:149:26:149:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:160:15:181:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:162:9:165:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:166:9:169:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:170:9:173:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:174:9:180:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:178:13:178:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | -| main.rs:178:27:178:28 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:179:13:179:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | -| main.rs:179:27:179:28 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:197:15:197:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | -| main.rs:197:15:197:18 | SelfParam | A | main.rs:190:5:191:14 | S1 | -| main.rs:197:27:199:9 | { ... } | | main.rs:190:5:191:14 | S1 | -| main.rs:198:13:198:16 | self | | main.rs:185:5:188:5 | MyThing | -| main.rs:198:13:198:16 | self | A | main.rs:190:5:191:14 | S1 | -| main.rs:204:15:204:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | -| main.rs:204:15:204:18 | SelfParam | A | main.rs:192:5:193:14 | S2 | -| main.rs:204:29:206:9 | { ... } | | main.rs:185:5:188:5 | MyThing | -| main.rs:204:29:206:9 | { ... } | A | main.rs:192:5:193:14 | S2 | -| main.rs:205:13:205:30 | Self {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:205:13:205:30 | Self {...} | A | main.rs:192:5:193:14 | S2 | -| main.rs:205:23:205:26 | self | | main.rs:185:5:188:5 | MyThing | -| main.rs:205:23:205:26 | self | A | main.rs:192:5:193:14 | S2 | -| main.rs:210:15:210:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | -| main.rs:210:15:210:18 | SelfParam | A | main.rs:209:10:209:10 | T | -| main.rs:210:26:212:9 | { ... } | | main.rs:209:10:209:10 | T | -| main.rs:211:13:211:16 | self | | main.rs:185:5:188:5 | MyThing | -| main.rs:211:13:211:16 | self | A | main.rs:209:10:209:10 | T | -| main.rs:215:16:231:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:216:13:216:13 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:216:17:216:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:217:13:217:13 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:217:17:217:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:220:18:220:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:220:18:220:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:220:18:220:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:220:18:220:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:220:26:220:26 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:221:18:221:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:221:18:221:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:221:18:221:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:221:18:221:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:221:26:221:26 | y | | main.rs:185:5:188:5 | MyThing | +| main.rs:133:13:133:13 | z | | main.rs:110:5:113:5 | MyThing | +| main.rs:133:17:133:40 | MyThing {...} | | main.rs:110:5:113:5 | MyThing | +| main.rs:133:34:133:38 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:134:58:134:58 | z | | main.rs:110:5:113:5 | MyThing | +| main.rs:144:25:144:29 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:144:25:144:29 | SelfParam | TRef | main.rs:142:9:147:9 | Self [trait Foo] | +| main.rs:144:32:146:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:145:26:145:31 | "foo!\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:145:26:145:31 | "foo!\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:145:26:145:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:145:26:145:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:151:25:151:29 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:151:25:151:29 | SelfParam | TRef | main.rs:149:9:154:9 | Self [trait Bar] | +| main.rs:151:32:153:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:152:26:152:31 | "bar!\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:152:26:152:31 | "bar!\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:152:26:152:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:152:26:152:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:163:15:184:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:165:9:168:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:169:9:172:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:173:9:176:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:177:9:183:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:181:13:181:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | +| main.rs:181:27:181:28 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:182:13:182:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | +| main.rs:182:27:182:28 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:200:15:200:18 | SelfParam | | main.rs:188:5:191:5 | MyThing | +| main.rs:200:15:200:18 | SelfParam | A | main.rs:193:5:194:14 | S1 | +| main.rs:200:27:202:9 | { ... } | | main.rs:193:5:194:14 | S1 | +| main.rs:201:13:201:16 | self | | main.rs:188:5:191:5 | MyThing | +| main.rs:201:13:201:16 | self | A | main.rs:193:5:194:14 | S1 | +| main.rs:207:15:207:18 | SelfParam | | main.rs:188:5:191:5 | MyThing | +| main.rs:207:15:207:18 | SelfParam | A | main.rs:195:5:196:14 | S2 | +| main.rs:207:29:209:9 | { ... } | | main.rs:188:5:191:5 | MyThing | +| main.rs:207:29:209:9 | { ... } | A | main.rs:195:5:196:14 | S2 | +| main.rs:208:13:208:30 | Self {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:208:13:208:30 | Self {...} | A | main.rs:195:5:196:14 | S2 | +| main.rs:208:23:208:26 | self | | main.rs:188:5:191:5 | MyThing | +| main.rs:208:23:208:26 | self | A | main.rs:195:5:196:14 | S2 | +| main.rs:213:15:213:18 | SelfParam | | main.rs:188:5:191:5 | MyThing | +| main.rs:213:15:213:18 | SelfParam | A | main.rs:212:10:212:10 | T | +| main.rs:213:26:215:9 | { ... } | | main.rs:212:10:212:10 | T | +| main.rs:214:13:214:16 | self | | main.rs:188:5:191:5 | MyThing | +| main.rs:214:13:214:16 | self | A | main.rs:212:10:212:10 | T | +| main.rs:218:16:234:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:219:13:219:13 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:219:17:219:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:220:13:220:13 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:220:17:220:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | | main.rs:223:18:223:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:223:18:223:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:223:18:223:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:223:18:223:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:223:26:223:26 | x | | main.rs:185:5:188:5 | MyThing | +| main.rs:223:18:223:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:223:18:223:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:223:26:223:26 | x | | main.rs:188:5:191:5 | MyThing | | main.rs:224:18:224:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:224:18:224:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:224:18:224:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:224:18:224:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:224:26:224:26 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:226:13:226:13 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:226:17:226:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:227:13:227:13 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:227:17:227:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:229:18:229:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:229:18:229:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:229:18:229:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:229:18:229:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:229:26:229:26 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:230:18:230:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:230:18:230:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:230:18:230:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:230:18:230:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:230:26:230:26 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:254:15:254:18 | SelfParam | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:256:15:256:18 | SelfParam | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:259:9:261:9 | { ... } | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:260:13:260:16 | self | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:266:16:266:19 | SelfParam | | main.rs:264:5:269:5 | Self [trait MyProduct] | -| main.rs:268:16:268:19 | SelfParam | | main.rs:264:5:269:5 | Self [trait MyProduct] | -| main.rs:271:43:271:43 | x | | main.rs:271:26:271:40 | T2 | -| main.rs:271:56:273:5 | { ... } | | main.rs:271:22:271:23 | T1 | -| main.rs:272:9:272:9 | x | | main.rs:271:26:271:40 | T2 | -| main.rs:277:15:277:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | -| main.rs:277:15:277:18 | SelfParam | A | main.rs:246:5:247:14 | S1 | -| main.rs:277:27:279:9 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:278:13:278:16 | self | | main.rs:235:5:238:5 | MyThing | -| main.rs:278:13:278:16 | self | A | main.rs:246:5:247:14 | S1 | -| main.rs:284:15:284:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | -| main.rs:284:15:284:18 | SelfParam | A | main.rs:248:5:249:14 | S2 | -| main.rs:284:29:286:9 | { ... } | | main.rs:235:5:238:5 | MyThing | -| main.rs:284:29:286:9 | { ... } | A | main.rs:248:5:249:14 | S2 | -| main.rs:285:13:285:30 | Self {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:285:13:285:30 | Self {...} | A | main.rs:248:5:249:14 | S2 | -| main.rs:285:23:285:26 | self | | main.rs:235:5:238:5 | MyThing | -| main.rs:285:23:285:26 | self | A | main.rs:248:5:249:14 | S2 | -| main.rs:296:15:296:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | -| main.rs:296:15:296:18 | SelfParam | A | main.rs:250:5:251:14 | S3 | -| main.rs:296:27:298:9 | { ... } | | main.rs:291:10:291:11 | TD | -| main.rs:303:15:303:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:303:15:303:18 | SelfParam | P1 | main.rs:301:10:301:10 | I | -| main.rs:303:15:303:18 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:303:26:305:9 | { ... } | | main.rs:301:10:301:10 | I | -| main.rs:304:13:304:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:304:13:304:16 | self | P1 | main.rs:301:10:301:10 | I | -| main.rs:304:13:304:16 | self | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:310:15:310:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:310:15:310:18 | SelfParam | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:310:15:310:18 | SelfParam | P2 | main.rs:248:5:249:14 | S2 | -| main.rs:310:27:312:9 | { ... } | | main.rs:250:5:251:14 | S3 | -| main.rs:317:15:317:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:317:15:317:18 | SelfParam | P1 | main.rs:235:5:238:5 | MyThing | -| main.rs:317:15:317:18 | SelfParam | P1.A | main.rs:315:10:315:11 | TT | -| main.rs:317:15:317:18 | SelfParam | P2 | main.rs:250:5:251:14 | S3 | -| main.rs:317:27:320:9 | { ... } | | main.rs:315:10:315:11 | TT | -| main.rs:318:25:318:28 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:318:25:318:28 | self | P1 | main.rs:235:5:238:5 | MyThing | -| main.rs:318:25:318:28 | self | P1.A | main.rs:315:10:315:11 | TT | -| main.rs:318:25:318:28 | self | P2 | main.rs:250:5:251:14 | S3 | -| main.rs:326:16:326:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:326:16:326:19 | SelfParam | P1 | main.rs:324:10:324:10 | A | -| main.rs:326:16:326:19 | SelfParam | P2 | main.rs:324:10:324:10 | A | -| main.rs:326:27:328:9 | { ... } | | main.rs:324:10:324:10 | A | -| main.rs:327:13:327:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:327:13:327:16 | self | P1 | main.rs:324:10:324:10 | A | -| main.rs:327:13:327:16 | self | P2 | main.rs:324:10:324:10 | A | -| main.rs:331:16:331:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:331:16:331:19 | SelfParam | P1 | main.rs:324:10:324:10 | A | -| main.rs:331:16:331:19 | SelfParam | P2 | main.rs:324:10:324:10 | A | -| main.rs:331:27:333:9 | { ... } | | main.rs:324:10:324:10 | A | -| main.rs:332:13:332:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:332:13:332:16 | self | P1 | main.rs:324:10:324:10 | A | -| main.rs:332:13:332:16 | self | P2 | main.rs:324:10:324:10 | A | -| main.rs:339:16:339:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:339:16:339:19 | SelfParam | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:339:16:339:19 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:339:28:341:9 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:340:13:340:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:340:13:340:16 | self | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:340:13:340:16 | self | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:344:16:344:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:344:16:344:19 | SelfParam | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:344:16:344:19 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:344:28:346:9 | { ... } | | main.rs:248:5:249:14 | S2 | -| main.rs:345:13:345:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:345:13:345:16 | self | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:345:13:345:16 | self | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:349:46:349:46 | p | | main.rs:349:24:349:43 | P | -| main.rs:349:58:351:5 | { ... } | | main.rs:349:16:349:17 | V1 | -| main.rs:350:9:350:9 | p | | main.rs:349:24:349:43 | P | -| main.rs:353:46:353:46 | p | | main.rs:353:24:353:43 | P | -| main.rs:353:58:355:5 | { ... } | | main.rs:353:20:353:21 | V2 | -| main.rs:354:9:354:9 | p | | main.rs:353:24:353:43 | P | -| main.rs:357:54:357:54 | p | | main.rs:240:5:244:5 | MyPair | -| main.rs:357:54:357:54 | p | P1 | main.rs:357:20:357:21 | V0 | -| main.rs:357:54:357:54 | p | P2 | main.rs:357:32:357:51 | P | -| main.rs:357:78:359:5 | { ... } | | main.rs:357:24:357:25 | V1 | -| main.rs:358:9:358:9 | p | | main.rs:240:5:244:5 | MyPair | -| main.rs:358:9:358:9 | p | P1 | main.rs:357:20:357:21 | V0 | -| main.rs:358:9:358:9 | p | P2 | main.rs:357:32:357:51 | P | -| main.rs:363:23:363:26 | SelfParam | | main.rs:361:5:364:5 | Self [trait ConvertTo] | -| main.rs:368:23:368:26 | SelfParam | | main.rs:366:10:366:23 | T | -| main.rs:368:35:370:9 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:369:13:369:16 | self | | main.rs:366:10:366:23 | T | -| main.rs:373:41:373:45 | thing | | main.rs:373:23:373:38 | T | -| main.rs:373:57:375:5 | { ... } | | main.rs:373:19:373:20 | TS | -| main.rs:374:9:374:13 | thing | | main.rs:373:23:373:38 | T | -| main.rs:377:56:377:60 | thing | | main.rs:377:39:377:53 | TP | -| main.rs:377:73:380:5 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:379:9:379:13 | thing | | main.rs:377:39:377:53 | TP | -| main.rs:382:16:453:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:383:13:383:20 | thing_s1 | | main.rs:235:5:238:5 | MyThing | -| main.rs:383:24:383:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:384:13:384:20 | thing_s2 | | main.rs:235:5:238:5 | MyThing | -| main.rs:384:24:384:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:385:13:385:20 | thing_s3 | | main.rs:235:5:238:5 | MyThing | -| main.rs:385:24:385:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:389:18:389:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:389:18:389:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:389:18:389:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:389:18:389:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:389:26:389:33 | thing_s1 | | main.rs:235:5:238:5 | MyThing | -| main.rs:390:18:390:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:390:18:390:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:390:18:390:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:390:18:390:40 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:390:26:390:33 | thing_s2 | | main.rs:235:5:238:5 | MyThing | -| main.rs:391:13:391:14 | s3 | | main.rs:250:5:251:14 | S3 | -| main.rs:391:22:391:29 | thing_s3 | | main.rs:235:5:238:5 | MyThing | +| main.rs:224:18:224:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:224:18:224:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:224:26:224:26 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:226:18:226:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:226:18:226:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:226:18:226:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:226:18:226:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:226:26:226:26 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:227:18:227:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:227:18:227:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:227:18:227:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:227:18:227:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:227:26:227:26 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:229:13:229:13 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:229:17:229:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:230:13:230:13 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:230:17:230:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:232:18:232:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:232:18:232:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:232:18:232:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:232:18:232:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:232:26:232:26 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:233:18:233:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:233:18:233:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:233:18:233:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:233:18:233:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:233:26:233:26 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:257:15:257:18 | SelfParam | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:259:15:259:18 | SelfParam | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:262:9:264:9 | { ... } | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:263:13:263:16 | self | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:269:16:269:19 | SelfParam | | main.rs:267:5:272:5 | Self [trait MyProduct] | +| main.rs:271:16:271:19 | SelfParam | | main.rs:267:5:272:5 | Self [trait MyProduct] | +| main.rs:274:43:274:43 | x | | main.rs:274:26:274:40 | T2 | +| main.rs:274:56:276:5 | { ... } | | main.rs:274:22:274:23 | T1 | +| main.rs:275:9:275:9 | x | | main.rs:274:26:274:40 | T2 | +| main.rs:280:15:280:18 | SelfParam | | main.rs:238:5:241:5 | MyThing | +| main.rs:280:15:280:18 | SelfParam | A | main.rs:249:5:250:14 | S1 | +| main.rs:280:27:282:9 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:281:13:281:16 | self | | main.rs:238:5:241:5 | MyThing | +| main.rs:281:13:281:16 | self | A | main.rs:249:5:250:14 | S1 | +| main.rs:287:15:287:18 | SelfParam | | main.rs:238:5:241:5 | MyThing | +| main.rs:287:15:287:18 | SelfParam | A | main.rs:251:5:252:14 | S2 | +| main.rs:287:29:289:9 | { ... } | | main.rs:238:5:241:5 | MyThing | +| main.rs:287:29:289:9 | { ... } | A | main.rs:251:5:252:14 | S2 | +| main.rs:288:13:288:30 | Self {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:288:13:288:30 | Self {...} | A | main.rs:251:5:252:14 | S2 | +| main.rs:288:23:288:26 | self | | main.rs:238:5:241:5 | MyThing | +| main.rs:288:23:288:26 | self | A | main.rs:251:5:252:14 | S2 | +| main.rs:299:15:299:18 | SelfParam | | main.rs:238:5:241:5 | MyThing | +| main.rs:299:15:299:18 | SelfParam | A | main.rs:253:5:254:14 | S3 | +| main.rs:299:27:301:9 | { ... } | | main.rs:294:10:294:11 | TD | +| main.rs:306:15:306:18 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:306:15:306:18 | SelfParam | P1 | main.rs:304:10:304:10 | I | +| main.rs:306:15:306:18 | SelfParam | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:306:26:308:9 | { ... } | | main.rs:304:10:304:10 | I | +| main.rs:307:13:307:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:307:13:307:16 | self | P1 | main.rs:304:10:304:10 | I | +| main.rs:307:13:307:16 | self | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:313:15:313:18 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:313:15:313:18 | SelfParam | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:313:15:313:18 | SelfParam | P2 | main.rs:251:5:252:14 | S2 | +| main.rs:313:27:315:9 | { ... } | | main.rs:253:5:254:14 | S3 | +| main.rs:320:15:320:18 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:320:15:320:18 | SelfParam | P1 | main.rs:238:5:241:5 | MyThing | +| main.rs:320:15:320:18 | SelfParam | P1.A | main.rs:318:10:318:11 | TT | +| main.rs:320:15:320:18 | SelfParam | P2 | main.rs:253:5:254:14 | S3 | +| main.rs:320:27:323:9 | { ... } | | main.rs:318:10:318:11 | TT | +| main.rs:321:25:321:28 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:321:25:321:28 | self | P1 | main.rs:238:5:241:5 | MyThing | +| main.rs:321:25:321:28 | self | P1.A | main.rs:318:10:318:11 | TT | +| main.rs:321:25:321:28 | self | P2 | main.rs:253:5:254:14 | S3 | +| main.rs:329:16:329:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:329:16:329:19 | SelfParam | P1 | main.rs:327:10:327:10 | A | +| main.rs:329:16:329:19 | SelfParam | P2 | main.rs:327:10:327:10 | A | +| main.rs:329:27:331:9 | { ... } | | main.rs:327:10:327:10 | A | +| main.rs:330:13:330:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:330:13:330:16 | self | P1 | main.rs:327:10:327:10 | A | +| main.rs:330:13:330:16 | self | P2 | main.rs:327:10:327:10 | A | +| main.rs:334:16:334:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:334:16:334:19 | SelfParam | P1 | main.rs:327:10:327:10 | A | +| main.rs:334:16:334:19 | SelfParam | P2 | main.rs:327:10:327:10 | A | +| main.rs:334:27:336:9 | { ... } | | main.rs:327:10:327:10 | A | +| main.rs:335:13:335:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:335:13:335:16 | self | P1 | main.rs:327:10:327:10 | A | +| main.rs:335:13:335:16 | self | P2 | main.rs:327:10:327:10 | A | +| main.rs:342:16:342:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:342:16:342:19 | SelfParam | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:342:16:342:19 | SelfParam | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:342:28:344:9 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:343:13:343:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:343:13:343:16 | self | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:343:13:343:16 | self | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:347:16:347:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:347:16:347:19 | SelfParam | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:347:16:347:19 | SelfParam | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:347:28:349:9 | { ... } | | main.rs:251:5:252:14 | S2 | +| main.rs:348:13:348:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:348:13:348:16 | self | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:348:13:348:16 | self | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:352:46:352:46 | p | | main.rs:352:24:352:43 | P | +| main.rs:352:58:354:5 | { ... } | | main.rs:352:16:352:17 | V1 | +| main.rs:353:9:353:9 | p | | main.rs:352:24:352:43 | P | +| main.rs:356:46:356:46 | p | | main.rs:356:24:356:43 | P | +| main.rs:356:58:358:5 | { ... } | | main.rs:356:20:356:21 | V2 | +| main.rs:357:9:357:9 | p | | main.rs:356:24:356:43 | P | +| main.rs:360:54:360:54 | p | | main.rs:243:5:247:5 | MyPair | +| main.rs:360:54:360:54 | p | P1 | main.rs:360:20:360:21 | V0 | +| main.rs:360:54:360:54 | p | P2 | main.rs:360:32:360:51 | P | +| main.rs:360:78:362:5 | { ... } | | main.rs:360:24:360:25 | V1 | +| main.rs:361:9:361:9 | p | | main.rs:243:5:247:5 | MyPair | +| main.rs:361:9:361:9 | p | P1 | main.rs:360:20:360:21 | V0 | +| main.rs:361:9:361:9 | p | P2 | main.rs:360:32:360:51 | P | +| main.rs:366:23:366:26 | SelfParam | | main.rs:364:5:367:5 | Self [trait ConvertTo] | +| main.rs:371:23:371:26 | SelfParam | | main.rs:369:10:369:23 | T | +| main.rs:371:35:373:9 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:372:13:372:16 | self | | main.rs:369:10:369:23 | T | +| main.rs:376:41:376:45 | thing | | main.rs:376:23:376:38 | T | +| main.rs:376:57:378:5 | { ... } | | main.rs:376:19:376:20 | TS | +| main.rs:377:9:377:13 | thing | | main.rs:376:23:376:38 | T | +| main.rs:380:56:380:60 | thing | | main.rs:380:39:380:53 | TP | +| main.rs:380:73:383:5 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:382:9:382:13 | thing | | main.rs:380:39:380:53 | TP | +| main.rs:385:16:456:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:386:13:386:20 | thing_s1 | | main.rs:238:5:241:5 | MyThing | +| main.rs:386:24:386:40 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:387:13:387:20 | thing_s2 | | main.rs:238:5:241:5 | MyThing | +| main.rs:387:24:387:40 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:388:13:388:20 | thing_s3 | | main.rs:238:5:241:5 | MyThing | +| main.rs:388:24:388:40 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | | main.rs:392:18:392:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:392:18:392:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:392:18:392:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:392:18:392:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:392:26:392:27 | s3 | | main.rs:250:5:251:14 | S3 | -| main.rs:394:13:394:14 | p1 | | main.rs:240:5:244:5 | MyPair | -| main.rs:394:18:394:42 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:392:18:392:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:392:18:392:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:392:26:392:33 | thing_s1 | | main.rs:238:5:241:5 | MyThing | +| main.rs:393:18:393:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:393:18:393:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:393:18:393:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:393:18:393:40 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:393:26:393:33 | thing_s2 | | main.rs:238:5:241:5 | MyThing | +| main.rs:394:13:394:14 | s3 | | main.rs:253:5:254:14 | S3 | +| main.rs:394:22:394:29 | thing_s3 | | main.rs:238:5:241:5 | MyThing | | main.rs:395:18:395:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:395:18:395:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:395:18:395:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:395:18:395:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:395:26:395:27 | p1 | | main.rs:240:5:244:5 | MyPair | -| main.rs:397:13:397:14 | p2 | | main.rs:240:5:244:5 | MyPair | -| main.rs:397:18:397:42 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:395:18:395:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:395:18:395:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:395:26:395:27 | s3 | | main.rs:253:5:254:14 | S3 | +| main.rs:397:13:397:14 | p1 | | main.rs:243:5:247:5 | MyPair | +| main.rs:397:18:397:42 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | | main.rs:398:18:398:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:398:18:398:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:398:18:398:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:398:18:398:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:398:26:398:27 | p2 | | main.rs:240:5:244:5 | MyPair | -| main.rs:400:13:400:14 | p3 | | main.rs:240:5:244:5 | MyPair | -| main.rs:400:18:403:9 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:401:17:401:33 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:404:18:404:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:404:18:404:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:404:18:404:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:404:18:404:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:404:26:404:27 | p3 | | main.rs:240:5:244:5 | MyPair | -| main.rs:407:13:407:13 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:407:17:407:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:408:17:408:17 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:409:18:409:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:409:18:409:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:409:18:409:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:409:18:409:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:410:17:410:17 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:411:18:411:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:411:18:411:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:411:18:411:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:411:18:411:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:417:13:417:13 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:417:17:417:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:418:17:418:17 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:419:18:419:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:419:18:419:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:419:18:419:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:419:18:419:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:420:17:420:17 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:421:18:421:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:421:18:421:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:421:18:421:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:421:18:421:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:425:31:425:38 | thing_s1 | | main.rs:235:5:238:5 | MyThing | -| main.rs:426:18:426:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:426:18:426:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:426:18:426:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:426:18:426:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:427:31:427:38 | thing_s2 | | main.rs:235:5:238:5 | MyThing | -| main.rs:428:18:428:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:428:18:428:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:428:18:428:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:428:18:428:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:431:13:431:13 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:431:17:431:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:432:25:432:25 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:433:18:433:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:433:18:433:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:433:18:433:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:433:18:433:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:434:25:434:25 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:435:18:435:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:435:18:435:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:435:18:435:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:435:18:435:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:438:13:438:13 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:438:17:438:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:439:25:439:25 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:440:18:440:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:440:18:440:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:440:18:440:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:440:18:440:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:441:25:441:25 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:442:18:442:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:442:18:442:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:442:18:442:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:442:18:442:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:444:13:444:13 | c | | main.rs:240:5:244:5 | MyPair | -| main.rs:444:17:447:9 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:446:17:446:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:448:29:448:29 | c | | main.rs:240:5:244:5 | MyPair | -| main.rs:450:13:450:17 | thing | | main.rs:235:5:238:5 | MyThing | -| main.rs:450:21:450:37 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:451:17:451:21 | thing | | main.rs:235:5:238:5 | MyThing | -| main.rs:452:28:452:32 | thing | | main.rs:235:5:238:5 | MyThing | -| main.rs:461:26:461:29 | SelfParam | | main.rs:460:5:464:5 | Self [trait OverlappingTrait] | -| main.rs:463:28:463:31 | SelfParam | | main.rs:460:5:464:5 | Self [trait OverlappingTrait] | -| main.rs:463:34:463:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:468:26:468:29 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:468:38:470:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:473:28:473:31 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:473:34:473:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:473:48:475:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:480:26:480:29 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:480:38:482:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:481:13:481:16 | self | | main.rs:457:5:458:14 | S1 | -| main.rs:485:28:485:31 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:485:40:487:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:486:13:486:16 | self | | main.rs:457:5:458:14 | S1 | -| main.rs:494:26:494:29 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:494:26:494:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:494:38:496:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:499:28:499:31 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:499:28:499:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:499:40:501:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:506:26:506:29 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:506:26:506:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:506:38:508:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:511:28:511:31 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:511:28:511:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:511:34:511:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:511:48:513:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:518:26:518:29 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:518:26:518:29 | SelfParam | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:518:38:520:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:523:28:523:31 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:523:28:523:31 | SelfParam | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:523:34:523:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:523:48:525:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:532:14:532:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:532:14:532:18 | SelfParam | TRef | main.rs:531:5:533:5 | Self [trait OverlappingTrait2] | -| main.rs:532:21:532:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:532:21:532:21 | x | TRef | main.rs:531:29:531:29 | T | -| main.rs:537:14:537:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:537:14:537:18 | SelfParam | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:537:14:537:18 | SelfParam | TRef.T3 | main.rs:535:10:535:10 | T | -| main.rs:537:21:537:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:537:21:537:21 | x | TRef | main.rs:535:10:535:10 | T | -| main.rs:537:37:539:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:537:37:539:9 | { ... } | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:537:37:539:9 | { ... } | TRef.T3 | main.rs:535:10:535:10 | T | -| main.rs:538:13:538:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:538:13:538:16 | self | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:538:13:538:16 | self | TRef.T3 | main.rs:535:10:535:10 | T | -| main.rs:544:14:544:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:544:14:544:18 | SelfParam | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:544:14:544:18 | SelfParam | TRef.T3 | main.rs:542:10:542:10 | T | -| main.rs:544:21:544:21 | x | | main.rs:542:10:542:10 | T | -| main.rs:544:36:546:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:544:36:546:9 | { ... } | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:544:36:546:9 | { ... } | TRef.T3 | main.rs:542:10:542:10 | T | -| main.rs:545:13:545:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:545:13:545:16 | self | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:545:13:545:16 | self | TRef.T3 | main.rs:542:10:542:10 | T | -| main.rs:551:14:551:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:551:14:551:18 | SelfParam | TRef | main.rs:549:5:552:5 | Self [trait MyTrait1] | -| main.rs:551:21:551:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:561:14:561:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:561:14:561:18 | SelfParam | TRef | main.rs:556:5:557:14 | S4 | -| main.rs:561:21:561:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:571:14:571:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:571:14:571:18 | SelfParam | TRef | main.rs:566:5:567:22 | S5 | -| main.rs:571:14:571:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:571:21:571:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:580:16:606:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:582:18:582:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:582:18:582:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:582:18:582:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:582:18:582:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:583:18:583:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:583:18:583:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:583:18:583:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:583:18:583:45 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:583:26:583:45 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:584:18:584:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:584:18:584:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:584:18:584:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:584:18:584:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:585:18:585:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:585:18:585:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:585:18:585:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:585:18:585:47 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:585:26:585:47 | ...::common_method_2(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:588:18:588:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:588:18:588:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:588:18:588:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:588:18:588:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:589:18:589:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:589:18:589:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:589:18:589:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:589:18:589:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:589:26:589:56 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:592:18:592:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:592:18:592:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:592:18:592:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:592:18:592:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:593:18:593:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:593:18:593:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:593:18:593:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:593:18:593:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:593:26:593:49 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:594:18:594:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:594:18:594:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:594:18:594:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:594:18:594:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:594:26:594:56 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:597:18:597:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:597:18:597:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:597:18:597:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:597:18:597:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:598:18:598:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:598:18:598:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:598:18:598:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:598:18:598:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:598:26:598:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | -| main.rs:598:26:598:37 | ...::m(...) | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:598:32:598:33 | &w | | {EXTERNAL LOCATION} | & | -| main.rs:601:9:601:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:601:15:601:17 | &S4 | | {EXTERNAL LOCATION} | & | -| main.rs:602:12:602:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:603:9:603:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:603:15:603:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:603:19:603:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:604:12:604:15 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:605:9:605:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:605:15:605:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:605:19:605:22 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:622:19:622:22 | SelfParam | | main.rs:620:5:623:5 | Self [trait FirstTrait] | -| main.rs:627:19:627:22 | SelfParam | | main.rs:625:5:628:5 | Self [trait SecondTrait] | -| main.rs:630:64:630:64 | x | | main.rs:630:45:630:61 | T | -| main.rs:630:70:634:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:632:18:632:18 | x | | main.rs:630:45:630:61 | T | -| main.rs:633:18:633:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:633:18:633:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:633:18:633:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:633:18:633:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:636:65:636:65 | x | | main.rs:636:46:636:62 | T | -| main.rs:636:71:640:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:638:18:638:18 | x | | main.rs:636:46:636:62 | T | -| main.rs:639:18:639:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:639:18:639:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:639:18:639:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:639:18:639:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:642:49:642:49 | x | | main.rs:642:30:642:46 | T | -| main.rs:642:55:645:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:643:17:643:17 | x | | main.rs:642:30:642:46 | T | -| main.rs:644:18:644:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:644:18:644:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:644:18:644:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:644:18:644:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:647:53:647:53 | x | | main.rs:647:34:647:50 | T | -| main.rs:647:59:650:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:648:17:648:17 | x | | main.rs:647:34:647:50 | T | -| main.rs:649:18:649:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:649:18:649:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:649:18:649:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:649:18:649:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:652:43:652:43 | x | | main.rs:652:40:652:40 | T | -| main.rs:655:5:658:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:656:17:656:17 | x | | main.rs:652:40:652:40 | T | -| main.rs:657:18:657:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:657:18:657:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:657:18:657:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:657:18:657:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:661:16:661:19 | SelfParam | | main.rs:660:5:664:5 | Self [trait Pair] | -| main.rs:663:16:663:19 | SelfParam | | main.rs:660:5:664:5 | Self [trait Pair] | -| main.rs:666:53:666:53 | x | | main.rs:666:50:666:50 | T | -| main.rs:666:59:666:59 | y | | main.rs:666:50:666:50 | T | -| main.rs:670:5:673:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:671:17:671:17 | x | | main.rs:666:50:666:50 | T | -| main.rs:672:17:672:17 | y | | main.rs:666:50:666:50 | T | -| main.rs:675:58:675:58 | x | | main.rs:675:41:675:55 | T | -| main.rs:675:64:675:64 | y | | main.rs:675:41:675:55 | T | -| main.rs:675:70:680:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:677:18:677:18 | x | | main.rs:675:41:675:55 | T | -| main.rs:678:18:678:18 | y | | main.rs:675:41:675:55 | T | -| main.rs:679:18:679:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:679:18:679:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:679:18:679:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:679:18:679:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:682:69:682:69 | x | | main.rs:682:52:682:66 | T | -| main.rs:682:75:682:75 | y | | main.rs:682:52:682:66 | T | -| main.rs:682:81:687:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:684:18:684:18 | x | | main.rs:682:52:682:66 | T | -| main.rs:685:18:685:18 | y | | main.rs:682:52:682:66 | T | -| main.rs:686:18:686:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:686:18:686:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:686:18:686:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:686:18:686:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:689:50:689:50 | x | | main.rs:689:41:689:47 | T | -| main.rs:689:56:689:56 | y | | main.rs:689:41:689:47 | T | -| main.rs:689:62:694:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:691:18:691:18 | x | | main.rs:689:41:689:47 | T | -| main.rs:692:18:692:18 | y | | main.rs:689:41:689:47 | T | -| main.rs:693:18:693:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:693:18:693:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:693:18:693:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:693:18:693:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:696:54:696:54 | x | | main.rs:696:41:696:51 | T | -| main.rs:696:60:696:60 | y | | main.rs:696:41:696:51 | T | -| main.rs:696:66:701:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:698:18:698:18 | x | | main.rs:696:41:696:51 | T | -| main.rs:699:18:699:18 | y | | main.rs:696:41:696:51 | T | -| main.rs:700:18:700:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:700:18:700:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:700:18:700:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:700:18:700:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:708:18:708:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:708:18:708:22 | SelfParam | TRef | main.rs:705:5:709:5 | Self [trait TraitWithSelfTp] | -| main.rs:711:40:711:44 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:711:40:711:44 | thing | TRef | main.rs:711:17:711:37 | T | -| main.rs:711:56:713:5 | { ... } | | main.rs:711:14:711:14 | A | -| main.rs:712:9:712:13 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:712:9:712:13 | thing | TRef | main.rs:711:17:711:37 | T | -| main.rs:716:44:716:48 | thing | | main.rs:716:24:716:41 | S | -| main.rs:716:61:719:5 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:717:19:717:23 | thing | | main.rs:716:24:716:41 | S | -| main.rs:724:55:724:59 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:724:55:724:59 | thing | TRef | main.rs:724:25:724:52 | S | -| main.rs:724:66:727:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:726:25:726:29 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:726:25:726:29 | thing | TRef | main.rs:724:25:724:52 | S | -| main.rs:735:18:735:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:735:18:735:22 | SelfParam | TRef | main.rs:729:5:731:5 | MyStruct | -| main.rs:735:41:737:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:735:41:737:9 | { ... } | T | main.rs:729:5:731:5 | MyStruct | -| main.rs:736:18:736:47 | MyStruct {...} | | main.rs:729:5:731:5 | MyStruct | -| main.rs:736:36:736:39 | self | | {EXTERNAL LOCATION} | & | -| main.rs:736:36:736:39 | self | TRef | main.rs:729:5:731:5 | MyStruct | -| main.rs:742:19:745:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:743:13:743:13 | s | | main.rs:729:5:731:5 | MyStruct | -| main.rs:743:17:743:37 | MyStruct {...} | | main.rs:729:5:731:5 | MyStruct | -| main.rs:744:25:744:26 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:744:26:744:26 | s | | main.rs:729:5:731:5 | MyStruct | -| main.rs:760:15:760:18 | SelfParam | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:762:15:762:18 | SelfParam | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:765:9:767:9 | { ... } | | main.rs:759:19:759:19 | A | -| main.rs:766:13:766:16 | self | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:769:18:769:18 | x | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:773:15:773:18 | SelfParam | | main.rs:756:5:757:14 | S2 | -| main.rs:773:26:775:9 | { ... } | | main.rs:772:10:772:19 | T | -| main.rs:777:18:777:18 | x | | main.rs:756:5:757:14 | S2 | -| main.rs:777:32:779:9 | { ... } | | main.rs:772:10:772:19 | T | -| main.rs:783:15:783:18 | SelfParam | | main.rs:754:5:755:14 | S1 | -| main.rs:783:28:785:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:787:18:787:18 | x | | main.rs:754:5:755:14 | S1 | -| main.rs:787:34:789:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:794:50:794:50 | x | | main.rs:794:26:794:47 | T2 | -| main.rs:794:63:797:5 | { ... } | | main.rs:794:22:794:23 | T1 | -| main.rs:795:9:795:9 | x | | main.rs:794:26:794:47 | T2 | -| main.rs:796:9:796:9 | x | | main.rs:794:26:794:47 | T2 | -| main.rs:798:52:798:52 | x | | main.rs:798:28:798:49 | T2 | -| main.rs:798:65:802:5 | { ... } | | main.rs:798:24:798:25 | T1 | -| main.rs:799:24:799:24 | x | | main.rs:798:28:798:49 | T2 | -| main.rs:801:16:801:16 | x | | main.rs:798:28:798:49 | T2 | -| main.rs:803:52:803:52 | x | | main.rs:803:28:803:49 | T2 | -| main.rs:803:65:807:5 | { ... } | | main.rs:803:24:803:25 | T1 | -| main.rs:804:29:804:29 | x | | main.rs:803:28:803:49 | T2 | -| main.rs:806:21:806:21 | x | | main.rs:803:28:803:49 | T2 | -| main.rs:808:55:808:55 | x | | main.rs:808:31:808:52 | T2 | -| main.rs:808:68:812:5 | { ... } | | main.rs:808:27:808:28 | T1 | -| main.rs:809:27:809:27 | x | | main.rs:808:31:808:52 | T2 | -| main.rs:811:19:811:19 | x | | main.rs:808:31:808:52 | T2 | -| main.rs:813:55:813:55 | x | | main.rs:813:31:813:52 | T2 | -| main.rs:813:68:817:5 | { ... } | | main.rs:813:27:813:28 | T1 | -| main.rs:814:32:814:32 | x | | main.rs:813:31:813:52 | T2 | -| main.rs:816:24:816:24 | x | | main.rs:813:31:813:52 | T2 | -| main.rs:821:49:821:49 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:821:49:821:49 | x | T | main.rs:821:32:821:46 | T2 | -| main.rs:821:71:823:5 | { ... } | | main.rs:821:28:821:29 | T1 | -| main.rs:822:9:822:9 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:822:9:822:9 | x | T | main.rs:821:32:821:46 | T2 | -| main.rs:824:51:824:51 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:824:51:824:51 | x | T | main.rs:824:34:824:48 | T2 | -| main.rs:824:73:826:5 | { ... } | | main.rs:824:30:824:31 | T1 | -| main.rs:825:16:825:16 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:825:16:825:16 | x | T | main.rs:824:34:824:48 | T2 | -| main.rs:827:51:827:51 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:827:51:827:51 | x | T | main.rs:827:34:827:48 | T2 | -| main.rs:827:73:829:5 | { ... } | | main.rs:827:30:827:31 | T1 | -| main.rs:828:21:828:21 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:828:21:828:21 | x | T | main.rs:827:34:827:48 | T2 | -| main.rs:832:15:832:18 | SelfParam | | main.rs:749:5:752:5 | MyThing | -| main.rs:832:15:832:18 | SelfParam | T | main.rs:831:10:831:10 | T | -| main.rs:832:26:834:9 | { ... } | | main.rs:831:10:831:10 | T | -| main.rs:833:13:833:16 | self | | main.rs:749:5:752:5 | MyThing | -| main.rs:833:13:833:16 | self | T | main.rs:831:10:831:10 | T | -| main.rs:836:18:836:18 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:836:18:836:18 | x | T | main.rs:831:10:831:10 | T | -| main.rs:836:32:838:9 | { ... } | | main.rs:831:10:831:10 | T | -| main.rs:837:13:837:13 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:837:13:837:13 | x | T | main.rs:831:10:831:10 | T | -| main.rs:843:15:843:18 | SelfParam | | main.rs:841:5:844:5 | Self [trait MyTrait2] | -| main.rs:848:15:848:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:848:15:848:19 | SelfParam | TRef | main.rs:846:5:849:5 | Self [trait MyTrait3] | -| main.rs:851:46:851:46 | x | | main.rs:851:22:851:43 | T | -| main.rs:851:52:851:52 | y | | {EXTERNAL LOCATION} | & | -| main.rs:851:52:851:52 | y | TRef | main.rs:851:22:851:43 | T | -| main.rs:851:59:854:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:852:9:852:9 | x | | main.rs:851:22:851:43 | T | -| main.rs:853:9:853:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:853:9:853:9 | y | TRef | main.rs:851:22:851:43 | T | -| main.rs:856:16:914:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:857:13:857:13 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:857:17:857:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:858:13:858:13 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:858:17:858:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:860:18:860:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:860:18:860:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:860:18:860:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:860:18:860:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:860:26:860:26 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:861:18:861:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:861:18:861:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:861:18:861:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:861:18:861:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:861:26:861:26 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:863:13:863:13 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:863:17:863:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:864:13:864:13 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:864:17:864:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:866:18:866:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:866:18:866:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:866:18:866:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:866:18:866:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:866:26:866:26 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:867:18:867:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:867:18:867:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:867:18:867:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:867:18:867:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:867:26:867:26 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:869:13:869:14 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:869:18:869:34 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:870:13:870:14 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:870:18:870:34 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:872:31:872:32 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:873:18:873:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:873:18:873:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:873:18:873:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:873:18:873:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:874:33:874:34 | x2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:398:26:398:27 | p1 | | main.rs:243:5:247:5 | MyPair | +| main.rs:400:13:400:14 | p2 | | main.rs:243:5:247:5 | MyPair | +| main.rs:400:18:400:42 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:401:18:401:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:401:18:401:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:401:18:401:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:401:18:401:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:401:26:401:27 | p2 | | main.rs:243:5:247:5 | MyPair | +| main.rs:403:13:403:14 | p3 | | main.rs:243:5:247:5 | MyPair | +| main.rs:403:18:406:9 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:404:17:404:33 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:407:18:407:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:407:18:407:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:407:18:407:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:407:18:407:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:407:26:407:27 | p3 | | main.rs:243:5:247:5 | MyPair | +| main.rs:410:13:410:13 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:410:17:410:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:411:17:411:17 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:412:18:412:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:412:18:412:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:412:18:412:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:412:18:412:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:413:17:413:17 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:414:18:414:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:414:18:414:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:414:18:414:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:414:18:414:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:420:13:420:13 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:420:17:420:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:421:17:421:17 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:422:18:422:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:422:18:422:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:422:18:422:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:422:18:422:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:423:17:423:17 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:424:18:424:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:424:18:424:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:424:18:424:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:424:18:424:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:428:31:428:38 | thing_s1 | | main.rs:238:5:241:5 | MyThing | +| main.rs:429:18:429:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:429:18:429:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:429:18:429:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:429:18:429:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:430:31:430:38 | thing_s2 | | main.rs:238:5:241:5 | MyThing | +| main.rs:431:18:431:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:431:18:431:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:431:18:431:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:431:18:431:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:434:13:434:13 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:434:17:434:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:435:25:435:25 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:436:18:436:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:436:18:436:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:436:18:436:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:436:18:436:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:437:25:437:25 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:438:18:438:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:438:18:438:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:438:18:438:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:438:18:438:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:441:13:441:13 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:441:17:441:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:442:25:442:25 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:443:18:443:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:443:18:443:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:443:18:443:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:443:18:443:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:444:25:444:25 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:445:18:445:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:445:18:445:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:445:18:445:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:445:18:445:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:447:13:447:13 | c | | main.rs:243:5:247:5 | MyPair | +| main.rs:447:17:450:9 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:449:17:449:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:451:29:451:29 | c | | main.rs:243:5:247:5 | MyPair | +| main.rs:453:13:453:17 | thing | | main.rs:238:5:241:5 | MyThing | +| main.rs:453:21:453:37 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:454:17:454:21 | thing | | main.rs:238:5:241:5 | MyThing | +| main.rs:455:28:455:32 | thing | | main.rs:238:5:241:5 | MyThing | +| main.rs:474:19:474:22 | SelfParam | | main.rs:472:5:475:5 | Self [trait FirstTrait] | +| main.rs:479:19:479:22 | SelfParam | | main.rs:477:5:480:5 | Self [trait SecondTrait] | +| main.rs:482:64:482:64 | x | | main.rs:482:45:482:61 | T | +| main.rs:482:70:486:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:484:18:484:18 | x | | main.rs:482:45:482:61 | T | +| main.rs:485:18:485:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:485:18:485:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:485:18:485:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:485:18:485:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:488:65:488:65 | x | | main.rs:488:46:488:62 | T | +| main.rs:488:71:492:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:490:18:490:18 | x | | main.rs:488:46:488:62 | T | +| main.rs:491:18:491:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:491:18:491:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:491:18:491:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:491:18:491:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:494:49:494:49 | x | | main.rs:494:30:494:46 | T | +| main.rs:494:55:497:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:495:17:495:17 | x | | main.rs:494:30:494:46 | T | +| main.rs:496:18:496:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:496:18:496:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:496:18:496:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:496:18:496:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:499:53:499:53 | x | | main.rs:499:34:499:50 | T | +| main.rs:499:59:502:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:500:17:500:17 | x | | main.rs:499:34:499:50 | T | +| main.rs:501:18:501:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:501:18:501:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:501:18:501:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:501:18:501:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:504:43:504:43 | x | | main.rs:504:40:504:40 | T | +| main.rs:507:5:510:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:508:17:508:17 | x | | main.rs:504:40:504:40 | T | +| main.rs:509:18:509:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:509:18:509:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:509:18:509:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:509:18:509:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:513:16:513:19 | SelfParam | | main.rs:512:5:516:5 | Self [trait Pair] | +| main.rs:515:16:515:19 | SelfParam | | main.rs:512:5:516:5 | Self [trait Pair] | +| main.rs:518:53:518:53 | x | | main.rs:518:50:518:50 | T | +| main.rs:518:59:518:59 | y | | main.rs:518:50:518:50 | T | +| main.rs:522:5:525:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:523:17:523:17 | x | | main.rs:518:50:518:50 | T | +| main.rs:524:17:524:17 | y | | main.rs:518:50:518:50 | T | +| main.rs:527:58:527:58 | x | | main.rs:527:41:527:55 | T | +| main.rs:527:64:527:64 | y | | main.rs:527:41:527:55 | T | +| main.rs:527:70:532:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:529:18:529:18 | x | | main.rs:527:41:527:55 | T | +| main.rs:530:18:530:18 | y | | main.rs:527:41:527:55 | T | +| main.rs:531:18:531:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:531:18:531:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:531:18:531:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:531:18:531:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:534:69:534:69 | x | | main.rs:534:52:534:66 | T | +| main.rs:534:75:534:75 | y | | main.rs:534:52:534:66 | T | +| main.rs:534:81:539:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:536:18:536:18 | x | | main.rs:534:52:534:66 | T | +| main.rs:537:18:537:18 | y | | main.rs:534:52:534:66 | T | +| main.rs:538:18:538:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:538:18:538:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:538:18:538:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:538:18:538:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:541:50:541:50 | x | | main.rs:541:41:541:47 | T | +| main.rs:541:56:541:56 | y | | main.rs:541:41:541:47 | T | +| main.rs:541:62:546:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:543:18:543:18 | x | | main.rs:541:41:541:47 | T | +| main.rs:544:18:544:18 | y | | main.rs:541:41:541:47 | T | +| main.rs:545:18:545:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:545:18:545:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:545:18:545:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:545:18:545:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:548:54:548:54 | x | | main.rs:548:41:548:51 | T | +| main.rs:548:60:548:60 | y | | main.rs:548:41:548:51 | T | +| main.rs:548:66:553:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:550:18:550:18 | x | | main.rs:548:41:548:51 | T | +| main.rs:551:18:551:18 | y | | main.rs:548:41:548:51 | T | +| main.rs:552:18:552:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:552:18:552:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:552:18:552:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:552:18:552:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:560:18:560:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:560:18:560:22 | SelfParam | TRef | main.rs:557:5:561:5 | Self [trait TraitWithSelfTp] | +| main.rs:563:40:563:44 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:563:40:563:44 | thing | TRef | main.rs:563:17:563:37 | T | +| main.rs:563:56:565:5 | { ... } | | main.rs:563:14:563:14 | A | +| main.rs:564:9:564:13 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:564:9:564:13 | thing | TRef | main.rs:563:17:563:37 | T | +| main.rs:568:44:568:48 | thing | | main.rs:568:24:568:41 | S | +| main.rs:568:61:571:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:569:19:569:23 | thing | | main.rs:568:24:568:41 | S | +| main.rs:576:55:576:59 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:576:55:576:59 | thing | TRef | main.rs:576:25:576:52 | S | +| main.rs:576:66:579:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:578:25:578:29 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:578:25:578:29 | thing | TRef | main.rs:576:25:576:52 | S | +| main.rs:587:18:587:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:587:18:587:22 | SelfParam | TRef | main.rs:581:5:583:5 | MyStruct | +| main.rs:587:41:589:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:587:41:589:9 | { ... } | T | main.rs:581:5:583:5 | MyStruct | +| main.rs:588:18:588:47 | MyStruct {...} | | main.rs:581:5:583:5 | MyStruct | +| main.rs:588:36:588:39 | self | | {EXTERNAL LOCATION} | & | +| main.rs:588:36:588:39 | self | TRef | main.rs:581:5:583:5 | MyStruct | +| main.rs:594:19:597:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:595:13:595:13 | s | | main.rs:581:5:583:5 | MyStruct | +| main.rs:595:17:595:37 | MyStruct {...} | | main.rs:581:5:583:5 | MyStruct | +| main.rs:596:25:596:26 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:596:26:596:26 | s | | main.rs:581:5:583:5 | MyStruct | +| main.rs:612:15:612:18 | SelfParam | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:614:15:614:18 | SelfParam | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:617:9:619:9 | { ... } | | main.rs:611:19:611:19 | A | +| main.rs:618:13:618:16 | self | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:621:18:621:18 | x | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:625:15:625:18 | SelfParam | | main.rs:608:5:609:14 | S2 | +| main.rs:625:26:627:9 | { ... } | | main.rs:624:10:624:19 | T | +| main.rs:629:18:629:18 | x | | main.rs:608:5:609:14 | S2 | +| main.rs:629:32:631:9 | { ... } | | main.rs:624:10:624:19 | T | +| main.rs:635:15:635:18 | SelfParam | | main.rs:606:5:607:14 | S1 | +| main.rs:635:28:637:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:639:18:639:18 | x | | main.rs:606:5:607:14 | S1 | +| main.rs:639:34:641:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:646:50:646:50 | x | | main.rs:646:26:646:47 | T2 | +| main.rs:646:63:649:5 | { ... } | | main.rs:646:22:646:23 | T1 | +| main.rs:647:9:647:9 | x | | main.rs:646:26:646:47 | T2 | +| main.rs:648:9:648:9 | x | | main.rs:646:26:646:47 | T2 | +| main.rs:650:52:650:52 | x | | main.rs:650:28:650:49 | T2 | +| main.rs:650:65:654:5 | { ... } | | main.rs:650:24:650:25 | T1 | +| main.rs:651:24:651:24 | x | | main.rs:650:28:650:49 | T2 | +| main.rs:653:16:653:16 | x | | main.rs:650:28:650:49 | T2 | +| main.rs:655:52:655:52 | x | | main.rs:655:28:655:49 | T2 | +| main.rs:655:65:659:5 | { ... } | | main.rs:655:24:655:25 | T1 | +| main.rs:656:29:656:29 | x | | main.rs:655:28:655:49 | T2 | +| main.rs:658:21:658:21 | x | | main.rs:655:28:655:49 | T2 | +| main.rs:660:55:660:55 | x | | main.rs:660:31:660:52 | T2 | +| main.rs:660:68:664:5 | { ... } | | main.rs:660:27:660:28 | T1 | +| main.rs:661:27:661:27 | x | | main.rs:660:31:660:52 | T2 | +| main.rs:663:19:663:19 | x | | main.rs:660:31:660:52 | T2 | +| main.rs:665:55:665:55 | x | | main.rs:665:31:665:52 | T2 | +| main.rs:665:68:669:5 | { ... } | | main.rs:665:27:665:28 | T1 | +| main.rs:666:32:666:32 | x | | main.rs:665:31:665:52 | T2 | +| main.rs:668:24:668:24 | x | | main.rs:665:31:665:52 | T2 | +| main.rs:673:49:673:49 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:673:49:673:49 | x | T | main.rs:673:32:673:46 | T2 | +| main.rs:673:71:675:5 | { ... } | | main.rs:673:28:673:29 | T1 | +| main.rs:674:9:674:9 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:674:9:674:9 | x | T | main.rs:673:32:673:46 | T2 | +| main.rs:676:51:676:51 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:676:51:676:51 | x | T | main.rs:676:34:676:48 | T2 | +| main.rs:676:73:678:5 | { ... } | | main.rs:676:30:676:31 | T1 | +| main.rs:677:16:677:16 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:677:16:677:16 | x | T | main.rs:676:34:676:48 | T2 | +| main.rs:679:51:679:51 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:679:51:679:51 | x | T | main.rs:679:34:679:48 | T2 | +| main.rs:679:73:681:5 | { ... } | | main.rs:679:30:679:31 | T1 | +| main.rs:680:21:680:21 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:680:21:680:21 | x | T | main.rs:679:34:679:48 | T2 | +| main.rs:684:15:684:18 | SelfParam | | main.rs:601:5:604:5 | MyThing | +| main.rs:684:15:684:18 | SelfParam | T | main.rs:683:10:683:10 | T | +| main.rs:684:26:686:9 | { ... } | | main.rs:683:10:683:10 | T | +| main.rs:685:13:685:16 | self | | main.rs:601:5:604:5 | MyThing | +| main.rs:685:13:685:16 | self | T | main.rs:683:10:683:10 | T | +| main.rs:688:18:688:18 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:688:18:688:18 | x | T | main.rs:683:10:683:10 | T | +| main.rs:688:32:690:9 | { ... } | | main.rs:683:10:683:10 | T | +| main.rs:689:13:689:13 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:689:13:689:13 | x | T | main.rs:683:10:683:10 | T | +| main.rs:695:15:695:18 | SelfParam | | main.rs:693:5:696:5 | Self [trait MyTrait2] | +| main.rs:700:15:700:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:700:15:700:19 | SelfParam | TRef | main.rs:698:5:701:5 | Self [trait MyTrait3] | +| main.rs:703:46:703:46 | x | | main.rs:703:22:703:43 | T | +| main.rs:703:52:703:52 | y | | {EXTERNAL LOCATION} | & | +| main.rs:703:52:703:52 | y | TRef | main.rs:703:22:703:43 | T | +| main.rs:703:59:706:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:704:9:704:9 | x | | main.rs:703:22:703:43 | T | +| main.rs:705:9:705:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:705:9:705:9 | y | TRef | main.rs:703:22:703:43 | T | +| main.rs:708:16:766:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:709:13:709:13 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:709:17:709:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:710:13:710:13 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:710:17:710:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:712:18:712:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:712:18:712:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:712:18:712:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:712:18:712:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:712:26:712:26 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:713:18:713:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:713:18:713:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:713:18:713:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:713:18:713:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:713:26:713:26 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:715:13:715:13 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:715:17:715:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:716:13:716:13 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:716:17:716:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:718:18:718:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:718:18:718:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:718:18:718:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:718:18:718:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:718:26:718:26 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:719:18:719:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:719:18:719:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:719:18:719:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:719:18:719:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:719:26:719:26 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:721:13:721:14 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:721:18:721:34 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:722:13:722:14 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:722:18:722:34 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:724:31:724:32 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:725:18:725:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:725:18:725:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:725:18:725:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:725:18:725:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:726:33:726:34 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:727:18:727:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:727:18:727:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:727:18:727:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:727:18:727:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:728:33:728:34 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:729:18:729:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:729:18:729:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:729:18:729:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:729:18:729:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:730:31:730:32 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:731:18:731:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:731:18:731:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:731:18:731:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:731:18:731:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:732:33:732:34 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:733:18:733:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:733:18:733:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:733:18:733:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:733:18:733:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:734:33:734:34 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:735:18:735:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:735:18:735:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:735:18:735:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:735:18:735:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:736:36:736:37 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:737:18:737:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:737:18:737:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:737:18:737:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:737:18:737:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:738:36:738:37 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:739:18:739:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:739:18:739:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:739:18:739:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:739:18:739:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:740:36:740:37 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:741:18:741:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:741:18:741:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:741:18:741:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:741:18:741:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:742:36:742:37 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:743:18:743:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:743:18:743:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:743:18:743:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:743:18:743:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:745:13:745:14 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:745:18:747:9 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:746:16:746:32 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:748:13:748:14 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:748:18:750:9 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:749:16:749:32 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:752:37:752:38 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:753:18:753:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:753:18:753:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:753:18:753:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:753:18:753:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:754:39:754:40 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:755:18:755:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:755:18:755:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:755:18:755:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:755:18:755:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:756:39:756:40 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:757:18:757:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:757:18:757:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:757:18:757:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:757:18:757:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:758:37:758:38 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:759:18:759:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:759:18:759:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:759:18:759:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:759:18:759:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:760:39:760:40 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:761:18:761:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:761:18:761:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:761:18:761:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:761:18:761:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:762:39:762:40 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:763:18:763:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:763:18:763:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:763:18:763:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:763:18:763:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:765:13:765:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:782:15:782:18 | SelfParam | | main.rs:770:5:774:5 | MyEnum | +| main.rs:782:15:782:18 | SelfParam | A | main.rs:781:10:781:10 | T | +| main.rs:782:26:787:9 | { ... } | | main.rs:781:10:781:10 | T | +| main.rs:783:19:783:22 | self | | main.rs:770:5:774:5 | MyEnum | +| main.rs:783:19:783:22 | self | A | main.rs:781:10:781:10 | T | +| main.rs:785:17:785:32 | ...::C2 {...} | | main.rs:770:5:774:5 | MyEnum | +| main.rs:790:16:796:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:792:13:792:13 | y | | main.rs:770:5:774:5 | MyEnum | +| main.rs:792:17:792:36 | ...::C2 {...} | | main.rs:770:5:774:5 | MyEnum | +| main.rs:794:18:794:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:794:18:794:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:794:18:794:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:794:18:794:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:795:18:795:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:795:18:795:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:795:18:795:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:795:18:795:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:795:26:795:26 | y | | main.rs:770:5:774:5 | MyEnum | +| main.rs:817:15:817:18 | SelfParam | | main.rs:815:5:818:5 | Self [trait MyTrait1] | +| main.rs:822:15:822:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:822:15:822:19 | SelfParam | TRef | main.rs:820:5:832:5 | Self [trait MyTrait2] | +| main.rs:825:9:831:9 | { ... } | | main.rs:820:20:820:22 | Tr2 | +| main.rs:827:17:827:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:827:17:827:20 | self | TRef | main.rs:820:5:832:5 | Self [trait MyTrait2] | +| main.rs:829:27:829:30 | self | | {EXTERNAL LOCATION} | & | +| main.rs:829:27:829:30 | self | TRef | main.rs:820:5:832:5 | Self [trait MyTrait2] | +| main.rs:836:15:836:18 | SelfParam | | main.rs:834:5:846:5 | Self [trait MyTrait3] | +| main.rs:839:9:845:9 | { ... } | | main.rs:834:20:834:22 | Tr3 | +| main.rs:841:17:841:20 | self | | main.rs:834:5:846:5 | Self [trait MyTrait3] | +| main.rs:843:26:843:30 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:843:27:843:30 | self | | main.rs:834:5:846:5 | Self [trait MyTrait3] | +| main.rs:850:15:850:18 | SelfParam | | main.rs:800:5:803:5 | MyThing | +| main.rs:850:15:850:18 | SelfParam | A | main.rs:848:10:848:10 | T | +| main.rs:850:26:852:9 | { ... } | | main.rs:848:10:848:10 | T | +| main.rs:851:13:851:16 | self | | main.rs:800:5:803:5 | MyThing | +| main.rs:851:13:851:16 | self | A | main.rs:848:10:848:10 | T | +| main.rs:859:15:859:18 | SelfParam | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:859:15:859:18 | SelfParam | A | main.rs:857:10:857:10 | T | +| main.rs:859:35:861:9 | { ... } | | main.rs:800:5:803:5 | MyThing | +| main.rs:859:35:861:9 | { ... } | A | main.rs:857:10:857:10 | T | +| main.rs:860:13:860:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:860:26:860:29 | self | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:860:26:860:29 | self | A | main.rs:857:10:857:10 | T | +| main.rs:868:44:868:44 | x | | main.rs:868:26:868:41 | T2 | +| main.rs:868:57:870:5 | { ... } | | main.rs:868:22:868:23 | T1 | +| main.rs:869:9:869:9 | x | | main.rs:868:26:868:41 | T2 | +| main.rs:872:56:872:56 | x | | main.rs:872:39:872:53 | T | +| main.rs:872:62:876:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:874:17:874:17 | x | | main.rs:872:39:872:53 | T | | main.rs:875:18:875:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:875:18:875:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:875:18:875:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:875:18:875:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:876:33:876:34 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:877:18:877:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:877:18:877:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:877:18:877:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:877:18:877:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:878:31:878:32 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:879:18:879:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:879:18:879:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:879:18:879:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:879:18:879:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:880:33:880:34 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:881:18:881:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:881:18:881:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:881:18:881:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:881:18:881:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:882:33:882:34 | y2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:878:16:902:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:879:13:879:13 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:879:17:879:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:880:13:880:13 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:880:17:880:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:882:18:882:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:882:18:882:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:882:18:882:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:882:18:882:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:882:26:882:26 | x | | main.rs:800:5:803:5 | MyThing | | main.rs:883:18:883:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:883:18:883:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:883:18:883:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:883:18:883:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:884:36:884:37 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:885:18:885:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:885:18:885:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:885:18:885:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:885:18:885:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:886:36:886:37 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:887:18:887:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:887:18:887:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:887:18:887:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:887:18:887:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:888:36:888:37 | y2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:883:18:883:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:883:18:883:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:883:26:883:26 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:885:13:885:13 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:885:17:885:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:886:13:886:13 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:886:17:886:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:888:18:888:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:888:18:888:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:888:18:888:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:888:18:888:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:888:26:888:26 | x | | main.rs:800:5:803:5 | MyThing | | main.rs:889:18:889:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:889:18:889:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:889:18:889:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:889:18:889:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:890:36:890:37 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:891:18:891:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:891:18:891:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:891:18:891:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:891:18:891:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:893:13:893:14 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:893:18:895:9 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:894:16:894:32 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:896:13:896:14 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:896:18:898:9 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:897:16:897:32 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:900:37:900:38 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:901:18:901:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:901:18:901:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:901:18:901:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:901:18:901:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:902:39:902:40 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:903:18:903:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:903:18:903:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:903:18:903:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:903:18:903:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:904:39:904:40 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:905:18:905:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:905:18:905:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:905:18:905:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:905:18:905:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:906:37:906:38 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:907:18:907:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:907:18:907:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:907:18:907:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:907:18:907:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:908:39:908:40 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:909:18:909:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:909:18:909:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:909:18:909:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:909:18:909:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:910:39:910:40 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:911:18:911:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:911:18:911:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:911:18:911:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:911:18:911:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:913:13:913:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:930:15:930:18 | SelfParam | | main.rs:918:5:922:5 | MyEnum | -| main.rs:930:15:930:18 | SelfParam | A | main.rs:929:10:929:10 | T | -| main.rs:930:26:935:9 | { ... } | | main.rs:929:10:929:10 | T | -| main.rs:931:19:931:22 | self | | main.rs:918:5:922:5 | MyEnum | -| main.rs:931:19:931:22 | self | A | main.rs:929:10:929:10 | T | -| main.rs:933:17:933:32 | ...::C2 {...} | | main.rs:918:5:922:5 | MyEnum | -| main.rs:938:16:944:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:940:13:940:13 | y | | main.rs:918:5:922:5 | MyEnum | -| main.rs:940:17:940:36 | ...::C2 {...} | | main.rs:918:5:922:5 | MyEnum | -| main.rs:942:18:942:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:942:18:942:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:942:18:942:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:942:18:942:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:943:18:943:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:943:18:943:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:943:18:943:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:943:18:943:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:943:26:943:26 | y | | main.rs:918:5:922:5 | MyEnum | -| main.rs:965:15:965:18 | SelfParam | | main.rs:963:5:966:5 | Self [trait MyTrait1] | -| main.rs:970:15:970:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:970:15:970:19 | SelfParam | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | -| main.rs:973:9:979:9 | { ... } | | main.rs:968:20:968:22 | Tr2 | -| main.rs:975:17:975:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:975:17:975:20 | self | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | -| main.rs:977:27:977:30 | self | | {EXTERNAL LOCATION} | & | -| main.rs:977:27:977:30 | self | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | -| main.rs:984:15:984:18 | SelfParam | | main.rs:982:5:994:5 | Self [trait MyTrait3] | -| main.rs:987:9:993:9 | { ... } | | main.rs:982:20:982:22 | Tr3 | -| main.rs:989:17:989:20 | self | | main.rs:982:5:994:5 | Self [trait MyTrait3] | -| main.rs:991:26:991:30 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:991:27:991:30 | self | | main.rs:982:5:994:5 | Self [trait MyTrait3] | -| main.rs:998:15:998:18 | SelfParam | | main.rs:948:5:951:5 | MyThing | -| main.rs:998:15:998:18 | SelfParam | A | main.rs:996:10:996:10 | T | -| main.rs:998:26:1000:9 | { ... } | | main.rs:996:10:996:10 | T | -| main.rs:999:13:999:16 | self | | main.rs:948:5:951:5 | MyThing | -| main.rs:999:13:999:16 | self | A | main.rs:996:10:996:10 | T | -| main.rs:1007:15:1007:18 | SelfParam | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1007:15:1007:18 | SelfParam | A | main.rs:1005:10:1005:10 | T | -| main.rs:1007:35:1009:9 | { ... } | | main.rs:948:5:951:5 | MyThing | -| main.rs:1007:35:1009:9 | { ... } | A | main.rs:1005:10:1005:10 | T | -| main.rs:1008:13:1008:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1008:26:1008:29 | self | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1008:26:1008:29 | self | A | main.rs:1005:10:1005:10 | T | -| main.rs:1016:44:1016:44 | x | | main.rs:1016:26:1016:41 | T2 | -| main.rs:1016:57:1018:5 | { ... } | | main.rs:1016:22:1016:23 | T1 | -| main.rs:1017:9:1017:9 | x | | main.rs:1016:26:1016:41 | T2 | -| main.rs:1020:56:1020:56 | x | | main.rs:1020:39:1020:53 | T | -| main.rs:1020:62:1024:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1022:17:1022:17 | x | | main.rs:1020:39:1020:53 | T | +| main.rs:889:18:889:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:889:18:889:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:889:26:889:26 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:891:13:891:13 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:891:17:891:34 | MyThing2 {...} | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:892:13:892:13 | y | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:892:17:892:34 | MyThing2 {...} | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:894:18:894:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:894:18:894:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:894:18:894:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:894:18:894:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:894:26:894:26 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:895:18:895:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:895:18:895:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:895:18:895:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:895:18:895:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:895:26:895:26 | y | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:897:13:897:13 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:897:17:897:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:898:31:898:31 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:900:13:900:13 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:900:17:900:34 | MyThing2 {...} | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:901:31:901:31 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:918:22:918:22 | x | | {EXTERNAL LOCATION} | & | +| main.rs:918:22:918:22 | x | TRef | main.rs:918:11:918:19 | T | +| main.rs:918:35:920:5 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:918:35:920:5 | { ... } | TRef | main.rs:918:11:918:19 | T | +| main.rs:919:9:919:9 | x | | {EXTERNAL LOCATION} | & | +| main.rs:919:9:919:9 | x | TRef | main.rs:918:11:918:19 | T | +| main.rs:923:17:923:20 | SelfParam | | main.rs:908:5:909:14 | S1 | +| main.rs:923:29:925:9 | { ... } | | main.rs:911:5:912:14 | S2 | +| main.rs:928:21:928:21 | x | | main.rs:928:13:928:14 | T1 | +| main.rs:931:5:933:5 | { ... } | | main.rs:928:17:928:18 | T2 | +| main.rs:932:9:932:9 | x | | main.rs:928:13:928:14 | T1 | +| main.rs:935:16:951:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:937:18:937:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:937:18:937:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:937:18:937:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:937:18:937:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:937:26:937:31 | id(...) | | {EXTERNAL LOCATION} | & | +| main.rs:937:29:937:30 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:940:18:940:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:940:18:940:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:940:18:940:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:940:18:940:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:940:26:940:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:940:26:940:37 | id::<...>(...) | TRef | main.rs:908:5:909:14 | S1 | +| main.rs:940:35:940:36 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:944:18:944:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:944:18:944:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:944:18:944:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:944:18:944:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:944:26:944:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:944:26:944:44 | id::<...>(...) | TRef | main.rs:914:5:914:25 | dyn Trait | +| main.rs:944:42:944:43 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:947:9:947:25 | into::<...>(...) | | main.rs:911:5:912:14 | S2 | +| main.rs:950:13:950:13 | y | | main.rs:911:5:912:14 | S2 | +| main.rs:964:22:964:25 | SelfParam | | main.rs:955:5:961:5 | PairOption | +| main.rs:964:22:964:25 | SelfParam | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:964:22:964:25 | SelfParam | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:964:35:971:9 | { ... } | | main.rs:963:15:963:17 | Snd | +| main.rs:965:19:965:22 | self | | main.rs:955:5:961:5 | PairOption | +| main.rs:965:19:965:22 | self | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:965:19:965:22 | self | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:966:43:966:82 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:966:50:966:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | +| main.rs:966:50:966:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:966:50:966:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:966:50:966:81 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:967:43:967:81 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:967:50:967:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | +| main.rs:967:50:967:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:967:50:967:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:967:50:967:80 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:995:10:995:10 | t | | main.rs:955:5:961:5 | PairOption | +| main.rs:995:10:995:10 | t | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:995:10:995:10 | t | Snd | main.rs:955:5:961:5 | PairOption | +| main.rs:995:10:995:10 | t | Snd.Fst | main.rs:977:5:978:14 | S2 | +| main.rs:995:10:995:10 | t | Snd.Snd | main.rs:980:5:981:14 | S3 | +| main.rs:995:30:998:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:996:17:996:17 | t | | main.rs:955:5:961:5 | PairOption | +| main.rs:996:17:996:17 | t | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:996:17:996:17 | t | Snd | main.rs:955:5:961:5 | PairOption | +| main.rs:996:17:996:17 | t | Snd.Fst | main.rs:977:5:978:14 | S2 | +| main.rs:996:17:996:17 | t | Snd.Snd | main.rs:980:5:981:14 | S3 | +| main.rs:997:18:997:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:997:18:997:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:997:18:997:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:997:18:997:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1008:16:1028:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1010:13:1010:14 | p1 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1010:13:1010:14 | p1 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1010:13:1010:14 | p1 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1011:18:1011:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1011:18:1011:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1011:18:1011:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1011:18:1011:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1011:26:1011:27 | p1 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1011:26:1011:27 | p1 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1011:26:1011:27 | p1 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1014:13:1014:14 | p2 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1014:13:1014:14 | p2 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1014:13:1014:14 | p2 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1015:18:1015:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1015:18:1015:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1015:18:1015:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1015:18:1015:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1015:26:1015:27 | p2 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1015:26:1015:27 | p2 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1015:26:1015:27 | p2 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1018:13:1018:14 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1018:13:1018:14 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1019:18:1019:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1019:18:1019:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1019:18:1019:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1019:18:1019:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1019:26:1019:27 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1019:26:1019:27 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1022:13:1022:14 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1022:13:1022:14 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1022:13:1022:14 | p3 | Snd | main.rs:980:5:981:14 | S3 | | main.rs:1023:18:1023:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1023:18:1023:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1023:18:1023:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1023:18:1023:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1026:16:1050:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1027:13:1027:13 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1027:17:1027:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1028:13:1028:13 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1028:17:1028:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1030:18:1030:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1030:18:1030:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1030:18:1030:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1030:18:1030:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1030:26:1030:26 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1031:18:1031:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1031:18:1031:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1031:18:1031:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1031:18:1031:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1031:26:1031:26 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1033:13:1033:13 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1033:17:1033:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1034:13:1034:13 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1034:17:1034:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1036:18:1036:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1036:18:1036:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1036:18:1036:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1036:18:1036:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1036:26:1036:26 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1037:18:1037:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1037:18:1037:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1037:18:1037:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1037:18:1037:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1037:26:1037:26 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1039:13:1039:13 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1039:17:1039:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1040:13:1040:13 | y | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1040:17:1040:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1042:18:1042:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1042:18:1042:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1042:18:1042:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1042:18:1042:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1042:26:1042:26 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1043:18:1043:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1043:18:1043:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1043:18:1043:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1043:18:1043:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1043:26:1043:26 | y | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1045:13:1045:13 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1045:17:1045:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1046:31:1046:31 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1048:13:1048:13 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1048:17:1048:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1049:31:1049:31 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1066:22:1066:22 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1066:22:1066:22 | x | TRef | main.rs:1066:11:1066:19 | T | -| main.rs:1066:35:1068:5 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1066:35:1068:5 | { ... } | TRef | main.rs:1066:11:1066:19 | T | -| main.rs:1067:9:1067:9 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1067:9:1067:9 | x | TRef | main.rs:1066:11:1066:19 | T | -| main.rs:1071:17:1071:20 | SelfParam | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1071:29:1073:9 | { ... } | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1076:21:1076:21 | x | | main.rs:1076:13:1076:14 | T1 | -| main.rs:1079:5:1081:5 | { ... } | | main.rs:1076:17:1076:18 | T2 | -| main.rs:1080:9:1080:9 | x | | main.rs:1076:13:1076:14 | T1 | -| main.rs:1083:16:1099:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1085:18:1085:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1085:18:1085:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1085:18:1085:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1085:18:1085:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1085:26:1085:31 | id(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1085:29:1085:30 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1088:18:1088:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1088:18:1088:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1088:18:1088:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1088:18:1088:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1088:26:1088:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1088:26:1088:37 | id::<...>(...) | TRef | main.rs:1056:5:1057:14 | S1 | -| main.rs:1088:35:1088:36 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1092:18:1092:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1092:18:1092:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1092:18:1092:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1092:18:1092:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1092:26:1092:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1092:26:1092:44 | id::<...>(...) | TRef | main.rs:1062:5:1062:25 | dyn Trait | -| main.rs:1092:42:1092:43 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1095:9:1095:25 | into::<...>(...) | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1098:13:1098:13 | y | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1112:22:1112:25 | SelfParam | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1112:22:1112:25 | SelfParam | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1112:22:1112:25 | SelfParam | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1112:35:1119:9 | { ... } | | main.rs:1111:15:1111:17 | Snd | -| main.rs:1113:19:1113:22 | self | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1113:19:1113:22 | self | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1113:19:1113:22 | self | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1114:43:1114:82 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1114:50:1114:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | -| main.rs:1114:50:1114:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1114:50:1114:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1114:50:1114:81 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1115:43:1115:81 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1115:50:1115:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | -| main.rs:1115:50:1115:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1115:50:1115:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1115:50:1115:80 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1143:10:1143:10 | t | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1143:10:1143:10 | t | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1143:10:1143:10 | t | Snd | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1143:10:1143:10 | t | Snd.Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1143:10:1143:10 | t | Snd.Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1143:30:1146:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1144:17:1144:17 | t | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1144:17:1144:17 | t | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1144:17:1144:17 | t | Snd | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1144:17:1144:17 | t | Snd.Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1144:17:1144:17 | t | Snd.Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1145:18:1145:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1145:18:1145:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1145:18:1145:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1145:18:1145:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1156:16:1176:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1158:13:1158:14 | p1 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1158:13:1158:14 | p1 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1158:13:1158:14 | p1 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1159:18:1159:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1159:18:1159:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1159:18:1159:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1159:18:1159:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1159:26:1159:27 | p1 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1159:26:1159:27 | p1 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1159:26:1159:27 | p1 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1162:13:1162:14 | p2 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1162:13:1162:14 | p2 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1162:13:1162:14 | p2 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1163:18:1163:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1163:18:1163:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1163:18:1163:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1163:18:1163:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1163:26:1163:27 | p2 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1163:26:1163:27 | p2 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1163:26:1163:27 | p2 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1166:13:1166:14 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1166:13:1166:14 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1167:18:1167:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1167:18:1167:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1167:18:1167:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1167:18:1167:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1167:26:1167:27 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1167:26:1167:27 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1170:13:1170:14 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1170:13:1170:14 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1170:13:1170:14 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1171:18:1171:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1171:18:1171:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1171:18:1171:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1171:18:1171:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1171:26:1171:27 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1171:26:1171:27 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1171:26:1171:27 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1173:9:1173:55 | g(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1175:13:1175:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1175:13:1175:13 | x | E | main.rs:1122:5:1123:14 | S1 | -| main.rs:1175:13:1175:13 | x | T | main.rs:1148:5:1148:34 | S4 | -| main.rs:1175:13:1175:13 | x | T.T41 | main.rs:1125:5:1126:14 | S2 | -| main.rs:1175:13:1175:13 | x | T.T42 | main.rs:1150:5:1150:22 | S5 | -| main.rs:1175:13:1175:13 | x | T.T42.T5 | main.rs:1125:5:1126:14 | S2 | -| main.rs:1188:16:1188:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1188:16:1188:24 | SelfParam | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | -| main.rs:1188:27:1188:31 | value | | main.rs:1186:19:1186:19 | S | -| main.rs:1190:21:1190:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1190:21:1190:29 | SelfParam | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | -| main.rs:1190:32:1190:36 | value | | main.rs:1186:19:1186:19 | S | -| main.rs:1190:42:1192:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1191:13:1191:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1191:13:1191:16 | self | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | -| main.rs:1191:22:1191:26 | value | | main.rs:1186:19:1186:19 | S | -| main.rs:1197:16:1197:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1197:16:1197:24 | SelfParam | TRefMut | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1197:16:1197:24 | SelfParam | TRefMut.T | main.rs:1195:10:1195:10 | T | -| main.rs:1197:27:1197:31 | value | | main.rs:1195:10:1195:10 | T | -| main.rs:1197:37:1197:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1201:26:1203:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1201:26:1203:9 | { ... } | T | main.rs:1200:10:1200:10 | T | -| main.rs:1207:20:1207:23 | SelfParam | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1207:20:1207:23 | SelfParam | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1207:20:1207:23 | SelfParam | T.T | main.rs:1206:10:1206:10 | T | -| main.rs:1207:41:1212:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1207:41:1212:9 | { ... } | T | main.rs:1206:10:1206:10 | T | -| main.rs:1208:19:1208:22 | self | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1208:19:1208:22 | self | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1208:19:1208:22 | self | T.T | main.rs:1206:10:1206:10 | T | -| main.rs:1218:16:1263:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1219:13:1219:14 | x1 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1219:13:1219:14 | x1 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1219:18:1219:37 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1219:18:1219:37 | ...::new(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1220:18:1220:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1220:18:1220:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1220:18:1220:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1220:18:1220:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1220:26:1220:27 | x1 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1220:26:1220:27 | x1 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1222:17:1222:18 | x2 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1222:22:1222:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1223:9:1223:10 | x2 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1224:18:1224:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1224:18:1224:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1224:18:1224:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1224:18:1224:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1224:26:1224:27 | x2 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1226:17:1226:18 | x3 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1226:22:1226:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1227:9:1227:10 | x3 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1228:18:1228:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1228:18:1228:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1228:18:1228:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1228:18:1228:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1228:26:1228:27 | x3 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1230:17:1230:18 | x4 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1230:22:1230:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1231:9:1231:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1231:23:1231:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | -| main.rs:1231:28:1231:29 | x4 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1232:18:1232:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1232:18:1232:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1232:18:1232:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1232:18:1232:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1232:26:1232:27 | x4 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1235:18:1235:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1235:18:1235:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1235:18:1235:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1235:18:1235:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1238:18:1238:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1238:18:1238:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1238:18:1238:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1238:18:1238:61 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1238:26:1238:61 | ...::flatten(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1238:26:1238:61 | ...::flatten(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1246:18:1246:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1246:18:1246:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1246:18:1246:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1246:18:1246:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1250:13:1250:16 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1251:13:1251:17 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1253:18:1253:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1253:18:1253:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1253:18:1253:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1253:18:1253:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1256:30:1261:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1257:13:1259:13 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1257:22:1259:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1262:18:1262:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1262:18:1262:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1262:18:1262:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1262:18:1262:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1280:15:1280:18 | SelfParam | | main.rs:1268:5:1269:19 | S | -| main.rs:1280:15:1280:18 | SelfParam | T | main.rs:1279:10:1279:10 | T | -| main.rs:1280:26:1282:9 | { ... } | | main.rs:1279:10:1279:10 | T | -| main.rs:1281:13:1281:16 | self | | main.rs:1268:5:1269:19 | S | -| main.rs:1281:13:1281:16 | self | T | main.rs:1279:10:1279:10 | T | -| main.rs:1284:15:1284:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1284:15:1284:19 | SelfParam | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1284:15:1284:19 | SelfParam | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1284:28:1286:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1284:28:1286:9 | { ... } | TRef | main.rs:1279:10:1279:10 | T | -| main.rs:1285:13:1285:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1285:14:1285:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1285:14:1285:17 | self | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1285:14:1285:17 | self | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1288:15:1288:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1288:15:1288:25 | SelfParam | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1288:15:1288:25 | SelfParam | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1288:34:1290:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1288:34:1290:9 | { ... } | TRef | main.rs:1279:10:1279:10 | T | -| main.rs:1289:13:1289:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1289:14:1289:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1289:14:1289:17 | self | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1289:14:1289:17 | self | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1294:29:1294:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1294:29:1294:33 | SelfParam | TRef | main.rs:1293:5:1296:5 | Self [trait ATrait] | -| main.rs:1295:33:1295:36 | SelfParam | | main.rs:1293:5:1296:5 | Self [trait ATrait] | -| main.rs:1301:29:1301:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1301:29:1301:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1301:29:1301:33 | SelfParam | TRef.TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1301:43:1303:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1302:17:1302:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1302:17:1302:20 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1302:17:1302:20 | self | TRef.TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1306:33:1306:36 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1306:33:1306:36 | SelfParam | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1306:46:1308:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1307:15:1307:18 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1307:15:1307:18 | self | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1311:16:1361:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1313:18:1313:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1313:18:1313:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1313:18:1313:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1313:18:1313:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1317:18:1317:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1317:18:1317:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1317:18:1317:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1317:18:1317:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1318:18:1318:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1318:18:1318:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1318:18:1318:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1318:18:1318:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1322:18:1322:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1322:18:1322:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1322:18:1322:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1322:18:1322:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1322:26:1322:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1322:26:1322:41 | ...::m2(...) | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1322:38:1322:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1323:18:1323:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1323:18:1323:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1323:18:1323:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1323:18:1323:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1323:26:1323:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1323:26:1323:41 | ...::m3(...) | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1323:38:1323:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1325:13:1325:14 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1325:18:1325:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1327:18:1327:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1327:18:1327:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1327:18:1327:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1327:18:1327:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1327:26:1327:27 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1328:18:1328:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1328:18:1328:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1328:18:1328:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1328:18:1328:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1328:26:1328:27 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1330:13:1330:14 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1330:18:1330:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1332:18:1332:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1332:18:1332:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1332:18:1332:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1332:18:1332:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1332:26:1332:27 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1333:18:1333:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1333:18:1333:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1333:18:1333:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1333:18:1333:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1333:26:1333:27 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1335:13:1335:14 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1335:18:1335:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1338:18:1338:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1338:18:1338:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1338:18:1338:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1338:18:1338:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1338:28:1338:29 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1340:20:1340:22 | &S2 | | {EXTERNAL LOCATION} | & | -| main.rs:1344:18:1344:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1344:18:1344:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1344:18:1344:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1344:18:1344:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1346:13:1346:14 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1346:26:1346:32 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1346:26:1346:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1350:17:1350:18 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1352:13:1352:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1352:24:1352:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1352:25:1352:39 | MyInt {...} | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1354:17:1354:24 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1355:18:1355:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1355:18:1355:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1355:18:1355:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1355:18:1355:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1358:13:1358:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1358:24:1358:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1358:25:1358:39 | MyInt {...} | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1359:17:1359:24 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1360:18:1360:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1360:18:1360:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1360:18:1360:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1360:18:1360:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1367:16:1367:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1367:16:1367:20 | SelfParam | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1370:16:1370:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1370:16:1370:20 | SelfParam | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1370:32:1372:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1370:32:1372:9 | { ... } | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1371:13:1371:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1371:13:1371:16 | self | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1379:16:1379:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1379:16:1379:20 | SelfParam | TRef | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1379:36:1381:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1379:36:1381:9 | { ... } | TRef | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1380:13:1380:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1380:13:1380:16 | self | TRef | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1384:16:1387:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1396:16:1396:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1396:16:1396:20 | SelfParam | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1396:16:1396:20 | SelfParam | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1396:32:1398:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1396:32:1398:9 | { ... } | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1396:32:1398:9 | { ... } | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1397:13:1397:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1397:13:1397:16 | self | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1397:13:1397:16 | self | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1400:16:1400:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1400:16:1400:20 | SelfParam | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1400:16:1400:20 | SelfParam | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1400:23:1400:23 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1400:23:1400:23 | x | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1400:23:1400:23 | x | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1400:42:1402:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1400:42:1402:9 | { ... } | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1400:42:1402:9 | { ... } | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1401:13:1401:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1401:13:1401:16 | self | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1401:13:1401:16 | self | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1405:16:1411:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1410:15:1410:17 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1410:16:1410:17 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1421:17:1421:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1421:17:1421:25 | SelfParam | TRefMut | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1421:28:1423:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1422:13:1422:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1422:13:1422:16 | self | TRefMut | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1422:26:1422:29 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1422:26:1422:29 | self | TRefMut | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1429:15:1429:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1429:15:1429:19 | SelfParam | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1429:31:1431:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1429:31:1431:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1430:13:1430:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1430:14:1430:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1430:15:1430:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1430:16:1430:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1430:16:1430:19 | self | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1433:15:1433:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1433:15:1433:25 | SelfParam | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1433:37:1435:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1433:37:1435:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1434:13:1434:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1434:14:1434:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1434:15:1434:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1434:16:1434:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1434:16:1434:19 | self | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1437:15:1437:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1437:15:1437:15 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1437:34:1439:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1437:34:1439:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1438:13:1438:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1438:13:1438:13 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1441:15:1441:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1441:15:1441:15 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1441:34:1443:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1441:34:1443:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1442:13:1442:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1442:14:1442:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1442:15:1442:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1442:16:1442:16 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1442:16:1442:16 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1446:16:1459:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1447:13:1447:13 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1447:17:1447:20 | S {...} | | main.rs:1426:5:1426:13 | S | -| main.rs:1448:9:1448:9 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1449:9:1449:9 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1450:9:1450:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1450:9:1450:17 | ...::f3(...) | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1450:15:1450:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1450:16:1450:16 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1452:19:1452:24 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1452:20:1452:24 | &true | | {EXTERNAL LOCATION} | & | -| main.rs:1452:21:1452:24 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1457:9:1457:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1457:22:1457:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | -| main.rs:1458:18:1458:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1458:18:1458:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1458:18:1458:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1458:18:1458:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1473:43:1476:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1473:43:1476:5 | { ... } | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1473:43:1476:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1480:46:1484:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1480:46:1484:5 | { ... } | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1480:46:1484:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1488:40:1493:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1488:40:1493:5 | { ... } | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1488:40:1493:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1497:30:1497:34 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1497:30:1497:34 | input | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1497:30:1497:34 | input | T | main.rs:1497:20:1497:27 | T | -| main.rs:1497:69:1504:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1497:69:1504:5 | { ... } | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1497:69:1504:5 | { ... } | T | main.rs:1497:20:1497:27 | T | -| main.rs:1498:21:1498:25 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1498:21:1498:25 | input | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1498:21:1498:25 | input | T | main.rs:1497:20:1497:27 | T | -| main.rs:1500:22:1500:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1500:22:1500:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1500:22:1500:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1500:22:1500:30 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1507:16:1523:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1508:9:1510:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1508:37:1508:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1508:37:1508:52 | try_same_error(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1508:37:1508:52 | try_same_error(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1508:54:1510:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1509:22:1509:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1509:22:1509:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1509:22:1509:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1509:22:1509:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1512:9:1514:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1512:37:1512:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1512:37:1512:55 | try_convert_error(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1512:37:1512:55 | try_convert_error(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1512:57:1514:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1513:22:1513:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1513:22:1513:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1513:22:1513:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1513:22:1513:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1516:9:1518:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1516:37:1516:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1516:37:1516:49 | try_chained(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1516:37:1516:49 | try_chained(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1516:51:1518:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1517:22:1517:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1517:22:1517:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1517:22:1517:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1517:22:1517:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1520:9:1522:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1520:37:1520:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1520:37:1520:63 | try_complex(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:65:1522:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1521:22:1521:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1521:22:1521:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1521:22:1521:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1521:22:1521:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1527:16:1618:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1528:13:1528:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1530:17:1530:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1531:17:1531:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1532:13:1532:13 | c | | {EXTERNAL LOCATION} | char | -| main.rs:1532:17:1532:19 | 'c' | | {EXTERNAL LOCATION} | char | -| main.rs:1533:13:1533:17 | hello | | {EXTERNAL LOCATION} | & | -| main.rs:1533:13:1533:17 | hello | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1533:21:1533:27 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1533:21:1533:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1534:13:1534:13 | f | | {EXTERNAL LOCATION} | f64 | -| main.rs:1534:17:1534:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | -| main.rs:1535:13:1535:13 | t | | {EXTERNAL LOCATION} | bool | -| main.rs:1535:17:1535:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1536:13:1536:13 | f | | {EXTERNAL LOCATION} | bool | -| main.rs:1536:17:1536:21 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1539:26:1539:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1539:26:1539:30 | SelfParam | TRef | main.rs:1538:9:1542:9 | Self [trait MyTrait] | -| main.rs:1545:26:1545:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1545:26:1545:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1545:26:1545:30 | SelfParam | TRef.TArray | main.rs:1544:14:1544:23 | T | -| main.rs:1545:39:1547:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1545:39:1547:13 | { ... } | TRef | main.rs:1544:14:1544:23 | T | -| main.rs:1546:17:1546:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1546:17:1546:20 | self | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1546:17:1546:20 | self | TRef.TArray | main.rs:1544:14:1544:23 | T | -| main.rs:1549:31:1551:13 | { ... } | | main.rs:1544:14:1544:23 | T | -| main.rs:1554:17:1554:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1555:13:1555:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1555:17:1555:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1555:37:1555:46 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1555:38:1555:46 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1556:13:1556:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1556:17:1556:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1559:26:1559:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1559:26:1559:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1559:26:1559:30 | SelfParam | TRef.TSlice | main.rs:1558:14:1558:23 | T | -| main.rs:1559:39:1561:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1559:39:1561:13 | { ... } | TRef | main.rs:1558:14:1558:23 | T | -| main.rs:1560:17:1560:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1560:17:1560:20 | self | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1560:17:1560:20 | self | TRef.TSlice | main.rs:1558:14:1558:23 | T | -| main.rs:1563:31:1565:13 | { ... } | | main.rs:1558:14:1558:23 | T | -| main.rs:1568:13:1568:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1568:13:1568:13 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1568:13:1568:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1568:25:1568:34 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1568:26:1568:34 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1569:17:1569:17 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1569:17:1569:17 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1569:17:1569:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1570:13:1570:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1570:17:1570:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1570:34:1570:34 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1570:34:1570:34 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1570:34:1570:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1571:13:1571:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1571:17:1571:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1574:26:1574:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1574:26:1574:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1574:26:1574:30 | SelfParam | TRef.T0 | main.rs:1573:14:1573:23 | T | -| main.rs:1574:26:1574:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1574:39:1576:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1574:39:1576:13 | { ... } | TRef | main.rs:1573:14:1573:23 | T | -| main.rs:1575:17:1575:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1575:18:1575:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1575:18:1575:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1575:18:1575:21 | self | TRef.T0 | main.rs:1573:14:1573:23 | T | -| main.rs:1575:18:1575:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1578:31:1580:13 | { ... } | | main.rs:1573:14:1573:23 | T | -| main.rs:1583:13:1583:13 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1583:17:1583:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1584:17:1584:17 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1585:13:1585:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1585:17:1585:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1585:37:1585:38 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1585:38:1585:38 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1586:13:1586:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1586:17:1586:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1589:26:1589:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1589:26:1589:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1589:26:1589:30 | SelfParam | TRef.TRef | main.rs:1588:14:1588:23 | T | -| main.rs:1589:39:1591:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1589:39:1591:13 | { ... } | TRef | main.rs:1588:14:1588:23 | T | -| main.rs:1590:18:1590:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1590:18:1590:21 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1590:18:1590:21 | self | TRef.TRef | main.rs:1588:14:1588:23 | T | -| main.rs:1593:31:1595:13 | { ... } | | main.rs:1588:14:1588:23 | T | -| main.rs:1598:13:1598:13 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1598:17:1598:19 | &42 | | {EXTERNAL LOCATION} | & | -| main.rs:1599:17:1599:17 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1600:13:1600:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1600:17:1600:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1600:33:1600:34 | &r | | {EXTERNAL LOCATION} | & | -| main.rs:1600:34:1600:34 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1601:13:1601:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1601:17:1601:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1604:26:1604:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1604:26:1604:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1604:26:1604:30 | SelfParam | TRef.TPtrMut | main.rs:1603:14:1603:23 | T | -| main.rs:1604:39:1606:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1604:39:1606:13 | { ... } | TRef | main.rs:1603:14:1603:23 | T | -| main.rs:1605:26:1605:32 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1605:29:1605:32 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1605:29:1605:32 | self | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1605:29:1605:32 | self | TRef.TPtrMut | main.rs:1603:14:1603:23 | T | -| main.rs:1608:31:1610:13 | { ... } | | main.rs:1603:14:1603:23 | T | -| main.rs:1614:13:1614:13 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1614:13:1614:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1614:27:1614:32 | &mut v | | {EXTERNAL LOCATION} | &mut | -| main.rs:1615:26:1615:26 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1615:26:1615:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:26:1616:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1616:46:1616:47 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1616:47:1616:47 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1616:47:1616:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1617:13:1617:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1617:17:1617:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1623:16:1635:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1624:13:1624:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:1624:17:1624:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1624:17:1624:29 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1624:25:1624:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:13:1625:13 | y | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:17:1625:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:17:1625:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:25:1625:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1629:17:1631:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1631:16:1633:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1648:30:1650:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1649:13:1649:31 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1656:16:1656:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1656:22:1656:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1656:41:1661:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1657:13:1660:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1658:20:1658:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1658:29:1658:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1659:20:1659:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1659:29:1659:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1666:23:1666:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1666:23:1666:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1666:34:1666:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1666:45:1669:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1667:13:1667:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1667:13:1667:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1667:23:1667:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1668:13:1668:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1668:13:1668:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1668:23:1668:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1674:16:1674:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1674:22:1674:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1674:41:1679:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1675:13:1678:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1676:20:1676:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1676:29:1676:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1677:20:1677:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1677:29:1677:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1684:23:1684:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1684:23:1684:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1684:34:1684:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1684:45:1687:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1685:13:1685:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1685:13:1685:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1685:23:1685:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1686:13:1686:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1686:13:1686:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1686:23:1686:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1692:16:1692:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1692:22:1692:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1692:41:1697:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1693:13:1696:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1694:20:1694:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1694:29:1694:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1695:20:1695:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1695:29:1695:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1701:23:1701:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1701:23:1701:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1701:34:1701:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1701:45:1704:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1702:13:1702:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1702:13:1702:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1702:23:1702:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1703:13:1703:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1703:13:1703:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1703:23:1703:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1709:16:1709:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1709:22:1709:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1709:41:1714:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1710:13:1713:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1711:20:1711:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1711:29:1711:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1712:20:1712:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1712:29:1712:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1718:23:1718:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1718:23:1718:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1718:34:1718:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1718:45:1721:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1719:13:1719:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1719:13:1719:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1719:23:1719:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1720:13:1720:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1720:13:1720:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1720:23:1720:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1726:16:1726:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1726:22:1726:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1726:41:1731:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1727:13:1730:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1728:20:1728:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1728:29:1728:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1729:20:1729:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1729:29:1729:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1735:23:1735:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1735:23:1735:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1735:34:1735:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1735:45:1738:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1736:13:1736:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1736:13:1736:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1736:23:1736:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1737:13:1737:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1737:13:1737:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1737:23:1737:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1743:19:1743:22 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1743:25:1743:27 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1743:44:1748:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1744:13:1747:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1745:20:1745:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1745:29:1745:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1746:20:1746:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1746:29:1746:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1752:26:1752:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1752:26:1752:34 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1752:37:1752:39 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1752:48:1755:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1753:13:1753:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1753:13:1753:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1753:23:1753:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1754:13:1754:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1754:13:1754:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1754:23:1754:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1760:18:1760:21 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1760:24:1760:26 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1760:43:1765:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1761:13:1764:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1762:20:1762:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1762:29:1762:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1763:20:1763:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1763:29:1763:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1769:25:1769:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1769:25:1769:33 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1769:36:1769:38 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1769:47:1772:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1770:13:1770:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1770:13:1770:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1770:23:1770:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1771:13:1771:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1771:13:1771:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1771:23:1771:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1777:19:1777:22 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1777:25:1777:27 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1777:44:1782:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1778:13:1781:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1779:20:1779:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1779:29:1779:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1780:20:1780:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1780:29:1780:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1786:26:1786:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1786:26:1786:34 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1786:37:1786:39 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1786:48:1789:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1787:13:1787:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1787:13:1787:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1787:23:1787:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1788:13:1788:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1788:13:1788:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1788:23:1788:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1794:16:1794:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1794:22:1794:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1794:40:1799:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1795:13:1798:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1796:20:1796:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1796:30:1796:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1797:20:1797:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1797:30:1797:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1803:23:1803:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1803:23:1803:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1803:34:1803:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1803:44:1806:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1804:13:1804:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1804:13:1804:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1804:24:1804:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1805:13:1805:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1805:13:1805:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1805:24:1805:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1811:16:1811:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1811:22:1811:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1811:40:1816:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1812:13:1815:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1813:20:1813:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1813:30:1813:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1814:20:1814:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1814:30:1814:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1820:23:1820:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1820:23:1820:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1820:34:1820:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1820:44:1823:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1821:13:1821:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1821:13:1821:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1821:24:1821:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1822:13:1822:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1822:13:1822:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1822:24:1822:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1828:16:1828:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1828:30:1833:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1829:13:1832:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1830:21:1830:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1831:21:1831:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1838:16:1838:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1838:30:1843:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1839:13:1842:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1840:21:1840:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1841:21:1841:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1847:15:1847:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1847:15:1847:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1847:22:1847:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1847:22:1847:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1847:44:1849:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:13:1848:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1848:13:1848:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1848:13:1848:29 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:13:1848:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:23:1848:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1848:23:1848:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1848:34:1848:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1848:34:1848:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1848:34:1848:50 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:44:1848:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1848:44:1848:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1851:15:1851:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1851:15:1851:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1851:22:1851:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1851:22:1851:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1851:44:1853:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:13:1852:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1852:13:1852:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1852:13:1852:29 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:13:1852:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:23:1852:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1852:23:1852:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1852:34:1852:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1852:34:1852:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1852:34:1852:50 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:44:1852:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1852:44:1852:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1857:24:1857:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1857:24:1857:28 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1857:31:1857:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1857:31:1857:35 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1857:75:1859:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:1857:75:1859:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | -| main.rs:1858:14:1858:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1858:14:1858:17 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1858:23:1858:26 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1858:23:1858:26 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1858:43:1858:62 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1858:45:1858:49 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1858:45:1858:49 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1858:55:1858:59 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1858:55:1858:59 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1861:15:1861:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1861:15:1861:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1861:22:1861:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1861:22:1861:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1861:44:1863:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:13:1862:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1862:13:1862:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1862:13:1862:28 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:13:1862:48 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:22:1862:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1862:22:1862:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1862:33:1862:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1862:33:1862:36 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1862:33:1862:48 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:42:1862:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1862:42:1862:46 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1865:15:1865:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1865:15:1865:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1865:22:1865:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1865:22:1865:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1865:44:1867:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:13:1866:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1866:13:1866:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1866:13:1866:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:13:1866:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:23:1866:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1866:23:1866:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1866:34:1866:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1866:34:1866:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1866:34:1866:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:44:1866:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1866:44:1866:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1869:15:1869:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1869:15:1869:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1869:22:1869:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1869:22:1869:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1869:44:1871:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:13:1870:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1870:13:1870:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1870:13:1870:28 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:13:1870:48 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:22:1870:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1870:22:1870:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1870:33:1870:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1870:33:1870:36 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1870:33:1870:48 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:42:1870:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1870:42:1870:46 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1873:15:1873:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1873:15:1873:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1873:22:1873:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1873:22:1873:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1873:44:1875:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:13:1874:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1874:13:1874:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1874:13:1874:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:13:1874:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:23:1874:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1874:23:1874:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1874:34:1874:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1874:34:1874:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1874:34:1874:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:44:1874:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1874:44:1874:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1878:26:1878:26 | a | | main.rs:1878:18:1878:23 | T | -| main.rs:1878:32:1878:32 | b | | main.rs:1878:18:1878:23 | T | -| main.rs:1879:9:1879:9 | a | | main.rs:1878:18:1878:23 | T | -| main.rs:1879:13:1879:13 | b | | main.rs:1878:18:1878:23 | T | -| main.rs:1882:16:2013:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1886:23:1886:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1886:31:1886:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1887:23:1887:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1887:31:1887:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1888:23:1888:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1888:30:1888:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:23:1889:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:31:1889:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1890:23:1890:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1890:30:1890:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1891:23:1891:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1891:32:1891:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:23:1894:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:31:1894:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:23:1895:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:31:1895:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1896:23:1896:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1896:31:1896:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:23:1897:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:31:1897:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:23:1898:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:31:1898:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1899:39:1899:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1899:45:1899:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1902:17:1902:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1902:34:1902:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1903:9:1903:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1903:27:1903:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1905:17:1905:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1905:34:1905:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1906:9:1906:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1906:27:1906:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1908:17:1908:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1908:34:1908:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1909:9:1909:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1909:27:1909:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1911:17:1911:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1911:34:1911:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1912:9:1912:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1912:27:1912:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1914:17:1914:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1914:34:1914:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1915:9:1915:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1915:27:1915:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:26:1918:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:34:1918:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:25:1919:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:33:1919:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:26:1920:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:34:1920:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:23:1921:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:32:1921:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:23:1922:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:32:1922:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1925:17:1925:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1925:37:1925:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:9:1926:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:30:1926:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1928:17:1928:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1928:36:1928:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:9:1929:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:29:1929:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1931:17:1931:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1931:37:1931:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1932:9:1932:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1932:30:1932:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1934:17:1934:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1934:34:1934:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1935:9:1935:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1935:28:1935:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1937:17:1937:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1937:34:1937:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1938:9:1938:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1938:28:1938:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1940:24:1940:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1941:24:1941:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1944:13:1944:14 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1944:18:1944:36 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1945:13:1945:14 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1945:18:1945:36 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1948:23:1948:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1948:29:1948:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1949:23:1949:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1949:29:1949:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1950:23:1950:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1950:28:1950:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1951:23:1951:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1951:29:1951:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1952:23:1952:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1952:28:1952:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1953:23:1953:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1953:29:1953:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1956:24:1956:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1956:29:1956:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1957:24:1957:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1957:29:1957:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1958:24:1958:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1958:29:1958:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1959:24:1959:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1959:29:1959:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1960:24:1960:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1960:29:1960:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1963:17:1963:31 | vec2_add_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1963:35:1963:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1964:9:1964:23 | vec2_add_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1964:28:1964:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1966:17:1966:31 | vec2_sub_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1966:35:1966:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1967:9:1967:23 | vec2_sub_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1967:28:1967:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1969:17:1969:31 | vec2_mul_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1969:35:1969:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1970:9:1970:23 | vec2_mul_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1970:28:1970:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1972:17:1972:31 | vec2_div_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1972:35:1972:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1973:9:1973:23 | vec2_div_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1973:28:1973:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1975:17:1975:31 | vec2_rem_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1975:35:1975:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1976:9:1976:23 | vec2_rem_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1976:28:1976:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1979:27:1979:28 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1979:32:1979:33 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1980:26:1980:27 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1980:31:1980:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1981:27:1981:28 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1981:32:1981:33 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1982:24:1982:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1982:30:1982:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1983:24:1983:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1983:30:1983:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1986:17:1986:34 | vec2_bitand_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1986:38:1986:39 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1987:9:1987:26 | vec2_bitand_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1987:31:1987:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1989:17:1989:33 | vec2_bitor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1989:37:1989:38 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1990:9:1990:25 | vec2_bitor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1990:30:1990:31 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1992:17:1992:34 | vec2_bitxor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1992:38:1992:39 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1993:9:1993:26 | vec2_bitxor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1993:31:1993:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1995:17:1995:31 | vec2_shl_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1995:35:1995:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1996:9:1996:23 | vec2_shl_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1996:29:1996:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1998:17:1998:31 | vec2_shr_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1998:35:1998:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1999:9:1999:23 | vec2_shr_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1999:29:1999:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2002:25:2002:26 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2003:25:2003:26 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2007:30:2007:48 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2012:30:2012:48 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2022:18:2022:21 | SelfParam | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2022:24:2022:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2025:25:2027:5 | { ... } | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2030:9:2030:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2034:9:2034:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2034:9:2034:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2043:13:2043:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | -| main.rs:2043:13:2043:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | -| main.rs:2043:13:2043:42 | SelfParam | Ptr.TRefMut | main.rs:2037:5:2037:14 | S2 | -| main.rs:2044:13:2044:15 | _cx | | {EXTERNAL LOCATION} | &mut | -| main.rs:2044:13:2044:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | -| main.rs:2045:44:2047:9 | { ... } | | {EXTERNAL LOCATION} | Poll | -| main.rs:2045:44:2047:9 | { ... } | T | main.rs:2019:5:2019:14 | S1 | -| main.rs:2054:22:2062:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2055:9:2055:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2055:9:2055:12 | f1(...) | dyn(Output) | main.rs:2019:5:2019:14 | S1 | -| main.rs:2056:9:2056:12 | f2(...) | | main.rs:2029:16:2029:39 | impl ... | -| main.rs:2057:9:2057:12 | f3(...) | | main.rs:2033:16:2033:39 | impl ... | -| main.rs:2058:9:2058:12 | f4(...) | | main.rs:2050:16:2050:39 | impl ... | -| main.rs:2060:13:2060:13 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2060:17:2060:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2061:9:2061:9 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2072:15:2072:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2072:15:2072:19 | SelfParam | TRef | main.rs:2071:5:2073:5 | Self [trait Trait1] | -| main.rs:2072:22:2072:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2076:15:2076:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2076:15:2076:19 | SelfParam | TRef | main.rs:2075:5:2077:5 | Self [trait Trait2] | -| main.rs:2076:22:2076:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2080:15:2080:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2080:15:2080:19 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | -| main.rs:2080:22:2080:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2084:15:2084:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2084:15:2084:19 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | -| main.rs:2084:22:2084:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2092:18:2092:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2092:18:2092:22 | SelfParam | TRef | main.rs:2091:5:2093:5 | Self [trait MyTrait] | -| main.rs:2096:18:2096:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2096:18:2096:22 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | -| main.rs:2096:31:2098:9 | { ... } | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2102:18:2102:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2102:18:2102:22 | SelfParam | TRef | main.rs:2069:5:2069:22 | S3 | -| main.rs:2102:18:2102:22 | SelfParam | TRef.T3 | main.rs:2101:10:2101:17 | T | -| main.rs:2102:30:2105:9 | { ... } | | main.rs:2101:10:2101:17 | T | -| main.rs:2103:25:2103:28 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2103:25:2103:28 | self | TRef | main.rs:2069:5:2069:22 | S3 | -| main.rs:2103:25:2103:28 | self | TRef.T3 | main.rs:2101:10:2101:17 | T | -| main.rs:2112:41:2112:41 | t | | main.rs:2112:26:2112:38 | B | -| main.rs:2112:52:2114:5 | { ... } | | main.rs:2112:23:2112:23 | A | -| main.rs:2113:9:2113:9 | t | | main.rs:2112:26:2112:38 | B | -| main.rs:2116:34:2116:34 | x | | main.rs:2116:24:2116:31 | T | -| main.rs:2116:59:2118:5 | { ... } | | main.rs:2116:43:2116:57 | impl ... | -| main.rs:2116:59:2118:5 | { ... } | impl(T) | main.rs:2116:24:2116:31 | T | -| main.rs:2117:12:2117:12 | x | | main.rs:2116:24:2116:31 | T | -| main.rs:2120:34:2120:34 | x | | main.rs:2120:24:2120:31 | T | -| main.rs:2120:67:2122:5 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2120:67:2122:5 | { ... } | T | main.rs:2120:50:2120:64 | impl ... | -| main.rs:2120:67:2122:5 | { ... } | T.impl(T) | main.rs:2120:24:2120:31 | T | -| main.rs:2121:17:2121:17 | x | | main.rs:2120:24:2120:31 | T | -| main.rs:2124:34:2124:34 | x | | main.rs:2124:24:2124:31 | T | -| main.rs:2124:78:2126:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2124:78:2126:5 | { ... } | T0 | main.rs:2124:44:2124:58 | impl ... | -| main.rs:2124:78:2126:5 | { ... } | T0.impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2124:78:2126:5 | { ... } | T1 | main.rs:2124:61:2124:75 | impl ... | -| main.rs:2124:78:2126:5 | { ... } | T1.impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2125:9:2125:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2125:13:2125:13 | x | | main.rs:2124:24:2124:31 | T | -| main.rs:2125:28:2125:28 | x | | main.rs:2124:24:2124:31 | T | -| main.rs:2128:26:2128:26 | t | | main.rs:2128:29:2128:43 | impl ... | -| main.rs:2128:51:2130:5 | { ... } | | main.rs:2128:23:2128:23 | A | -| main.rs:2129:9:2129:9 | t | | main.rs:2128:29:2128:43 | impl ... | -| main.rs:2132:16:2146:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2133:13:2133:13 | x | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2133:17:2133:20 | f1(...) | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2134:9:2134:9 | x | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2135:9:2135:9 | x | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2136:13:2136:13 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2136:17:2136:32 | get_a_my_trait(...) | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2137:32:2137:32 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2138:13:2138:13 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2138:17:2138:32 | get_a_my_trait(...) | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2139:32:2139:32 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2141:17:2141:35 | get_a_my_trait2(...) | | main.rs:2116:43:2116:57 | impl ... | -| main.rs:2144:17:2144:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2144:17:2144:35 | get_a_my_trait3(...) | T | main.rs:2120:50:2120:64 | impl ... | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T0 | main.rs:2124:44:2124:58 | impl ... | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T1 | main.rs:2124:61:2124:75 | impl ... | -| main.rs:2156:16:2156:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2156:16:2156:20 | SelfParam | TRef | main.rs:2152:5:2153:13 | S | -| main.rs:2156:31:2158:9 | { ... } | | main.rs:2152:5:2153:13 | S | -| main.rs:2167:26:2169:9 | { ... } | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2167:26:2169:9 | { ... } | T | main.rs:2166:10:2166:10 | T | -| main.rs:2168:13:2168:38 | MyVec {...} | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2168:27:2168:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2168:27:2168:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2171:17:2171:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:2171:17:2171:25 | SelfParam | TRefMut | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2171:17:2171:25 | SelfParam | TRefMut.T | main.rs:2166:10:2166:10 | T | -| main.rs:2171:28:2171:32 | value | | main.rs:2166:10:2166:10 | T | -| main.rs:2171:38:2173:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2172:13:2172:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:2172:13:2172:16 | self | TRefMut | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2172:13:2172:16 | self | TRefMut.T | main.rs:2166:10:2166:10 | T | -| main.rs:2172:28:2172:32 | value | | main.rs:2166:10:2166:10 | T | -| main.rs:2180:18:2180:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2180:18:2180:22 | SelfParam | TRef | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2180:18:2180:22 | SelfParam | TRef.T | main.rs:2176:10:2176:10 | T | -| main.rs:2180:25:2180:29 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2180:56:2182:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2180:56:2182:9 | { ... } | TRef | main.rs:2176:10:2176:10 | T | -| main.rs:2181:13:2181:29 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2181:14:2181:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2181:14:2181:17 | self | TRef | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2181:14:2181:17 | self | TRef.T | main.rs:2176:10:2176:10 | T | -| main.rs:2181:24:2181:28 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2185:22:2185:26 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2185:22:2185:26 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2185:22:2185:26 | slice | TRef.TSlice | main.rs:2152:5:2153:13 | S | -| main.rs:2185:35:2187:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2186:17:2186:21 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2186:17:2186:21 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2186:17:2186:21 | slice | TRef.TSlice | main.rs:2152:5:2153:13 | S | -| main.rs:2189:37:2189:37 | a | | main.rs:2189:20:2189:34 | T | -| main.rs:2189:43:2189:43 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2193:9:2193:9 | a | | main.rs:2189:20:2189:34 | T | -| main.rs:2193:11:2193:11 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2196:16:2207:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2197:17:2197:19 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2197:23:2197:34 | ...::new(...) | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2198:9:2198:11 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2199:9:2199:11 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2201:13:2201:14 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2201:13:2201:14 | xs | TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2201:26:2201:28 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2202:17:2202:18 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2202:17:2202:18 | xs | TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2204:29:2204:31 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2206:9:2206:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2206:23:2206:25 | &xs | | {EXTERNAL LOCATION} | & | -| main.rs:2206:24:2206:25 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2206:24:2206:25 | xs | TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2211:16:2213:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2212:25:2212:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | -| main.rs:2212:25:2212:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2212:25:2212:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2212:38:2212:45 | "World!" | | {EXTERNAL LOCATION} | & | -| main.rs:2212:38:2212:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2221:19:2221:22 | SelfParam | | main.rs:2217:5:2222:5 | Self [trait MyAdd] | -| main.rs:2221:25:2221:27 | rhs | | main.rs:2217:17:2217:26 | Rhs | -| main.rs:2228:19:2228:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2228:25:2228:29 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2228:45:2230:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2229:13:2229:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2237:19:2237:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2237:25:2237:29 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2237:25:2237:29 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2237:46:2239:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2238:14:2238:18 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2238:14:2238:18 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2246:19:2246:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2246:25:2246:29 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2246:46:2252:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2247:16:2247:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2261:19:2261:22 | SelfParam | | main.rs:2255:5:2255:19 | S | -| main.rs:2261:19:2261:22 | SelfParam | T | main.rs:2257:10:2257:17 | T | -| main.rs:2261:25:2261:29 | other | | main.rs:2255:5:2255:19 | S | -| main.rs:2261:25:2261:29 | other | T | main.rs:2257:10:2257:17 | T | -| main.rs:2261:54:2263:9 | { ... } | | main.rs:2255:5:2255:19 | S | -| main.rs:2262:16:2262:19 | self | | main.rs:2255:5:2255:19 | S | -| main.rs:2262:16:2262:19 | self | T | main.rs:2257:10:2257:17 | T | -| main.rs:2262:31:2262:35 | other | | main.rs:2255:5:2255:19 | S | -| main.rs:2262:31:2262:35 | other | T | main.rs:2257:10:2257:17 | T | -| main.rs:2270:19:2270:22 | SelfParam | | main.rs:2255:5:2255:19 | S | -| main.rs:2270:19:2270:22 | SelfParam | T | main.rs:2266:10:2266:17 | T | -| main.rs:2270:25:2270:29 | other | | main.rs:2266:10:2266:17 | T | -| main.rs:2270:51:2272:9 | { ... } | | main.rs:2255:5:2255:19 | S | -| main.rs:2271:16:2271:19 | self | | main.rs:2255:5:2255:19 | S | -| main.rs:2271:16:2271:19 | self | T | main.rs:2266:10:2266:17 | T | -| main.rs:2271:31:2271:35 | other | | main.rs:2266:10:2266:17 | T | -| main.rs:2282:19:2282:22 | SelfParam | | main.rs:2255:5:2255:19 | S | -| main.rs:2282:19:2282:22 | SelfParam | T | main.rs:2275:14:2275:14 | T | -| main.rs:2282:25:2282:29 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2282:25:2282:29 | other | TRef | main.rs:2275:14:2275:14 | T | -| main.rs:2282:55:2284:9 | { ... } | | main.rs:2255:5:2255:19 | S | -| main.rs:2283:16:2283:19 | self | | main.rs:2255:5:2255:19 | S | -| main.rs:2283:16:2283:19 | self | T | main.rs:2275:14:2275:14 | T | -| main.rs:2283:31:2283:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2283:31:2283:35 | other | TRef | main.rs:2275:14:2275:14 | T | -| main.rs:2289:20:2289:24 | value | | main.rs:2287:18:2287:18 | T | -| main.rs:2294:20:2294:24 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2294:40:2296:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2295:13:2295:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2301:20:2301:24 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2301:41:2307:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2302:16:2302:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2312:21:2312:25 | value | | main.rs:2310:19:2310:19 | T | -| main.rs:2312:31:2312:31 | x | | main.rs:2310:5:2313:5 | Self [trait MyFrom2] | -| main.rs:2317:21:2317:25 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2317:33:2317:33 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2317:48:2319:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2318:13:2318:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2324:21:2324:25 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2324:34:2324:34 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2324:49:2330:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2325:16:2325:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2335:15:2335:15 | x | | main.rs:2333:5:2339:5 | Self [trait MySelfTrait] | -| main.rs:2338:15:2338:15 | x | | main.rs:2333:5:2339:5 | Self [trait MySelfTrait] | -| main.rs:2343:15:2343:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2343:31:2345:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2344:13:2344:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2348:15:2348:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2348:32:2350:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2349:13:2349:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2355:15:2355:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2355:31:2357:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2360:15:2360:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2360:32:2362:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:2361:13:2361:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2365:16:2390:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2366:13:2366:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2367:9:2367:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2367:18:2367:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2368:9:2368:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2368:18:2368:22 | &5i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2368:19:2368:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2369:9:2369:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2369:18:2369:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2371:11:2371:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2371:26:2371:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2372:11:2372:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2372:24:2372:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:11:2373:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:24:2373:28 | &3i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2373:25:2373:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:13:2375:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:17:2375:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:30:2375:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2376:13:2376:13 | y | | {EXTERNAL LOCATION} | i64 | -| main.rs:2376:17:2376:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2376:30:2376:33 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2377:13:2377:13 | z | | {EXTERNAL LOCATION} | i64 | -| main.rs:2377:38:2377:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2378:9:2378:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2378:23:2378:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2378:30:2378:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2379:9:2379:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2379:23:2379:26 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2379:29:2379:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2380:9:2380:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2380:27:2380:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2380:34:2380:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2382:9:2382:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2382:17:2382:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2383:9:2383:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2383:17:2383:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2384:9:2384:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2384:18:2384:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2385:9:2385:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2385:18:2385:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2386:9:2386:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2386:25:2386:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2387:25:2387:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2388:9:2388:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2388:25:2388:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2389:25:2389:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2397:26:2399:9 | { ... } | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2398:13:2398:25 | MyCallable {...} | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2401:17:2401:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2401:17:2401:21 | SelfParam | TRef | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2401:31:2403:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2406:16:2513:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2409:9:2409:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2409:18:2409:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2409:28:2409:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2410:9:2410:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2410:18:2410:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2410:43:2410:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2411:9:2411:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2411:18:2411:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2411:40:2411:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2413:13:2413:17 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2413:21:2413:31 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2413:22:2413:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2414:9:2414:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2414:18:2414:22 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2414:24:2414:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2416:13:2416:17 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2416:21:2416:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2416:22:2416:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2417:9:2417:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2417:18:2417:22 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2417:24:2417:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2419:13:2419:17 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2419:13:2419:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2419:31:2419:39 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2420:9:2420:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2420:18:2420:22 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2420:18:2420:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2420:24:2420:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2422:13:2422:17 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2422:13:2422:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2422:31:2422:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2423:9:2423:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2423:18:2423:22 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2423:18:2423:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2423:24:2423:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2425:17:2425:24 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2425:28:2425:48 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2425:29:2425:33 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2425:29:2425:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2425:36:2425:40 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2425:36:2425:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2425:43:2425:47 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2425:43:2425:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2426:9:2426:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2426:18:2426:26 | &strings1 | | {EXTERNAL LOCATION} | & | -| main.rs:2426:19:2426:26 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2426:28:2426:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2427:9:2427:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2427:18:2427:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | -| main.rs:2427:23:2427:30 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2427:32:2427:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2428:9:2428:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2428:18:2428:25 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2428:27:2428:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2430:13:2430:20 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2431:9:2435:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2432:13:2432:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2432:26:2432:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2432:26:2432:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2433:13:2433:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2433:26:2433:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2433:26:2433:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2434:13:2434:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2434:26:2434:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2434:26:2434:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2436:9:2436:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2436:18:2436:25 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2436:27:2436:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2438:13:2438:20 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2439:9:2443:9 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2439:10:2443:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2440:13:2440:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2440:26:2440:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2440:26:2440:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2441:13:2441:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2441:26:2441:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2441:26:2441:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2442:13:2442:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2442:26:2442:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2442:26:2442:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2444:9:2444:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2444:18:2444:25 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2444:27:2444:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2446:13:2446:21 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2446:25:2446:81 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2446:26:2446:42 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2446:45:2446:61 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2446:64:2446:80 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2447:9:2451:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2448:12:2448:20 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2449:9:2451:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2455:9:2455:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2455:18:2455:22 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2455:24:2455:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2456:9:2456:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2456:18:2456:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2456:19:2456:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2456:19:2456:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2456:28:2456:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2457:13:2457:17 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2457:21:2457:25 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2458:9:2458:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2458:18:2458:22 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2458:24:2458:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2459:13:2459:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2459:26:2459:27 | .. | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2460:9:2460:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2460:18:2460:48 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2460:19:2460:36 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2460:20:2460:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2460:26:2460:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2460:32:2460:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2460:38:2460:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2460:50:2460:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2462:13:2462:18 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2463:9:2466:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | -| main.rs:2464:20:2464:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2465:18:2465:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2467:9:2467:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2467:18:2467:23 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2467:25:2467:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2472:9:2472:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2472:24:2472:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2474:13:2474:18 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2474:13:2474:18 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2474:13:2474:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2474:32:2474:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2474:33:2474:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2475:9:2475:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2475:18:2475:23 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2475:18:2475:23 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2475:18:2475:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2475:25:2475:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2477:22:2477:33 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2477:23:2477:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2478:9:2478:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2478:25:2478:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2480:13:2480:17 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2480:21:2480:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2480:31:2480:42 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2480:32:2480:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2481:9:2481:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2481:18:2481:22 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2481:24:2481:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2483:13:2483:17 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2483:13:2483:17 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2483:13:2483:17 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2483:13:2483:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2483:32:2483:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2483:33:2483:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | -| main.rs:2484:9:2484:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2484:18:2484:22 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2484:18:2484:22 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2484:18:2484:22 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2484:18:2484:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2484:24:2484:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2486:17:2486:21 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2486:17:2486:21 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2486:25:2486:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2486:25:2486:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2487:9:2487:13 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2487:9:2487:13 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2487:20:2487:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2488:9:2488:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2488:18:2488:22 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2488:18:2488:22 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2488:24:2488:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2492:17:2495:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2493:13:2494:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2493:29:2494:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2497:17:2497:20 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2497:17:2497:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2497:24:2497:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2497:24:2497:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2498:9:2498:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2498:9:2498:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2498:24:2498:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2498:24:2498:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2498:33:2498:37 | "one" | | {EXTERNAL LOCATION} | & | -| main.rs:2498:33:2498:37 | "one" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2499:9:2499:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2499:9:2499:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2499:24:2499:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2499:24:2499:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2499:33:2499:37 | "two" | | {EXTERNAL LOCATION} | & | -| main.rs:2499:33:2499:37 | "two" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2500:9:2500:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2500:20:2500:23 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2500:20:2500:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2500:32:2500:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2501:9:2501:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2501:22:2501:25 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2501:22:2501:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2501:36:2501:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2502:9:2502:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2502:13:2502:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2502:29:2502:32 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2502:29:2502:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2502:41:2502:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2503:9:2503:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2503:13:2503:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2503:29:2503:33 | &map1 | | {EXTERNAL LOCATION} | & | -| main.rs:2503:30:2503:33 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2503:30:2503:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2503:35:2503:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2507:17:2507:17 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2509:17:2512:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2509:23:2509:23 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2510:9:2512:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2511:13:2511:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2523:40:2525:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2523:40:2525:9 | { ... } | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2523:40:2525:9 | { ... } | T.T | main.rs:2522:10:2522:19 | T | -| main.rs:2527:30:2529:9 | { ... } | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2527:30:2529:9 | { ... } | T | main.rs:2522:10:2522:19 | T | -| main.rs:2531:19:2531:22 | SelfParam | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2531:19:2531:22 | SelfParam | T | main.rs:2522:10:2522:19 | T | -| main.rs:2531:33:2533:9 | { ... } | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2531:33:2533:9 | { ... } | T | main.rs:2522:10:2522:19 | T | -| main.rs:2532:13:2532:16 | self | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2532:13:2532:16 | self | T | main.rs:2522:10:2522:19 | T | -| main.rs:2544:15:2544:15 | x | | main.rs:2544:12:2544:12 | T | -| main.rs:2544:26:2546:5 | { ... } | | main.rs:2544:12:2544:12 | T | -| main.rs:2545:9:2545:9 | x | | main.rs:2544:12:2544:12 | T | -| main.rs:2548:16:2570:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2549:13:2549:14 | x1 | | {EXTERNAL LOCATION} | Option | -| main.rs:2549:13:2549:14 | x1 | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2549:13:2549:14 | x1 | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2549:34:2549:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2549:34:2549:48 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2550:13:2550:14 | x2 | | {EXTERNAL LOCATION} | Option | -| main.rs:2550:13:2550:14 | x2 | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2550:13:2550:14 | x2 | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2551:13:2551:14 | x3 | | {EXTERNAL LOCATION} | Option | -| main.rs:2551:13:2551:14 | x3 | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2551:13:2551:14 | x3 | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2552:13:2552:14 | x4 | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2552:13:2552:14 | x4 | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2552:18:2552:48 | ...::method(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2552:18:2552:48 | ...::method(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2552:35:2552:47 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2553:13:2553:14 | x5 | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2553:13:2553:14 | x5 | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2553:18:2553:42 | ...::method(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2553:18:2553:42 | ...::method(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2553:29:2553:41 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2557:21:2557:33 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2558:13:2558:15 | x10 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2558:13:2558:15 | x10 | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2558:19:2561:9 | S5::<...> {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2558:19:2561:9 | S5::<...> {...} | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2562:13:2562:15 | x11 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2562:19:2562:34 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2563:13:2563:15 | x12 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2563:19:2563:33 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2564:13:2564:15 | x13 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2564:19:2567:9 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2566:20:2566:32 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2568:13:2568:15 | x14 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2568:19:2568:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2569:13:2569:15 | x15 | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2569:13:2569:15 | x15 | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2569:19:2569:37 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2569:19:2569:37 | ...::default(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2578:35:2580:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2578:35:2580:9 | { ... } | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2578:35:2580:9 | { ... } | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2579:13:2579:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2579:14:2579:18 | S1 {...} | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2579:21:2579:25 | S1 {...} | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2581:16:2581:19 | SelfParam | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2581:22:2581:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2584:16:2618:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2585:13:2585:13 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2585:13:2585:13 | a | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2585:13:2585:13 | a | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2585:17:2585:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2585:17:2585:30 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2585:17:2585:30 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:17:2586:17 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2586:17:2586:17 | b | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:17:2586:17 | b | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:21:2586:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2586:21:2586:34 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:21:2586:34 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:13:2587:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2587:22:2587:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2587:22:2587:35 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:22:2587:35 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:13:2588:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2588:26:2588:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2588:26:2588:39 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:26:2588:39 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:13:2589:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2589:30:2589:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2589:30:2589:43 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:30:2589:43 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2591:9:2591:9 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2591:9:2591:9 | a | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2591:9:2591:9 | a | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2592:9:2592:9 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2592:9:2592:9 | b | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2592:9:2592:9 | b | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2605:13:2605:16 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2605:20:2605:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2606:13:2606:13 | i | | {EXTERNAL LOCATION} | i64 | -| main.rs:2606:22:2606:25 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2607:13:2607:13 | j | | {EXTERNAL LOCATION} | bool | -| main.rs:2607:23:2607:26 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2609:20:2609:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2611:13:2611:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2611:30:2611:41 | "unexpected" | | {EXTERNAL LOCATION} | & | -| main.rs:2611:30:2611:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2611:30:2611:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2611:30:2611:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2612:25:2612:34 | "expected" | | {EXTERNAL LOCATION} | & | -| main.rs:2612:25:2612:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2612:25:2612:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2612:25:2612:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2616:13:2616:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2616:17:2616:31 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2616:18:2616:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2616:18:2616:31 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2616:18:2616:31 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2617:9:2617:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2623:27:2645:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2624:13:2624:23 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2624:13:2624:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2624:27:2624:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2624:27:2624:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2624:36:2624:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2627:15:2627:25 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2627:15:2627:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2628:24:2630:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2629:26:2629:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2629:26:2629:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2629:26:2629:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2629:26:2629:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2631:22:2634:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2633:26:2633:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2633:26:2633:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2633:26:2633:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2633:26:2633:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2638:13:2638:22 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2638:13:2638:22 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:26:2638:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2638:26:2638:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:35:2638:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2638:35:2638:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:44:2638:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2639:15:2639:24 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2639:15:2639:24 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2640:26:2643:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2642:26:2642:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2642:26:2642:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2642:26:2642:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2642:26:2642:59 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2654:36:2656:9 | { ... } | | main.rs:2651:5:2651:22 | Path | -| main.rs:2655:13:2655:19 | Path {...} | | main.rs:2651:5:2651:22 | Path | -| main.rs:2658:29:2658:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2658:29:2658:33 | SelfParam | TRef | main.rs:2651:5:2651:22 | Path | -| main.rs:2658:59:2660:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:2658:59:2660:9 | { ... } | E | {EXTERNAL LOCATION} | () | -| main.rs:2658:59:2660:9 | { ... } | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2659:16:2659:29 | ...::new(...) | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2666:39:2668:9 | { ... } | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2667:13:2667:22 | PathBuf {...} | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2676:18:2676:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2676:18:2676:22 | SelfParam | TRef | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2676:34:2680:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2676:34:2680:9 | { ... } | TRef | main.rs:2651:5:2651:22 | Path | -| main.rs:2678:33:2678:43 | ...::new(...) | | main.rs:2651:5:2651:22 | Path | -| main.rs:2679:13:2679:17 | &path | | {EXTERNAL LOCATION} | & | -| main.rs:2683:16:2691:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2684:13:2684:17 | path1 | | main.rs:2651:5:2651:22 | Path | -| main.rs:2684:21:2684:31 | ...::new(...) | | main.rs:2651:5:2651:22 | Path | -| main.rs:2685:21:2685:25 | path1 | | main.rs:2651:5:2651:22 | Path | -| main.rs:2688:13:2688:20 | pathbuf1 | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2688:24:2688:37 | ...::new(...) | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2689:24:2689:31 | pathbuf1 | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2696:14:2696:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2696:14:2696:18 | SelfParam | TRef | main.rs:2695:5:2697:5 | Self [trait MyTrait] | -| main.rs:2703:14:2703:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2703:14:2703:18 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2703:14:2703:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2703:28:2705:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2704:13:2704:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2704:13:2704:16 | self | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2704:13:2704:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2709:14:2709:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2709:14:2709:18 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2709:14:2709:18 | SelfParam | TRef.T | main.rs:2699:5:2700:19 | S | -| main.rs:2709:14:2709:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2709:28:2711:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2710:13:2710:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2710:13:2710:16 | self | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2710:13:2710:16 | self | TRef.T | main.rs:2699:5:2700:19 | S | -| main.rs:2710:13:2710:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2715:15:2715:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2715:15:2715:19 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2715:15:2715:19 | SelfParam | TRef.T | main.rs:2714:10:2714:16 | T | -| main.rs:2715:33:2717:9 | { ... } | | main.rs:2699:5:2700:19 | S | -| main.rs:2715:33:2717:9 | { ... } | T | main.rs:2699:5:2700:19 | S | -| main.rs:2715:33:2717:9 | { ... } | T.T | main.rs:2714:10:2714:16 | T | -| main.rs:2716:17:2716:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2716:17:2716:20 | self | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2716:17:2716:20 | self | TRef.T | main.rs:2714:10:2714:16 | T | -| main.rs:2720:14:2720:14 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2720:48:2737:5 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2720:48:2737:5 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2720:48:2737:5 | { ... } | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2720:48:2737:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2721:20:2721:20 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2731:12:2731:12 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2733:13:2733:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2733:13:2733:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2735:13:2735:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2735:13:2735:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2741:22:2745:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2742:18:2742:18 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2742:33:2744:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2743:13:2743:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2750:11:2750:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2750:30:2758:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2753:13:2755:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2753:16:2753:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2753:21:2755:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2761:20:2768:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2766:18:2766:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2766:18:2766:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2766:18:2766:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2766:18:2766:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2770:20:2772:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2775:11:2775:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2775:30:2783:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2776:13:2776:13 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2776:17:2780:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2777:13:2779:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2777:16:2777:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2777:21:2779:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2781:18:2781:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2781:18:2781:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2781:18:2781:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2781:18:2781:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2781:29:2781:29 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2787:16:2834:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2789:13:2789:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2789:13:2789:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2793:26:2793:28 | opt | | {EXTERNAL LOCATION} | Option | -| main.rs:2793:26:2793:28 | opt | T | main.rs:2793:23:2793:23 | T | -| main.rs:2793:42:2793:42 | x | | main.rs:2793:23:2793:23 | T | -| main.rs:2793:48:2793:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2796:9:2796:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2803:13:2803:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2803:17:2803:39 | ...::A {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2804:13:2804:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2804:13:2804:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2804:13:2804:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2804:40:2804:40 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2805:13:2805:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2805:13:2805:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2805:17:2805:52 | ...::A {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2805:17:2805:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2807:13:2807:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2807:13:2807:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2807:17:2809:9 | ...::B::<...> {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2807:17:2809:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2808:20:2808:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2811:29:2811:29 | e | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2811:29:2811:29 | e | T1 | main.rs:2811:26:2811:26 | T | -| main.rs:2811:29:2811:29 | e | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2811:53:2811:53 | x | | main.rs:2811:26:2811:26 | T | -| main.rs:2811:59:2811:60 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2814:13:2814:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2814:17:2816:9 | ...::B {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2815:20:2815:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2817:9:2817:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2817:23:2817:23 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2820:13:2820:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2820:13:2820:13 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2820:13:2820:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2824:29:2824:31 | res | | {EXTERNAL LOCATION} | Result | -| main.rs:2824:29:2824:31 | res | E | main.rs:2824:26:2824:26 | E | -| main.rs:2824:29:2824:31 | res | T | main.rs:2824:23:2824:23 | T | -| main.rs:2824:48:2824:48 | x | | main.rs:2824:26:2824:26 | E | -| main.rs:2824:54:2824:55 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2827:9:2827:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2827:23:2827:27 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:2829:17:2829:17 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2829:17:2829:17 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2829:21:2829:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2829:21:2829:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2830:9:2830:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2830:9:2830:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2833:9:2833:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2833:9:2833:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2840:14:2840:17 | SelfParam | | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2843:14:2843:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2843:14:2843:18 | SelfParam | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2843:21:2843:25 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2843:21:2843:25 | other | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2843:44:2845:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2843:44:2845:9 | { ... } | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2844:13:2844:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2844:13:2844:16 | self | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2850:14:2850:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | -| main.rs:2850:28:2852:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2851:13:2851:16 | self | | {EXTERNAL LOCATION} | i32 | -| main.rs:2857:14:2857:17 | SelfParam | | {EXTERNAL LOCATION} | usize | -| main.rs:2857:28:2859:9 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2858:13:2858:16 | self | | {EXTERNAL LOCATION} | usize | -| main.rs:2864:14:2864:17 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2864:14:2864:17 | SelfParam | TRef | main.rs:2862:10:2862:10 | T | -| main.rs:2864:28:2866:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2864:28:2866:9 | { ... } | TRef | main.rs:2862:10:2862:10 | T | -| main.rs:2865:13:2865:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2865:13:2865:16 | self | TRef | main.rs:2862:10:2862:10 | T | -| main.rs:2869:25:2873:5 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2875:12:2883:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2876:13:2876:13 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2877:13:2877:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2877:17:2877:18 | &1 | | {EXTERNAL LOCATION} | & | -| main.rs:2878:17:2878:17 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2878:21:2878:21 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2881:13:2881:13 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2882:23:2882:23 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2892:11:2927:1 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2893:5:2893:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2894:5:2894:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2895:5:2895:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2895:20:2895:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2895:41:2895:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2896:5:2896:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2897:5:2897:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2898:5:2898:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2899:5:2899:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2900:5:2900:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2901:5:2901:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2902:5:2902:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2903:5:2903:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2904:5:2904:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2905:5:2905:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2906:5:2906:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2907:5:2907:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2908:5:2908:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2909:5:2909:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2910:5:2910:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2911:5:2911:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2911:5:2911:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2912:5:2912:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2913:5:2913:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2914:5:2914:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2915:5:2915:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2916:5:2916:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2917:5:2917:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2918:5:2918:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2919:5:2919:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2920:5:2920:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2921:5:2921:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2922:5:2922:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2923:5:2923:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2924:5:2924:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2925:5:2925:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2925:5:2925:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2925:5:2925:20 | ...::f(...) | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2925:5:2925:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2925:16:2925:19 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2926:5:2926:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1023:18:1023:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1023:18:1023:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1023:26:1023:27 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1023:26:1023:27 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1023:26:1023:27 | p3 | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1025:9:1025:55 | g(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1027:13:1027:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1027:13:1027:13 | x | E | main.rs:974:5:975:14 | S1 | +| main.rs:1027:13:1027:13 | x | T | main.rs:1000:5:1000:34 | S4 | +| main.rs:1027:13:1027:13 | x | T.T41 | main.rs:977:5:978:14 | S2 | +| main.rs:1027:13:1027:13 | x | T.T42 | main.rs:1002:5:1002:22 | S5 | +| main.rs:1027:13:1027:13 | x | T.T42.T5 | main.rs:977:5:978:14 | S2 | +| main.rs:1040:16:1040:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1040:16:1040:24 | SelfParam | TRefMut | main.rs:1038:5:1045:5 | Self [trait MyTrait] | +| main.rs:1040:27:1040:31 | value | | main.rs:1038:19:1038:19 | S | +| main.rs:1042:21:1042:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1042:21:1042:29 | SelfParam | TRefMut | main.rs:1038:5:1045:5 | Self [trait MyTrait] | +| main.rs:1042:32:1042:36 | value | | main.rs:1038:19:1038:19 | S | +| main.rs:1042:42:1044:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1043:13:1043:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1043:13:1043:16 | self | TRefMut | main.rs:1038:5:1045:5 | Self [trait MyTrait] | +| main.rs:1043:22:1043:26 | value | | main.rs:1038:19:1038:19 | S | +| main.rs:1049:16:1049:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1049:16:1049:24 | SelfParam | TRefMut | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1049:16:1049:24 | SelfParam | TRefMut.T | main.rs:1047:10:1047:10 | T | +| main.rs:1049:27:1049:31 | value | | main.rs:1047:10:1047:10 | T | +| main.rs:1049:37:1049:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1053:26:1055:9 | { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1053:26:1055:9 | { ... } | T | main.rs:1052:10:1052:10 | T | +| main.rs:1059:20:1059:23 | SelfParam | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1059:20:1059:23 | SelfParam | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1059:20:1059:23 | SelfParam | T.T | main.rs:1058:10:1058:10 | T | +| main.rs:1059:41:1064:9 | { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1059:41:1064:9 | { ... } | T | main.rs:1058:10:1058:10 | T | +| main.rs:1060:19:1060:22 | self | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1060:19:1060:22 | self | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1060:19:1060:22 | self | T.T | main.rs:1058:10:1058:10 | T | +| main.rs:1070:16:1115:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1071:13:1071:14 | x1 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1071:13:1071:14 | x1 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1071:18:1071:37 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1071:18:1071:37 | ...::new(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1072:18:1072:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1072:18:1072:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1072:18:1072:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1072:18:1072:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1072:26:1072:27 | x1 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1072:26:1072:27 | x1 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1074:17:1074:18 | x2 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1074:22:1074:36 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1075:9:1075:10 | x2 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1076:18:1076:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1076:18:1076:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1076:18:1076:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1076:18:1076:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1076:26:1076:27 | x2 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1078:17:1078:18 | x3 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1078:22:1078:36 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1079:9:1079:10 | x3 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1080:18:1080:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1080:18:1080:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1080:18:1080:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1080:18:1080:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1080:26:1080:27 | x3 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1082:17:1082:18 | x4 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1082:22:1082:36 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1083:9:1083:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1083:23:1083:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | +| main.rs:1083:28:1083:29 | x4 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1084:18:1084:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1084:18:1084:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1084:18:1084:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1084:18:1084:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1084:26:1084:27 | x4 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1087:18:1087:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1087:18:1087:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1087:18:1087:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1087:18:1087:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1090:18:1090:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1090:18:1090:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1090:18:1090:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1090:18:1090:61 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1090:26:1090:61 | ...::flatten(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1090:26:1090:61 | ...::flatten(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1098:18:1098:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1098:18:1098:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1098:18:1098:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1098:18:1098:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1102:13:1102:16 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1103:13:1103:17 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1105:18:1105:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1105:18:1105:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1105:18:1105:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1105:18:1105:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1108:30:1113:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1109:13:1111:13 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1109:22:1111:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1114:18:1114:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1114:18:1114:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1114:18:1114:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1114:18:1114:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1132:15:1132:18 | SelfParam | | main.rs:1120:5:1121:19 | S | +| main.rs:1132:15:1132:18 | SelfParam | T | main.rs:1131:10:1131:10 | T | +| main.rs:1132:26:1134:9 | { ... } | | main.rs:1131:10:1131:10 | T | +| main.rs:1133:13:1133:16 | self | | main.rs:1120:5:1121:19 | S | +| main.rs:1133:13:1133:16 | self | T | main.rs:1131:10:1131:10 | T | +| main.rs:1136:15:1136:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1136:15:1136:19 | SelfParam | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1136:15:1136:19 | SelfParam | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1136:28:1138:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1136:28:1138:9 | { ... } | TRef | main.rs:1131:10:1131:10 | T | +| main.rs:1137:13:1137:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1137:14:1137:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1137:14:1137:17 | self | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1137:14:1137:17 | self | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1140:15:1140:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1140:15:1140:25 | SelfParam | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1140:15:1140:25 | SelfParam | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1140:34:1142:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1140:34:1142:9 | { ... } | TRef | main.rs:1131:10:1131:10 | T | +| main.rs:1141:13:1141:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1141:14:1141:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1141:14:1141:17 | self | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1141:14:1141:17 | self | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1146:29:1146:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1146:29:1146:33 | SelfParam | TRef | main.rs:1145:5:1148:5 | Self [trait ATrait] | +| main.rs:1147:33:1147:36 | SelfParam | | main.rs:1145:5:1148:5 | Self [trait ATrait] | +| main.rs:1153:29:1153:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1153:29:1153:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1153:29:1153:33 | SelfParam | TRef.TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1153:43:1155:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1154:17:1154:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1154:17:1154:20 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1154:17:1154:20 | self | TRef.TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1158:33:1158:36 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1158:33:1158:36 | SelfParam | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1158:46:1160:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1159:15:1159:18 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1159:15:1159:18 | self | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1163:16:1213:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1165:18:1165:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1165:18:1165:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1165:18:1165:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1165:18:1165:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1169:18:1169:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1169:18:1169:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1169:18:1169:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1169:18:1169:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1170:18:1170:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1170:18:1170:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1170:18:1170:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1170:18:1170:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1174:18:1174:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1174:18:1174:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1174:18:1174:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1174:18:1174:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1174:26:1174:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1174:26:1174:41 | ...::m2(...) | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1174:38:1174:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1175:18:1175:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1175:18:1175:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1175:18:1175:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1175:18:1175:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1175:26:1175:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1175:26:1175:41 | ...::m3(...) | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1175:38:1175:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1177:13:1177:14 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1177:18:1177:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1179:18:1179:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1179:18:1179:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1179:18:1179:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1179:18:1179:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1179:26:1179:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1180:18:1180:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1180:18:1180:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1180:18:1180:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1180:18:1180:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1180:26:1180:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1182:13:1182:14 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1182:18:1182:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1184:18:1184:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1184:18:1184:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1184:18:1184:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1184:18:1184:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1184:26:1184:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1185:18:1185:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1185:18:1185:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1185:18:1185:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1185:18:1185:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1185:26:1185:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1187:13:1187:14 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1187:18:1187:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1190:18:1190:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1190:18:1190:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1190:18:1190:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1190:18:1190:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1190:28:1190:29 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1192:20:1192:22 | &S2 | | {EXTERNAL LOCATION} | & | +| main.rs:1196:18:1196:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1196:18:1196:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1196:18:1196:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1196:18:1196:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1198:13:1198:14 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1198:26:1198:32 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1198:26:1198:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1202:17:1202:18 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1204:13:1204:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1204:24:1204:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1204:25:1204:39 | MyInt {...} | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1206:17:1206:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1207:18:1207:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1207:18:1207:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1207:18:1207:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1207:18:1207:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1210:13:1210:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1210:24:1210:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1210:25:1210:39 | MyInt {...} | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1211:17:1211:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1212:18:1212:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1212:18:1212:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1212:18:1212:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1212:18:1212:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1219:16:1219:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1219:16:1219:20 | SelfParam | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1222:16:1222:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1222:16:1222:20 | SelfParam | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1222:32:1224:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1222:32:1224:9 | { ... } | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1223:13:1223:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1223:13:1223:16 | self | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1231:16:1231:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1231:16:1231:20 | SelfParam | TRef | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1231:36:1233:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1231:36:1233:9 | { ... } | TRef | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1232:13:1232:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1232:13:1232:16 | self | TRef | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1236:16:1239:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1248:16:1248:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1248:16:1248:20 | SelfParam | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1248:16:1248:20 | SelfParam | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1248:32:1250:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1248:32:1250:9 | { ... } | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1248:32:1250:9 | { ... } | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1249:13:1249:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1249:13:1249:16 | self | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1249:13:1249:16 | self | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1252:16:1252:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1252:16:1252:20 | SelfParam | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1252:16:1252:20 | SelfParam | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1252:23:1252:23 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1252:23:1252:23 | x | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1252:23:1252:23 | x | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1252:42:1254:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1252:42:1254:9 | { ... } | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1252:42:1254:9 | { ... } | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1253:13:1253:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1253:13:1253:16 | self | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1253:13:1253:16 | self | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1257:16:1263:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1262:15:1262:17 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1262:16:1262:17 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1273:17:1273:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1273:17:1273:25 | SelfParam | TRefMut | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1273:28:1275:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1274:13:1274:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1274:13:1274:16 | self | TRefMut | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1274:26:1274:29 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1274:26:1274:29 | self | TRefMut | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1281:15:1281:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1281:15:1281:19 | SelfParam | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1281:31:1283:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1281:31:1283:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1282:13:1282:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1282:14:1282:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1282:15:1282:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1282:16:1282:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1282:16:1282:19 | self | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1285:15:1285:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1285:15:1285:25 | SelfParam | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1285:37:1287:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1285:37:1287:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1286:13:1286:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1286:14:1286:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1286:15:1286:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1286:16:1286:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1286:16:1286:19 | self | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1289:15:1289:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1289:15:1289:15 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1289:34:1291:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1289:34:1291:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1290:13:1290:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1290:13:1290:13 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1293:15:1293:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1293:15:1293:15 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1293:34:1295:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1293:34:1295:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1294:13:1294:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1294:14:1294:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1294:15:1294:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1294:16:1294:16 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1294:16:1294:16 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1298:16:1311:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1299:13:1299:13 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1299:17:1299:20 | S {...} | | main.rs:1278:5:1278:13 | S | +| main.rs:1300:9:1300:9 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1301:9:1301:9 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1302:9:1302:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1302:9:1302:17 | ...::f3(...) | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1302:15:1302:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1302:16:1302:16 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1304:19:1304:24 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1304:20:1304:24 | &true | | {EXTERNAL LOCATION} | & | +| main.rs:1304:21:1304:24 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1309:9:1309:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1309:22:1309:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | +| main.rs:1310:18:1310:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1310:18:1310:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1310:18:1310:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1310:18:1310:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1325:43:1328:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1325:43:1328:5 | { ... } | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1325:43:1328:5 | { ... } | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1332:46:1336:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1332:46:1336:5 | { ... } | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1332:46:1336:5 | { ... } | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1340:40:1345:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1340:40:1345:5 | { ... } | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1340:40:1345:5 | { ... } | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1349:30:1349:34 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1349:30:1349:34 | input | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1349:30:1349:34 | input | T | main.rs:1349:20:1349:27 | T | +| main.rs:1349:69:1356:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1349:69:1356:5 | { ... } | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1349:69:1356:5 | { ... } | T | main.rs:1349:20:1349:27 | T | +| main.rs:1350:21:1350:25 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1350:21:1350:25 | input | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1350:21:1350:25 | input | T | main.rs:1349:20:1349:27 | T | +| main.rs:1352:22:1352:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1352:22:1352:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1352:22:1352:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1352:22:1352:30 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1359:16:1375:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1360:9:1362:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1360:37:1360:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1360:37:1360:52 | try_same_error(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1360:37:1360:52 | try_same_error(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1360:54:1362:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1361:22:1361:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1361:22:1361:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1361:22:1361:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1361:22:1361:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1364:9:1366:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1364:37:1364:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1364:37:1364:55 | try_convert_error(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1364:37:1364:55 | try_convert_error(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1364:57:1366:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1365:22:1365:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1365:22:1365:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1365:22:1365:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1365:22:1365:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1368:9:1370:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1368:37:1368:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1368:37:1368:49 | try_chained(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1368:37:1368:49 | try_chained(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1368:51:1370:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1369:22:1369:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1369:22:1369:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1369:22:1369:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1369:22:1369:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1372:9:1374:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1372:37:1372:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1372:37:1372:63 | try_complex(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:65:1374:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1373:22:1373:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1373:22:1373:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1373:22:1373:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1373:22:1373:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1379:16:1470:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1380:13:1380:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1382:17:1382:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1383:17:1383:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1384:13:1384:13 | c | | {EXTERNAL LOCATION} | char | +| main.rs:1384:17:1384:19 | 'c' | | {EXTERNAL LOCATION} | char | +| main.rs:1385:13:1385:17 | hello | | {EXTERNAL LOCATION} | & | +| main.rs:1385:13:1385:17 | hello | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1385:21:1385:27 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1385:21:1385:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1386:13:1386:13 | f | | {EXTERNAL LOCATION} | f64 | +| main.rs:1386:17:1386:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | +| main.rs:1387:13:1387:13 | t | | {EXTERNAL LOCATION} | bool | +| main.rs:1387:17:1387:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1388:13:1388:13 | f | | {EXTERNAL LOCATION} | bool | +| main.rs:1388:17:1388:21 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1391:26:1391:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1391:26:1391:30 | SelfParam | TRef | main.rs:1390:9:1394:9 | Self [trait MyTrait] | +| main.rs:1397:26:1397:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1397:26:1397:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1397:26:1397:30 | SelfParam | TRef.TArray | main.rs:1396:14:1396:23 | T | +| main.rs:1397:39:1399:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1397:39:1399:13 | { ... } | TRef | main.rs:1396:14:1396:23 | T | +| main.rs:1398:17:1398:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1398:17:1398:20 | self | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1398:17:1398:20 | self | TRef.TArray | main.rs:1396:14:1396:23 | T | +| main.rs:1401:31:1403:13 | { ... } | | main.rs:1396:14:1396:23 | T | +| main.rs:1406:17:1406:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1407:13:1407:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1407:17:1407:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1407:37:1407:46 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1407:38:1407:46 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1408:13:1408:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1408:17:1408:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1411:26:1411:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1411:26:1411:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1411:26:1411:30 | SelfParam | TRef.TSlice | main.rs:1410:14:1410:23 | T | +| main.rs:1411:39:1413:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1411:39:1413:13 | { ... } | TRef | main.rs:1410:14:1410:23 | T | +| main.rs:1412:17:1412:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1412:17:1412:20 | self | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1412:17:1412:20 | self | TRef.TSlice | main.rs:1410:14:1410:23 | T | +| main.rs:1415:31:1417:13 | { ... } | | main.rs:1410:14:1410:23 | T | +| main.rs:1420:13:1420:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1420:13:1420:13 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1420:13:1420:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1420:25:1420:34 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1420:26:1420:34 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1421:17:1421:17 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1421:17:1421:17 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1421:17:1421:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1422:13:1422:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1422:17:1422:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1422:34:1422:34 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1422:34:1422:34 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1422:34:1422:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1423:13:1423:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1423:17:1423:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1426:26:1426:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1426:26:1426:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1426:26:1426:30 | SelfParam | TRef.T0 | main.rs:1425:14:1425:23 | T | +| main.rs:1426:26:1426:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1426:39:1428:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1426:39:1428:13 | { ... } | TRef | main.rs:1425:14:1425:23 | T | +| main.rs:1427:17:1427:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1427:18:1427:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1427:18:1427:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1427:18:1427:21 | self | TRef.T0 | main.rs:1425:14:1425:23 | T | +| main.rs:1427:18:1427:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1430:31:1432:13 | { ... } | | main.rs:1425:14:1425:23 | T | +| main.rs:1435:13:1435:13 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1435:17:1435:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1436:17:1436:17 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1437:13:1437:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1437:17:1437:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1437:37:1437:38 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1437:38:1437:38 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1438:13:1438:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1438:17:1438:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1441:26:1441:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1441:26:1441:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1441:26:1441:30 | SelfParam | TRef.TRef | main.rs:1440:14:1440:23 | T | +| main.rs:1441:39:1443:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1441:39:1443:13 | { ... } | TRef | main.rs:1440:14:1440:23 | T | +| main.rs:1442:18:1442:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1442:18:1442:21 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1442:18:1442:21 | self | TRef.TRef | main.rs:1440:14:1440:23 | T | +| main.rs:1445:31:1447:13 | { ... } | | main.rs:1440:14:1440:23 | T | +| main.rs:1450:13:1450:13 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1450:17:1450:19 | &42 | | {EXTERNAL LOCATION} | & | +| main.rs:1451:17:1451:17 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1452:13:1452:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1452:17:1452:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1452:33:1452:34 | &r | | {EXTERNAL LOCATION} | & | +| main.rs:1452:34:1452:34 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1453:13:1453:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1453:17:1453:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1456:26:1456:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1456:26:1456:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1456:26:1456:30 | SelfParam | TRef.TPtrMut | main.rs:1455:14:1455:23 | T | +| main.rs:1456:39:1458:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1456:39:1458:13 | { ... } | TRef | main.rs:1455:14:1455:23 | T | +| main.rs:1457:26:1457:32 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1457:29:1457:32 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1457:29:1457:32 | self | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1457:29:1457:32 | self | TRef.TPtrMut | main.rs:1455:14:1455:23 | T | +| main.rs:1460:31:1462:13 | { ... } | | main.rs:1455:14:1455:23 | T | +| main.rs:1466:13:1466:13 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1466:13:1466:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1466:27:1466:32 | &mut v | | {EXTERNAL LOCATION} | &mut | +| main.rs:1467:26:1467:26 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1467:26:1467:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1468:26:1468:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1468:46:1468:47 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1468:47:1468:47 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1468:47:1468:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1469:13:1469:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1469:17:1469:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1475:16:1487:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1476:13:1476:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:1476:17:1476:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1476:17:1476:29 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1476:25:1476:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:13:1477:13 | y | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:17:1477:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:17:1477:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:25:1477:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1481:17:1483:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1483:16:1485:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1500:30:1502:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1501:13:1501:31 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1508:16:1508:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1508:22:1508:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1508:41:1513:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1509:13:1512:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1510:20:1510:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1510:29:1510:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1511:20:1511:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1511:29:1511:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1518:23:1518:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1518:23:1518:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1518:34:1518:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1518:45:1521:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1519:13:1519:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1519:13:1519:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1519:23:1519:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1520:13:1520:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1520:13:1520:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1520:23:1520:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1526:16:1526:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1526:22:1526:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1526:41:1531:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1527:13:1530:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1528:20:1528:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1528:29:1528:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1529:20:1529:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1529:29:1529:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1536:23:1536:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1536:23:1536:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1536:34:1536:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1536:45:1539:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1537:13:1537:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1537:13:1537:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1537:23:1537:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1538:13:1538:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1538:13:1538:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1538:23:1538:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1544:16:1544:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1544:22:1544:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1544:41:1549:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1545:13:1548:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1546:20:1546:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1546:29:1546:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1547:20:1547:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1547:29:1547:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1553:23:1553:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1553:23:1553:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1553:34:1553:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1553:45:1556:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1554:13:1554:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1554:13:1554:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1554:23:1554:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1555:13:1555:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1555:13:1555:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1555:23:1555:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1561:16:1561:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1561:22:1561:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1561:41:1566:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1562:13:1565:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1563:20:1563:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1563:29:1563:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1564:20:1564:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1564:29:1564:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1570:23:1570:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1570:23:1570:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1570:34:1570:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1570:45:1573:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1571:13:1571:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1571:13:1571:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1571:23:1571:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1572:13:1572:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1572:13:1572:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1572:23:1572:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1578:16:1578:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1578:22:1578:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1578:41:1583:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1579:13:1582:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1580:20:1580:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1580:29:1580:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1581:20:1581:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1581:29:1581:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1587:23:1587:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1587:23:1587:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1587:34:1587:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1587:45:1590:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1588:13:1588:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1588:13:1588:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1588:23:1588:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1589:13:1589:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1589:13:1589:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1589:23:1589:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1595:19:1595:22 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1595:25:1595:27 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1595:44:1600:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1596:13:1599:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1597:20:1597:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1597:29:1597:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1598:20:1598:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1598:29:1598:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1604:26:1604:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1604:26:1604:34 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1604:37:1604:39 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1604:48:1607:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1605:13:1605:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1605:13:1605:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1605:23:1605:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1606:13:1606:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1606:13:1606:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1606:23:1606:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1612:18:1612:21 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1612:24:1612:26 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1612:43:1617:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1613:13:1616:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1614:20:1614:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1614:29:1614:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1615:20:1615:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1615:29:1615:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1621:25:1621:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1621:25:1621:33 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1621:36:1621:38 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1621:47:1624:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1622:13:1622:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1622:13:1622:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1622:23:1622:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1623:13:1623:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1623:13:1623:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1623:23:1623:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1629:19:1629:22 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1629:25:1629:27 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1629:44:1634:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1630:13:1633:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1631:20:1631:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1631:29:1631:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1632:20:1632:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1632:29:1632:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1638:26:1638:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1638:26:1638:34 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1638:37:1638:39 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1638:48:1641:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1639:13:1639:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1639:13:1639:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1639:23:1639:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1640:13:1640:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1640:13:1640:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1640:23:1640:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1646:16:1646:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1646:22:1646:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1646:40:1651:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1647:13:1650:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1648:20:1648:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1648:30:1648:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1649:20:1649:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1649:30:1649:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1655:23:1655:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1655:23:1655:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1655:34:1655:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1655:44:1658:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1656:13:1656:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1656:13:1656:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1656:24:1656:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1657:13:1657:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1657:13:1657:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1657:24:1657:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1663:16:1663:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1663:22:1663:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1663:40:1668:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1664:13:1667:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1665:20:1665:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1665:30:1665:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1666:20:1666:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1666:30:1666:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1672:23:1672:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1672:23:1672:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1672:34:1672:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1672:44:1675:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1673:13:1673:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1673:13:1673:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1673:24:1673:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1674:13:1674:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1674:13:1674:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1674:24:1674:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1680:16:1680:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1680:30:1685:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1681:13:1684:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1682:21:1682:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1683:21:1683:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1690:16:1690:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1690:30:1695:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1691:13:1694:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1692:21:1692:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1693:21:1693:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1699:15:1699:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1699:15:1699:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1699:22:1699:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1699:22:1699:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1699:44:1701:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:13:1700:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1700:13:1700:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1700:13:1700:29 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:13:1700:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:23:1700:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1700:23:1700:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1700:34:1700:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1700:34:1700:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1700:34:1700:50 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:44:1700:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1700:44:1700:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1703:15:1703:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1703:15:1703:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1703:22:1703:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1703:22:1703:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1703:44:1705:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:13:1704:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1704:13:1704:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1704:13:1704:29 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:13:1704:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:23:1704:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1704:23:1704:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1704:34:1704:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1704:34:1704:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1704:34:1704:50 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:44:1704:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1704:44:1704:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1709:24:1709:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1709:24:1709:28 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1709:31:1709:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1709:31:1709:35 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1709:75:1711:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:1709:75:1711:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | +| main.rs:1710:14:1710:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1710:14:1710:17 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1710:23:1710:26 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1710:23:1710:26 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1710:43:1710:62 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1710:45:1710:49 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1710:45:1710:49 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1710:55:1710:59 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1710:55:1710:59 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1713:15:1713:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1713:15:1713:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1713:22:1713:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1713:22:1713:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1713:44:1715:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:13:1714:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1714:13:1714:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1714:13:1714:28 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:13:1714:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:22:1714:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1714:22:1714:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1714:33:1714:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1714:33:1714:36 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1714:33:1714:48 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:42:1714:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1714:42:1714:46 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1717:15:1717:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1717:15:1717:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1717:22:1717:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1717:22:1717:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1717:44:1719:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:13:1718:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1718:13:1718:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1718:13:1718:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:13:1718:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:23:1718:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1718:23:1718:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1718:34:1718:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1718:34:1718:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1718:34:1718:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:44:1718:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1718:44:1718:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1721:15:1721:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1721:15:1721:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1721:22:1721:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1721:22:1721:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1721:44:1723:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:13:1722:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1722:13:1722:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1722:13:1722:28 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:13:1722:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:22:1722:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1722:22:1722:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1722:33:1722:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1722:33:1722:36 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1722:33:1722:48 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:42:1722:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1722:42:1722:46 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1725:15:1725:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1725:15:1725:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1725:22:1725:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1725:22:1725:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1725:44:1727:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:13:1726:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1726:13:1726:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1726:13:1726:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:13:1726:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:23:1726:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1726:23:1726:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1726:34:1726:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1726:34:1726:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1726:34:1726:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:44:1726:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1726:44:1726:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1730:26:1730:26 | a | | main.rs:1730:18:1730:23 | T | +| main.rs:1730:32:1730:32 | b | | main.rs:1730:18:1730:23 | T | +| main.rs:1730:51:1732:5 | { ... } | | main.rs:1730:18:1730:23 | T::Output[Add] | +| main.rs:1731:9:1731:9 | a | | main.rs:1730:18:1730:23 | T | +| main.rs:1731:13:1731:13 | b | | main.rs:1730:18:1730:23 | T | +| main.rs:1734:16:1865:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1738:23:1738:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1738:31:1738:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1739:23:1739:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1739:31:1739:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1740:23:1740:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1740:30:1740:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1741:23:1741:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1741:31:1741:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1742:23:1742:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1742:30:1742:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1743:23:1743:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1743:32:1743:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1746:23:1746:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1746:31:1746:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1747:23:1747:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1747:31:1747:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1748:23:1748:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1748:31:1748:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1749:23:1749:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1749:31:1749:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1750:23:1750:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1750:31:1750:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1751:39:1751:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1751:45:1751:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1754:17:1754:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1754:34:1754:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1755:9:1755:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1755:27:1755:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1757:17:1757:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1757:34:1757:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1758:9:1758:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1758:27:1758:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1760:17:1760:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1760:34:1760:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1761:9:1761:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1761:27:1761:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1763:17:1763:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1763:34:1763:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1764:9:1764:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1764:27:1764:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1766:17:1766:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1766:34:1766:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1767:9:1767:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1767:27:1767:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1770:26:1770:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1770:34:1770:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1771:25:1771:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1771:33:1771:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1772:26:1772:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1772:34:1772:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1773:23:1773:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1773:32:1773:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1774:23:1774:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1774:32:1774:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1777:17:1777:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1777:37:1777:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1778:9:1778:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1778:30:1778:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1780:17:1780:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1780:36:1780:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1781:9:1781:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1781:29:1781:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1783:17:1783:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1783:37:1783:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1784:9:1784:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1784:30:1784:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1786:17:1786:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1786:34:1786:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1787:9:1787:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1787:28:1787:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1789:17:1789:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1789:34:1789:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1790:9:1790:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1790:28:1790:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1792:24:1792:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1793:24:1793:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1796:13:1796:14 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1796:18:1796:36 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1797:13:1797:14 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1797:18:1797:36 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1800:23:1800:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1800:29:1800:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1801:23:1801:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1801:29:1801:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1802:23:1802:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1802:28:1802:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1803:23:1803:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1803:29:1803:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1804:23:1804:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1804:28:1804:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1805:23:1805:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1805:29:1805:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1808:24:1808:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1808:29:1808:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1809:24:1809:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1809:29:1809:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1810:24:1810:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1810:29:1810:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1811:24:1811:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1811:29:1811:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1812:24:1812:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1812:29:1812:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1815:17:1815:31 | vec2_add_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1815:35:1815:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1816:9:1816:23 | vec2_add_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1816:28:1816:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1818:17:1818:31 | vec2_sub_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1818:35:1818:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1819:9:1819:23 | vec2_sub_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1819:28:1819:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1821:17:1821:31 | vec2_mul_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1821:35:1821:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1822:9:1822:23 | vec2_mul_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1822:28:1822:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1824:17:1824:31 | vec2_div_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1824:35:1824:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1825:9:1825:23 | vec2_div_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1825:28:1825:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1827:17:1827:31 | vec2_rem_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1827:35:1827:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1828:9:1828:23 | vec2_rem_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1828:28:1828:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1831:27:1831:28 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1831:32:1831:33 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1832:26:1832:27 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1832:31:1832:32 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1833:27:1833:28 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1833:32:1833:33 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1834:24:1834:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1834:30:1834:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1835:24:1835:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1835:30:1835:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1838:17:1838:34 | vec2_bitand_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1838:38:1838:39 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1839:9:1839:26 | vec2_bitand_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1839:31:1839:32 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1841:17:1841:33 | vec2_bitor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1841:37:1841:38 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1842:9:1842:25 | vec2_bitor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1842:30:1842:31 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1844:17:1844:34 | vec2_bitxor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1844:38:1844:39 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1845:9:1845:26 | vec2_bitxor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1845:31:1845:32 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1847:17:1847:31 | vec2_shl_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1847:35:1847:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1848:9:1848:23 | vec2_shl_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1848:29:1848:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1850:17:1850:31 | vec2_shr_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1850:35:1850:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1851:9:1851:23 | vec2_shr_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1851:29:1851:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1854:25:1854:26 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1855:25:1855:26 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1859:30:1859:48 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1864:30:1864:48 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1874:18:1874:21 | SelfParam | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1874:24:1874:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1877:25:1879:5 | { ... } | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1882:9:1882:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1886:9:1886:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1886:9:1886:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:1895:13:1895:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | +| main.rs:1895:13:1895:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | +| main.rs:1895:13:1895:42 | SelfParam | Ptr.TRefMut | main.rs:1889:5:1889:14 | S2 | +| main.rs:1896:13:1896:15 | _cx | | {EXTERNAL LOCATION} | &mut | +| main.rs:1896:13:1896:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | +| main.rs:1897:44:1899:9 | { ... } | | {EXTERNAL LOCATION} | Poll | +| main.rs:1897:44:1899:9 | { ... } | T | main.rs:1871:5:1871:14 | S1 | +| main.rs:1906:22:1914:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1907:9:1907:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1907:9:1907:12 | f1(...) | dyn(Output) | main.rs:1871:5:1871:14 | S1 | +| main.rs:1908:9:1908:12 | f2(...) | | main.rs:1881:16:1881:39 | impl ... | +| main.rs:1909:9:1909:12 | f3(...) | | main.rs:1885:16:1885:39 | impl ... | +| main.rs:1910:9:1910:12 | f4(...) | | main.rs:1902:16:1902:39 | impl ... | +| main.rs:1912:13:1912:13 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1912:17:1912:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1913:9:1913:9 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1924:15:1924:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1924:15:1924:19 | SelfParam | TRef | main.rs:1923:5:1925:5 | Self [trait Trait1] | +| main.rs:1924:22:1924:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1928:15:1928:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1928:15:1928:19 | SelfParam | TRef | main.rs:1927:5:1929:5 | Self [trait Trait2] | +| main.rs:1928:22:1928:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1932:15:1932:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1932:15:1932:19 | SelfParam | TRef | main.rs:1918:5:1919:14 | S1 | +| main.rs:1932:22:1932:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1936:15:1936:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1936:15:1936:19 | SelfParam | TRef | main.rs:1918:5:1919:14 | S1 | +| main.rs:1936:22:1936:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1944:18:1944:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1944:18:1944:22 | SelfParam | TRef | main.rs:1943:5:1945:5 | Self [trait MyTrait] | +| main.rs:1948:18:1948:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1948:18:1948:22 | SelfParam | TRef | main.rs:1918:5:1919:14 | S1 | +| main.rs:1948:31:1950:9 | { ... } | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1954:18:1954:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1954:18:1954:22 | SelfParam | TRef | main.rs:1921:5:1921:22 | S3 | +| main.rs:1954:18:1954:22 | SelfParam | TRef.T3 | main.rs:1953:10:1953:17 | T | +| main.rs:1954:30:1957:9 | { ... } | | main.rs:1953:10:1953:17 | T | +| main.rs:1955:25:1955:28 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1955:25:1955:28 | self | TRef | main.rs:1921:5:1921:22 | S3 | +| main.rs:1955:25:1955:28 | self | TRef.T3 | main.rs:1953:10:1953:17 | T | +| main.rs:1964:41:1964:41 | t | | main.rs:1964:26:1964:38 | B | +| main.rs:1964:52:1966:5 | { ... } | | main.rs:1964:23:1964:23 | A | +| main.rs:1965:9:1965:9 | t | | main.rs:1964:26:1964:38 | B | +| main.rs:1968:34:1968:34 | x | | main.rs:1968:24:1968:31 | T | +| main.rs:1968:59:1970:5 | { ... } | | main.rs:1968:43:1968:57 | impl ... | +| main.rs:1968:59:1970:5 | { ... } | impl(T) | main.rs:1968:24:1968:31 | T | +| main.rs:1969:12:1969:12 | x | | main.rs:1968:24:1968:31 | T | +| main.rs:1972:34:1972:34 | x | | main.rs:1972:24:1972:31 | T | +| main.rs:1972:67:1974:5 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:1972:67:1974:5 | { ... } | T | main.rs:1972:50:1972:64 | impl ... | +| main.rs:1972:67:1974:5 | { ... } | T.impl(T) | main.rs:1972:24:1972:31 | T | +| main.rs:1973:17:1973:17 | x | | main.rs:1972:24:1972:31 | T | +| main.rs:1976:34:1976:34 | x | | main.rs:1976:24:1976:31 | T | +| main.rs:1976:78:1978:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1976:78:1978:5 | { ... } | T0 | main.rs:1976:44:1976:58 | impl ... | +| main.rs:1976:78:1978:5 | { ... } | T0.impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1976:78:1978:5 | { ... } | T1 | main.rs:1976:61:1976:75 | impl ... | +| main.rs:1976:78:1978:5 | { ... } | T1.impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1977:9:1977:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1977:13:1977:13 | x | | main.rs:1976:24:1976:31 | T | +| main.rs:1977:28:1977:28 | x | | main.rs:1976:24:1976:31 | T | +| main.rs:1980:26:1980:26 | t | | main.rs:1980:29:1980:43 | impl ... | +| main.rs:1980:51:1982:5 | { ... } | | main.rs:1980:23:1980:23 | A | +| main.rs:1981:9:1981:9 | t | | main.rs:1980:29:1980:43 | impl ... | +| main.rs:1984:16:1998:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1985:13:1985:13 | x | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1985:17:1985:20 | f1(...) | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1986:9:1986:9 | x | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1987:9:1987:9 | x | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1988:13:1988:13 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1988:17:1988:32 | get_a_my_trait(...) | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1989:32:1989:32 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1990:13:1990:13 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1990:17:1990:32 | get_a_my_trait(...) | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1991:32:1991:32 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1993:17:1993:35 | get_a_my_trait2(...) | | main.rs:1968:43:1968:57 | impl ... | +| main.rs:1996:17:1996:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:1996:17:1996:35 | get_a_my_trait3(...) | T | main.rs:1972:50:1972:64 | impl ... | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | T0 | main.rs:1976:44:1976:58 | impl ... | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | T1 | main.rs:1976:61:1976:75 | impl ... | +| main.rs:2008:16:2008:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2008:16:2008:20 | SelfParam | TRef | main.rs:2004:5:2005:13 | S | +| main.rs:2008:31:2010:9 | { ... } | | main.rs:2004:5:2005:13 | S | +| main.rs:2019:26:2021:9 | { ... } | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2019:26:2021:9 | { ... } | T | main.rs:2018:10:2018:10 | T | +| main.rs:2020:13:2020:38 | MyVec {...} | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2020:27:2020:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2020:27:2020:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2023:17:2023:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:2023:17:2023:25 | SelfParam | TRefMut | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2023:17:2023:25 | SelfParam | TRefMut.T | main.rs:2018:10:2018:10 | T | +| main.rs:2023:28:2023:32 | value | | main.rs:2018:10:2018:10 | T | +| main.rs:2023:38:2025:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2024:13:2024:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:2024:13:2024:16 | self | TRefMut | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2024:13:2024:16 | self | TRefMut.T | main.rs:2018:10:2018:10 | T | +| main.rs:2024:28:2024:32 | value | | main.rs:2018:10:2018:10 | T | +| main.rs:2032:18:2032:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2032:18:2032:22 | SelfParam | TRef | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2032:18:2032:22 | SelfParam | TRef.T | main.rs:2028:10:2028:10 | T | +| main.rs:2032:25:2032:29 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2032:56:2034:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2032:56:2034:9 | { ... } | TRef | main.rs:2028:10:2028:10 | T | +| main.rs:2033:13:2033:29 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2033:14:2033:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2033:14:2033:17 | self | TRef | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2033:14:2033:17 | self | TRef.T | main.rs:2028:10:2028:10 | T | +| main.rs:2033:24:2033:28 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2037:22:2037:26 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2037:22:2037:26 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2037:22:2037:26 | slice | TRef.TSlice | main.rs:2004:5:2005:13 | S | +| main.rs:2037:35:2039:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2038:17:2038:21 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2038:17:2038:21 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2038:17:2038:21 | slice | TRef.TSlice | main.rs:2004:5:2005:13 | S | +| main.rs:2041:37:2041:37 | a | | main.rs:2041:20:2041:34 | T | +| main.rs:2041:43:2041:43 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2044:5:2046:5 | { ... } | | main.rs:2041:20:2041:34 | T::Output[Index] | +| main.rs:2045:9:2045:9 | a | | main.rs:2041:20:2041:34 | T | +| main.rs:2045:11:2045:11 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2048:16:2059:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2049:17:2049:19 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2049:23:2049:34 | ...::new(...) | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2050:9:2050:11 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2051:9:2051:11 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2053:13:2053:14 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2053:13:2053:14 | xs | TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2053:26:2053:28 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2054:17:2054:18 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2054:17:2054:18 | xs | TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2056:29:2056:31 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2058:9:2058:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2058:23:2058:25 | &xs | | {EXTERNAL LOCATION} | & | +| main.rs:2058:24:2058:25 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2058:24:2058:25 | xs | TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2063:16:2065:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2064:25:2064:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | +| main.rs:2064:25:2064:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2064:25:2064:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2064:38:2064:45 | "World!" | | {EXTERNAL LOCATION} | & | +| main.rs:2064:38:2064:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2073:19:2073:22 | SelfParam | | main.rs:2069:5:2074:5 | Self [trait MyAdd] | +| main.rs:2073:25:2073:27 | rhs | | main.rs:2069:17:2069:26 | Rhs | +| main.rs:2080:19:2080:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2080:25:2080:29 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2080:45:2082:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2081:13:2081:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2089:19:2089:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2089:25:2089:29 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2089:25:2089:29 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2089:46:2091:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2090:14:2090:18 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2090:14:2090:18 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2098:19:2098:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2098:25:2098:29 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2098:46:2104:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2099:16:2099:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2113:19:2113:22 | SelfParam | | main.rs:2107:5:2107:19 | S | +| main.rs:2113:19:2113:22 | SelfParam | T | main.rs:2109:10:2109:17 | T | +| main.rs:2113:25:2113:29 | other | | main.rs:2107:5:2107:19 | S | +| main.rs:2113:25:2113:29 | other | T | main.rs:2109:10:2109:17 | T | +| main.rs:2113:54:2115:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2113:54:2115:9 | { ... } | T | main.rs:2109:10:2109:17 | T::Output[MyAdd] | +| main.rs:2114:16:2114:19 | self | | main.rs:2107:5:2107:19 | S | +| main.rs:2114:16:2114:19 | self | T | main.rs:2109:10:2109:17 | T | +| main.rs:2114:31:2114:35 | other | | main.rs:2107:5:2107:19 | S | +| main.rs:2114:31:2114:35 | other | T | main.rs:2109:10:2109:17 | T | +| main.rs:2122:19:2122:22 | SelfParam | | main.rs:2107:5:2107:19 | S | +| main.rs:2122:19:2122:22 | SelfParam | T | main.rs:2118:10:2118:17 | T | +| main.rs:2122:25:2122:29 | other | | main.rs:2118:10:2118:17 | T | +| main.rs:2122:51:2124:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2122:51:2124:9 | { ... } | T | main.rs:2118:10:2118:17 | T::Output[MyAdd] | +| main.rs:2123:16:2123:19 | self | | main.rs:2107:5:2107:19 | S | +| main.rs:2123:16:2123:19 | self | T | main.rs:2118:10:2118:17 | T | +| main.rs:2123:31:2123:35 | other | | main.rs:2118:10:2118:17 | T | +| main.rs:2134:19:2134:22 | SelfParam | | main.rs:2107:5:2107:19 | S | +| main.rs:2134:19:2134:22 | SelfParam | T | main.rs:2127:14:2127:14 | T | +| main.rs:2134:25:2134:29 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2134:25:2134:29 | other | TRef | main.rs:2127:14:2127:14 | T | +| main.rs:2134:55:2136:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2134:55:2136:9 | { ... } | T | main.rs:2127:14:2127:14 | T::Output[MyAdd] | +| main.rs:2135:16:2135:19 | self | | main.rs:2107:5:2107:19 | S | +| main.rs:2135:16:2135:19 | self | T | main.rs:2127:14:2127:14 | T | +| main.rs:2135:31:2135:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2135:31:2135:35 | other | TRef | main.rs:2127:14:2127:14 | T | +| main.rs:2141:20:2141:24 | value | | main.rs:2139:18:2139:18 | T | +| main.rs:2146:20:2146:24 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2146:40:2148:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2147:13:2147:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2153:20:2153:24 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2153:41:2159:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2154:16:2154:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2164:21:2164:25 | value | | main.rs:2162:19:2162:19 | T | +| main.rs:2164:31:2164:31 | x | | main.rs:2162:5:2165:5 | Self [trait MyFrom2] | +| main.rs:2169:21:2169:25 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2169:33:2169:33 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2169:48:2171:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2170:13:2170:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2176:21:2176:25 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2176:34:2176:34 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2176:49:2182:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2177:16:2177:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2187:15:2187:15 | x | | main.rs:2185:5:2191:5 | Self [trait MySelfTrait] | +| main.rs:2190:15:2190:15 | x | | main.rs:2185:5:2191:5 | Self [trait MySelfTrait] | +| main.rs:2195:15:2195:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2195:31:2197:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2196:13:2196:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2200:15:2200:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2200:32:2202:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2201:13:2201:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2207:15:2207:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2207:31:2209:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2212:15:2212:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2212:32:2214:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:2213:13:2213:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2217:16:2242:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2218:13:2218:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2219:9:2219:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2219:18:2219:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2220:9:2220:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2220:18:2220:22 | &5i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2220:19:2220:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2221:9:2221:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2221:18:2221:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2223:11:2223:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2223:26:2223:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2224:11:2224:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2224:24:2224:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2225:11:2225:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2225:24:2225:28 | &3i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2225:25:2225:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2227:13:2227:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2227:17:2227:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2227:30:2227:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:13:2228:13 | y | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:17:2228:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:30:2228:33 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2229:13:2229:13 | z | | {EXTERNAL LOCATION} | i64 | +| main.rs:2229:38:2229:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2230:9:2230:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2230:23:2230:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2230:30:2230:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2231:9:2231:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2231:23:2231:26 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2231:29:2231:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2232:9:2232:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2232:27:2232:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2232:34:2232:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2234:9:2234:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2234:17:2234:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2235:9:2235:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2235:17:2235:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2236:9:2236:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2236:18:2236:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2237:9:2237:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2237:18:2237:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2238:9:2238:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2238:25:2238:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2239:25:2239:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2240:9:2240:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2240:25:2240:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2241:25:2241:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2249:26:2251:9 | { ... } | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2250:13:2250:25 | MyCallable {...} | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2253:17:2253:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2253:17:2253:21 | SelfParam | TRef | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2253:31:2255:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2258:16:2365:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2261:9:2261:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2261:18:2261:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2261:28:2261:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2262:9:2262:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2262:18:2262:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2262:43:2262:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2263:9:2263:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2263:18:2263:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2263:40:2263:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2265:13:2265:17 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2265:21:2265:31 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2265:22:2265:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2266:9:2266:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2266:18:2266:22 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2266:24:2266:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2268:13:2268:17 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2268:21:2268:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2268:22:2268:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2269:9:2269:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2269:18:2269:22 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2269:24:2269:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2271:13:2271:17 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2271:13:2271:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2271:31:2271:39 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2272:9:2272:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2272:18:2272:22 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2272:18:2272:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2272:24:2272:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2274:13:2274:17 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2274:13:2274:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2274:31:2274:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2275:9:2275:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2275:18:2275:22 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2275:18:2275:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2275:24:2275:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2277:17:2277:24 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2277:28:2277:48 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2277:29:2277:33 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2277:29:2277:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2277:36:2277:40 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2277:36:2277:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2277:43:2277:47 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2277:43:2277:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2278:9:2278:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2278:18:2278:26 | &strings1 | | {EXTERNAL LOCATION} | & | +| main.rs:2278:19:2278:26 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2278:28:2278:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2279:9:2279:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2279:18:2279:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | +| main.rs:2279:23:2279:30 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2279:32:2279:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2280:9:2280:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2280:18:2280:25 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2280:27:2280:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2282:13:2282:20 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2283:9:2287:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2284:13:2284:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2284:26:2284:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2284:26:2284:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2285:13:2285:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2285:26:2285:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2285:26:2285:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2286:13:2286:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2286:26:2286:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2286:26:2286:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2288:9:2288:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2288:18:2288:25 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2288:27:2288:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2290:13:2290:20 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2291:9:2295:9 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2291:10:2295:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2292:13:2292:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2292:26:2292:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2292:26:2292:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2293:13:2293:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2293:26:2293:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2293:26:2293:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2294:13:2294:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2294:26:2294:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2294:26:2294:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2296:9:2296:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2296:18:2296:25 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2296:27:2296:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2298:13:2298:21 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2298:25:2298:81 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2298:26:2298:42 | ...::new(...) | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2298:45:2298:61 | ...::new(...) | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2298:64:2298:80 | ...::new(...) | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2299:9:2303:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2300:12:2300:20 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2301:9:2303:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2307:9:2307:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2307:18:2307:22 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2307:24:2307:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2308:9:2308:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2308:18:2308:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2308:19:2308:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2308:19:2308:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2308:28:2308:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2309:13:2309:17 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2309:21:2309:25 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2310:9:2310:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2310:18:2310:22 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2310:24:2310:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2311:13:2311:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2311:26:2311:27 | .. | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2312:9:2312:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2312:18:2312:48 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2312:19:2312:36 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2312:20:2312:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2312:26:2312:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2312:32:2312:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2312:38:2312:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2312:50:2312:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2314:13:2314:18 | range1 | | {EXTERNAL LOCATION} | Range | +| main.rs:2315:9:2318:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | +| main.rs:2316:20:2316:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2317:18:2317:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2319:9:2319:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2319:18:2319:23 | range1 | | {EXTERNAL LOCATION} | Range | +| main.rs:2319:25:2319:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2324:9:2324:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2324:24:2324:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2326:13:2326:18 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2326:13:2326:18 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2326:13:2326:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2326:32:2326:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2326:33:2326:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2327:9:2327:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2327:18:2327:23 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2327:18:2327:23 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2327:18:2327:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2327:25:2327:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2329:22:2329:33 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2329:23:2329:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2330:9:2330:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2330:25:2330:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2332:13:2332:17 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2332:21:2332:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2332:31:2332:42 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2332:32:2332:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2333:9:2333:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2333:18:2333:22 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2333:24:2333:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2335:13:2335:17 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2335:13:2335:17 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2335:13:2335:17 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2335:13:2335:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2335:32:2335:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2335:33:2335:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | +| main.rs:2336:9:2336:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2336:18:2336:22 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2336:18:2336:22 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2336:18:2336:22 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2336:18:2336:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2336:24:2336:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2338:17:2338:21 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2338:17:2338:21 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2338:25:2338:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2338:25:2338:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2339:9:2339:13 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2339:9:2339:13 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2339:20:2339:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2340:9:2340:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2340:18:2340:22 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2340:18:2340:22 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2340:24:2340:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2344:17:2347:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2345:13:2346:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2345:29:2346:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2349:17:2349:20 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2349:17:2349:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2349:24:2349:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2349:24:2349:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2350:9:2350:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2350:9:2350:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2350:24:2350:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2350:24:2350:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2350:33:2350:37 | "one" | | {EXTERNAL LOCATION} | & | +| main.rs:2350:33:2350:37 | "one" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2351:9:2351:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2351:9:2351:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2351:24:2351:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2351:24:2351:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2351:33:2351:37 | "two" | | {EXTERNAL LOCATION} | & | +| main.rs:2351:33:2351:37 | "two" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2352:9:2352:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2352:20:2352:23 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2352:20:2352:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2352:32:2352:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2353:9:2353:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2353:22:2353:25 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2353:22:2353:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2353:36:2353:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2354:9:2354:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2354:13:2354:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2354:29:2354:32 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2354:29:2354:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2354:41:2354:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2355:9:2355:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2355:13:2355:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2355:29:2355:33 | &map1 | | {EXTERNAL LOCATION} | & | +| main.rs:2355:30:2355:33 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2355:30:2355:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2355:35:2355:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2359:17:2359:17 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2361:17:2364:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2361:23:2361:23 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2362:9:2364:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2363:13:2363:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2375:40:2377:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:2375:40:2377:9 | { ... } | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2375:40:2377:9 | { ... } | T.T | main.rs:2374:10:2374:19 | T | +| main.rs:2379:30:2381:9 | { ... } | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2379:30:2381:9 | { ... } | T | main.rs:2374:10:2374:19 | T | +| main.rs:2383:19:2383:22 | SelfParam | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2383:19:2383:22 | SelfParam | T | main.rs:2374:10:2374:19 | T | +| main.rs:2383:33:2385:9 | { ... } | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2383:33:2385:9 | { ... } | T | main.rs:2374:10:2374:19 | T | +| main.rs:2384:13:2384:16 | self | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2384:13:2384:16 | self | T | main.rs:2374:10:2374:19 | T | +| main.rs:2396:15:2396:15 | x | | main.rs:2396:12:2396:12 | T | +| main.rs:2396:26:2398:5 | { ... } | | main.rs:2396:12:2396:12 | T | +| main.rs:2397:9:2397:9 | x | | main.rs:2396:12:2396:12 | T | +| main.rs:2400:16:2422:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2401:13:2401:14 | x1 | | {EXTERNAL LOCATION} | Option | +| main.rs:2401:13:2401:14 | x1 | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2401:13:2401:14 | x1 | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2401:34:2401:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2401:34:2401:48 | ...::assoc_fun(...) | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2402:13:2402:14 | x2 | | {EXTERNAL LOCATION} | Option | +| main.rs:2402:13:2402:14 | x2 | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2402:13:2402:14 | x2 | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2402:18:2402:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2402:18:2402:38 | ...::assoc_fun(...) | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2402:18:2402:38 | ...::assoc_fun(...) | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2403:13:2403:14 | x3 | | {EXTERNAL LOCATION} | Option | +| main.rs:2403:13:2403:14 | x3 | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2403:13:2403:14 | x3 | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2403:18:2403:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2403:18:2403:32 | ...::assoc_fun(...) | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2403:18:2403:32 | ...::assoc_fun(...) | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2404:13:2404:14 | x4 | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2404:13:2404:14 | x4 | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2404:18:2404:48 | ...::method(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2404:18:2404:48 | ...::method(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2404:35:2404:47 | ...::default(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2405:13:2405:14 | x5 | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2405:13:2405:14 | x5 | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2405:18:2405:42 | ...::method(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2405:18:2405:42 | ...::method(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2405:29:2405:41 | ...::default(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2409:21:2409:33 | ...::default(...) | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2410:13:2410:15 | x10 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2410:13:2410:15 | x10 | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2410:19:2413:9 | S5::<...> {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2410:19:2413:9 | S5::<...> {...} | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2414:13:2414:15 | x11 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2414:19:2414:34 | S5 {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2415:13:2415:15 | x12 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2415:19:2415:33 | S5 {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2416:13:2416:15 | x13 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2416:19:2419:9 | S5 {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2418:20:2418:32 | ...::default(...) | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2420:13:2420:15 | x14 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2420:19:2420:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2421:13:2421:15 | x15 | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2421:13:2421:15 | x15 | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2421:19:2421:37 | ...::default(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2421:19:2421:37 | ...::default(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2430:35:2432:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2430:35:2432:9 | { ... } | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2430:35:2432:9 | { ... } | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2431:13:2431:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2431:14:2431:18 | S1 {...} | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2431:21:2431:25 | S1 {...} | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2433:16:2433:19 | SelfParam | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2433:22:2433:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2436:16:2470:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2437:13:2437:13 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2437:13:2437:13 | a | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2437:13:2437:13 | a | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2437:17:2437:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2437:17:2437:30 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2437:17:2437:30 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:17:2438:17 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2438:17:2438:17 | b | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:17:2438:17 | b | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:21:2438:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2438:21:2438:34 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:21:2438:34 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:13:2439:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2439:22:2439:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2439:22:2439:35 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:22:2439:35 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:13:2440:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2440:26:2440:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2440:26:2440:39 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:26:2440:39 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:13:2441:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2441:30:2441:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2441:30:2441:43 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:30:2441:43 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2443:9:2443:9 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2443:9:2443:9 | a | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2443:9:2443:9 | a | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2444:9:2444:9 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2444:9:2444:9 | b | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2444:9:2444:9 | b | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2457:13:2457:16 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2457:20:2457:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2458:13:2458:13 | i | | {EXTERNAL LOCATION} | i64 | +| main.rs:2458:22:2458:25 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2459:13:2459:13 | j | | {EXTERNAL LOCATION} | bool | +| main.rs:2459:23:2459:26 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2461:20:2461:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2463:13:2463:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2463:30:2463:41 | "unexpected" | | {EXTERNAL LOCATION} | & | +| main.rs:2463:30:2463:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2463:30:2463:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2463:30:2463:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2464:25:2464:34 | "expected" | | {EXTERNAL LOCATION} | & | +| main.rs:2464:25:2464:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2464:25:2464:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2464:25:2464:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2468:13:2468:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2468:17:2468:31 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2468:18:2468:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2468:18:2468:31 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2468:18:2468:31 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2469:9:2469:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2475:27:2497:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2476:13:2476:23 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2476:13:2476:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2476:27:2476:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2476:27:2476:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2476:36:2476:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2479:15:2479:25 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2479:15:2479:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2480:24:2482:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2481:26:2481:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2481:26:2481:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2481:26:2481:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2481:26:2481:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2483:22:2486:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2485:26:2485:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2485:26:2485:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2485:26:2485:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2485:26:2485:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2490:13:2490:22 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2490:13:2490:22 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:26:2490:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2490:26:2490:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:35:2490:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2490:35:2490:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:44:2490:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2491:15:2491:24 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2491:15:2491:24 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2492:26:2495:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2494:26:2494:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2494:26:2494:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2494:26:2494:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2494:26:2494:59 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2506:36:2508:9 | { ... } | | main.rs:2503:5:2503:22 | Path | +| main.rs:2507:13:2507:19 | Path {...} | | main.rs:2503:5:2503:22 | Path | +| main.rs:2510:29:2510:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2510:29:2510:33 | SelfParam | TRef | main.rs:2503:5:2503:22 | Path | +| main.rs:2510:59:2512:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:2510:59:2512:9 | { ... } | E | {EXTERNAL LOCATION} | () | +| main.rs:2510:59:2512:9 | { ... } | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2511:16:2511:29 | ...::new(...) | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2518:39:2520:9 | { ... } | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2519:13:2519:22 | PathBuf {...} | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2528:18:2528:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2528:18:2528:22 | SelfParam | TRef | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2528:34:2532:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2528:34:2532:9 | { ... } | TRef | main.rs:2503:5:2503:22 | Path | +| main.rs:2530:33:2530:43 | ...::new(...) | | main.rs:2503:5:2503:22 | Path | +| main.rs:2531:13:2531:17 | &path | | {EXTERNAL LOCATION} | & | +| main.rs:2535:16:2543:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2536:13:2536:17 | path1 | | main.rs:2503:5:2503:22 | Path | +| main.rs:2536:21:2536:31 | ...::new(...) | | main.rs:2503:5:2503:22 | Path | +| main.rs:2537:21:2537:25 | path1 | | main.rs:2503:5:2503:22 | Path | +| main.rs:2540:13:2540:20 | pathbuf1 | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2540:24:2540:37 | ...::new(...) | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2541:24:2541:31 | pathbuf1 | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2548:14:2548:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2548:14:2548:18 | SelfParam | TRef | main.rs:2547:5:2549:5 | Self [trait MyTrait] | +| main.rs:2555:14:2555:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2555:14:2555:18 | SelfParam | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2555:14:2555:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2555:28:2557:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2556:13:2556:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2556:13:2556:16 | self | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2556:13:2556:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2561:14:2561:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2561:14:2561:18 | SelfParam | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2561:14:2561:18 | SelfParam | TRef.T | main.rs:2551:5:2552:19 | S | +| main.rs:2561:14:2561:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2561:28:2563:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2562:13:2562:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2562:13:2562:16 | self | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2562:13:2562:16 | self | TRef.T | main.rs:2551:5:2552:19 | S | +| main.rs:2562:13:2562:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2567:15:2567:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2567:15:2567:19 | SelfParam | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2567:15:2567:19 | SelfParam | TRef.T | main.rs:2566:10:2566:16 | T | +| main.rs:2567:33:2569:9 | { ... } | | main.rs:2551:5:2552:19 | S | +| main.rs:2567:33:2569:9 | { ... } | T | main.rs:2551:5:2552:19 | S | +| main.rs:2567:33:2569:9 | { ... } | T.T | main.rs:2566:10:2566:16 | T | +| main.rs:2568:17:2568:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2568:17:2568:20 | self | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2568:17:2568:20 | self | TRef.T | main.rs:2566:10:2566:16 | T | +| main.rs:2572:14:2572:14 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2572:48:2589:5 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2572:48:2589:5 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2572:48:2589:5 | { ... } | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2572:48:2589:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2573:20:2573:20 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2583:12:2583:12 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2585:13:2585:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2585:13:2585:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2587:13:2587:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2587:13:2587:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2593:22:2597:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2594:18:2594:18 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2594:33:2596:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2595:13:2595:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2602:11:2602:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2602:30:2610:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2605:13:2607:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2605:16:2605:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2605:21:2607:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2613:20:2620:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2618:18:2618:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2618:18:2618:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2618:18:2618:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2618:18:2618:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2622:20:2624:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2627:11:2627:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2627:30:2635:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2628:13:2628:13 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2628:17:2632:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2629:13:2631:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2629:16:2629:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2629:21:2631:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2633:18:2633:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2633:18:2633:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2633:18:2633:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2633:18:2633:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2633:29:2633:29 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2639:16:2686:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2641:13:2641:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2641:13:2641:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2645:26:2645:28 | opt | | {EXTERNAL LOCATION} | Option | +| main.rs:2645:26:2645:28 | opt | T | main.rs:2645:23:2645:23 | T | +| main.rs:2645:42:2645:42 | x | | main.rs:2645:23:2645:23 | T | +| main.rs:2645:48:2645:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2648:9:2648:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2655:13:2655:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2655:17:2655:39 | ...::A {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2656:13:2656:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2656:13:2656:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2656:13:2656:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2656:40:2656:40 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2657:13:2657:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2657:13:2657:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2657:17:2657:52 | ...::A {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2657:17:2657:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2659:13:2659:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2659:13:2659:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2659:17:2661:9 | ...::B::<...> {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2659:17:2661:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2660:20:2660:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2663:29:2663:29 | e | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2663:29:2663:29 | e | T1 | main.rs:2663:26:2663:26 | T | +| main.rs:2663:29:2663:29 | e | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2663:53:2663:53 | x | | main.rs:2663:26:2663:26 | T | +| main.rs:2663:59:2663:60 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2666:13:2666:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2666:17:2668:9 | ...::B {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2667:20:2667:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2669:9:2669:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2669:23:2669:23 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2672:13:2672:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2672:13:2672:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2672:13:2672:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2676:29:2676:31 | res | | {EXTERNAL LOCATION} | Result | +| main.rs:2676:29:2676:31 | res | E | main.rs:2676:26:2676:26 | E | +| main.rs:2676:29:2676:31 | res | T | main.rs:2676:23:2676:23 | T | +| main.rs:2676:48:2676:48 | x | | main.rs:2676:26:2676:26 | E | +| main.rs:2676:54:2676:55 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2679:9:2679:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2679:23:2679:27 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:2681:17:2681:17 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2681:17:2681:17 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2681:21:2681:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2681:21:2681:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2682:9:2682:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2682:9:2682:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2685:9:2685:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2685:9:2685:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2692:14:2692:17 | SelfParam | | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2695:14:2695:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2695:14:2695:18 | SelfParam | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2695:21:2695:25 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2695:21:2695:25 | other | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2695:44:2697:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2695:44:2697:9 | { ... } | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2696:13:2696:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2696:13:2696:16 | self | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2702:14:2702:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| main.rs:2702:28:2704:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2703:13:2703:16 | self | | {EXTERNAL LOCATION} | i32 | +| main.rs:2709:14:2709:17 | SelfParam | | {EXTERNAL LOCATION} | usize | +| main.rs:2709:28:2711:9 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2710:13:2710:16 | self | | {EXTERNAL LOCATION} | usize | +| main.rs:2716:14:2716:17 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2716:14:2716:17 | SelfParam | TRef | main.rs:2714:10:2714:10 | T | +| main.rs:2716:28:2718:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2716:28:2718:9 | { ... } | TRef | main.rs:2714:10:2714:10 | T | +| main.rs:2717:13:2717:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2717:13:2717:16 | self | TRef | main.rs:2714:10:2714:10 | T | +| main.rs:2721:25:2725:5 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2727:12:2735:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2728:13:2728:13 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2729:13:2729:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2729:17:2729:18 | &1 | | {EXTERNAL LOCATION} | & | +| main.rs:2730:17:2730:17 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2730:21:2730:21 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2733:13:2733:13 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2734:23:2734:23 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2744:11:2779:1 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2745:5:2745:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2746:5:2746:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2747:5:2747:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2747:20:2747:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2747:41:2747:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2748:5:2748:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2749:5:2749:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2750:5:2750:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2751:5:2751:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2752:5:2752:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2753:5:2753:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2754:5:2754:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2755:5:2755:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2756:5:2756:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2757:5:2757:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2758:5:2758:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2759:5:2759:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2760:5:2760:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2761:5:2761:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2762:5:2762:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2763:5:2763:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2763:5:2763:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2764:5:2764:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2765:5:2765:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2766:5:2766:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2767:5:2767:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2768:5:2768:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2769:5:2769:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2770:5:2770:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2771:5:2771:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2772:5:2772:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2773:5:2773:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2774:5:2774:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2775:5:2775:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2776:5:2776:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2777:5:2777:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2777:5:2777:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2777:5:2777:20 | ...::f(...) | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2777:5:2777:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2777:16:2777:19 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2778:5:2778:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:4:19:4:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:4:19:4:23 | SelfParam | TRef | overloading.rs:2:5:11:5 | Self [trait FirstTrait] | +| overloading.rs:4:34:6:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:5:13:5:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:8:20:8:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:8:20:8:24 | SelfParam | TRef | overloading.rs:2:5:11:5 | Self [trait FirstTrait] | +| overloading.rs:14:19:14:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:14:19:14:23 | SelfParam | TRef | overloading.rs:12:5:19:5 | Self [trait SecondTrait] | +| overloading.rs:14:33:16:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:18:20:18:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:18:20:18:24 | SelfParam | TRef | overloading.rs:12:5:19:5 | Self [trait SecondTrait] | +| overloading.rs:24:20:24:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:24:20:24:24 | SelfParam | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:24:35:26:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:25:13:25:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:29:31:31:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:30:13:30:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:35:20:35:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:35:20:35:24 | SelfParam | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:35:34:37:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:43:20:43:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:43:20:43:24 | SelfParam | TRef | overloading.rs:40:5:40:14 | S2 | +| overloading.rs:43:35:45:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:44:13:44:17 | false | | {EXTERNAL LOCATION} | bool | +| overloading.rs:48:31:50:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:49:13:49:17 | false | | {EXTERNAL LOCATION} | bool | +| overloading.rs:53:16:70:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:56:13:56:15 | _b1 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:56:19:56:40 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:56:38:56:39 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:57:13:57:15 | _b2 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:57:19:57:47 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:57:45:57:46 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:58:13:58:15 | _b3 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:58:19:58:64 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:58:45:58:63 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:59:13:59:15 | _b4 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:59:19:59:48 | ...::method2(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:59:46:59:47 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:60:13:60:15 | _b5 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:60:19:60:65 | ...::method2(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:60:46:60:64 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:62:13:62:15 | _n1 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:62:19:62:41 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:62:39:62:40 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:63:13:63:15 | _n2 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:63:19:63:48 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:63:46:63:47 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:64:13:64:15 | _n3 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:64:19:64:65 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:64:46:64:64 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:65:13:65:15 | _n4 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:65:19:65:49 | ...::method2(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:65:47:65:48 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:66:13:66:15 | _n5 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:66:19:66:66 | ...::method2(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:66:47:66:65 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:68:9:68:37 | ...::function(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:69:9:69:38 | ...::function(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:78:26:78:29 | SelfParam | | overloading.rs:77:5:81:5 | Self [trait OverlappingTrait] | +| overloading.rs:80:28:80:31 | SelfParam | | overloading.rs:77:5:81:5 | Self [trait OverlappingTrait] | +| overloading.rs:80:34:80:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:85:26:85:29 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:85:38:87:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:90:28:90:31 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:90:34:90:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:90:48:92:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:97:26:97:29 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:97:38:99:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:98:13:98:16 | self | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:102:28:102:31 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:102:40:104:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:103:13:103:16 | self | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:111:26:111:29 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:111:26:111:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:111:38:113:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:116:28:116:31 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:116:28:116:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:116:40:118:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:123:26:123:29 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:123:26:123:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:123:38:125:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:128:28:128:31 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:128:28:128:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:128:34:128:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:128:48:130:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:135:26:135:29 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:135:26:135:29 | SelfParam | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:135:38:137:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:140:28:140:31 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:140:28:140:31 | SelfParam | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:140:34:140:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:140:48:142:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:149:14:149:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:149:14:149:18 | SelfParam | TRef | overloading.rs:148:5:150:5 | Self [trait OverlappingTrait2] | +| overloading.rs:149:21:149:21 | x | | {EXTERNAL LOCATION} | & | +| overloading.rs:149:21:149:21 | x | TRef | overloading.rs:148:29:148:29 | T | +| overloading.rs:154:14:154:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:154:14:154:18 | SelfParam | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:154:14:154:18 | SelfParam | TRef.T3 | overloading.rs:152:10:152:10 | T | +| overloading.rs:154:21:154:21 | x | | {EXTERNAL LOCATION} | & | +| overloading.rs:154:21:154:21 | x | TRef | overloading.rs:152:10:152:10 | T | +| overloading.rs:154:37:156:9 | { ... } | | {EXTERNAL LOCATION} | & | +| overloading.rs:154:37:156:9 | { ... } | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:154:37:156:9 | { ... } | TRef.T3 | overloading.rs:152:10:152:10 | T | +| overloading.rs:155:13:155:16 | self | | {EXTERNAL LOCATION} | & | +| overloading.rs:155:13:155:16 | self | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:155:13:155:16 | self | TRef.T3 | overloading.rs:152:10:152:10 | T | +| overloading.rs:161:14:161:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:161:14:161:18 | SelfParam | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:161:14:161:18 | SelfParam | TRef.T3 | overloading.rs:159:10:159:10 | T | +| overloading.rs:161:21:161:21 | x | | overloading.rs:159:10:159:10 | T | +| overloading.rs:161:36:163:9 | { ... } | | {EXTERNAL LOCATION} | & | +| overloading.rs:161:36:163:9 | { ... } | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:161:36:163:9 | { ... } | TRef.T3 | overloading.rs:159:10:159:10 | T | +| overloading.rs:162:13:162:16 | self | | {EXTERNAL LOCATION} | & | +| overloading.rs:162:13:162:16 | self | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:162:13:162:16 | self | TRef.T3 | overloading.rs:159:10:159:10 | T | +| overloading.rs:168:14:168:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:168:14:168:18 | SelfParam | TRef | overloading.rs:166:5:169:5 | Self [trait MyTrait1] | +| overloading.rs:168:21:168:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:178:14:178:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:178:14:178:18 | SelfParam | TRef | overloading.rs:173:5:174:14 | S4 | +| overloading.rs:178:21:178:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:188:14:188:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:188:14:188:18 | SelfParam | TRef | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:188:14:188:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:188:21:188:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:197:16:223:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:199:18:199:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:199:18:199:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:199:18:199:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:199:18:199:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:200:18:200:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:200:18:200:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:200:18:200:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:200:18:200:45 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:200:26:200:45 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:201:18:201:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:201:18:201:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:201:18:201:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:201:18:201:44 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:202:18:202:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:202:18:202:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:202:18:202:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:202:18:202:47 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:202:26:202:47 | ...::common_method_2(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:205:18:205:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:205:18:205:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:205:18:205:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:205:18:205:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:206:18:206:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:206:18:206:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:206:18:206:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:206:18:206:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:206:26:206:56 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:209:18:209:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:209:18:209:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:209:18:209:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:209:18:209:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:210:18:210:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:210:18:210:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:210:18:210:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:210:18:210:49 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:210:26:210:49 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:211:18:211:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:211:18:211:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:211:18:211:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:211:18:211:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:211:26:211:56 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:214:18:214:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:214:18:214:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:214:18:214:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:214:18:214:31 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:215:18:215:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:215:18:215:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:215:18:215:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:215:18:215:37 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:215:26:215:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | +| overloading.rs:215:26:215:37 | ...::m(...) | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:215:32:215:33 | &w | | {EXTERNAL LOCATION} | & | +| overloading.rs:218:9:218:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:218:15:218:17 | &S4 | | {EXTERNAL LOCATION} | & | +| overloading.rs:219:12:219:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:220:9:220:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:220:15:220:23 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:220:19:220:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:221:12:221:15 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:222:9:222:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:222:15:222:23 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:222:19:222:22 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:228:14:228:17 | SelfParam | | overloading.rs:227:5:229:5 | Self [trait Trait1] | +| overloading.rs:228:20:228:20 | x | | overloading.rs:227:18:227:19 | T1 | +| overloading.rs:233:14:233:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:233:20:233:20 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:233:35:235:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:240:14:240:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:240:20:240:20 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:240:35:242:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:246:14:246:17 | SelfParam | | overloading.rs:245:5:247:5 | Self [trait Trait2] | +| overloading.rs:246:20:246:20 | x | | overloading.rs:245:18:245:19 | T1 | +| overloading.rs:251:14:251:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:251:20:251:20 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:251:35:253:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:258:14:258:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:258:20:258:20 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:258:35:260:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:263:12:270:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:265:21:265:24 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:266:13:266:13 | z | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:267:21:267:24 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:268:13:268:13 | z | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:269:13:269:13 | z | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:269:26:269:29 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:286:35:288:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:295:35:297:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:296:13:296:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:302:14:302:14 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:302:29:304:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:309:14:309:14 | x | | {EXTERNAL LOCATION} | bool | +| overloading.rs:309:31:311:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:310:13:310:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:314:12:321:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:319:22:319:25 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:330:14:330:17 | SelfParam | | overloading.rs:327:5:331:5 | Self [trait MyTrait] | +| overloading.rs:334:14:334:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:334:14:334:17 | SelfParam | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:334:27:336:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:335:13:335:16 | self | | overloading.rs:325:5:325:25 | S | +| overloading.rs:335:13:335:16 | self | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:338:14:338:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:338:14:338:17 | SelfParam | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:338:27:340:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:339:13:339:16 | self | | overloading.rs:325:5:325:25 | S | +| overloading.rs:339:13:339:16 | self | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:344:14:344:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:344:14:344:17 | SelfParam | T | {EXTERNAL LOCATION} | bool | +| overloading.rs:344:28:346:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:345:13:345:16 | self | | overloading.rs:325:5:325:25 | S | +| overloading.rs:345:13:345:16 | self | T | {EXTERNAL LOCATION} | bool | +| overloading.rs:352:14:352:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:352:14:352:17 | SelfParam | T | overloading.rs:349:10:349:10 | T | +| overloading.rs:352:25:359:9 | { ... } | | overloading.rs:325:5:325:25 | S | +| overloading.rs:352:25:359:9 | { ... } | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:353:17:353:17 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:353:21:353:47 | ...::f(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:354:17:354:17 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:354:21:354:61 | ...::f(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:367:17:370:5 | { ... } | | overloading.rs:364:5:365:13 | S | +| overloading.rs:378:17:378:17 | _ | | overloading.rs:364:5:365:13 | S | +| overloading.rs:378:31:380:9 | { ... } | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:385:17:385:17 | _ | | overloading.rs:374:5:374:14 | S2 | +| overloading.rs:385:32:387:9 | { ... } | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:392:17:392:17 | _ | | overloading.rs:364:5:365:13 | S | +| overloading.rs:392:31:394:9 | { ... } | | overloading.rs:374:5:374:14 | S2 | +| overloading.rs:397:10:397:10 | b | | {EXTERNAL LOCATION} | bool | +| overloading.rs:397:25:401:5 | { ... } | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:398:20:398:20 | b | | {EXTERNAL LOCATION} | bool | | pattern_matching.rs:13:26:133:1 | { ... } | | {EXTERNAL LOCATION} | Option | | pattern_matching.rs:13:26:133:1 | { ... } | T | {EXTERNAL LOCATION} | () | | pattern_matching.rs:15:5:18:5 | if ... {...} | | {EXTERNAL LOCATION} | () | @@ -4703,363 +4945,556 @@ inferType | associated_types.rs:44:12:44:16 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | | associated_types.rs:44:35:46:5 | { ... } | | associated_types.rs:16:1:17:10 | S3 | | associated_types.rs:45:9:45:10 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:53:12:53:16 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:53:12:53:16 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:53:12:53:16 | SelfParam | TRef.A | associated_types.rs:49:6:49:12 | T | -| associated_types.rs:53:35:55:5 | { ... } | | associated_types.rs:49:6:49:12 | T | -| associated_types.rs:54:9:54:12 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:54:9:54:12 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:54:9:54:12 | self | TRef.A | associated_types.rs:49:6:49:12 | T | -| associated_types.rs:54:9:54:14 | self.0 | | associated_types.rs:49:6:49:12 | T | -| associated_types.rs:65:15:65:18 | SelfParam | | associated_types.rs:61:5:76:5 | Self [trait MyTrait] | -| associated_types.rs:67:15:67:18 | SelfParam | | associated_types.rs:61:5:76:5 | Self [trait MyTrait] | -| associated_types.rs:71:9:75:9 | { ... } | | associated_types.rs:62:9:62:28 | AssociatedType[MyTrait] | -| associated_types.rs:72:13:72:16 | self | | associated_types.rs:61:5:76:5 | Self [trait MyTrait] | -| associated_types.rs:72:13:72:21 | self.m1() | | associated_types.rs:62:9:62:28 | AssociatedType[MyTrait] | -| associated_types.rs:74:13:74:43 | ...::default(...) | | associated_types.rs:62:9:62:28 | AssociatedType[MyTrait] | -| associated_types.rs:82:15:82:18 | SelfParam | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:82:45:84:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:83:13:83:14 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:91:15:91:18 | SelfParam | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:91:45:93:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:91:45:93:9 | { ... } | A | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:92:13:92:25 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:92:13:92:25 | Wrapper(...) | A | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:92:21:92:24 | self | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:96:19:110:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:97:13:97:14 | x1 | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:97:18:97:18 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:99:9:99:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| associated_types.rs:99:18:99:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:99:18:99:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:99:18:99:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:99:18:99:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:99:18:99:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:99:26:99:27 | x1 | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:99:26:99:32 | x1.m1() | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:101:13:101:14 | x2 | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:101:18:101:18 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:103:13:103:13 | y | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:103:17:103:18 | x2 | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:103:17:103:23 | x2.m2() | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:104:9:104:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| associated_types.rs:104:18:104:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:104:18:104:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:104:18:104:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:104:18:104:26 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:104:18:104:26 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:104:26:104:26 | y | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:106:13:106:14 | x5 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:106:18:106:19 | S2 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:107:9:107:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| associated_types.rs:107:18:107:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:107:18:107:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:107:18:107:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:107:18:107:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:107:18:107:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:107:26:107:27 | x5 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:107:26:107:32 | x5.m1() | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:107:26:107:32 | x5.m1() | A | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:108:13:108:14 | x6 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:108:18:108:19 | S2 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:109:9:109:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| associated_types.rs:109:18:109:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:109:18:109:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:109:18:109:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:109:18:109:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:109:18:109:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:109:26:109:27 | x6 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:109:26:109:32 | x6.m2() | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:109:26:109:32 | x6.m2() | A | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:117:30:117:34 | thing | | associated_types.rs:117:19:117:27 | T | -| associated_types.rs:118:9:118:13 | thing | | associated_types.rs:117:19:117:27 | T | -| associated_types.rs:121:33:121:37 | thing | | associated_types.rs:121:22:121:30 | T | -| associated_types.rs:122:9:122:13 | thing | | associated_types.rs:121:22:121:30 | T | -| associated_types.rs:125:19:128:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:126:30:126:30 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:127:33:127:33 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:135:26:135:26 | x | | associated_types.rs:135:23:135:23 | T | -| associated_types.rs:138:5:140:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:139:13:139:14 | _a | | {EXTERNAL LOCATION} | char | -| associated_types.rs:139:18:139:18 | x | | associated_types.rs:135:23:135:23 | T | -| associated_types.rs:139:18:139:24 | x.get() | | {EXTERNAL LOCATION} | char | -| associated_types.rs:143:24:143:24 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:146:5:150:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:147:13:147:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:147:19:147:19 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:147:19:147:25 | x.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:148:13:148:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:148:19:148:25 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:148:23:148:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:148:23:148:24 | &x | TRef | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:148:24:148:24 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:149:13:149:14 | _b | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:149:18:149:18 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:149:18:149:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:153:23:153:23 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:157:5:161:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:158:13:158:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:158:19:158:19 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:158:19:158:25 | x.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:159:13:159:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:159:19:159:25 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:159:23:159:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:159:23:159:24 | &x | TRef | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:159:24:159:24 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:160:13:160:14 | _b | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:160:18:160:18 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:160:18:160:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:167:17:167:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:167:17:167:21 | SelfParam | TRef | associated_types.rs:163:5:168:5 | Self [trait AssocNameClash] | -| associated_types.rs:170:34:170:34 | x | | associated_types.rs:170:31:170:31 | T | -| associated_types.rs:174:5:177:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:175:13:175:14 | _a | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:175:18:175:18 | x | | associated_types.rs:170:31:170:31 | T | -| associated_types.rs:175:18:175:24 | x.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:176:18:176:18 | x | | associated_types.rs:170:31:170:31 | T | -| associated_types.rs:187:19:187:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:187:19:187:23 | SelfParam | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:187:26:187:26 | a | | associated_types.rs:187:16:187:16 | A | -| associated_types.rs:190:23:190:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:190:23:190:27 | SelfParam | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:190:30:190:30 | a | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:190:36:190:36 | b | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:190:76:193:9 | { ... } | | associated_types.rs:184:9:184:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:191:13:191:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:191:13:191:16 | self | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:191:13:191:23 | self.put(...) | | associated_types.rs:184:9:184:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:191:22:191:22 | a | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:192:13:192:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:192:13:192:16 | self | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:192:13:192:23 | self.put(...) | | associated_types.rs:184:9:184:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:192:22:192:22 | b | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:201:19:201:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:201:19:201:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:201:26:201:26 | a | | associated_types.rs:201:16:201:16 | A | -| associated_types.rs:201:46:203:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:201:46:203:9 | { ... } | A | associated_types.rs:201:16:201:16 | A | -| associated_types.rs:202:13:202:22 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:202:13:202:22 | Wrapper(...) | A | associated_types.rs:201:16:201:16 | A | -| associated_types.rs:202:21:202:21 | a | | associated_types.rs:201:16:201:16 | A | -| associated_types.rs:206:19:213:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:207:13:207:13 | s | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:207:17:207:17 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:209:13:209:15 | _g1 | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:209:13:209:15 | _g1 | A | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:209:19:209:19 | s | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:209:19:209:29 | s.put(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:209:19:209:29 | s.put(...) | A | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:209:25:209:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:212:13:212:15 | _g2 | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:212:19:212:19 | s | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:212:19:212:40 | s.put_two(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:212:29:212:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:212:35:212:39 | false | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:224:21:224:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:224:21:224:25 | SelfParam | TRef | associated_types.rs:219:5:229:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:226:20:226:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:226:20:226:24 | SelfParam | TRef | associated_types.rs:219:5:229:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:228:20:228:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:228:20:228:24 | SelfParam | TRef | associated_types.rs:219:5:229:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:235:21:235:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:235:21:235:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:235:34:237:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:236:13:236:14 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:239:20:239:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:239:20:239:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:239:43:241:9 | { ... } | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:240:13:240:13 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:243:20:243:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:243:20:243:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:243:43:245:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:244:13:244:14 | S2 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:248:19:252:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:249:13:249:23 | _assoc_zero | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:249:27:249:28 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:249:27:249:39 | S3.get_zero() | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:250:13:250:22 | _assoc_one | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:250:26:250:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:250:26:250:37 | S3.get_one() | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:251:13:251:22 | _assoc_two | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:251:26:251:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:251:26:251:37 | S3.get_two() | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:260:24:260:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:260:24:260:28 | SelfParam | TRef | associated_types.rs:258:5:261:5 | Self [trait Subtrait] | -| associated_types.rs:269:23:269:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:269:23:269:27 | SelfParam | TRef | associated_types.rs:263:5:273:5 | Self [trait Subtrait2] | -| associated_types.rs:269:30:269:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:269:48:269:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:269:66:272:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:270:13:270:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:270:13:270:16 | self | TRef | associated_types.rs:263:5:273:5 | Self [trait Subtrait2] | -| associated_types.rs:270:13:270:24 | self.set(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:270:22:270:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:271:13:271:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:271:13:271:16 | self | TRef | associated_types.rs:263:5:273:5 | Self [trait Subtrait2] | -| associated_types.rs:271:13:271:24 | self.set(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:271:22:271:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:280:16:280:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:280:16:280:20 | SelfParam | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:280:16:280:20 | SelfParam | TRef.T | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:280:39:282:9 | { ... } | | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:281:13:281:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:281:13:281:16 | self | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:281:13:281:16 | self | TRef.T | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:281:13:281:18 | self.0 | | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:284:16:284:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:284:16:284:20 | SelfParam | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:284:16:284:20 | SelfParam | TRef.T | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:284:23:284:30 | _content | | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:284:47:286:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:285:13:285:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| associated_types.rs:285:22:285:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:285:22:285:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:285:22:285:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:285:22:285:42 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:285:22:285:42 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:291:24:291:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:291:24:291:28 | SelfParam | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:291:24:291:28 | SelfParam | TRef.T | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:291:47:293:9 | { ... } | | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:292:13:292:19 | (...) | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:292:13:292:19 | (...) | T | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:292:13:292:21 | ... .0 | | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:292:14:292:18 | * ... | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:292:14:292:18 | * ... | T | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:292:15:292:18 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:292:15:292:18 | self | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:292:15:292:18 | self | TRef.T | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:296:33:296:36 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:296:33:296:36 | item | TRef | associated_types.rs:296:20:296:30 | T | -| associated_types.rs:297:9:297:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:297:9:297:12 | item | TRef | associated_types.rs:296:20:296:30 | T | -| associated_types.rs:300:35:300:38 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:300:35:300:38 | item | TRef | associated_types.rs:300:21:300:32 | T | -| associated_types.rs:300:90:303:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:301:9:301:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:301:9:301:12 | item | TRef | associated_types.rs:300:21:300:32 | T | -| associated_types.rs:301:9:301:20 | item.set(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:302:9:302:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:302:9:302:12 | item | TRef | associated_types.rs:300:21:300:32 | T | -| associated_types.rs:302:9:302:31 | item.insert_two(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:305:19:311:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:306:13:306:17 | item1 | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:306:13:306:17 | item1 | T | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:306:21:306:33 | MyType(...) | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:306:21:306:33 | MyType(...) | T | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:306:28:306:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:307:25:307:29 | item1 | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:307:25:307:29 | item1 | T | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:309:13:309:17 | item2 | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:309:13:309:17 | item2 | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:309:21:309:32 | MyType(...) | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:309:21:309:32 | MyType(...) | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:309:28:309:31 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:310:37:310:42 | &item2 | | {EXTERNAL LOCATION} | & | -| associated_types.rs:310:37:310:42 | &item2 | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:310:37:310:42 | &item2 | TRef.T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:310:38:310:42 | item2 | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:310:38:310:42 | item2 | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:324:16:324:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:324:16:324:20 | SelfParam | TRef | associated_types.rs:317:5:317:20 | ST | -| associated_types.rs:324:16:324:20 | SelfParam | TRef.T | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:324:39:326:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:324:39:326:9 | { ... } | E | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:324:39:326:9 | { ... } | T | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:325:13:325:22 | Ok(...) | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:325:13:325:22 | Ok(...) | E | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:325:13:325:22 | Ok(...) | T | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:325:16:325:19 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:325:16:325:19 | self | TRef | associated_types.rs:317:5:317:20 | ST | -| associated_types.rs:325:16:325:19 | self | TRef.T | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:325:16:325:21 | self.0 | | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:329:19:331:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:330:13:330:14 | _y | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:330:13:330:14 | _y | E | {EXTERNAL LOCATION} | bool | -| associated_types.rs:330:13:330:14 | _y | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:330:18:330:25 | ST(...) | | associated_types.rs:317:5:317:20 | ST | -| associated_types.rs:330:18:330:25 | ST(...) | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:330:18:330:31 | ... .get() | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:330:18:330:31 | ... .get() | E | {EXTERNAL LOCATION} | bool | -| associated_types.rs:330:18:330:31 | ... .get() | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:330:21:330:24 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:338:31:338:31 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:338:31:338:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:338:31:338:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:338:61:346:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:340:13:340:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:340:19:340:22 | (...) | | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:340:19:340:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:340:19:340:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:340:20:340:21 | * ... | | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:340:20:340:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:340:21:340:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:340:21:340:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:340:21:340:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:343:13:343:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:343:19:343:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:343:19:343:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:343:19:343:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:343:19:343:25 | t.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:345:13:345:15 | _a3 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:345:19:345:24 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:345:23:345:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:345:23:345:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:345:23:345:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:348:36:348:36 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:348:36:348:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:348:36:348:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:348:36:348:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:348:92:354:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:349:13:349:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:349:19:349:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:349:19:349:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:349:19:349:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:349:19:349:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:349:20:349:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:349:20:349:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:349:20:349:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:349:21:349:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:349:21:349:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:349:21:349:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:349:21:349:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:350:13:350:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:350:19:350:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:350:19:350:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:350:19:350:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:350:19:350:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:350:19:350:25 | t.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:351:13:351:15 | _a3 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:351:19:351:24 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:351:23:351:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:351:23:351:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:351:23:351:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:351:23:351:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:352:13:352:15 | _b1 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:352:19:352:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:352:19:352:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:352:19:352:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:352:19:352:36 | ... .get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:352:20:352:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:352:20:352:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:352:20:352:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:352:21:352:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:352:21:352:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:352:21:352:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:352:21:352:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:353:13:353:15 | _b2 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:353:19:353:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:353:19:353:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:353:19:353:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:353:19:353:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:353:19:353:33 | t.get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:357:15:364:1 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:358:5:358:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:359:5:359:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:360:5:360:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:361:5:361:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:362:5:362:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:363:5:363:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:53:20:53:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:53:20:53:24 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:53:50:55:5 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:54:9:54:12 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:62:12:62:16 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:62:12:62:16 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:62:12:62:16 | SelfParam | TRef.A | associated_types.rs:58:6:58:12 | T | +| associated_types.rs:62:35:64:5 | { ... } | | associated_types.rs:58:6:58:12 | T | +| associated_types.rs:63:9:63:12 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:63:9:63:12 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:63:9:63:12 | self | TRef.A | associated_types.rs:58:6:58:12 | T | +| associated_types.rs:63:9:63:14 | self.0 | | associated_types.rs:58:6:58:12 | T | +| associated_types.rs:72:12:72:16 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:72:12:72:16 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:72:12:72:16 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:72:35:74:5 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:73:9:73:12 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:80:12:80:16 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:80:12:80:16 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:80:12:80:16 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:80:35:82:5 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:81:9:81:11 | 'a' | | {EXTERNAL LOCATION} | char | +| associated_types.rs:92:15:92:18 | SelfParam | | associated_types.rs:88:5:103:5 | Self [trait MyTrait] | +| associated_types.rs:94:15:94:18 | SelfParam | | associated_types.rs:88:5:103:5 | Self [trait MyTrait] | +| associated_types.rs:98:9:102:9 | { ... } | | associated_types.rs:89:9:89:28 | AssociatedType[MyTrait] | +| associated_types.rs:99:13:99:16 | self | | associated_types.rs:88:5:103:5 | Self [trait MyTrait] | +| associated_types.rs:99:13:99:21 | self.m1() | | associated_types.rs:89:9:89:28 | AssociatedType[MyTrait] | +| associated_types.rs:101:13:101:43 | ...::default(...) | | associated_types.rs:89:9:89:28 | AssociatedType[MyTrait] | +| associated_types.rs:109:15:109:18 | SelfParam | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:109:45:111:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:110:13:110:14 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:118:15:118:18 | SelfParam | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:118:45:120:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:118:45:120:9 | { ... } | A | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:119:13:119:25 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:119:13:119:25 | Wrapper(...) | A | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:119:21:119:24 | self | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:123:19:137:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:124:13:124:14 | x1 | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:124:18:124:18 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:126:9:126:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| associated_types.rs:126:18:126:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:126:18:126:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:126:18:126:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:126:18:126:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:126:18:126:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:126:26:126:27 | x1 | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:126:26:126:32 | x1.m1() | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:128:13:128:14 | x2 | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:128:18:128:18 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:130:13:130:13 | y | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:130:17:130:18 | x2 | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:130:17:130:23 | x2.m2() | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:131:9:131:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| associated_types.rs:131:18:131:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:131:18:131:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:131:18:131:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:131:18:131:26 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:131:18:131:26 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:131:26:131:26 | y | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:133:13:133:14 | x5 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:133:18:133:19 | S2 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:134:9:134:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| associated_types.rs:134:18:134:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:134:18:134:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:134:18:134:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:134:18:134:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:134:18:134:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:134:26:134:27 | x5 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:134:26:134:32 | x5.m1() | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:134:26:134:32 | x5.m1() | A | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:135:13:135:14 | x6 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:135:18:135:19 | S2 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:136:9:136:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| associated_types.rs:136:18:136:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:136:18:136:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:136:18:136:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:136:18:136:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:136:18:136:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:136:26:136:27 | x6 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:136:26:136:32 | x6.m2() | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:136:26:136:32 | x6.m2() | A | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:144:9:144:9 | a | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:145:9:145:9 | b | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:146:9:146:9 | c | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:147:9:147:9 | d | | {EXTERNAL LOCATION} | char | +| associated_types.rs:148:7:153:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:149:13:149:14 | _a | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:149:18:149:18 | a | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:150:13:150:14 | _b | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:150:18:150:18 | b | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:151:13:151:14 | _c | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:151:18:151:18 | c | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:152:13:152:14 | _d | | {EXTERNAL LOCATION} | char | +| associated_types.rs:152:18:152:18 | d | | {EXTERNAL LOCATION} | char | +| associated_types.rs:173:17:173:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:173:17:173:21 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:173:17:173:21 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:173:52:176:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:174:17:174:17 | x | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:174:21:174:38 | ...::default(...) | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:175:13:175:13 | x | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:181:17:181:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:181:17:181:21 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:181:17:181:21 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:181:52:184:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:182:17:182:17 | x | | {EXTERNAL LOCATION} | char | +| associated_types.rs:182:21:182:38 | ...::default(...) | | {EXTERNAL LOCATION} | char | +| associated_types.rs:183:13:183:13 | x | | {EXTERNAL LOCATION} | char | +| associated_types.rs:187:19:192:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:188:9:188:34 | using_as(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:188:18:188:19 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:188:22:188:22 | 1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:188:25:188:28 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:188:31:188:33 | 'a' | | {EXTERNAL LOCATION} | char | +| associated_types.rs:190:13:190:14 | _a | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:190:18:190:27 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:190:18:190:27 | Odd(...) | OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:190:18:190:34 | ... .proj() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:190:22:190:26 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:191:13:191:14 | _b | | {EXTERNAL LOCATION} | char | +| associated_types.rs:191:18:191:26 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:191:18:191:26 | Odd(...) | OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:191:18:191:33 | ... .proj() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:191:22:191:25 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:206:20:206:20 | t | | associated_types.rs:204:17:204:17 | T | +| associated_types.rs:211:20:211:20 | t | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:211:45:217:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:212:13:216:13 | if t {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:212:16:212:16 | t | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:212:18:214:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:213:17:213:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:214:20:216:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:215:17:215:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:222:20:222:20 | t | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:222:44:224:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:223:13:223:13 | t | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:223:13:223:18 | ... != ... | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:223:18:223:18 | 0 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:229:23:229:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:229:23:229:27 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:229:30:229:30 | t | | associated_types.rs:229:20:229:20 | T | +| associated_types.rs:232:9:234:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:232:9:234:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:233:13:233:25 | ...::through(...) | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:233:13:233:25 | ...::through(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:233:24:233:24 | t | | associated_types.rs:229:20:229:20 | T | +| associated_types.rs:237:19:241:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:238:13:238:13 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:238:17:238:17 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:239:13:239:14 | _a | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:239:13:239:14 | _a | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:239:18:239:18 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:239:18:239:32 | s.convert(...) | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:239:18:239:32 | s.convert(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:239:28:239:31 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:240:13:240:14 | _b | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:240:13:240:14 | _b | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:240:18:240:18 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:240:18:240:30 | s.convert(...) | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:240:18:240:30 | s.convert(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:240:28:240:29 | 42 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:248:30:248:34 | thing | | associated_types.rs:248:19:248:27 | T | +| associated_types.rs:248:65:250:5 | { ... } | | associated_types.rs:248:19:248:27 | T::Output[GetSet] | +| associated_types.rs:249:9:249:13 | thing | | associated_types.rs:248:19:248:27 | T | +| associated_types.rs:249:9:249:19 | thing.get() | | associated_types.rs:248:19:248:27 | T::Output[GetSet] | +| associated_types.rs:252:33:252:37 | thing | | associated_types.rs:252:22:252:30 | T | +| associated_types.rs:252:56:254:5 | { ... } | | associated_types.rs:252:22:252:30 | T::Output[GetSet] | +| associated_types.rs:253:9:253:13 | thing | | associated_types.rs:252:22:252:30 | T | +| associated_types.rs:253:9:253:19 | thing.get() | | associated_types.rs:252:22:252:30 | T::Output[GetSet] | +| associated_types.rs:256:48:256:52 | thing | | associated_types.rs:256:33:256:45 | T | +| associated_types.rs:256:91:261:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:256:91:261:5 | { ... } | T0 | associated_types.rs:256:33:256:45 | T::Output[GetSet] | +| associated_types.rs:256:91:261:5 | { ... } | T1 | associated_types.rs:256:33:256:45 | T::AnotherOutput[AnotherGet] | +| associated_types.rs:257:9:260:9 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:257:9:260:9 | TupleExpr | T0 | associated_types.rs:256:33:256:45 | T::Output[GetSet] | +| associated_types.rs:257:9:260:9 | TupleExpr | T1 | associated_types.rs:256:33:256:45 | T::AnotherOutput[AnotherGet] | +| associated_types.rs:258:13:258:17 | thing | | associated_types.rs:256:33:256:45 | T | +| associated_types.rs:258:13:258:23 | thing.get() | | associated_types.rs:256:33:256:45 | T::Output[GetSet] | +| associated_types.rs:259:13:259:17 | thing | | associated_types.rs:256:33:256:45 | T | +| associated_types.rs:259:13:259:31 | thing.get_another() | | associated_types.rs:256:33:256:45 | T::AnotherOutput[AnotherGet] | +| associated_types.rs:268:20:268:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:268:20:268:24 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:268:20:268:24 | SelfParam | TRef.A | associated_types.rs:264:10:264:11 | TI | +| associated_types.rs:268:41:270:9 | { ... } | | associated_types.rs:264:10:264:11 | TI::Output[GetSet] | +| associated_types.rs:269:13:269:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:269:13:269:16 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:269:13:269:16 | self | TRef.A | associated_types.rs:264:10:264:11 | TI | +| associated_types.rs:269:13:269:18 | self.0 | | associated_types.rs:264:10:264:11 | TI | +| associated_types.rs:269:13:269:24 | ... .get() | | associated_types.rs:264:10:264:11 | TI::Output[GetSet] | +| associated_types.rs:275:40:275:44 | thing | | associated_types.rs:275:29:275:37 | T | +| associated_types.rs:279:9:279:13 | thing | | associated_types.rs:275:29:275:37 | T | +| associated_types.rs:279:9:279:19 | thing.get() | | associated_types.rs:275:29:275:37 | T::Output[GetSet] | +| associated_types.rs:286:21:286:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:286:21:286:25 | SelfParam | TRef | associated_types.rs:282:5:287:5 | Self [trait GetSetWrap] | +| associated_types.rs:293:21:293:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:293:21:293:25 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:293:43:295:9 | { ... } | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:294:13:294:13 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:303:21:303:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:303:21:303:25 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:303:21:303:25 | SelfParam | TRef.A | associated_types.rs:299:10:299:11 | TI | +| associated_types.rs:304:13:304:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:304:13:304:16 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:304:13:304:16 | self | TRef.A | associated_types.rs:299:10:299:11 | TI | +| associated_types.rs:304:13:304:18 | self.0 | | associated_types.rs:299:10:299:11 | TI | +| associated_types.rs:304:13:304:29 | ... .get_wrap() | | associated_types.rs:299:10:299:11 | TI::Assoc[GetSetWrap] | +| associated_types.rs:308:19:322:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:309:13:309:15 | _o1 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:309:19:309:31 | tp_with_as(...) | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:309:30:309:30 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:310:13:310:15 | _o2 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:310:19:310:34 | tp_without_as(...) | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:310:33:310:33 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:311:13:314:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:311:13:314:9 | TuplePat | T1 | {EXTERNAL LOCATION} | bool | +| associated_types.rs:313:13:313:15 | _o4 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:314:13:314:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:314:13:314:39 | tp_assoc_from_supertrait(...) | T1 | {EXTERNAL LOCATION} | bool | +| associated_types.rs:314:38:314:38 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:316:40:316:49 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:316:40:316:49 | Wrapper(...) | A | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:316:48:316:48 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:318:13:318:13 | w | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:318:13:318:13 | w | A | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:318:17:318:26 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:318:17:318:26 | Wrapper(...) | A | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:318:25:318:25 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:319:13:319:22 | _extracted | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:319:26:319:26 | w | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:319:26:319:26 | w | A | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:319:26:319:36 | w.extract() | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:321:27:321:27 | w | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:321:27:321:27 | w | A | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:329:26:329:26 | x | | associated_types.rs:329:23:329:23 | T | +| associated_types.rs:332:5:334:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:333:13:333:14 | _a | | {EXTERNAL LOCATION} | char | +| associated_types.rs:333:18:333:18 | x | | associated_types.rs:329:23:329:23 | T | +| associated_types.rs:333:18:333:24 | x.get() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:337:24:337:24 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:340:5:344:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:341:13:341:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:341:19:341:19 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:341:19:341:25 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:342:13:342:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:342:19:342:25 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:342:23:342:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:342:23:342:24 | &x | TRef | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:342:24:342:24 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:343:13:343:14 | _b | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:343:18:343:18 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:343:18:343:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:347:23:347:23 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:351:5:355:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:352:13:352:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:352:19:352:19 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:352:19:352:25 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:353:13:353:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:353:19:353:25 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:353:23:353:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:353:23:353:24 | &x | TRef | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:353:24:353:24 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:354:13:354:14 | _b | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:354:18:354:18 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:354:18:354:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:361:17:361:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:361:17:361:21 | SelfParam | TRef | associated_types.rs:357:5:362:5 | Self [trait AssocNameClash] | +| associated_types.rs:364:34:364:34 | x | | associated_types.rs:364:31:364:31 | T | +| associated_types.rs:368:5:371:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:369:13:369:14 | _a | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:369:18:369:18 | x | | associated_types.rs:364:31:364:31 | T | +| associated_types.rs:369:18:369:24 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:370:13:370:14 | _b | | {EXTERNAL LOCATION} | char | +| associated_types.rs:370:18:370:18 | x | | associated_types.rs:364:31:364:31 | T | +| associated_types.rs:370:18:370:25 | x.get2() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:381:19:381:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:381:19:381:23 | SelfParam | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:381:26:381:26 | a | | associated_types.rs:381:16:381:16 | A | +| associated_types.rs:384:23:384:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:384:23:384:27 | SelfParam | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:384:30:384:30 | a | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:384:36:384:36 | b | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:384:76:387:9 | { ... } | | associated_types.rs:378:9:378:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:385:13:385:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:385:13:385:16 | self | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:385:13:385:23 | self.put(...) | | associated_types.rs:378:9:378:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:385:22:385:22 | a | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:386:13:386:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:386:13:386:16 | self | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:386:13:386:23 | self.put(...) | | associated_types.rs:378:9:378:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:386:22:386:22 | b | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:395:19:395:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:395:19:395:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:395:26:395:26 | a | | associated_types.rs:395:16:395:16 | A | +| associated_types.rs:395:46:397:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:395:46:397:9 | { ... } | A | associated_types.rs:395:16:395:16 | A | +| associated_types.rs:396:13:396:22 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:396:13:396:22 | Wrapper(...) | A | associated_types.rs:395:16:395:16 | A | +| associated_types.rs:396:21:396:21 | a | | associated_types.rs:395:16:395:16 | A | +| associated_types.rs:400:19:407:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:401:13:401:13 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:401:17:401:17 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:403:13:403:15 | _g1 | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:403:13:403:15 | _g1 | A | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:403:19:403:19 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:403:19:403:29 | s.put(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:403:19:403:29 | s.put(...) | A | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:403:25:403:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:406:13:406:15 | _g2 | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:406:19:406:19 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:406:19:406:40 | s.put_two(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:406:29:406:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:406:35:406:39 | false | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:418:21:418:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:418:21:418:25 | SelfParam | TRef | associated_types.rs:413:5:423:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:420:20:420:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:420:20:420:24 | SelfParam | TRef | associated_types.rs:413:5:423:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:422:20:422:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:422:20:422:24 | SelfParam | TRef | associated_types.rs:413:5:423:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:429:21:429:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:429:21:429:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:429:34:431:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:430:13:430:14 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:433:20:433:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:433:20:433:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:433:43:435:9 | { ... } | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:434:13:434:13 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:437:20:437:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:437:20:437:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:437:43:439:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:438:13:438:14 | S2 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:442:19:446:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:443:13:443:23 | _assoc_zero | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:443:27:443:28 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:443:27:443:39 | S3.get_zero() | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:444:13:444:22 | _assoc_one | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:444:26:444:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:444:26:444:37 | S3.get_one() | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:445:13:445:22 | _assoc_two | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:445:26:445:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:445:26:445:37 | S3.get_two() | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:454:24:454:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:454:24:454:28 | SelfParam | TRef | associated_types.rs:452:5:455:5 | Self [trait Subtrait] | +| associated_types.rs:463:23:463:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:463:23:463:27 | SelfParam | TRef | associated_types.rs:457:5:467:5 | Self [trait Subtrait2] | +| associated_types.rs:463:30:463:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:463:48:463:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:463:66:466:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:464:13:464:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:464:13:464:16 | self | TRef | associated_types.rs:457:5:467:5 | Self [trait Subtrait2] | +| associated_types.rs:464:13:464:24 | self.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:464:22:464:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:465:13:465:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:465:13:465:16 | self | TRef | associated_types.rs:457:5:467:5 | Self [trait Subtrait2] | +| associated_types.rs:465:13:465:24 | self.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:465:22:465:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:474:16:474:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:474:16:474:20 | SelfParam | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:474:16:474:20 | SelfParam | TRef.T | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:474:39:476:9 | { ... } | | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:475:13:475:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:475:13:475:16 | self | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:475:13:475:16 | self | TRef.T | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:475:13:475:18 | self.0 | | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:478:16:478:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:478:16:478:20 | SelfParam | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:478:16:478:20 | SelfParam | TRef.T | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:478:23:478:30 | _content | | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:478:47:480:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:479:13:479:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| associated_types.rs:479:22:479:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:479:22:479:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:479:22:479:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:479:22:479:42 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:479:22:479:42 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:485:24:485:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:485:24:485:28 | SelfParam | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:485:24:485:28 | SelfParam | TRef.T | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:485:47:487:9 | { ... } | | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:486:13:486:19 | (...) | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:486:13:486:19 | (...) | T | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:486:13:486:21 | ... .0 | | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:486:14:486:18 | * ... | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:486:14:486:18 | * ... | T | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:486:15:486:18 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:486:15:486:18 | self | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:486:15:486:18 | self | TRef.T | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:492:24:492:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:492:24:492:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:492:24:492:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:492:47:495:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:494:13:494:30 | ...::default(...) | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:500:24:500:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:500:24:500:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:500:24:500:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:500:47:502:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:501:13:501:30 | ...::default(...) | | {EXTERNAL LOCATION} | char | +| associated_types.rs:505:33:505:36 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:505:33:505:36 | item | TRef | associated_types.rs:505:20:505:30 | T | +| associated_types.rs:505:56:507:5 | { ... } | | associated_types.rs:505:20:505:30 | T::Output[GetSet] | +| associated_types.rs:506:9:506:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:506:9:506:12 | item | TRef | associated_types.rs:505:20:505:30 | T | +| associated_types.rs:506:9:506:26 | item.get_content() | | associated_types.rs:505:20:505:30 | T::Output[GetSet] | +| associated_types.rs:509:35:509:38 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:509:35:509:38 | item | TRef | associated_types.rs:509:21:509:32 | T | +| associated_types.rs:509:45:509:46 | c1 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:509:60:509:61 | c2 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:509:75:509:76 | c3 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:509:90:512:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:510:9:510:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:510:9:510:12 | item | TRef | associated_types.rs:509:21:509:32 | T | +| associated_types.rs:510:9:510:20 | item.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:510:18:510:19 | c1 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:511:9:511:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:511:9:511:12 | item | TRef | associated_types.rs:509:21:509:32 | T | +| associated_types.rs:511:9:511:31 | item.insert_two(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:511:25:511:26 | c2 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:511:29:511:30 | c3 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:514:19:523:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:515:13:515:17 | item1 | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:515:13:515:17 | item1 | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:515:21:515:33 | MyType(...) | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:515:21:515:33 | MyType(...) | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:515:28:515:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:516:13:516:21 | _content1 | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:516:25:516:29 | item1 | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:516:25:516:29 | item1 | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:516:25:516:43 | item1.get_content() | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:518:13:518:17 | item2 | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:518:13:518:17 | item2 | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:518:21:518:32 | MyType(...) | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:518:21:518:32 | MyType(...) | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:518:28:518:31 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:519:37:519:42 | &item2 | | {EXTERNAL LOCATION} | & | +| associated_types.rs:519:37:519:42 | &item2 | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:519:37:519:42 | &item2 | TRef.T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:519:38:519:42 | item2 | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:519:38:519:42 | item2 | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:521:13:521:21 | _content3 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:521:25:521:34 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:521:25:521:34 | Odd(...) | OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:521:25:521:48 | ... .get_content() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:521:29:521:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:522:13:522:21 | _content4 | | {EXTERNAL LOCATION} | char | +| associated_types.rs:522:25:522:33 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:522:25:522:33 | Odd(...) | OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:522:25:522:47 | ... .get_content() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:522:29:522:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:536:16:536:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:536:16:536:20 | SelfParam | TRef | associated_types.rs:529:5:529:20 | ST | +| associated_types.rs:536:16:536:20 | SelfParam | TRef.T | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:536:39:538:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:536:39:538:9 | { ... } | E | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:536:39:538:9 | { ... } | T | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:537:13:537:22 | Ok(...) | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:537:13:537:22 | Ok(...) | E | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:537:13:537:22 | Ok(...) | T | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:537:16:537:19 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:537:16:537:19 | self | TRef | associated_types.rs:529:5:529:20 | ST | +| associated_types.rs:537:16:537:19 | self | TRef.T | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:537:16:537:21 | self.0 | | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:541:19:543:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:542:13:542:14 | _y | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:542:13:542:14 | _y | E | {EXTERNAL LOCATION} | bool | +| associated_types.rs:542:13:542:14 | _y | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:542:18:542:25 | ST(...) | | associated_types.rs:529:5:529:20 | ST | +| associated_types.rs:542:18:542:25 | ST(...) | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:542:18:542:31 | ... .get() | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:542:18:542:31 | ... .get() | E | {EXTERNAL LOCATION} | bool | +| associated_types.rs:542:18:542:31 | ... .get() | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:542:21:542:24 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:550:31:550:31 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:550:31:550:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:550:31:550:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:550:61:558:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:552:13:552:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:552:19:552:22 | (...) | | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:552:19:552:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:552:19:552:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:552:20:552:21 | * ... | | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:552:20:552:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:552:21:552:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:552:21:552:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:552:21:552:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:555:13:555:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:555:19:555:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:555:19:555:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:555:19:555:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:555:19:555:25 | t.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:557:13:557:15 | _a3 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:557:19:557:24 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:557:23:557:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:557:23:557:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:557:23:557:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:560:36:560:36 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:560:36:560:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:560:36:560:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:560:36:560:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:560:92:566:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:561:13:561:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:561:19:561:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:561:19:561:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:561:19:561:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:561:19:561:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:561:20:561:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:561:20:561:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:561:20:561:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:561:21:561:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:561:21:561:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:561:21:561:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:561:21:561:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:562:13:562:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:562:19:562:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:562:19:562:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:562:19:562:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:562:19:562:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:562:19:562:25 | t.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:563:13:563:15 | _a3 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:563:19:563:24 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:563:23:563:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:563:23:563:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:563:23:563:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:563:23:563:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:564:13:564:15 | _b1 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:564:19:564:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:564:19:564:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:564:19:564:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:564:19:564:36 | ... .get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:564:20:564:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:564:20:564:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:564:20:564:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:564:21:564:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:564:21:564:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:564:21:564:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:564:21:564:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:565:13:565:15 | _b2 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:565:19:565:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:565:19:565:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:565:19:565:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:565:19:565:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:565:19:565:33 | t.get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:569:15:578:1 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:570:5:570:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:571:5:571:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:572:5:572:59 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:573:5:573:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:574:5:574:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:575:5:575:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:576:5:576:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:577:5:577:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:15:18:15:22 | SelfParam | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:15:18:15:22 | SelfParam | TRef | blanket_impl.rs:9:5:10:14 | S2 | | blanket_impl.rs:15:42:17:9 | { ... } | | {EXTERNAL LOCATION} | & | @@ -5756,6 +6191,7 @@ inferType | closure.rs:147:9:147:9 | f | A | {EXTERNAL LOCATION} | Global | | closure.rs:147:9:147:9 | f | T | closure.rs:146:26:146:51 | F | | closure.rs:147:9:147:14 | f(...) | | closure.rs:146:23:146:23 | B | +| closure.rs:147:9:147:14 | f(...) | | {EXTERNAL LOCATION} | F::Output[FnOnce] | | closure.rs:147:11:147:13 | arg | | closure.rs:146:20:146:20 | A | | closure.rs:150:30:150:30 | f | | {EXTERNAL LOCATION} | Box | | closure.rs:150:30:150:30 | f | A | {EXTERNAL LOCATION} | Global | @@ -6595,7 +7031,7 @@ inferType | main.rs:121:39:123:9 | { ... } | | {EXTERNAL LOCATION} | bool | | main.rs:122:13:122:16 | self | | main.rs:110:5:113:5 | MyThing | | main.rs:122:13:122:22 | self.field | | {EXTERNAL LOCATION} | bool | -| main.rs:126:16:132:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:126:16:135:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:127:13:127:13 | x | | main.rs:110:5:113:5 | MyThing | | main.rs:127:17:127:39 | MyThing {...} | | main.rs:110:5:113:5 | MyThing | | main.rs:127:34:127:37 | true | | {EXTERNAL LOCATION} | bool | @@ -6608,5331 +7044,5594 @@ inferType | main.rs:131:13:131:13 | b | | {EXTERNAL LOCATION} | bool | | main.rs:131:17:131:40 | ...::trait_method(...) | | {EXTERNAL LOCATION} | bool | | main.rs:131:39:131:39 | y | | main.rs:110:5:113:5 | MyThing | -| main.rs:141:25:141:29 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:141:25:141:29 | SelfParam | TRef | main.rs:139:9:144:9 | Self [trait Foo] | -| main.rs:141:32:143:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:142:17:142:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:142:26:142:31 | "foo!\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:142:26:142:31 | "foo!\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:142:26:142:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:142:26:142:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:142:26:142:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:148:25:148:29 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:148:25:148:29 | SelfParam | TRef | main.rs:146:9:151:9 | Self [trait Bar] | -| main.rs:148:32:150:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:149:17:149:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:149:26:149:31 | "bar!\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:149:26:149:31 | "bar!\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:149:26:149:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:149:26:149:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:149:26:149:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:160:15:181:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:161:13:161:13 | x | | main.rs:153:9:153:21 | X | -| main.rs:161:17:161:17 | X | | main.rs:153:9:153:21 | X | -| main.rs:162:9:165:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:164:13:164:13 | x | | main.rs:153:9:153:21 | X | -| main.rs:164:13:164:24 | x.a_method() | | {EXTERNAL LOCATION} | () | -| main.rs:166:9:169:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:168:13:168:13 | x | | main.rs:153:9:153:21 | X | -| main.rs:168:13:168:24 | x.a_method() | | {EXTERNAL LOCATION} | () | -| main.rs:170:9:173:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:172:13:172:13 | x | | main.rs:153:9:153:21 | X | -| main.rs:172:13:172:24 | x.a_method() | | {EXTERNAL LOCATION} | () | -| main.rs:174:9:180:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:178:13:178:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | -| main.rs:178:27:178:28 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:178:27:178:28 | &x | TRef | main.rs:153:9:153:21 | X | -| main.rs:178:28:178:28 | x | | main.rs:153:9:153:21 | X | -| main.rs:179:13:179:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | -| main.rs:179:27:179:28 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:179:27:179:28 | &x | TRef | main.rs:153:9:153:21 | X | -| main.rs:179:28:179:28 | x | | main.rs:153:9:153:21 | X | -| main.rs:197:15:197:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | -| main.rs:197:15:197:18 | SelfParam | A | main.rs:190:5:191:14 | S1 | -| main.rs:197:27:199:9 | { ... } | | main.rs:190:5:191:14 | S1 | -| main.rs:198:13:198:16 | self | | main.rs:185:5:188:5 | MyThing | -| main.rs:198:13:198:16 | self | A | main.rs:190:5:191:14 | S1 | -| main.rs:198:13:198:18 | self.a | | main.rs:190:5:191:14 | S1 | -| main.rs:204:15:204:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | -| main.rs:204:15:204:18 | SelfParam | A | main.rs:192:5:193:14 | S2 | -| main.rs:204:29:206:9 | { ... } | | main.rs:185:5:188:5 | MyThing | -| main.rs:204:29:206:9 | { ... } | A | main.rs:192:5:193:14 | S2 | -| main.rs:205:13:205:30 | Self {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:205:13:205:30 | Self {...} | A | main.rs:192:5:193:14 | S2 | -| main.rs:205:23:205:26 | self | | main.rs:185:5:188:5 | MyThing | -| main.rs:205:23:205:26 | self | A | main.rs:192:5:193:14 | S2 | -| main.rs:205:23:205:28 | self.a | | main.rs:192:5:193:14 | S2 | -| main.rs:210:15:210:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | -| main.rs:210:15:210:18 | SelfParam | A | main.rs:209:10:209:10 | T | -| main.rs:210:26:212:9 | { ... } | | main.rs:209:10:209:10 | T | -| main.rs:211:13:211:16 | self | | main.rs:185:5:188:5 | MyThing | -| main.rs:211:13:211:16 | self | A | main.rs:209:10:209:10 | T | -| main.rs:211:13:211:18 | self.a | | main.rs:209:10:209:10 | T | -| main.rs:215:16:231:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:216:13:216:13 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:216:13:216:13 | x | A | main.rs:190:5:191:14 | S1 | -| main.rs:216:17:216:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:216:17:216:33 | MyThing {...} | A | main.rs:190:5:191:14 | S1 | -| main.rs:216:30:216:31 | S1 | | main.rs:190:5:191:14 | S1 | -| main.rs:217:13:217:13 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:217:13:217:13 | y | A | main.rs:192:5:193:14 | S2 | -| main.rs:217:17:217:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:217:17:217:33 | MyThing {...} | A | main.rs:192:5:193:14 | S2 | -| main.rs:217:30:217:31 | S2 | | main.rs:192:5:193:14 | S2 | -| main.rs:220:9:220:29 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:220:18:220:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:220:18:220:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:220:18:220:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:220:18:220:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:220:18:220:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:220:26:220:26 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:220:26:220:26 | x | A | main.rs:190:5:191:14 | S1 | -| main.rs:220:26:220:28 | x.a | | main.rs:190:5:191:14 | S1 | -| main.rs:221:9:221:29 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:221:18:221:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:221:18:221:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:221:18:221:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:221:18:221:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:221:18:221:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:221:26:221:26 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:221:26:221:26 | y | A | main.rs:192:5:193:14 | S2 | -| main.rs:221:26:221:28 | y.a | | main.rs:192:5:193:14 | S2 | -| main.rs:223:9:223:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:133:13:133:13 | z | | main.rs:110:5:113:5 | MyThing | +| main.rs:133:17:133:40 | MyThing {...} | | main.rs:110:5:113:5 | MyThing | +| main.rs:133:34:133:38 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:134:13:134:13 | c | | {EXTERNAL LOCATION} | bool | +| main.rs:134:17:134:59 | ...::trait_method(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:134:58:134:58 | z | | main.rs:110:5:113:5 | MyThing | +| main.rs:144:25:144:29 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:144:25:144:29 | SelfParam | TRef | main.rs:142:9:147:9 | Self [trait Foo] | +| main.rs:144:32:146:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:145:17:145:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:145:26:145:31 | "foo!\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:145:26:145:31 | "foo!\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:145:26:145:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:145:26:145:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:145:26:145:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:151:25:151:29 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:151:25:151:29 | SelfParam | TRef | main.rs:149:9:154:9 | Self [trait Bar] | +| main.rs:151:32:153:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:152:17:152:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:152:26:152:31 | "bar!\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:152:26:152:31 | "bar!\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:152:26:152:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:152:26:152:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:152:26:152:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:163:15:184:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:164:13:164:13 | x | | main.rs:156:9:156:21 | X | +| main.rs:164:17:164:17 | X | | main.rs:156:9:156:21 | X | +| main.rs:165:9:168:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:167:13:167:13 | x | | main.rs:156:9:156:21 | X | +| main.rs:167:13:167:24 | x.a_method() | | {EXTERNAL LOCATION} | () | +| main.rs:169:9:172:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:171:13:171:13 | x | | main.rs:156:9:156:21 | X | +| main.rs:171:13:171:24 | x.a_method() | | {EXTERNAL LOCATION} | () | +| main.rs:173:9:176:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:175:13:175:13 | x | | main.rs:156:9:156:21 | X | +| main.rs:175:13:175:24 | x.a_method() | | {EXTERNAL LOCATION} | () | +| main.rs:177:9:183:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:181:13:181:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | +| main.rs:181:27:181:28 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:181:27:181:28 | &x | TRef | main.rs:156:9:156:21 | X | +| main.rs:181:28:181:28 | x | | main.rs:156:9:156:21 | X | +| main.rs:182:13:182:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | +| main.rs:182:27:182:28 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:182:27:182:28 | &x | TRef | main.rs:156:9:156:21 | X | +| main.rs:182:28:182:28 | x | | main.rs:156:9:156:21 | X | +| main.rs:200:15:200:18 | SelfParam | | main.rs:188:5:191:5 | MyThing | +| main.rs:200:15:200:18 | SelfParam | A | main.rs:193:5:194:14 | S1 | +| main.rs:200:27:202:9 | { ... } | | main.rs:193:5:194:14 | S1 | +| main.rs:201:13:201:16 | self | | main.rs:188:5:191:5 | MyThing | +| main.rs:201:13:201:16 | self | A | main.rs:193:5:194:14 | S1 | +| main.rs:201:13:201:18 | self.a | | main.rs:193:5:194:14 | S1 | +| main.rs:207:15:207:18 | SelfParam | | main.rs:188:5:191:5 | MyThing | +| main.rs:207:15:207:18 | SelfParam | A | main.rs:195:5:196:14 | S2 | +| main.rs:207:29:209:9 | { ... } | | main.rs:188:5:191:5 | MyThing | +| main.rs:207:29:209:9 | { ... } | A | main.rs:195:5:196:14 | S2 | +| main.rs:208:13:208:30 | Self {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:208:13:208:30 | Self {...} | A | main.rs:195:5:196:14 | S2 | +| main.rs:208:23:208:26 | self | | main.rs:188:5:191:5 | MyThing | +| main.rs:208:23:208:26 | self | A | main.rs:195:5:196:14 | S2 | +| main.rs:208:23:208:28 | self.a | | main.rs:195:5:196:14 | S2 | +| main.rs:213:15:213:18 | SelfParam | | main.rs:188:5:191:5 | MyThing | +| main.rs:213:15:213:18 | SelfParam | A | main.rs:212:10:212:10 | T | +| main.rs:213:26:215:9 | { ... } | | main.rs:212:10:212:10 | T | +| main.rs:214:13:214:16 | self | | main.rs:188:5:191:5 | MyThing | +| main.rs:214:13:214:16 | self | A | main.rs:212:10:212:10 | T | +| main.rs:214:13:214:18 | self.a | | main.rs:212:10:212:10 | T | +| main.rs:218:16:234:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:219:13:219:13 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:219:13:219:13 | x | A | main.rs:193:5:194:14 | S1 | +| main.rs:219:17:219:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:219:17:219:33 | MyThing {...} | A | main.rs:193:5:194:14 | S1 | +| main.rs:219:30:219:31 | S1 | | main.rs:193:5:194:14 | S1 | +| main.rs:220:13:220:13 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:220:13:220:13 | y | A | main.rs:195:5:196:14 | S2 | +| main.rs:220:17:220:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:220:17:220:33 | MyThing {...} | A | main.rs:195:5:196:14 | S2 | +| main.rs:220:30:220:31 | S2 | | main.rs:195:5:196:14 | S2 | +| main.rs:223:9:223:29 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:223:18:223:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:223:18:223:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:223:18:223:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:223:18:223:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:223:18:223:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:223:26:223:26 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:223:26:223:26 | x | A | main.rs:190:5:191:14 | S1 | -| main.rs:223:26:223:31 | x.m1() | | main.rs:190:5:191:14 | S1 | -| main.rs:224:9:224:34 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:223:18:223:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:223:18:223:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:223:18:223:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:223:26:223:26 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:223:26:223:26 | x | A | main.rs:193:5:194:14 | S1 | +| main.rs:223:26:223:28 | x.a | | main.rs:193:5:194:14 | S1 | +| main.rs:224:9:224:29 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:224:18:224:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:224:18:224:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:224:18:224:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:224:18:224:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:224:18:224:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:224:26:224:26 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:224:26:224:26 | y | A | main.rs:192:5:193:14 | S2 | -| main.rs:224:26:224:31 | y.m1() | | main.rs:185:5:188:5 | MyThing | -| main.rs:224:26:224:31 | y.m1() | A | main.rs:192:5:193:14 | S2 | -| main.rs:224:26:224:33 | ... .a | | main.rs:192:5:193:14 | S2 | -| main.rs:226:13:226:13 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:226:13:226:13 | x | A | main.rs:190:5:191:14 | S1 | -| main.rs:226:17:226:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:226:17:226:33 | MyThing {...} | A | main.rs:190:5:191:14 | S1 | -| main.rs:226:30:226:31 | S1 | | main.rs:190:5:191:14 | S1 | -| main.rs:227:13:227:13 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:227:13:227:13 | y | A | main.rs:192:5:193:14 | S2 | -| main.rs:227:17:227:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:227:17:227:33 | MyThing {...} | A | main.rs:192:5:193:14 | S2 | -| main.rs:227:30:227:31 | S2 | | main.rs:192:5:193:14 | S2 | -| main.rs:229:9:229:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:229:18:229:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:229:18:229:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:229:18:229:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:229:18:229:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:229:18:229:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:229:26:229:26 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:229:26:229:26 | x | A | main.rs:190:5:191:14 | S1 | -| main.rs:229:26:229:31 | x.m2() | | main.rs:190:5:191:14 | S1 | -| main.rs:230:9:230:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:230:18:230:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:230:18:230:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:230:18:230:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:230:18:230:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:230:18:230:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:230:26:230:26 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:230:26:230:26 | y | A | main.rs:192:5:193:14 | S2 | -| main.rs:230:26:230:31 | y.m2() | | main.rs:192:5:193:14 | S2 | -| main.rs:254:15:254:18 | SelfParam | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:256:15:256:18 | SelfParam | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:259:9:261:9 | { ... } | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:260:13:260:16 | self | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:266:16:266:19 | SelfParam | | main.rs:264:5:269:5 | Self [trait MyProduct] | -| main.rs:268:16:268:19 | SelfParam | | main.rs:264:5:269:5 | Self [trait MyProduct] | -| main.rs:271:43:271:43 | x | | main.rs:271:26:271:40 | T2 | -| main.rs:271:56:273:5 | { ... } | | main.rs:271:22:271:23 | T1 | -| main.rs:272:9:272:9 | x | | main.rs:271:26:271:40 | T2 | -| main.rs:272:9:272:14 | x.m1() | | main.rs:271:22:271:23 | T1 | -| main.rs:277:15:277:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | -| main.rs:277:15:277:18 | SelfParam | A | main.rs:246:5:247:14 | S1 | -| main.rs:277:27:279:9 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:278:13:278:16 | self | | main.rs:235:5:238:5 | MyThing | -| main.rs:278:13:278:16 | self | A | main.rs:246:5:247:14 | S1 | -| main.rs:278:13:278:18 | self.a | | main.rs:246:5:247:14 | S1 | -| main.rs:284:15:284:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | -| main.rs:284:15:284:18 | SelfParam | A | main.rs:248:5:249:14 | S2 | -| main.rs:284:29:286:9 | { ... } | | main.rs:235:5:238:5 | MyThing | -| main.rs:284:29:286:9 | { ... } | A | main.rs:248:5:249:14 | S2 | -| main.rs:285:13:285:30 | Self {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:285:13:285:30 | Self {...} | A | main.rs:248:5:249:14 | S2 | -| main.rs:285:23:285:26 | self | | main.rs:235:5:238:5 | MyThing | -| main.rs:285:23:285:26 | self | A | main.rs:248:5:249:14 | S2 | -| main.rs:285:23:285:28 | self.a | | main.rs:248:5:249:14 | S2 | -| main.rs:296:15:296:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | -| main.rs:296:15:296:18 | SelfParam | A | main.rs:250:5:251:14 | S3 | -| main.rs:296:27:298:9 | { ... } | | main.rs:291:10:291:11 | TD | -| main.rs:297:13:297:25 | ...::default(...) | | main.rs:291:10:291:11 | TD | -| main.rs:303:15:303:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:303:15:303:18 | SelfParam | P1 | main.rs:301:10:301:10 | I | -| main.rs:303:15:303:18 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:303:26:305:9 | { ... } | | main.rs:301:10:301:10 | I | -| main.rs:304:13:304:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:304:13:304:16 | self | P1 | main.rs:301:10:301:10 | I | -| main.rs:304:13:304:16 | self | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:304:13:304:19 | self.p1 | | main.rs:301:10:301:10 | I | -| main.rs:310:15:310:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:310:15:310:18 | SelfParam | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:310:15:310:18 | SelfParam | P2 | main.rs:248:5:249:14 | S2 | -| main.rs:310:27:312:9 | { ... } | | main.rs:250:5:251:14 | S3 | -| main.rs:311:13:311:14 | S3 | | main.rs:250:5:251:14 | S3 | -| main.rs:317:15:317:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:317:15:317:18 | SelfParam | P1 | main.rs:235:5:238:5 | MyThing | -| main.rs:317:15:317:18 | SelfParam | P1.A | main.rs:315:10:315:11 | TT | -| main.rs:317:15:317:18 | SelfParam | P2 | main.rs:250:5:251:14 | S3 | -| main.rs:317:27:320:9 | { ... } | | main.rs:315:10:315:11 | TT | -| main.rs:318:17:318:21 | alpha | | main.rs:235:5:238:5 | MyThing | -| main.rs:318:17:318:21 | alpha | A | main.rs:315:10:315:11 | TT | -| main.rs:318:25:318:28 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:318:25:318:28 | self | P1 | main.rs:235:5:238:5 | MyThing | -| main.rs:318:25:318:28 | self | P1.A | main.rs:315:10:315:11 | TT | -| main.rs:318:25:318:28 | self | P2 | main.rs:250:5:251:14 | S3 | -| main.rs:318:25:318:31 | self.p1 | | main.rs:235:5:238:5 | MyThing | -| main.rs:318:25:318:31 | self.p1 | A | main.rs:315:10:315:11 | TT | -| main.rs:319:13:319:17 | alpha | | main.rs:235:5:238:5 | MyThing | -| main.rs:319:13:319:17 | alpha | A | main.rs:315:10:315:11 | TT | -| main.rs:319:13:319:19 | alpha.a | | main.rs:315:10:315:11 | TT | -| main.rs:326:16:326:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:326:16:326:19 | SelfParam | P1 | main.rs:324:10:324:10 | A | -| main.rs:326:16:326:19 | SelfParam | P2 | main.rs:324:10:324:10 | A | -| main.rs:326:27:328:9 | { ... } | | main.rs:324:10:324:10 | A | -| main.rs:327:13:327:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:327:13:327:16 | self | P1 | main.rs:324:10:324:10 | A | -| main.rs:327:13:327:16 | self | P2 | main.rs:324:10:324:10 | A | -| main.rs:327:13:327:19 | self.p1 | | main.rs:324:10:324:10 | A | -| main.rs:331:16:331:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:331:16:331:19 | SelfParam | P1 | main.rs:324:10:324:10 | A | -| main.rs:331:16:331:19 | SelfParam | P2 | main.rs:324:10:324:10 | A | -| main.rs:331:27:333:9 | { ... } | | main.rs:324:10:324:10 | A | -| main.rs:332:13:332:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:332:13:332:16 | self | P1 | main.rs:324:10:324:10 | A | -| main.rs:332:13:332:16 | self | P2 | main.rs:324:10:324:10 | A | -| main.rs:332:13:332:19 | self.p2 | | main.rs:324:10:324:10 | A | -| main.rs:339:16:339:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:339:16:339:19 | SelfParam | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:339:16:339:19 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:339:28:341:9 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:340:13:340:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:340:13:340:16 | self | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:340:13:340:16 | self | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:340:13:340:19 | self.p2 | | main.rs:246:5:247:14 | S1 | -| main.rs:344:16:344:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:344:16:344:19 | SelfParam | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:344:16:344:19 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:344:28:346:9 | { ... } | | main.rs:248:5:249:14 | S2 | -| main.rs:345:13:345:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:345:13:345:16 | self | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:345:13:345:16 | self | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:345:13:345:19 | self.p1 | | main.rs:248:5:249:14 | S2 | -| main.rs:349:46:349:46 | p | | main.rs:349:24:349:43 | P | -| main.rs:349:58:351:5 | { ... } | | main.rs:349:16:349:17 | V1 | -| main.rs:350:9:350:9 | p | | main.rs:349:24:349:43 | P | -| main.rs:350:9:350:15 | p.fst() | | main.rs:349:16:349:17 | V1 | -| main.rs:353:46:353:46 | p | | main.rs:353:24:353:43 | P | -| main.rs:353:58:355:5 | { ... } | | main.rs:353:20:353:21 | V2 | -| main.rs:354:9:354:9 | p | | main.rs:353:24:353:43 | P | -| main.rs:354:9:354:15 | p.snd() | | main.rs:353:20:353:21 | V2 | -| main.rs:357:54:357:54 | p | | main.rs:240:5:244:5 | MyPair | -| main.rs:357:54:357:54 | p | P1 | main.rs:357:20:357:21 | V0 | -| main.rs:357:54:357:54 | p | P2 | main.rs:357:32:357:51 | P | -| main.rs:357:78:359:5 | { ... } | | main.rs:357:24:357:25 | V1 | -| main.rs:358:9:358:9 | p | | main.rs:240:5:244:5 | MyPair | -| main.rs:358:9:358:9 | p | P1 | main.rs:357:20:357:21 | V0 | -| main.rs:358:9:358:9 | p | P2 | main.rs:357:32:357:51 | P | -| main.rs:358:9:358:12 | p.p2 | | main.rs:357:32:357:51 | P | -| main.rs:358:9:358:18 | ... .fst() | | main.rs:357:24:357:25 | V1 | -| main.rs:363:23:363:26 | SelfParam | | main.rs:361:5:364:5 | Self [trait ConvertTo] | -| main.rs:368:23:368:26 | SelfParam | | main.rs:366:10:366:23 | T | -| main.rs:368:35:370:9 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:369:13:369:16 | self | | main.rs:366:10:366:23 | T | -| main.rs:369:13:369:21 | self.m1() | | main.rs:246:5:247:14 | S1 | -| main.rs:373:41:373:45 | thing | | main.rs:373:23:373:38 | T | -| main.rs:373:57:375:5 | { ... } | | main.rs:373:19:373:20 | TS | -| main.rs:374:9:374:13 | thing | | main.rs:373:23:373:38 | T | -| main.rs:374:9:374:26 | thing.convert_to() | | main.rs:373:19:373:20 | TS | -| main.rs:377:56:377:60 | thing | | main.rs:377:39:377:53 | TP | -| main.rs:377:73:380:5 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:379:9:379:13 | thing | | main.rs:377:39:377:53 | TP | -| main.rs:379:9:379:26 | thing.convert_to() | | main.rs:246:5:247:14 | S1 | -| main.rs:382:16:453:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:383:13:383:20 | thing_s1 | | main.rs:235:5:238:5 | MyThing | -| main.rs:383:13:383:20 | thing_s1 | A | main.rs:246:5:247:14 | S1 | -| main.rs:383:24:383:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:383:24:383:40 | MyThing {...} | A | main.rs:246:5:247:14 | S1 | -| main.rs:383:37:383:38 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:384:13:384:20 | thing_s2 | | main.rs:235:5:238:5 | MyThing | -| main.rs:384:13:384:20 | thing_s2 | A | main.rs:248:5:249:14 | S2 | -| main.rs:384:24:384:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:384:24:384:40 | MyThing {...} | A | main.rs:248:5:249:14 | S2 | -| main.rs:384:37:384:38 | S2 | | main.rs:248:5:249:14 | S2 | -| main.rs:385:13:385:20 | thing_s3 | | main.rs:235:5:238:5 | MyThing | -| main.rs:385:13:385:20 | thing_s3 | A | main.rs:250:5:251:14 | S3 | -| main.rs:385:24:385:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:385:24:385:40 | MyThing {...} | A | main.rs:250:5:251:14 | S3 | -| main.rs:385:37:385:38 | S3 | | main.rs:250:5:251:14 | S3 | -| main.rs:389:9:389:39 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:389:18:389:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:389:18:389:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:389:18:389:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:389:18:389:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:389:18:389:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:389:26:389:33 | thing_s1 | | main.rs:235:5:238:5 | MyThing | -| main.rs:389:26:389:33 | thing_s1 | A | main.rs:246:5:247:14 | S1 | -| main.rs:389:26:389:38 | thing_s1.m1() | | main.rs:246:5:247:14 | S1 | -| main.rs:390:9:390:41 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:390:18:390:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:390:18:390:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:390:18:390:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:390:18:390:40 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:390:18:390:40 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:390:26:390:33 | thing_s2 | | main.rs:235:5:238:5 | MyThing | -| main.rs:390:26:390:33 | thing_s2 | A | main.rs:248:5:249:14 | S2 | -| main.rs:390:26:390:38 | thing_s2.m1() | | main.rs:235:5:238:5 | MyThing | -| main.rs:390:26:390:38 | thing_s2.m1() | A | main.rs:248:5:249:14 | S2 | -| main.rs:390:26:390:40 | ... .a | | main.rs:248:5:249:14 | S2 | -| main.rs:391:13:391:14 | s3 | | main.rs:250:5:251:14 | S3 | -| main.rs:391:22:391:29 | thing_s3 | | main.rs:235:5:238:5 | MyThing | -| main.rs:391:22:391:29 | thing_s3 | A | main.rs:250:5:251:14 | S3 | -| main.rs:391:22:391:34 | thing_s3.m1() | | main.rs:250:5:251:14 | S3 | -| main.rs:392:9:392:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:224:18:224:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:224:18:224:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:224:18:224:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:224:26:224:26 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:224:26:224:26 | y | A | main.rs:195:5:196:14 | S2 | +| main.rs:224:26:224:28 | y.a | | main.rs:195:5:196:14 | S2 | +| main.rs:226:9:226:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:226:18:226:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:226:18:226:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:226:18:226:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:226:18:226:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:226:18:226:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:226:26:226:26 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:226:26:226:26 | x | A | main.rs:193:5:194:14 | S1 | +| main.rs:226:26:226:31 | x.m1() | | main.rs:193:5:194:14 | S1 | +| main.rs:227:9:227:34 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:227:18:227:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:227:18:227:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:227:18:227:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:227:18:227:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:227:18:227:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:227:26:227:26 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:227:26:227:26 | y | A | main.rs:195:5:196:14 | S2 | +| main.rs:227:26:227:31 | y.m1() | | main.rs:188:5:191:5 | MyThing | +| main.rs:227:26:227:31 | y.m1() | A | main.rs:195:5:196:14 | S2 | +| main.rs:227:26:227:33 | ... .a | | main.rs:195:5:196:14 | S2 | +| main.rs:229:13:229:13 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:229:13:229:13 | x | A | main.rs:193:5:194:14 | S1 | +| main.rs:229:17:229:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:229:17:229:33 | MyThing {...} | A | main.rs:193:5:194:14 | S1 | +| main.rs:229:30:229:31 | S1 | | main.rs:193:5:194:14 | S1 | +| main.rs:230:13:230:13 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:230:13:230:13 | y | A | main.rs:195:5:196:14 | S2 | +| main.rs:230:17:230:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:230:17:230:33 | MyThing {...} | A | main.rs:195:5:196:14 | S2 | +| main.rs:230:30:230:31 | S2 | | main.rs:195:5:196:14 | S2 | +| main.rs:232:9:232:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:232:18:232:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:232:18:232:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:232:18:232:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:232:18:232:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:232:18:232:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:232:26:232:26 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:232:26:232:26 | x | A | main.rs:193:5:194:14 | S1 | +| main.rs:232:26:232:31 | x.m2() | | main.rs:193:5:194:14 | S1 | +| main.rs:233:9:233:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:233:18:233:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:233:18:233:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:233:18:233:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:233:18:233:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:233:18:233:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:233:26:233:26 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:233:26:233:26 | y | A | main.rs:195:5:196:14 | S2 | +| main.rs:233:26:233:31 | y.m2() | | main.rs:195:5:196:14 | S2 | +| main.rs:257:15:257:18 | SelfParam | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:259:15:259:18 | SelfParam | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:262:9:264:9 | { ... } | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:263:13:263:16 | self | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:269:16:269:19 | SelfParam | | main.rs:267:5:272:5 | Self [trait MyProduct] | +| main.rs:271:16:271:19 | SelfParam | | main.rs:267:5:272:5 | Self [trait MyProduct] | +| main.rs:274:43:274:43 | x | | main.rs:274:26:274:40 | T2 | +| main.rs:274:56:276:5 | { ... } | | main.rs:274:22:274:23 | T1 | +| main.rs:275:9:275:9 | x | | main.rs:274:26:274:40 | T2 | +| main.rs:275:9:275:14 | x.m1() | | main.rs:274:22:274:23 | T1 | +| main.rs:280:15:280:18 | SelfParam | | main.rs:238:5:241:5 | MyThing | +| main.rs:280:15:280:18 | SelfParam | A | main.rs:249:5:250:14 | S1 | +| main.rs:280:27:282:9 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:281:13:281:16 | self | | main.rs:238:5:241:5 | MyThing | +| main.rs:281:13:281:16 | self | A | main.rs:249:5:250:14 | S1 | +| main.rs:281:13:281:18 | self.a | | main.rs:249:5:250:14 | S1 | +| main.rs:287:15:287:18 | SelfParam | | main.rs:238:5:241:5 | MyThing | +| main.rs:287:15:287:18 | SelfParam | A | main.rs:251:5:252:14 | S2 | +| main.rs:287:29:289:9 | { ... } | | main.rs:238:5:241:5 | MyThing | +| main.rs:287:29:289:9 | { ... } | A | main.rs:251:5:252:14 | S2 | +| main.rs:288:13:288:30 | Self {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:288:13:288:30 | Self {...} | A | main.rs:251:5:252:14 | S2 | +| main.rs:288:23:288:26 | self | | main.rs:238:5:241:5 | MyThing | +| main.rs:288:23:288:26 | self | A | main.rs:251:5:252:14 | S2 | +| main.rs:288:23:288:28 | self.a | | main.rs:251:5:252:14 | S2 | +| main.rs:299:15:299:18 | SelfParam | | main.rs:238:5:241:5 | MyThing | +| main.rs:299:15:299:18 | SelfParam | A | main.rs:253:5:254:14 | S3 | +| main.rs:299:27:301:9 | { ... } | | main.rs:294:10:294:11 | TD | +| main.rs:300:13:300:25 | ...::default(...) | | main.rs:294:10:294:11 | TD | +| main.rs:306:15:306:18 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:306:15:306:18 | SelfParam | P1 | main.rs:304:10:304:10 | I | +| main.rs:306:15:306:18 | SelfParam | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:306:26:308:9 | { ... } | | main.rs:304:10:304:10 | I | +| main.rs:307:13:307:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:307:13:307:16 | self | P1 | main.rs:304:10:304:10 | I | +| main.rs:307:13:307:16 | self | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:307:13:307:19 | self.p1 | | main.rs:304:10:304:10 | I | +| main.rs:313:15:313:18 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:313:15:313:18 | SelfParam | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:313:15:313:18 | SelfParam | P2 | main.rs:251:5:252:14 | S2 | +| main.rs:313:27:315:9 | { ... } | | main.rs:253:5:254:14 | S3 | +| main.rs:314:13:314:14 | S3 | | main.rs:253:5:254:14 | S3 | +| main.rs:320:15:320:18 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:320:15:320:18 | SelfParam | P1 | main.rs:238:5:241:5 | MyThing | +| main.rs:320:15:320:18 | SelfParam | P1.A | main.rs:318:10:318:11 | TT | +| main.rs:320:15:320:18 | SelfParam | P2 | main.rs:253:5:254:14 | S3 | +| main.rs:320:27:323:9 | { ... } | | main.rs:318:10:318:11 | TT | +| main.rs:321:17:321:21 | alpha | | main.rs:238:5:241:5 | MyThing | +| main.rs:321:17:321:21 | alpha | A | main.rs:318:10:318:11 | TT | +| main.rs:321:25:321:28 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:321:25:321:28 | self | P1 | main.rs:238:5:241:5 | MyThing | +| main.rs:321:25:321:28 | self | P1.A | main.rs:318:10:318:11 | TT | +| main.rs:321:25:321:28 | self | P2 | main.rs:253:5:254:14 | S3 | +| main.rs:321:25:321:31 | self.p1 | | main.rs:238:5:241:5 | MyThing | +| main.rs:321:25:321:31 | self.p1 | A | main.rs:318:10:318:11 | TT | +| main.rs:322:13:322:17 | alpha | | main.rs:238:5:241:5 | MyThing | +| main.rs:322:13:322:17 | alpha | A | main.rs:318:10:318:11 | TT | +| main.rs:322:13:322:19 | alpha.a | | main.rs:318:10:318:11 | TT | +| main.rs:329:16:329:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:329:16:329:19 | SelfParam | P1 | main.rs:327:10:327:10 | A | +| main.rs:329:16:329:19 | SelfParam | P2 | main.rs:327:10:327:10 | A | +| main.rs:329:27:331:9 | { ... } | | main.rs:327:10:327:10 | A | +| main.rs:330:13:330:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:330:13:330:16 | self | P1 | main.rs:327:10:327:10 | A | +| main.rs:330:13:330:16 | self | P2 | main.rs:327:10:327:10 | A | +| main.rs:330:13:330:19 | self.p1 | | main.rs:327:10:327:10 | A | +| main.rs:334:16:334:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:334:16:334:19 | SelfParam | P1 | main.rs:327:10:327:10 | A | +| main.rs:334:16:334:19 | SelfParam | P2 | main.rs:327:10:327:10 | A | +| main.rs:334:27:336:9 | { ... } | | main.rs:327:10:327:10 | A | +| main.rs:335:13:335:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:335:13:335:16 | self | P1 | main.rs:327:10:327:10 | A | +| main.rs:335:13:335:16 | self | P2 | main.rs:327:10:327:10 | A | +| main.rs:335:13:335:19 | self.p2 | | main.rs:327:10:327:10 | A | +| main.rs:342:16:342:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:342:16:342:19 | SelfParam | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:342:16:342:19 | SelfParam | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:342:28:344:9 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:343:13:343:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:343:13:343:16 | self | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:343:13:343:16 | self | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:343:13:343:19 | self.p2 | | main.rs:249:5:250:14 | S1 | +| main.rs:347:16:347:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:347:16:347:19 | SelfParam | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:347:16:347:19 | SelfParam | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:347:28:349:9 | { ... } | | main.rs:251:5:252:14 | S2 | +| main.rs:348:13:348:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:348:13:348:16 | self | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:348:13:348:16 | self | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:348:13:348:19 | self.p1 | | main.rs:251:5:252:14 | S2 | +| main.rs:352:46:352:46 | p | | main.rs:352:24:352:43 | P | +| main.rs:352:58:354:5 | { ... } | | main.rs:352:16:352:17 | V1 | +| main.rs:353:9:353:9 | p | | main.rs:352:24:352:43 | P | +| main.rs:353:9:353:15 | p.fst() | | main.rs:352:16:352:17 | V1 | +| main.rs:356:46:356:46 | p | | main.rs:356:24:356:43 | P | +| main.rs:356:58:358:5 | { ... } | | main.rs:356:20:356:21 | V2 | +| main.rs:357:9:357:9 | p | | main.rs:356:24:356:43 | P | +| main.rs:357:9:357:15 | p.snd() | | main.rs:356:20:356:21 | V2 | +| main.rs:360:54:360:54 | p | | main.rs:243:5:247:5 | MyPair | +| main.rs:360:54:360:54 | p | P1 | main.rs:360:20:360:21 | V0 | +| main.rs:360:54:360:54 | p | P2 | main.rs:360:32:360:51 | P | +| main.rs:360:78:362:5 | { ... } | | main.rs:360:24:360:25 | V1 | +| main.rs:361:9:361:9 | p | | main.rs:243:5:247:5 | MyPair | +| main.rs:361:9:361:9 | p | P1 | main.rs:360:20:360:21 | V0 | +| main.rs:361:9:361:9 | p | P2 | main.rs:360:32:360:51 | P | +| main.rs:361:9:361:12 | p.p2 | | main.rs:360:32:360:51 | P | +| main.rs:361:9:361:18 | ... .fst() | | main.rs:360:24:360:25 | V1 | +| main.rs:366:23:366:26 | SelfParam | | main.rs:364:5:367:5 | Self [trait ConvertTo] | +| main.rs:371:23:371:26 | SelfParam | | main.rs:369:10:369:23 | T | +| main.rs:371:35:373:9 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:372:13:372:16 | self | | main.rs:369:10:369:23 | T | +| main.rs:372:13:372:21 | self.m1() | | main.rs:249:5:250:14 | S1 | +| main.rs:376:41:376:45 | thing | | main.rs:376:23:376:38 | T | +| main.rs:376:57:378:5 | { ... } | | main.rs:376:19:376:20 | TS | +| main.rs:377:9:377:13 | thing | | main.rs:376:23:376:38 | T | +| main.rs:377:9:377:26 | thing.convert_to() | | main.rs:376:19:376:20 | TS | +| main.rs:380:56:380:60 | thing | | main.rs:380:39:380:53 | TP | +| main.rs:380:73:383:5 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:382:9:382:13 | thing | | main.rs:380:39:380:53 | TP | +| main.rs:382:9:382:26 | thing.convert_to() | | main.rs:249:5:250:14 | S1 | +| main.rs:385:16:456:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:386:13:386:20 | thing_s1 | | main.rs:238:5:241:5 | MyThing | +| main.rs:386:13:386:20 | thing_s1 | A | main.rs:249:5:250:14 | S1 | +| main.rs:386:24:386:40 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:386:24:386:40 | MyThing {...} | A | main.rs:249:5:250:14 | S1 | +| main.rs:386:37:386:38 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:387:13:387:20 | thing_s2 | | main.rs:238:5:241:5 | MyThing | +| main.rs:387:13:387:20 | thing_s2 | A | main.rs:251:5:252:14 | S2 | +| main.rs:387:24:387:40 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:387:24:387:40 | MyThing {...} | A | main.rs:251:5:252:14 | S2 | +| main.rs:387:37:387:38 | S2 | | main.rs:251:5:252:14 | S2 | +| main.rs:388:13:388:20 | thing_s3 | | main.rs:238:5:241:5 | MyThing | +| main.rs:388:13:388:20 | thing_s3 | A | main.rs:253:5:254:14 | S3 | +| main.rs:388:24:388:40 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:388:24:388:40 | MyThing {...} | A | main.rs:253:5:254:14 | S3 | +| main.rs:388:37:388:38 | S3 | | main.rs:253:5:254:14 | S3 | +| main.rs:392:9:392:39 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:392:18:392:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:392:18:392:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:392:18:392:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:392:18:392:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:392:18:392:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:392:26:392:27 | s3 | | main.rs:250:5:251:14 | S3 | -| main.rs:394:13:394:14 | p1 | | main.rs:240:5:244:5 | MyPair | -| main.rs:394:13:394:14 | p1 | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:394:13:394:14 | p1 | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:394:18:394:42 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:394:18:394:42 | MyPair {...} | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:394:18:394:42 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:394:31:394:32 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:394:39:394:40 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:395:9:395:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:392:18:392:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:392:18:392:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:392:18:392:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:392:26:392:33 | thing_s1 | | main.rs:238:5:241:5 | MyThing | +| main.rs:392:26:392:33 | thing_s1 | A | main.rs:249:5:250:14 | S1 | +| main.rs:392:26:392:38 | thing_s1.m1() | | main.rs:249:5:250:14 | S1 | +| main.rs:393:9:393:41 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:393:18:393:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:393:18:393:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:393:18:393:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:393:18:393:40 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:393:18:393:40 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:393:26:393:33 | thing_s2 | | main.rs:238:5:241:5 | MyThing | +| main.rs:393:26:393:33 | thing_s2 | A | main.rs:251:5:252:14 | S2 | +| main.rs:393:26:393:38 | thing_s2.m1() | | main.rs:238:5:241:5 | MyThing | +| main.rs:393:26:393:38 | thing_s2.m1() | A | main.rs:251:5:252:14 | S2 | +| main.rs:393:26:393:40 | ... .a | | main.rs:251:5:252:14 | S2 | +| main.rs:394:13:394:14 | s3 | | main.rs:253:5:254:14 | S3 | +| main.rs:394:22:394:29 | thing_s3 | | main.rs:238:5:241:5 | MyThing | +| main.rs:394:22:394:29 | thing_s3 | A | main.rs:253:5:254:14 | S3 | +| main.rs:394:22:394:34 | thing_s3.m1() | | main.rs:253:5:254:14 | S3 | +| main.rs:395:9:395:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:395:18:395:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:395:18:395:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:395:18:395:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:395:18:395:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:395:18:395:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:395:26:395:27 | p1 | | main.rs:240:5:244:5 | MyPair | -| main.rs:395:26:395:27 | p1 | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:395:26:395:27 | p1 | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:395:26:395:32 | p1.m1() | | main.rs:246:5:247:14 | S1 | -| main.rs:397:13:397:14 | p2 | | main.rs:240:5:244:5 | MyPair | -| main.rs:397:13:397:14 | p2 | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:397:13:397:14 | p2 | P2 | main.rs:248:5:249:14 | S2 | -| main.rs:397:18:397:42 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:397:18:397:42 | MyPair {...} | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:397:18:397:42 | MyPair {...} | P2 | main.rs:248:5:249:14 | S2 | -| main.rs:397:31:397:32 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:397:39:397:40 | S2 | | main.rs:248:5:249:14 | S2 | +| main.rs:395:18:395:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:395:18:395:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:395:18:395:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:395:26:395:27 | s3 | | main.rs:253:5:254:14 | S3 | +| main.rs:397:13:397:14 | p1 | | main.rs:243:5:247:5 | MyPair | +| main.rs:397:13:397:14 | p1 | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:397:13:397:14 | p1 | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:397:18:397:42 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:397:18:397:42 | MyPair {...} | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:397:18:397:42 | MyPair {...} | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:397:31:397:32 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:397:39:397:40 | S1 | | main.rs:249:5:250:14 | S1 | | main.rs:398:9:398:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:398:18:398:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:398:18:398:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:398:18:398:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:398:18:398:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:398:18:398:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:398:26:398:27 | p2 | | main.rs:240:5:244:5 | MyPair | -| main.rs:398:26:398:27 | p2 | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:398:26:398:27 | p2 | P2 | main.rs:248:5:249:14 | S2 | -| main.rs:398:26:398:32 | p2.m1() | | main.rs:250:5:251:14 | S3 | -| main.rs:400:13:400:14 | p3 | | main.rs:240:5:244:5 | MyPair | -| main.rs:400:13:400:14 | p3 | P1 | main.rs:235:5:238:5 | MyThing | -| main.rs:400:13:400:14 | p3 | P1.A | main.rs:246:5:247:14 | S1 | -| main.rs:400:13:400:14 | p3 | P2 | main.rs:250:5:251:14 | S3 | -| main.rs:400:18:403:9 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:400:18:403:9 | MyPair {...} | P1 | main.rs:235:5:238:5 | MyThing | -| main.rs:400:18:403:9 | MyPair {...} | P1.A | main.rs:246:5:247:14 | S1 | -| main.rs:400:18:403:9 | MyPair {...} | P2 | main.rs:250:5:251:14 | S3 | -| main.rs:401:17:401:33 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:401:17:401:33 | MyThing {...} | A | main.rs:246:5:247:14 | S1 | -| main.rs:401:30:401:31 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:402:17:402:18 | S3 | | main.rs:250:5:251:14 | S3 | -| main.rs:404:9:404:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:404:18:404:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:404:18:404:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:404:18:404:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:404:18:404:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:404:18:404:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:404:26:404:27 | p3 | | main.rs:240:5:244:5 | MyPair | -| main.rs:404:26:404:27 | p3 | P1 | main.rs:235:5:238:5 | MyThing | -| main.rs:404:26:404:27 | p3 | P1.A | main.rs:246:5:247:14 | S1 | -| main.rs:404:26:404:27 | p3 | P2 | main.rs:250:5:251:14 | S3 | -| main.rs:404:26:404:32 | p3.m1() | | main.rs:246:5:247:14 | S1 | -| main.rs:407:13:407:13 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:407:13:407:13 | a | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:407:13:407:13 | a | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:407:17:407:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:407:17:407:41 | MyPair {...} | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:407:17:407:41 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:407:30:407:31 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:407:38:407:39 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:408:13:408:13 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:408:17:408:17 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:408:17:408:17 | a | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:408:17:408:17 | a | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:408:17:408:23 | a.fst() | | main.rs:246:5:247:14 | S1 | -| main.rs:409:9:409:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:409:18:409:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:409:18:409:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:409:18:409:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:409:18:409:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:409:18:409:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:409:26:409:26 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:410:13:410:13 | y | | main.rs:246:5:247:14 | S1 | -| main.rs:410:17:410:17 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:410:17:410:17 | a | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:410:17:410:17 | a | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:410:17:410:23 | a.snd() | | main.rs:246:5:247:14 | S1 | -| main.rs:411:9:411:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:411:18:411:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:411:18:411:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:411:18:411:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:411:18:411:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:411:18:411:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:411:26:411:26 | y | | main.rs:246:5:247:14 | S1 | -| main.rs:417:13:417:13 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:417:13:417:13 | b | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:417:13:417:13 | b | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:417:17:417:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:417:17:417:41 | MyPair {...} | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:417:17:417:41 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:417:30:417:31 | S2 | | main.rs:248:5:249:14 | S2 | -| main.rs:417:38:417:39 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:418:13:418:13 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:418:17:418:17 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:418:17:418:17 | b | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:418:17:418:17 | b | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:418:17:418:23 | b.fst() | | main.rs:246:5:247:14 | S1 | -| main.rs:419:9:419:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:419:18:419:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:419:18:419:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:419:18:419:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:419:18:419:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:419:18:419:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:419:26:419:26 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:420:13:420:13 | y | | main.rs:248:5:249:14 | S2 | -| main.rs:420:17:420:17 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:420:17:420:17 | b | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:420:17:420:17 | b | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:420:17:420:23 | b.snd() | | main.rs:248:5:249:14 | S2 | -| main.rs:421:9:421:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:421:18:421:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:421:18:421:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:421:18:421:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:421:18:421:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:421:18:421:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:421:26:421:26 | y | | main.rs:248:5:249:14 | S2 | -| main.rs:425:13:425:13 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:425:17:425:39 | call_trait_m1(...) | | main.rs:246:5:247:14 | S1 | -| main.rs:425:31:425:38 | thing_s1 | | main.rs:235:5:238:5 | MyThing | -| main.rs:425:31:425:38 | thing_s1 | A | main.rs:246:5:247:14 | S1 | -| main.rs:426:9:426:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:426:18:426:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:426:18:426:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:426:18:426:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:426:18:426:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:426:18:426:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:426:26:426:26 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:427:13:427:13 | y | | main.rs:235:5:238:5 | MyThing | -| main.rs:427:13:427:13 | y | A | main.rs:248:5:249:14 | S2 | -| main.rs:427:17:427:39 | call_trait_m1(...) | | main.rs:235:5:238:5 | MyThing | -| main.rs:427:17:427:39 | call_trait_m1(...) | A | main.rs:248:5:249:14 | S2 | -| main.rs:427:31:427:38 | thing_s2 | | main.rs:235:5:238:5 | MyThing | -| main.rs:427:31:427:38 | thing_s2 | A | main.rs:248:5:249:14 | S2 | -| main.rs:428:9:428:29 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:428:18:428:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:428:18:428:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:428:18:428:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:428:18:428:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:428:18:428:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:428:26:428:26 | y | | main.rs:235:5:238:5 | MyThing | -| main.rs:428:26:428:26 | y | A | main.rs:248:5:249:14 | S2 | -| main.rs:428:26:428:28 | y.a | | main.rs:248:5:249:14 | S2 | -| main.rs:431:13:431:13 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:431:13:431:13 | a | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:431:13:431:13 | a | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:431:17:431:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:431:17:431:41 | MyPair {...} | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:431:17:431:41 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:431:30:431:31 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:431:38:431:39 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:432:13:432:13 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:432:17:432:26 | get_fst(...) | | main.rs:246:5:247:14 | S1 | -| main.rs:432:25:432:25 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:432:25:432:25 | a | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:432:25:432:25 | a | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:433:9:433:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:433:18:433:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:433:18:433:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:433:18:433:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:433:18:433:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:433:18:433:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:433:26:433:26 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:434:13:434:13 | y | | main.rs:246:5:247:14 | S1 | -| main.rs:434:17:434:26 | get_snd(...) | | main.rs:246:5:247:14 | S1 | -| main.rs:434:25:434:25 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:434:25:434:25 | a | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:434:25:434:25 | a | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:435:9:435:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:435:18:435:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:435:18:435:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:435:18:435:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:435:18:435:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:435:18:435:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:435:26:435:26 | y | | main.rs:246:5:247:14 | S1 | -| main.rs:438:13:438:13 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:438:13:438:13 | b | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:438:13:438:13 | b | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:438:17:438:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:438:17:438:41 | MyPair {...} | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:438:17:438:41 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:438:30:438:31 | S2 | | main.rs:248:5:249:14 | S2 | -| main.rs:438:38:438:39 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:439:13:439:13 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:439:17:439:26 | get_fst(...) | | main.rs:246:5:247:14 | S1 | -| main.rs:439:25:439:25 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:439:25:439:25 | b | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:439:25:439:25 | b | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:440:9:440:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:440:18:440:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:440:18:440:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:440:18:440:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:440:18:440:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:440:18:440:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:440:26:440:26 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:441:13:441:13 | y | | main.rs:248:5:249:14 | S2 | -| main.rs:441:17:441:26 | get_snd(...) | | main.rs:248:5:249:14 | S2 | -| main.rs:441:25:441:25 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:441:25:441:25 | b | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:441:25:441:25 | b | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:442:9:442:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:442:18:442:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:442:18:442:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:442:18:442:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:442:18:442:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:442:18:442:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:442:26:442:26 | y | | main.rs:248:5:249:14 | S2 | -| main.rs:444:13:444:13 | c | | main.rs:240:5:244:5 | MyPair | -| main.rs:444:13:444:13 | c | P1 | main.rs:250:5:251:14 | S3 | -| main.rs:444:13:444:13 | c | P2 | main.rs:240:5:244:5 | MyPair | -| main.rs:444:13:444:13 | c | P2.P1 | main.rs:248:5:249:14 | S2 | -| main.rs:444:13:444:13 | c | P2.P2 | main.rs:246:5:247:14 | S1 | -| main.rs:444:17:447:9 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:444:17:447:9 | MyPair {...} | P1 | main.rs:250:5:251:14 | S3 | -| main.rs:444:17:447:9 | MyPair {...} | P2 | main.rs:240:5:244:5 | MyPair | -| main.rs:444:17:447:9 | MyPair {...} | P2.P1 | main.rs:248:5:249:14 | S2 | -| main.rs:444:17:447:9 | MyPair {...} | P2.P2 | main.rs:246:5:247:14 | S1 | -| main.rs:445:17:445:18 | S3 | | main.rs:250:5:251:14 | S3 | -| main.rs:446:17:446:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:446:17:446:41 | MyPair {...} | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:446:17:446:41 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:446:30:446:31 | S2 | | main.rs:248:5:249:14 | S2 | -| main.rs:446:38:446:39 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:448:13:448:13 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:448:17:448:30 | get_snd_fst(...) | | main.rs:246:5:247:14 | S1 | -| main.rs:448:29:448:29 | c | | main.rs:240:5:244:5 | MyPair | -| main.rs:448:29:448:29 | c | P1 | main.rs:250:5:251:14 | S3 | -| main.rs:448:29:448:29 | c | P2 | main.rs:240:5:244:5 | MyPair | -| main.rs:448:29:448:29 | c | P2.P1 | main.rs:248:5:249:14 | S2 | -| main.rs:448:29:448:29 | c | P2.P2 | main.rs:246:5:247:14 | S1 | -| main.rs:450:13:450:17 | thing | | main.rs:235:5:238:5 | MyThing | -| main.rs:450:13:450:17 | thing | A | main.rs:246:5:247:14 | S1 | -| main.rs:450:21:450:37 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:450:21:450:37 | MyThing {...} | A | main.rs:246:5:247:14 | S1 | -| main.rs:450:34:450:35 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:451:13:451:13 | i | | main.rs:246:5:247:14 | S1 | -| main.rs:451:17:451:21 | thing | | main.rs:235:5:238:5 | MyThing | -| main.rs:451:17:451:21 | thing | A | main.rs:246:5:247:14 | S1 | -| main.rs:451:17:451:34 | thing.convert_to() | | main.rs:246:5:247:14 | S1 | -| main.rs:452:28:452:32 | thing | | main.rs:235:5:238:5 | MyThing | -| main.rs:452:28:452:32 | thing | A | main.rs:246:5:247:14 | S1 | -| main.rs:461:26:461:29 | SelfParam | | main.rs:460:5:464:5 | Self [trait OverlappingTrait] | -| main.rs:463:28:463:31 | SelfParam | | main.rs:460:5:464:5 | Self [trait OverlappingTrait] | -| main.rs:463:34:463:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:468:26:468:29 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:468:38:470:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:469:13:469:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:473:28:473:31 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:473:34:473:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:473:48:475:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:474:13:474:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:480:26:480:29 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:480:38:482:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:481:13:481:16 | self | | main.rs:457:5:458:14 | S1 | -| main.rs:485:28:485:31 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:485:40:487:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:486:13:486:16 | self | | main.rs:457:5:458:14 | S1 | -| main.rs:494:26:494:29 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:494:26:494:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:494:38:496:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:495:13:495:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:499:28:499:31 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:499:28:499:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:499:40:501:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:500:13:500:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:506:26:506:29 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:506:26:506:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:506:38:508:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:507:13:507:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:511:28:511:31 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:511:28:511:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:511:34:511:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:511:48:513:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:512:13:512:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:518:26:518:29 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:518:26:518:29 | SelfParam | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:518:38:520:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:519:13:519:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:523:28:523:31 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:523:28:523:31 | SelfParam | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:523:34:523:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:523:48:525:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:524:13:524:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:532:14:532:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:532:14:532:18 | SelfParam | TRef | main.rs:531:5:533:5 | Self [trait OverlappingTrait2] | -| main.rs:532:21:532:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:532:21:532:21 | x | TRef | main.rs:531:29:531:29 | T | -| main.rs:537:14:537:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:537:14:537:18 | SelfParam | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:537:14:537:18 | SelfParam | TRef.T3 | main.rs:535:10:535:10 | T | -| main.rs:537:21:537:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:537:21:537:21 | x | TRef | main.rs:535:10:535:10 | T | -| main.rs:537:37:539:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:537:37:539:9 | { ... } | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:537:37:539:9 | { ... } | TRef.T3 | main.rs:535:10:535:10 | T | -| main.rs:538:13:538:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:538:13:538:16 | self | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:538:13:538:16 | self | TRef.T3 | main.rs:535:10:535:10 | T | -| main.rs:544:14:544:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:544:14:544:18 | SelfParam | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:544:14:544:18 | SelfParam | TRef.T3 | main.rs:542:10:542:10 | T | -| main.rs:544:21:544:21 | x | | main.rs:542:10:542:10 | T | -| main.rs:544:36:546:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:544:36:546:9 | { ... } | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:544:36:546:9 | { ... } | TRef.T3 | main.rs:542:10:542:10 | T | -| main.rs:545:13:545:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:545:13:545:16 | self | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:545:13:545:16 | self | TRef.T3 | main.rs:542:10:542:10 | T | -| main.rs:551:14:551:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:551:14:551:18 | SelfParam | TRef | main.rs:549:5:552:5 | Self [trait MyTrait1] | -| main.rs:551:21:551:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:561:14:561:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:561:14:561:18 | SelfParam | TRef | main.rs:556:5:557:14 | S4 | -| main.rs:561:21:561:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:571:14:571:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:571:14:571:18 | SelfParam | TRef | main.rs:566:5:567:22 | S5 | -| main.rs:571:14:571:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:571:21:571:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:580:16:606:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:581:13:581:13 | x | | main.rs:457:5:458:14 | S1 | -| main.rs:581:17:581:18 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:582:9:582:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:582:18:582:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:582:18:582:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:582:18:582:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:582:18:582:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:582:18:582:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:582:26:582:26 | x | | main.rs:457:5:458:14 | S1 | -| main.rs:582:26:582:42 | x.common_method() | | main.rs:457:5:458:14 | S1 | -| main.rs:583:9:583:46 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:583:18:583:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:583:18:583:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:583:18:583:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:583:18:583:45 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:583:18:583:45 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:583:26:583:45 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:583:44:583:44 | x | | main.rs:457:5:458:14 | S1 | -| main.rs:584:9:584:45 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:584:18:584:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:584:18:584:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:584:18:584:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:584:18:584:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:584:18:584:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:584:26:584:26 | x | | main.rs:457:5:458:14 | S1 | -| main.rs:584:26:584:44 | x.common_method_2() | | main.rs:457:5:458:14 | S1 | -| main.rs:585:9:585:48 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:585:18:585:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:585:18:585:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:585:18:585:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:585:18:585:47 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:585:18:585:47 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:585:26:585:47 | ...::common_method_2(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:585:46:585:46 | x | | main.rs:457:5:458:14 | S1 | -| main.rs:587:13:587:13 | y | | main.rs:490:5:490:22 | S2 | -| main.rs:587:13:587:13 | y | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:587:17:587:22 | S2(...) | | main.rs:490:5:490:22 | S2 | -| main.rs:587:17:587:22 | S2(...) | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:587:20:587:21 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:588:9:588:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:588:18:588:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:588:18:588:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:588:18:588:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:588:18:588:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:588:18:588:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:588:26:588:26 | y | | main.rs:490:5:490:22 | S2 | -| main.rs:588:26:588:26 | y | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:588:26:588:42 | y.common_method() | | main.rs:457:5:458:14 | S1 | -| main.rs:589:9:589:57 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:589:18:589:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:589:18:589:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:589:18:589:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:589:18:589:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:589:18:589:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:589:26:589:56 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:589:50:589:55 | S2(...) | | main.rs:490:5:490:22 | S2 | -| main.rs:589:50:589:55 | S2(...) | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:589:53:589:54 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:591:13:591:13 | z | | main.rs:490:5:490:22 | S2 | -| main.rs:591:13:591:13 | z | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:591:17:591:21 | S2(...) | | main.rs:490:5:490:22 | S2 | -| main.rs:591:17:591:21 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:591:20:591:20 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:592:9:592:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:592:18:592:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:592:18:592:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:592:18:592:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:592:18:592:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:592:18:592:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:592:26:592:26 | z | | main.rs:490:5:490:22 | S2 | -| main.rs:592:26:592:26 | z | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:592:26:592:42 | z.common_method() | | main.rs:457:5:458:14 | S1 | -| main.rs:593:9:593:50 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:593:18:593:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:593:18:593:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:593:18:593:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:593:18:593:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:593:18:593:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:593:26:593:49 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:593:44:593:48 | S2(...) | | main.rs:490:5:490:22 | S2 | -| main.rs:593:44:593:48 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:593:47:593:47 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:594:9:594:57 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:594:18:594:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:594:18:594:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:594:18:594:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:594:18:594:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:594:18:594:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:594:26:594:56 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:594:51:594:55 | S2(...) | | main.rs:490:5:490:22 | S2 | -| main.rs:594:51:594:55 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:594:54:594:54 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:596:13:596:13 | w | | main.rs:528:5:529:22 | S3 | -| main.rs:596:13:596:13 | w | T3 | main.rs:457:5:458:14 | S1 | -| main.rs:596:17:596:22 | S3(...) | | main.rs:528:5:529:22 | S3 | -| main.rs:596:17:596:22 | S3(...) | T3 | main.rs:457:5:458:14 | S1 | -| main.rs:596:20:596:21 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:597:9:597:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:597:18:597:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:597:18:597:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:597:18:597:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:597:18:597:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:597:18:597:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:597:26:597:26 | w | | main.rs:528:5:529:22 | S3 | -| main.rs:597:26:597:26 | w | T3 | main.rs:457:5:458:14 | S1 | -| main.rs:597:26:597:31 | w.m(...) | | {EXTERNAL LOCATION} | & | -| main.rs:597:26:597:31 | w.m(...) | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:597:26:597:31 | w.m(...) | TRef.T3 | main.rs:457:5:458:14 | S1 | -| main.rs:597:30:597:30 | x | | main.rs:457:5:458:14 | S1 | -| main.rs:598:9:598:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:598:18:598:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:598:18:598:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:598:18:598:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:598:18:598:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:598:18:598:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:598:26:598:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | -| main.rs:598:26:598:37 | ...::m(...) | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:598:26:598:37 | ...::m(...) | TRef.T3 | main.rs:457:5:458:14 | S1 | -| main.rs:598:32:598:33 | &w | | {EXTERNAL LOCATION} | & | -| main.rs:598:32:598:33 | &w | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:598:32:598:33 | &w | TRef.T3 | main.rs:457:5:458:14 | S1 | -| main.rs:598:33:598:33 | w | | main.rs:528:5:529:22 | S3 | -| main.rs:598:33:598:33 | w | T3 | main.rs:457:5:458:14 | S1 | -| main.rs:598:36:598:36 | x | | main.rs:457:5:458:14 | S1 | -| main.rs:600:9:600:10 | S4 | | main.rs:556:5:557:14 | S4 | -| main.rs:600:9:600:14 | S4.m() | | {EXTERNAL LOCATION} | () | -| main.rs:601:9:601:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:601:15:601:17 | &S4 | | {EXTERNAL LOCATION} | & | -| main.rs:601:15:601:17 | &S4 | TRef | main.rs:556:5:557:14 | S4 | -| main.rs:601:16:601:17 | S4 | | main.rs:556:5:557:14 | S4 | -| main.rs:602:9:602:16 | S5(...) | | main.rs:566:5:567:22 | S5 | -| main.rs:602:9:602:16 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:602:9:602:20 | ... .m() | | {EXTERNAL LOCATION} | () | -| main.rs:602:12:602:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:603:9:603:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:603:15:603:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:603:15:603:23 | &... | TRef | main.rs:566:5:567:22 | S5 | -| main.rs:603:15:603:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:603:16:603:23 | S5(...) | | main.rs:566:5:567:22 | S5 | -| main.rs:603:16:603:23 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:603:19:603:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:604:9:604:16 | S5(...) | | main.rs:566:5:567:22 | S5 | -| main.rs:604:9:604:16 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | -| main.rs:604:9:604:20 | ... .m() | | {EXTERNAL LOCATION} | () | -| main.rs:604:12:604:15 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:605:9:605:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:605:15:605:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:605:15:605:23 | &... | TRef | main.rs:566:5:567:22 | S5 | -| main.rs:605:15:605:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | bool | -| main.rs:605:16:605:23 | S5(...) | | main.rs:566:5:567:22 | S5 | -| main.rs:605:16:605:23 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | -| main.rs:605:19:605:22 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:622:19:622:22 | SelfParam | | main.rs:620:5:623:5 | Self [trait FirstTrait] | -| main.rs:627:19:627:22 | SelfParam | | main.rs:625:5:628:5 | Self [trait SecondTrait] | -| main.rs:630:64:630:64 | x | | main.rs:630:45:630:61 | T | -| main.rs:630:70:634:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:632:13:632:14 | s1 | | main.rs:630:35:630:42 | I | -| main.rs:632:18:632:18 | x | | main.rs:630:45:630:61 | T | -| main.rs:632:18:632:27 | x.method() | | main.rs:630:35:630:42 | I | -| main.rs:633:9:633:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:633:18:633:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:633:18:633:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:633:18:633:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:633:18:633:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:633:18:633:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:633:26:633:27 | s1 | | main.rs:630:35:630:42 | I | -| main.rs:636:65:636:65 | x | | main.rs:636:46:636:62 | T | -| main.rs:636:71:640:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:638:13:638:14 | s2 | | main.rs:636:36:636:43 | I | -| main.rs:638:18:638:18 | x | | main.rs:636:46:636:62 | T | -| main.rs:638:18:638:27 | x.method() | | main.rs:636:36:636:43 | I | -| main.rs:639:9:639:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:639:18:639:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:639:18:639:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:639:18:639:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:639:18:639:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:639:18:639:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:639:26:639:27 | s2 | | main.rs:636:36:636:43 | I | -| main.rs:642:49:642:49 | x | | main.rs:642:30:642:46 | T | -| main.rs:642:55:645:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:643:13:643:13 | s | | main.rs:612:5:613:14 | S1 | -| main.rs:643:17:643:17 | x | | main.rs:642:30:642:46 | T | -| main.rs:643:17:643:26 | x.method() | | main.rs:612:5:613:14 | S1 | -| main.rs:644:9:644:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:644:18:644:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:644:18:644:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:644:18:644:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:644:18:644:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:644:18:644:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:644:26:644:26 | s | | main.rs:612:5:613:14 | S1 | -| main.rs:647:53:647:53 | x | | main.rs:647:34:647:50 | T | -| main.rs:647:59:650:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:648:13:648:13 | s | | main.rs:612:5:613:14 | S1 | -| main.rs:648:17:648:17 | x | | main.rs:647:34:647:50 | T | -| main.rs:648:17:648:26 | x.method() | | main.rs:612:5:613:14 | S1 | -| main.rs:649:9:649:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:649:18:649:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:649:18:649:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:649:18:649:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:649:18:649:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:649:18:649:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:649:26:649:26 | s | | main.rs:612:5:613:14 | S1 | -| main.rs:652:43:652:43 | x | | main.rs:652:40:652:40 | T | -| main.rs:655:5:658:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:656:13:656:13 | s | | main.rs:612:5:613:14 | S1 | -| main.rs:656:17:656:17 | x | | main.rs:652:40:652:40 | T | -| main.rs:656:17:656:26 | x.method() | | main.rs:612:5:613:14 | S1 | -| main.rs:657:9:657:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:657:18:657:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:657:18:657:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:657:18:657:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:657:18:657:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:657:18:657:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:657:26:657:26 | s | | main.rs:612:5:613:14 | S1 | -| main.rs:661:16:661:19 | SelfParam | | main.rs:660:5:664:5 | Self [trait Pair] | -| main.rs:663:16:663:19 | SelfParam | | main.rs:660:5:664:5 | Self [trait Pair] | -| main.rs:666:53:666:53 | x | | main.rs:666:50:666:50 | T | -| main.rs:666:59:666:59 | y | | main.rs:666:50:666:50 | T | -| main.rs:670:5:673:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:671:13:671:13 | _ | | main.rs:612:5:613:14 | S1 | -| main.rs:671:17:671:17 | x | | main.rs:666:50:666:50 | T | -| main.rs:671:17:671:23 | x.fst() | | main.rs:612:5:613:14 | S1 | -| main.rs:672:13:672:13 | _ | | main.rs:612:5:613:14 | S1 | -| main.rs:672:17:672:17 | y | | main.rs:666:50:666:50 | T | -| main.rs:672:17:672:26 | y.method() | | main.rs:612:5:613:14 | S1 | -| main.rs:675:58:675:58 | x | | main.rs:675:41:675:55 | T | -| main.rs:675:64:675:64 | y | | main.rs:675:41:675:55 | T | -| main.rs:675:70:680:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:677:13:677:14 | s1 | | main.rs:612:5:613:14 | S1 | -| main.rs:677:18:677:18 | x | | main.rs:675:41:675:55 | T | -| main.rs:677:18:677:24 | x.fst() | | main.rs:612:5:613:14 | S1 | -| main.rs:678:13:678:14 | s2 | | main.rs:615:5:616:14 | S2 | -| main.rs:678:18:678:18 | y | | main.rs:675:41:675:55 | T | -| main.rs:678:18:678:24 | y.snd() | | main.rs:615:5:616:14 | S2 | -| main.rs:679:9:679:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:679:18:679:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:679:18:679:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:679:18:679:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:679:18:679:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:679:18:679:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:679:32:679:33 | s1 | | main.rs:612:5:613:14 | S1 | -| main.rs:679:36:679:37 | s2 | | main.rs:615:5:616:14 | S2 | -| main.rs:682:69:682:69 | x | | main.rs:682:52:682:66 | T | -| main.rs:682:75:682:75 | y | | main.rs:682:52:682:66 | T | -| main.rs:682:81:687:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:684:13:684:14 | s1 | | main.rs:612:5:613:14 | S1 | -| main.rs:684:18:684:18 | x | | main.rs:682:52:682:66 | T | -| main.rs:684:18:684:24 | x.fst() | | main.rs:612:5:613:14 | S1 | -| main.rs:685:13:685:14 | s2 | | main.rs:682:41:682:49 | T2 | -| main.rs:685:18:685:18 | y | | main.rs:682:52:682:66 | T | -| main.rs:685:18:685:24 | y.snd() | | main.rs:682:41:682:49 | T2 | -| main.rs:686:9:686:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:686:18:686:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:686:18:686:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:686:18:686:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:686:18:686:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:686:18:686:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:686:32:686:33 | s1 | | main.rs:612:5:613:14 | S1 | -| main.rs:686:36:686:37 | s2 | | main.rs:682:41:682:49 | T2 | -| main.rs:689:50:689:50 | x | | main.rs:689:41:689:47 | T | -| main.rs:689:56:689:56 | y | | main.rs:689:41:689:47 | T | -| main.rs:689:62:694:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:691:13:691:14 | s1 | | {EXTERNAL LOCATION} | bool | -| main.rs:691:18:691:18 | x | | main.rs:689:41:689:47 | T | -| main.rs:691:18:691:24 | x.fst() | | {EXTERNAL LOCATION} | bool | -| main.rs:692:13:692:14 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:692:18:692:18 | y | | main.rs:689:41:689:47 | T | -| main.rs:692:18:692:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | -| main.rs:693:9:693:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:693:18:693:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:693:18:693:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:693:18:693:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:693:18:693:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:693:18:693:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:693:32:693:33 | s1 | | {EXTERNAL LOCATION} | bool | -| main.rs:693:36:693:37 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:696:54:696:54 | x | | main.rs:696:41:696:51 | T | -| main.rs:696:60:696:60 | y | | main.rs:696:41:696:51 | T | -| main.rs:696:66:701:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:698:13:698:14 | s1 | | {EXTERNAL LOCATION} | u8 | -| main.rs:698:18:698:18 | x | | main.rs:696:41:696:51 | T | -| main.rs:698:18:698:24 | x.fst() | | {EXTERNAL LOCATION} | u8 | -| main.rs:699:13:699:14 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:699:18:699:18 | y | | main.rs:696:41:696:51 | T | -| main.rs:699:18:699:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | -| main.rs:700:9:700:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:700:18:700:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:700:18:700:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:700:18:700:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:700:18:700:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:700:18:700:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:700:32:700:33 | s1 | | {EXTERNAL LOCATION} | u8 | -| main.rs:700:36:700:37 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:708:18:708:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:708:18:708:22 | SelfParam | TRef | main.rs:705:5:709:5 | Self [trait TraitWithSelfTp] | -| main.rs:711:40:711:44 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:711:40:711:44 | thing | TRef | main.rs:711:17:711:37 | T | -| main.rs:711:56:713:5 | { ... } | | main.rs:711:14:711:14 | A | -| main.rs:712:9:712:13 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:712:9:712:13 | thing | TRef | main.rs:711:17:711:37 | T | -| main.rs:712:9:712:21 | thing.get_a() | | main.rs:711:14:711:14 | A | -| main.rs:716:44:716:48 | thing | | main.rs:716:24:716:41 | S | -| main.rs:716:61:719:5 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:717:13:717:15 | _ms | | {EXTERNAL LOCATION} | Option | -| main.rs:717:13:717:15 | _ms | T | main.rs:716:24:716:41 | S | -| main.rs:717:19:717:23 | thing | | main.rs:716:24:716:41 | S | -| main.rs:717:19:717:31 | thing.get_a() | | {EXTERNAL LOCATION} | Option | -| main.rs:717:19:717:31 | thing.get_a() | T | main.rs:716:24:716:41 | S | -| main.rs:718:9:718:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:718:9:718:9 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:724:55:724:59 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:724:55:724:59 | thing | TRef | main.rs:724:25:724:52 | S | -| main.rs:724:66:727:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:726:13:726:15 | _ms | | {EXTERNAL LOCATION} | Option | -| main.rs:726:13:726:15 | _ms | T | main.rs:724:25:724:52 | S | -| main.rs:726:19:726:30 | get_a(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:726:19:726:30 | get_a(...) | T | main.rs:724:25:724:52 | S | -| main.rs:726:25:726:29 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:726:25:726:29 | thing | TRef | main.rs:724:25:724:52 | S | -| main.rs:735:18:735:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:735:18:735:22 | SelfParam | TRef | main.rs:729:5:731:5 | MyStruct | -| main.rs:735:41:737:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:735:41:737:9 | { ... } | T | main.rs:729:5:731:5 | MyStruct | -| main.rs:736:13:736:48 | Some(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:736:13:736:48 | Some(...) | T | main.rs:729:5:731:5 | MyStruct | -| main.rs:736:18:736:47 | MyStruct {...} | | main.rs:729:5:731:5 | MyStruct | -| main.rs:736:36:736:39 | self | | {EXTERNAL LOCATION} | & | -| main.rs:736:36:736:39 | self | TRef | main.rs:729:5:731:5 | MyStruct | -| main.rs:736:36:736:45 | self.value | | {EXTERNAL LOCATION} | i32 | -| main.rs:742:19:745:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:743:13:743:13 | s | | main.rs:729:5:731:5 | MyStruct | -| main.rs:743:17:743:37 | MyStruct {...} | | main.rs:729:5:731:5 | MyStruct | -| main.rs:743:35:743:35 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:744:13:744:15 | _ms | | {EXTERNAL LOCATION} | Option | -| main.rs:744:13:744:15 | _ms | T | main.rs:729:5:731:5 | MyStruct | -| main.rs:744:19:744:27 | get_a(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:744:19:744:27 | get_a(...) | T | main.rs:729:5:731:5 | MyStruct | -| main.rs:744:25:744:26 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:744:25:744:26 | &s | TRef | main.rs:729:5:731:5 | MyStruct | -| main.rs:744:26:744:26 | s | | main.rs:729:5:731:5 | MyStruct | -| main.rs:760:15:760:18 | SelfParam | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:762:15:762:18 | SelfParam | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:765:9:767:9 | { ... } | | main.rs:759:19:759:19 | A | -| main.rs:766:13:766:16 | self | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:766:13:766:21 | self.m1() | | main.rs:759:19:759:19 | A | -| main.rs:769:18:769:18 | x | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:773:15:773:18 | SelfParam | | main.rs:756:5:757:14 | S2 | -| main.rs:773:26:775:9 | { ... } | | main.rs:772:10:772:19 | T | -| main.rs:774:13:774:30 | ...::default(...) | | main.rs:772:10:772:19 | T | -| main.rs:777:18:777:18 | x | | main.rs:756:5:757:14 | S2 | -| main.rs:777:32:779:9 | { ... } | | main.rs:772:10:772:19 | T | -| main.rs:778:13:778:30 | ...::default(...) | | main.rs:772:10:772:19 | T | -| main.rs:783:15:783:18 | SelfParam | | main.rs:754:5:755:14 | S1 | -| main.rs:783:28:785:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:784:13:784:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:787:18:787:18 | x | | main.rs:754:5:755:14 | S1 | -| main.rs:787:34:789:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:788:13:788:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:794:50:794:50 | x | | main.rs:794:26:794:47 | T2 | -| main.rs:794:63:797:5 | { ... } | | main.rs:794:22:794:23 | T1 | -| main.rs:795:9:795:9 | x | | main.rs:794:26:794:47 | T2 | -| main.rs:795:9:795:14 | x.m1() | | main.rs:794:22:794:23 | T1 | -| main.rs:796:9:796:9 | x | | main.rs:794:26:794:47 | T2 | -| main.rs:796:9:796:14 | x.m1() | | main.rs:794:22:794:23 | T1 | -| main.rs:798:52:798:52 | x | | main.rs:798:28:798:49 | T2 | -| main.rs:798:65:802:5 | { ... } | | main.rs:798:24:798:25 | T1 | -| main.rs:799:13:799:13 | y | | main.rs:798:24:798:25 | T1 | -| main.rs:799:17:799:25 | ...::m1(...) | | main.rs:798:24:798:25 | T1 | -| main.rs:799:24:799:24 | x | | main.rs:798:28:798:49 | T2 | -| main.rs:800:9:800:9 | y | | main.rs:798:24:798:25 | T1 | -| main.rs:801:9:801:17 | ...::m1(...) | | main.rs:798:24:798:25 | T1 | -| main.rs:801:16:801:16 | x | | main.rs:798:28:798:49 | T2 | -| main.rs:803:52:803:52 | x | | main.rs:803:28:803:49 | T2 | -| main.rs:803:65:807:5 | { ... } | | main.rs:803:24:803:25 | T1 | -| main.rs:804:13:804:13 | y | | main.rs:803:24:803:25 | T1 | -| main.rs:804:17:804:30 | ...::m1(...) | | main.rs:803:24:803:25 | T1 | -| main.rs:804:29:804:29 | x | | main.rs:803:28:803:49 | T2 | -| main.rs:805:9:805:9 | y | | main.rs:803:24:803:25 | T1 | -| main.rs:806:9:806:22 | ...::m1(...) | | main.rs:803:24:803:25 | T1 | -| main.rs:806:21:806:21 | x | | main.rs:803:28:803:49 | T2 | -| main.rs:808:55:808:55 | x | | main.rs:808:31:808:52 | T2 | -| main.rs:808:68:812:5 | { ... } | | main.rs:808:27:808:28 | T1 | -| main.rs:809:13:809:13 | y | | main.rs:808:27:808:28 | T1 | -| main.rs:809:17:809:28 | ...::assoc(...) | | main.rs:808:27:808:28 | T1 | -| main.rs:809:27:809:27 | x | | main.rs:808:31:808:52 | T2 | -| main.rs:810:9:810:9 | y | | main.rs:808:27:808:28 | T1 | -| main.rs:811:9:811:20 | ...::assoc(...) | | main.rs:808:27:808:28 | T1 | -| main.rs:811:19:811:19 | x | | main.rs:808:31:808:52 | T2 | -| main.rs:813:55:813:55 | x | | main.rs:813:31:813:52 | T2 | -| main.rs:813:68:817:5 | { ... } | | main.rs:813:27:813:28 | T1 | -| main.rs:814:13:814:13 | y | | main.rs:813:27:813:28 | T1 | -| main.rs:814:17:814:33 | ...::assoc(...) | | main.rs:813:27:813:28 | T1 | -| main.rs:814:32:814:32 | x | | main.rs:813:31:813:52 | T2 | -| main.rs:815:9:815:9 | y | | main.rs:813:27:813:28 | T1 | -| main.rs:816:9:816:25 | ...::assoc(...) | | main.rs:813:27:813:28 | T1 | -| main.rs:816:24:816:24 | x | | main.rs:813:31:813:52 | T2 | -| main.rs:821:49:821:49 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:821:49:821:49 | x | T | main.rs:821:32:821:46 | T2 | -| main.rs:821:71:823:5 | { ... } | | main.rs:821:28:821:29 | T1 | -| main.rs:822:9:822:9 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:822:9:822:9 | x | T | main.rs:821:32:821:46 | T2 | -| main.rs:822:9:822:11 | x.a | | main.rs:821:32:821:46 | T2 | -| main.rs:822:9:822:16 | ... .m1() | | main.rs:821:28:821:29 | T1 | -| main.rs:824:51:824:51 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:824:51:824:51 | x | T | main.rs:824:34:824:48 | T2 | -| main.rs:824:73:826:5 | { ... } | | main.rs:824:30:824:31 | T1 | -| main.rs:825:9:825:19 | ...::m1(...) | | main.rs:824:30:824:31 | T1 | -| main.rs:825:16:825:16 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:825:16:825:16 | x | T | main.rs:824:34:824:48 | T2 | -| main.rs:825:16:825:18 | x.a | | main.rs:824:34:824:48 | T2 | -| main.rs:827:51:827:51 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:827:51:827:51 | x | T | main.rs:827:34:827:48 | T2 | -| main.rs:827:73:829:5 | { ... } | | main.rs:827:30:827:31 | T1 | -| main.rs:828:9:828:24 | ...::m1(...) | | main.rs:827:30:827:31 | T1 | -| main.rs:828:21:828:21 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:828:21:828:21 | x | T | main.rs:827:34:827:48 | T2 | -| main.rs:828:21:828:23 | x.a | | main.rs:827:34:827:48 | T2 | -| main.rs:832:15:832:18 | SelfParam | | main.rs:749:5:752:5 | MyThing | -| main.rs:832:15:832:18 | SelfParam | T | main.rs:831:10:831:10 | T | -| main.rs:832:26:834:9 | { ... } | | main.rs:831:10:831:10 | T | -| main.rs:833:13:833:16 | self | | main.rs:749:5:752:5 | MyThing | -| main.rs:833:13:833:16 | self | T | main.rs:831:10:831:10 | T | -| main.rs:833:13:833:18 | self.a | | main.rs:831:10:831:10 | T | -| main.rs:836:18:836:18 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:836:18:836:18 | x | T | main.rs:831:10:831:10 | T | -| main.rs:836:32:838:9 | { ... } | | main.rs:831:10:831:10 | T | -| main.rs:837:13:837:13 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:837:13:837:13 | x | T | main.rs:831:10:831:10 | T | -| main.rs:837:13:837:15 | x.a | | main.rs:831:10:831:10 | T | -| main.rs:843:15:843:18 | SelfParam | | main.rs:841:5:844:5 | Self [trait MyTrait2] | -| main.rs:848:15:848:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:848:15:848:19 | SelfParam | TRef | main.rs:846:5:849:5 | Self [trait MyTrait3] | -| main.rs:851:46:851:46 | x | | main.rs:851:22:851:43 | T | -| main.rs:851:52:851:52 | y | | {EXTERNAL LOCATION} | & | -| main.rs:851:52:851:52 | y | TRef | main.rs:851:22:851:43 | T | -| main.rs:851:59:854:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:852:9:852:9 | x | | main.rs:851:22:851:43 | T | -| main.rs:852:9:852:14 | x.m2() | | {EXTERNAL LOCATION} | () | -| main.rs:853:9:853:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:853:9:853:9 | y | TRef | main.rs:851:22:851:43 | T | -| main.rs:853:9:853:14 | y.m2() | | {EXTERNAL LOCATION} | () | -| main.rs:856:16:914:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:857:13:857:13 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:857:13:857:13 | x | T | main.rs:754:5:755:14 | S1 | -| main.rs:857:17:857:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:857:17:857:33 | MyThing {...} | T | main.rs:754:5:755:14 | S1 | -| main.rs:857:30:857:31 | S1 | | main.rs:754:5:755:14 | S1 | -| main.rs:858:13:858:13 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:858:13:858:13 | y | T | main.rs:756:5:757:14 | S2 | -| main.rs:858:17:858:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:858:17:858:33 | MyThing {...} | T | main.rs:756:5:757:14 | S2 | -| main.rs:858:30:858:31 | S2 | | main.rs:756:5:757:14 | S2 | -| main.rs:860:9:860:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:860:18:860:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:860:18:860:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:860:18:860:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:860:18:860:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:860:18:860:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:860:26:860:26 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:860:26:860:26 | x | T | main.rs:754:5:755:14 | S1 | -| main.rs:860:26:860:31 | x.m1() | | main.rs:754:5:755:14 | S1 | -| main.rs:861:9:861:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:861:18:861:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:861:18:861:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:861:18:861:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:861:18:861:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:861:18:861:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:861:26:861:26 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:861:26:861:26 | y | T | main.rs:756:5:757:14 | S2 | -| main.rs:861:26:861:31 | y.m1() | | main.rs:756:5:757:14 | S2 | -| main.rs:863:13:863:13 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:863:13:863:13 | x | T | main.rs:754:5:755:14 | S1 | -| main.rs:863:17:863:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:863:17:863:33 | MyThing {...} | T | main.rs:754:5:755:14 | S1 | -| main.rs:863:30:863:31 | S1 | | main.rs:754:5:755:14 | S1 | -| main.rs:864:13:864:13 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:864:13:864:13 | y | T | main.rs:756:5:757:14 | S2 | -| main.rs:864:17:864:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:864:17:864:33 | MyThing {...} | T | main.rs:756:5:757:14 | S2 | -| main.rs:864:30:864:31 | S2 | | main.rs:756:5:757:14 | S2 | -| main.rs:866:9:866:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:866:18:866:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:866:18:866:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:866:18:866:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:866:18:866:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:866:18:866:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:866:26:866:26 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:866:26:866:26 | x | T | main.rs:754:5:755:14 | S1 | -| main.rs:866:26:866:31 | x.m2() | | main.rs:754:5:755:14 | S1 | -| main.rs:867:9:867:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:867:18:867:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:867:18:867:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:867:18:867:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:867:18:867:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:867:18:867:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:867:26:867:26 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:867:26:867:26 | y | T | main.rs:756:5:757:14 | S2 | -| main.rs:867:26:867:31 | y.m2() | | main.rs:756:5:757:14 | S2 | -| main.rs:869:13:869:14 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:869:13:869:14 | x2 | T | main.rs:754:5:755:14 | S1 | -| main.rs:869:18:869:34 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:869:18:869:34 | MyThing {...} | T | main.rs:754:5:755:14 | S1 | -| main.rs:869:31:869:32 | S1 | | main.rs:754:5:755:14 | S1 | -| main.rs:870:13:870:14 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:870:13:870:14 | y2 | T | main.rs:756:5:757:14 | S2 | -| main.rs:870:18:870:34 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:870:18:870:34 | MyThing {...} | T | main.rs:756:5:757:14 | S2 | -| main.rs:870:31:870:32 | S2 | | main.rs:756:5:757:14 | S2 | -| main.rs:872:13:872:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:872:17:872:33 | call_trait_m1(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:872:31:872:32 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:872:31:872:32 | x2 | T | main.rs:754:5:755:14 | S1 | -| main.rs:873:9:873:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:873:18:873:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:873:18:873:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:873:18:873:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:873:18:873:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:873:18:873:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:873:26:873:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:874:13:874:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:874:17:874:35 | call_trait_m1_2(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:874:33:874:34 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:874:33:874:34 | x2 | T | main.rs:754:5:755:14 | S1 | +| main.rs:398:26:398:27 | p1 | | main.rs:243:5:247:5 | MyPair | +| main.rs:398:26:398:27 | p1 | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:398:26:398:27 | p1 | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:398:26:398:32 | p1.m1() | | main.rs:249:5:250:14 | S1 | +| main.rs:400:13:400:14 | p2 | | main.rs:243:5:247:5 | MyPair | +| main.rs:400:13:400:14 | p2 | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:400:13:400:14 | p2 | P2 | main.rs:251:5:252:14 | S2 | +| main.rs:400:18:400:42 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:400:18:400:42 | MyPair {...} | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:400:18:400:42 | MyPair {...} | P2 | main.rs:251:5:252:14 | S2 | +| main.rs:400:31:400:32 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:400:39:400:40 | S2 | | main.rs:251:5:252:14 | S2 | +| main.rs:401:9:401:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:401:18:401:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:401:18:401:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:401:18:401:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:401:18:401:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:401:18:401:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:401:26:401:27 | p2 | | main.rs:243:5:247:5 | MyPair | +| main.rs:401:26:401:27 | p2 | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:401:26:401:27 | p2 | P2 | main.rs:251:5:252:14 | S2 | +| main.rs:401:26:401:32 | p2.m1() | | main.rs:253:5:254:14 | S3 | +| main.rs:403:13:403:14 | p3 | | main.rs:243:5:247:5 | MyPair | +| main.rs:403:13:403:14 | p3 | P1 | main.rs:238:5:241:5 | MyThing | +| main.rs:403:13:403:14 | p3 | P1.A | main.rs:249:5:250:14 | S1 | +| main.rs:403:13:403:14 | p3 | P2 | main.rs:253:5:254:14 | S3 | +| main.rs:403:18:406:9 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:403:18:406:9 | MyPair {...} | P1 | main.rs:238:5:241:5 | MyThing | +| main.rs:403:18:406:9 | MyPair {...} | P1.A | main.rs:249:5:250:14 | S1 | +| main.rs:403:18:406:9 | MyPair {...} | P2 | main.rs:253:5:254:14 | S3 | +| main.rs:404:17:404:33 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:404:17:404:33 | MyThing {...} | A | main.rs:249:5:250:14 | S1 | +| main.rs:404:30:404:31 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:405:17:405:18 | S3 | | main.rs:253:5:254:14 | S3 | +| main.rs:407:9:407:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:407:18:407:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:407:18:407:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:407:18:407:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:407:18:407:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:407:18:407:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:407:26:407:27 | p3 | | main.rs:243:5:247:5 | MyPair | +| main.rs:407:26:407:27 | p3 | P1 | main.rs:238:5:241:5 | MyThing | +| main.rs:407:26:407:27 | p3 | P1.A | main.rs:249:5:250:14 | S1 | +| main.rs:407:26:407:27 | p3 | P2 | main.rs:253:5:254:14 | S3 | +| main.rs:407:26:407:32 | p3.m1() | | main.rs:249:5:250:14 | S1 | +| main.rs:410:13:410:13 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:410:13:410:13 | a | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:410:13:410:13 | a | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:410:17:410:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:410:17:410:41 | MyPair {...} | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:410:17:410:41 | MyPair {...} | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:410:30:410:31 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:410:38:410:39 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:411:13:411:13 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:411:17:411:17 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:411:17:411:17 | a | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:411:17:411:17 | a | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:411:17:411:23 | a.fst() | | main.rs:249:5:250:14 | S1 | +| main.rs:412:9:412:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:412:18:412:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:412:18:412:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:412:18:412:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:412:18:412:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:412:18:412:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:412:26:412:26 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:413:13:413:13 | y | | main.rs:249:5:250:14 | S1 | +| main.rs:413:17:413:17 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:413:17:413:17 | a | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:413:17:413:17 | a | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:413:17:413:23 | a.snd() | | main.rs:249:5:250:14 | S1 | +| main.rs:414:9:414:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:414:18:414:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:414:18:414:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:414:18:414:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:414:18:414:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:414:18:414:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:414:26:414:26 | y | | main.rs:249:5:250:14 | S1 | +| main.rs:420:13:420:13 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:420:13:420:13 | b | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:420:13:420:13 | b | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:420:17:420:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:420:17:420:41 | MyPair {...} | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:420:17:420:41 | MyPair {...} | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:420:30:420:31 | S2 | | main.rs:251:5:252:14 | S2 | +| main.rs:420:38:420:39 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:421:13:421:13 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:421:17:421:17 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:421:17:421:17 | b | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:421:17:421:17 | b | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:421:17:421:23 | b.fst() | | main.rs:249:5:250:14 | S1 | +| main.rs:422:9:422:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:422:18:422:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:422:18:422:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:422:18:422:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:422:18:422:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:422:18:422:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:422:26:422:26 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:423:13:423:13 | y | | main.rs:251:5:252:14 | S2 | +| main.rs:423:17:423:17 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:423:17:423:17 | b | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:423:17:423:17 | b | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:423:17:423:23 | b.snd() | | main.rs:251:5:252:14 | S2 | +| main.rs:424:9:424:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:424:18:424:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:424:18:424:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:424:18:424:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:424:18:424:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:424:18:424:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:424:26:424:26 | y | | main.rs:251:5:252:14 | S2 | +| main.rs:428:13:428:13 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:428:17:428:39 | call_trait_m1(...) | | main.rs:249:5:250:14 | S1 | +| main.rs:428:31:428:38 | thing_s1 | | main.rs:238:5:241:5 | MyThing | +| main.rs:428:31:428:38 | thing_s1 | A | main.rs:249:5:250:14 | S1 | +| main.rs:429:9:429:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:429:18:429:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:429:18:429:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:429:18:429:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:429:18:429:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:429:18:429:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:429:26:429:26 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:430:13:430:13 | y | | main.rs:238:5:241:5 | MyThing | +| main.rs:430:13:430:13 | y | A | main.rs:251:5:252:14 | S2 | +| main.rs:430:17:430:39 | call_trait_m1(...) | | main.rs:238:5:241:5 | MyThing | +| main.rs:430:17:430:39 | call_trait_m1(...) | A | main.rs:251:5:252:14 | S2 | +| main.rs:430:31:430:38 | thing_s2 | | main.rs:238:5:241:5 | MyThing | +| main.rs:430:31:430:38 | thing_s2 | A | main.rs:251:5:252:14 | S2 | +| main.rs:431:9:431:29 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:431:18:431:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:431:18:431:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:431:18:431:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:431:18:431:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:431:18:431:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:431:26:431:26 | y | | main.rs:238:5:241:5 | MyThing | +| main.rs:431:26:431:26 | y | A | main.rs:251:5:252:14 | S2 | +| main.rs:431:26:431:28 | y.a | | main.rs:251:5:252:14 | S2 | +| main.rs:434:13:434:13 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:434:13:434:13 | a | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:434:13:434:13 | a | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:434:17:434:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:434:17:434:41 | MyPair {...} | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:434:17:434:41 | MyPair {...} | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:434:30:434:31 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:434:38:434:39 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:435:13:435:13 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:435:17:435:26 | get_fst(...) | | main.rs:249:5:250:14 | S1 | +| main.rs:435:25:435:25 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:435:25:435:25 | a | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:435:25:435:25 | a | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:436:9:436:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:436:18:436:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:436:18:436:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:436:18:436:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:436:18:436:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:436:18:436:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:436:26:436:26 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:437:13:437:13 | y | | main.rs:249:5:250:14 | S1 | +| main.rs:437:17:437:26 | get_snd(...) | | main.rs:249:5:250:14 | S1 | +| main.rs:437:25:437:25 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:437:25:437:25 | a | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:437:25:437:25 | a | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:438:9:438:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:438:18:438:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:438:18:438:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:438:18:438:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:438:18:438:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:438:18:438:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:438:26:438:26 | y | | main.rs:249:5:250:14 | S1 | +| main.rs:441:13:441:13 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:441:13:441:13 | b | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:441:13:441:13 | b | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:441:17:441:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:441:17:441:41 | MyPair {...} | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:441:17:441:41 | MyPair {...} | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:441:30:441:31 | S2 | | main.rs:251:5:252:14 | S2 | +| main.rs:441:38:441:39 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:442:13:442:13 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:442:17:442:26 | get_fst(...) | | main.rs:249:5:250:14 | S1 | +| main.rs:442:25:442:25 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:442:25:442:25 | b | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:442:25:442:25 | b | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:443:9:443:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:443:18:443:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:443:18:443:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:443:18:443:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:443:18:443:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:443:18:443:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:443:26:443:26 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:444:13:444:13 | y | | main.rs:251:5:252:14 | S2 | +| main.rs:444:17:444:26 | get_snd(...) | | main.rs:251:5:252:14 | S2 | +| main.rs:444:25:444:25 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:444:25:444:25 | b | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:444:25:444:25 | b | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:445:9:445:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:445:18:445:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:445:18:445:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:445:18:445:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:445:18:445:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:445:18:445:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:445:26:445:26 | y | | main.rs:251:5:252:14 | S2 | +| main.rs:447:13:447:13 | c | | main.rs:243:5:247:5 | MyPair | +| main.rs:447:13:447:13 | c | P1 | main.rs:253:5:254:14 | S3 | +| main.rs:447:13:447:13 | c | P2 | main.rs:243:5:247:5 | MyPair | +| main.rs:447:13:447:13 | c | P2.P1 | main.rs:251:5:252:14 | S2 | +| main.rs:447:13:447:13 | c | P2.P2 | main.rs:249:5:250:14 | S1 | +| main.rs:447:17:450:9 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:447:17:450:9 | MyPair {...} | P1 | main.rs:253:5:254:14 | S3 | +| main.rs:447:17:450:9 | MyPair {...} | P2 | main.rs:243:5:247:5 | MyPair | +| main.rs:447:17:450:9 | MyPair {...} | P2.P1 | main.rs:251:5:252:14 | S2 | +| main.rs:447:17:450:9 | MyPair {...} | P2.P2 | main.rs:249:5:250:14 | S1 | +| main.rs:448:17:448:18 | S3 | | main.rs:253:5:254:14 | S3 | +| main.rs:449:17:449:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:449:17:449:41 | MyPair {...} | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:449:17:449:41 | MyPair {...} | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:449:30:449:31 | S2 | | main.rs:251:5:252:14 | S2 | +| main.rs:449:38:449:39 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:451:13:451:13 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:451:17:451:30 | get_snd_fst(...) | | main.rs:249:5:250:14 | S1 | +| main.rs:451:29:451:29 | c | | main.rs:243:5:247:5 | MyPair | +| main.rs:451:29:451:29 | c | P1 | main.rs:253:5:254:14 | S3 | +| main.rs:451:29:451:29 | c | P2 | main.rs:243:5:247:5 | MyPair | +| main.rs:451:29:451:29 | c | P2.P1 | main.rs:251:5:252:14 | S2 | +| main.rs:451:29:451:29 | c | P2.P2 | main.rs:249:5:250:14 | S1 | +| main.rs:453:13:453:17 | thing | | main.rs:238:5:241:5 | MyThing | +| main.rs:453:13:453:17 | thing | A | main.rs:249:5:250:14 | S1 | +| main.rs:453:21:453:37 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:453:21:453:37 | MyThing {...} | A | main.rs:249:5:250:14 | S1 | +| main.rs:453:34:453:35 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:454:13:454:13 | i | | main.rs:249:5:250:14 | S1 | +| main.rs:454:17:454:21 | thing | | main.rs:238:5:241:5 | MyThing | +| main.rs:454:17:454:21 | thing | A | main.rs:249:5:250:14 | S1 | +| main.rs:454:17:454:34 | thing.convert_to() | | main.rs:249:5:250:14 | S1 | +| main.rs:455:28:455:32 | thing | | main.rs:238:5:241:5 | MyThing | +| main.rs:455:28:455:32 | thing | A | main.rs:249:5:250:14 | S1 | +| main.rs:474:19:474:22 | SelfParam | | main.rs:472:5:475:5 | Self [trait FirstTrait] | +| main.rs:479:19:479:22 | SelfParam | | main.rs:477:5:480:5 | Self [trait SecondTrait] | +| main.rs:482:64:482:64 | x | | main.rs:482:45:482:61 | T | +| main.rs:482:70:486:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:484:13:484:14 | s1 | | main.rs:482:35:482:42 | I | +| main.rs:484:18:484:18 | x | | main.rs:482:45:482:61 | T | +| main.rs:484:18:484:27 | x.method() | | main.rs:482:35:482:42 | I | +| main.rs:485:9:485:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:485:18:485:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:485:18:485:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:485:18:485:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:485:18:485:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:485:18:485:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:485:26:485:27 | s1 | | main.rs:482:35:482:42 | I | +| main.rs:488:65:488:65 | x | | main.rs:488:46:488:62 | T | +| main.rs:488:71:492:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:490:13:490:14 | s2 | | main.rs:488:36:488:43 | I | +| main.rs:490:18:490:18 | x | | main.rs:488:46:488:62 | T | +| main.rs:490:18:490:27 | x.method() | | main.rs:488:36:488:43 | I | +| main.rs:491:9:491:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:491:18:491:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:491:18:491:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:491:18:491:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:491:18:491:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:491:18:491:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:491:26:491:27 | s2 | | main.rs:488:36:488:43 | I | +| main.rs:494:49:494:49 | x | | main.rs:494:30:494:46 | T | +| main.rs:494:55:497:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:495:13:495:13 | s | | main.rs:464:5:465:14 | S1 | +| main.rs:495:17:495:17 | x | | main.rs:494:30:494:46 | T | +| main.rs:495:17:495:26 | x.method() | | main.rs:464:5:465:14 | S1 | +| main.rs:496:9:496:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:496:18:496:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:496:18:496:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:496:18:496:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:496:18:496:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:496:18:496:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:496:26:496:26 | s | | main.rs:464:5:465:14 | S1 | +| main.rs:499:53:499:53 | x | | main.rs:499:34:499:50 | T | +| main.rs:499:59:502:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:500:13:500:13 | s | | main.rs:464:5:465:14 | S1 | +| main.rs:500:17:500:17 | x | | main.rs:499:34:499:50 | T | +| main.rs:500:17:500:26 | x.method() | | main.rs:464:5:465:14 | S1 | +| main.rs:501:9:501:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:501:18:501:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:501:18:501:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:501:18:501:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:501:18:501:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:501:18:501:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:501:26:501:26 | s | | main.rs:464:5:465:14 | S1 | +| main.rs:504:43:504:43 | x | | main.rs:504:40:504:40 | T | +| main.rs:507:5:510:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:508:13:508:13 | s | | main.rs:464:5:465:14 | S1 | +| main.rs:508:17:508:17 | x | | main.rs:504:40:504:40 | T | +| main.rs:508:17:508:26 | x.method() | | main.rs:464:5:465:14 | S1 | +| main.rs:509:9:509:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:509:18:509:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:509:18:509:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:509:18:509:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:509:18:509:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:509:18:509:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:509:26:509:26 | s | | main.rs:464:5:465:14 | S1 | +| main.rs:513:16:513:19 | SelfParam | | main.rs:512:5:516:5 | Self [trait Pair] | +| main.rs:515:16:515:19 | SelfParam | | main.rs:512:5:516:5 | Self [trait Pair] | +| main.rs:518:53:518:53 | x | | main.rs:518:50:518:50 | T | +| main.rs:518:59:518:59 | y | | main.rs:518:50:518:50 | T | +| main.rs:522:5:525:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:523:13:523:13 | _ | | main.rs:464:5:465:14 | S1 | +| main.rs:523:17:523:17 | x | | main.rs:518:50:518:50 | T | +| main.rs:523:17:523:23 | x.fst() | | main.rs:464:5:465:14 | S1 | +| main.rs:524:13:524:13 | _ | | main.rs:464:5:465:14 | S1 | +| main.rs:524:17:524:17 | y | | main.rs:518:50:518:50 | T | +| main.rs:524:17:524:26 | y.method() | | main.rs:464:5:465:14 | S1 | +| main.rs:527:58:527:58 | x | | main.rs:527:41:527:55 | T | +| main.rs:527:64:527:64 | y | | main.rs:527:41:527:55 | T | +| main.rs:527:70:532:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:529:13:529:14 | s1 | | main.rs:464:5:465:14 | S1 | +| main.rs:529:18:529:18 | x | | main.rs:527:41:527:55 | T | +| main.rs:529:18:529:24 | x.fst() | | main.rs:464:5:465:14 | S1 | +| main.rs:530:13:530:14 | s2 | | main.rs:467:5:468:14 | S2 | +| main.rs:530:18:530:18 | y | | main.rs:527:41:527:55 | T | +| main.rs:530:18:530:24 | y.snd() | | main.rs:467:5:468:14 | S2 | +| main.rs:531:9:531:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:531:18:531:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:531:18:531:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:531:18:531:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:531:18:531:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:531:18:531:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:531:32:531:33 | s1 | | main.rs:464:5:465:14 | S1 | +| main.rs:531:36:531:37 | s2 | | main.rs:467:5:468:14 | S2 | +| main.rs:534:69:534:69 | x | | main.rs:534:52:534:66 | T | +| main.rs:534:75:534:75 | y | | main.rs:534:52:534:66 | T | +| main.rs:534:81:539:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:536:13:536:14 | s1 | | main.rs:464:5:465:14 | S1 | +| main.rs:536:18:536:18 | x | | main.rs:534:52:534:66 | T | +| main.rs:536:18:536:24 | x.fst() | | main.rs:464:5:465:14 | S1 | +| main.rs:537:13:537:14 | s2 | | main.rs:534:41:534:49 | T2 | +| main.rs:537:18:537:18 | y | | main.rs:534:52:534:66 | T | +| main.rs:537:18:537:24 | y.snd() | | main.rs:534:41:534:49 | T2 | +| main.rs:538:9:538:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:538:18:538:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:538:18:538:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:538:18:538:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:538:18:538:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:538:18:538:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:538:32:538:33 | s1 | | main.rs:464:5:465:14 | S1 | +| main.rs:538:36:538:37 | s2 | | main.rs:534:41:534:49 | T2 | +| main.rs:541:50:541:50 | x | | main.rs:541:41:541:47 | T | +| main.rs:541:56:541:56 | y | | main.rs:541:41:541:47 | T | +| main.rs:541:62:546:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:543:13:543:14 | s1 | | {EXTERNAL LOCATION} | bool | +| main.rs:543:18:543:18 | x | | main.rs:541:41:541:47 | T | +| main.rs:543:18:543:24 | x.fst() | | {EXTERNAL LOCATION} | bool | +| main.rs:544:13:544:14 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:544:18:544:18 | y | | main.rs:541:41:541:47 | T | +| main.rs:544:18:544:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | +| main.rs:545:9:545:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:545:18:545:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:545:18:545:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:545:18:545:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:545:18:545:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:545:18:545:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:545:32:545:33 | s1 | | {EXTERNAL LOCATION} | bool | +| main.rs:545:36:545:37 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:548:54:548:54 | x | | main.rs:548:41:548:51 | T | +| main.rs:548:60:548:60 | y | | main.rs:548:41:548:51 | T | +| main.rs:548:66:553:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:550:13:550:14 | s1 | | {EXTERNAL LOCATION} | u8 | +| main.rs:550:18:550:18 | x | | main.rs:548:41:548:51 | T | +| main.rs:550:18:550:24 | x.fst() | | {EXTERNAL LOCATION} | u8 | +| main.rs:551:13:551:14 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:551:18:551:18 | y | | main.rs:548:41:548:51 | T | +| main.rs:551:18:551:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | +| main.rs:552:9:552:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:552:18:552:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:552:18:552:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:552:18:552:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:552:18:552:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:552:18:552:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:552:32:552:33 | s1 | | {EXTERNAL LOCATION} | u8 | +| main.rs:552:36:552:37 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:560:18:560:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:560:18:560:22 | SelfParam | TRef | main.rs:557:5:561:5 | Self [trait TraitWithSelfTp] | +| main.rs:563:40:563:44 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:563:40:563:44 | thing | TRef | main.rs:563:17:563:37 | T | +| main.rs:563:56:565:5 | { ... } | | main.rs:563:14:563:14 | A | +| main.rs:564:9:564:13 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:564:9:564:13 | thing | TRef | main.rs:563:17:563:37 | T | +| main.rs:564:9:564:21 | thing.get_a() | | main.rs:563:14:563:14 | A | +| main.rs:568:44:568:48 | thing | | main.rs:568:24:568:41 | S | +| main.rs:568:61:571:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:569:13:569:15 | _ms | | {EXTERNAL LOCATION} | Option | +| main.rs:569:13:569:15 | _ms | T | main.rs:568:24:568:41 | S | +| main.rs:569:19:569:23 | thing | | main.rs:568:24:568:41 | S | +| main.rs:569:19:569:31 | thing.get_a() | | {EXTERNAL LOCATION} | Option | +| main.rs:569:19:569:31 | thing.get_a() | T | main.rs:568:24:568:41 | S | +| main.rs:570:9:570:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:570:9:570:9 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:576:55:576:59 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:576:55:576:59 | thing | TRef | main.rs:576:25:576:52 | S | +| main.rs:576:66:579:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:578:13:578:15 | _ms | | {EXTERNAL LOCATION} | Option | +| main.rs:578:13:578:15 | _ms | T | main.rs:576:25:576:52 | S | +| main.rs:578:19:578:30 | get_a(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:578:19:578:30 | get_a(...) | T | main.rs:576:25:576:52 | S | +| main.rs:578:25:578:29 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:578:25:578:29 | thing | TRef | main.rs:576:25:576:52 | S | +| main.rs:587:18:587:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:587:18:587:22 | SelfParam | TRef | main.rs:581:5:583:5 | MyStruct | +| main.rs:587:41:589:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:587:41:589:9 | { ... } | T | main.rs:581:5:583:5 | MyStruct | +| main.rs:588:13:588:48 | Some(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:588:13:588:48 | Some(...) | T | main.rs:581:5:583:5 | MyStruct | +| main.rs:588:18:588:47 | MyStruct {...} | | main.rs:581:5:583:5 | MyStruct | +| main.rs:588:36:588:39 | self | | {EXTERNAL LOCATION} | & | +| main.rs:588:36:588:39 | self | TRef | main.rs:581:5:583:5 | MyStruct | +| main.rs:588:36:588:45 | self.value | | {EXTERNAL LOCATION} | i32 | +| main.rs:594:19:597:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:595:13:595:13 | s | | main.rs:581:5:583:5 | MyStruct | +| main.rs:595:17:595:37 | MyStruct {...} | | main.rs:581:5:583:5 | MyStruct | +| main.rs:595:35:595:35 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:596:13:596:15 | _ms | | {EXTERNAL LOCATION} | Option | +| main.rs:596:13:596:15 | _ms | T | main.rs:581:5:583:5 | MyStruct | +| main.rs:596:19:596:27 | get_a(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:596:19:596:27 | get_a(...) | T | main.rs:581:5:583:5 | MyStruct | +| main.rs:596:25:596:26 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:596:25:596:26 | &s | TRef | main.rs:581:5:583:5 | MyStruct | +| main.rs:596:26:596:26 | s | | main.rs:581:5:583:5 | MyStruct | +| main.rs:612:15:612:18 | SelfParam | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:614:15:614:18 | SelfParam | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:617:9:619:9 | { ... } | | main.rs:611:19:611:19 | A | +| main.rs:618:13:618:16 | self | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:618:13:618:21 | self.m1() | | main.rs:611:19:611:19 | A | +| main.rs:621:18:621:18 | x | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:625:15:625:18 | SelfParam | | main.rs:608:5:609:14 | S2 | +| main.rs:625:26:627:9 | { ... } | | main.rs:624:10:624:19 | T | +| main.rs:626:13:626:30 | ...::default(...) | | main.rs:624:10:624:19 | T | +| main.rs:629:18:629:18 | x | | main.rs:608:5:609:14 | S2 | +| main.rs:629:32:631:9 | { ... } | | main.rs:624:10:624:19 | T | +| main.rs:630:13:630:30 | ...::default(...) | | main.rs:624:10:624:19 | T | +| main.rs:635:15:635:18 | SelfParam | | main.rs:606:5:607:14 | S1 | +| main.rs:635:28:637:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:636:13:636:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:639:18:639:18 | x | | main.rs:606:5:607:14 | S1 | +| main.rs:639:34:641:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:640:13:640:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:646:50:646:50 | x | | main.rs:646:26:646:47 | T2 | +| main.rs:646:63:649:5 | { ... } | | main.rs:646:22:646:23 | T1 | +| main.rs:647:9:647:9 | x | | main.rs:646:26:646:47 | T2 | +| main.rs:647:9:647:14 | x.m1() | | main.rs:646:22:646:23 | T1 | +| main.rs:648:9:648:9 | x | | main.rs:646:26:646:47 | T2 | +| main.rs:648:9:648:14 | x.m1() | | main.rs:646:22:646:23 | T1 | +| main.rs:650:52:650:52 | x | | main.rs:650:28:650:49 | T2 | +| main.rs:650:65:654:5 | { ... } | | main.rs:650:24:650:25 | T1 | +| main.rs:651:13:651:13 | y | | main.rs:650:24:650:25 | T1 | +| main.rs:651:17:651:25 | ...::m1(...) | | main.rs:650:24:650:25 | T1 | +| main.rs:651:24:651:24 | x | | main.rs:650:28:650:49 | T2 | +| main.rs:652:9:652:9 | y | | main.rs:650:24:650:25 | T1 | +| main.rs:653:9:653:17 | ...::m1(...) | | main.rs:650:24:650:25 | T1 | +| main.rs:653:16:653:16 | x | | main.rs:650:28:650:49 | T2 | +| main.rs:655:52:655:52 | x | | main.rs:655:28:655:49 | T2 | +| main.rs:655:65:659:5 | { ... } | | main.rs:655:24:655:25 | T1 | +| main.rs:656:13:656:13 | y | | main.rs:655:24:655:25 | T1 | +| main.rs:656:17:656:30 | ...::m1(...) | | main.rs:655:24:655:25 | T1 | +| main.rs:656:29:656:29 | x | | main.rs:655:28:655:49 | T2 | +| main.rs:657:9:657:9 | y | | main.rs:655:24:655:25 | T1 | +| main.rs:658:9:658:22 | ...::m1(...) | | main.rs:655:24:655:25 | T1 | +| main.rs:658:21:658:21 | x | | main.rs:655:28:655:49 | T2 | +| main.rs:660:55:660:55 | x | | main.rs:660:31:660:52 | T2 | +| main.rs:660:68:664:5 | { ... } | | main.rs:660:27:660:28 | T1 | +| main.rs:661:13:661:13 | y | | main.rs:660:27:660:28 | T1 | +| main.rs:661:17:661:28 | ...::assoc(...) | | main.rs:660:27:660:28 | T1 | +| main.rs:661:27:661:27 | x | | main.rs:660:31:660:52 | T2 | +| main.rs:662:9:662:9 | y | | main.rs:660:27:660:28 | T1 | +| main.rs:663:9:663:20 | ...::assoc(...) | | main.rs:660:27:660:28 | T1 | +| main.rs:663:19:663:19 | x | | main.rs:660:31:660:52 | T2 | +| main.rs:665:55:665:55 | x | | main.rs:665:31:665:52 | T2 | +| main.rs:665:68:669:5 | { ... } | | main.rs:665:27:665:28 | T1 | +| main.rs:666:13:666:13 | y | | main.rs:665:27:665:28 | T1 | +| main.rs:666:17:666:33 | ...::assoc(...) | | main.rs:665:27:665:28 | T1 | +| main.rs:666:32:666:32 | x | | main.rs:665:31:665:52 | T2 | +| main.rs:667:9:667:9 | y | | main.rs:665:27:665:28 | T1 | +| main.rs:668:9:668:25 | ...::assoc(...) | | main.rs:665:27:665:28 | T1 | +| main.rs:668:24:668:24 | x | | main.rs:665:31:665:52 | T2 | +| main.rs:673:49:673:49 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:673:49:673:49 | x | T | main.rs:673:32:673:46 | T2 | +| main.rs:673:71:675:5 | { ... } | | main.rs:673:28:673:29 | T1 | +| main.rs:674:9:674:9 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:674:9:674:9 | x | T | main.rs:673:32:673:46 | T2 | +| main.rs:674:9:674:11 | x.a | | main.rs:673:32:673:46 | T2 | +| main.rs:674:9:674:16 | ... .m1() | | main.rs:673:28:673:29 | T1 | +| main.rs:676:51:676:51 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:676:51:676:51 | x | T | main.rs:676:34:676:48 | T2 | +| main.rs:676:73:678:5 | { ... } | | main.rs:676:30:676:31 | T1 | +| main.rs:677:9:677:19 | ...::m1(...) | | main.rs:676:30:676:31 | T1 | +| main.rs:677:16:677:16 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:677:16:677:16 | x | T | main.rs:676:34:676:48 | T2 | +| main.rs:677:16:677:18 | x.a | | main.rs:676:34:676:48 | T2 | +| main.rs:679:51:679:51 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:679:51:679:51 | x | T | main.rs:679:34:679:48 | T2 | +| main.rs:679:73:681:5 | { ... } | | main.rs:679:30:679:31 | T1 | +| main.rs:680:9:680:24 | ...::m1(...) | | main.rs:679:30:679:31 | T1 | +| main.rs:680:21:680:21 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:680:21:680:21 | x | T | main.rs:679:34:679:48 | T2 | +| main.rs:680:21:680:23 | x.a | | main.rs:679:34:679:48 | T2 | +| main.rs:684:15:684:18 | SelfParam | | main.rs:601:5:604:5 | MyThing | +| main.rs:684:15:684:18 | SelfParam | T | main.rs:683:10:683:10 | T | +| main.rs:684:26:686:9 | { ... } | | main.rs:683:10:683:10 | T | +| main.rs:685:13:685:16 | self | | main.rs:601:5:604:5 | MyThing | +| main.rs:685:13:685:16 | self | T | main.rs:683:10:683:10 | T | +| main.rs:685:13:685:18 | self.a | | main.rs:683:10:683:10 | T | +| main.rs:688:18:688:18 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:688:18:688:18 | x | T | main.rs:683:10:683:10 | T | +| main.rs:688:32:690:9 | { ... } | | main.rs:683:10:683:10 | T | +| main.rs:689:13:689:13 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:689:13:689:13 | x | T | main.rs:683:10:683:10 | T | +| main.rs:689:13:689:15 | x.a | | main.rs:683:10:683:10 | T | +| main.rs:695:15:695:18 | SelfParam | | main.rs:693:5:696:5 | Self [trait MyTrait2] | +| main.rs:700:15:700:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:700:15:700:19 | SelfParam | TRef | main.rs:698:5:701:5 | Self [trait MyTrait3] | +| main.rs:703:46:703:46 | x | | main.rs:703:22:703:43 | T | +| main.rs:703:52:703:52 | y | | {EXTERNAL LOCATION} | & | +| main.rs:703:52:703:52 | y | TRef | main.rs:703:22:703:43 | T | +| main.rs:703:59:706:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:704:9:704:9 | x | | main.rs:703:22:703:43 | T | +| main.rs:704:9:704:14 | x.m2() | | {EXTERNAL LOCATION} | () | +| main.rs:705:9:705:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:705:9:705:9 | y | TRef | main.rs:703:22:703:43 | T | +| main.rs:705:9:705:14 | y.m2() | | {EXTERNAL LOCATION} | () | +| main.rs:708:16:766:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:709:13:709:13 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:709:13:709:13 | x | T | main.rs:606:5:607:14 | S1 | +| main.rs:709:17:709:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:709:17:709:33 | MyThing {...} | T | main.rs:606:5:607:14 | S1 | +| main.rs:709:30:709:31 | S1 | | main.rs:606:5:607:14 | S1 | +| main.rs:710:13:710:13 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:710:13:710:13 | y | T | main.rs:608:5:609:14 | S2 | +| main.rs:710:17:710:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:710:17:710:33 | MyThing {...} | T | main.rs:608:5:609:14 | S2 | +| main.rs:710:30:710:31 | S2 | | main.rs:608:5:609:14 | S2 | +| main.rs:712:9:712:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:712:18:712:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:712:18:712:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:712:18:712:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:712:18:712:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:712:18:712:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:712:26:712:26 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:712:26:712:26 | x | T | main.rs:606:5:607:14 | S1 | +| main.rs:712:26:712:31 | x.m1() | | main.rs:606:5:607:14 | S1 | +| main.rs:713:9:713:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:713:18:713:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:713:18:713:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:713:18:713:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:713:18:713:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:713:18:713:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:713:26:713:26 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:713:26:713:26 | y | T | main.rs:608:5:609:14 | S2 | +| main.rs:713:26:713:31 | y.m1() | | main.rs:608:5:609:14 | S2 | +| main.rs:715:13:715:13 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:715:13:715:13 | x | T | main.rs:606:5:607:14 | S1 | +| main.rs:715:17:715:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:715:17:715:33 | MyThing {...} | T | main.rs:606:5:607:14 | S1 | +| main.rs:715:30:715:31 | S1 | | main.rs:606:5:607:14 | S1 | +| main.rs:716:13:716:13 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:716:13:716:13 | y | T | main.rs:608:5:609:14 | S2 | +| main.rs:716:17:716:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:716:17:716:33 | MyThing {...} | T | main.rs:608:5:609:14 | S2 | +| main.rs:716:30:716:31 | S2 | | main.rs:608:5:609:14 | S2 | +| main.rs:718:9:718:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:718:18:718:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:718:18:718:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:718:18:718:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:718:18:718:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:718:18:718:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:718:26:718:26 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:718:26:718:26 | x | T | main.rs:606:5:607:14 | S1 | +| main.rs:718:26:718:31 | x.m2() | | main.rs:606:5:607:14 | S1 | +| main.rs:719:9:719:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:719:18:719:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:719:18:719:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:719:18:719:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:719:18:719:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:719:18:719:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:719:26:719:26 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:719:26:719:26 | y | T | main.rs:608:5:609:14 | S2 | +| main.rs:719:26:719:31 | y.m2() | | main.rs:608:5:609:14 | S2 | +| main.rs:721:13:721:14 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:721:13:721:14 | x2 | T | main.rs:606:5:607:14 | S1 | +| main.rs:721:18:721:34 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:721:18:721:34 | MyThing {...} | T | main.rs:606:5:607:14 | S1 | +| main.rs:721:31:721:32 | S1 | | main.rs:606:5:607:14 | S1 | +| main.rs:722:13:722:14 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:722:13:722:14 | y2 | T | main.rs:608:5:609:14 | S2 | +| main.rs:722:18:722:34 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:722:18:722:34 | MyThing {...} | T | main.rs:608:5:609:14 | S2 | +| main.rs:722:31:722:32 | S2 | | main.rs:608:5:609:14 | S2 | +| main.rs:724:13:724:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:724:17:724:33 | call_trait_m1(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:724:31:724:32 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:724:31:724:32 | x2 | T | main.rs:606:5:607:14 | S1 | +| main.rs:725:9:725:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:725:18:725:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:725:18:725:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:725:18:725:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:725:18:725:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:725:18:725:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:725:26:725:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:726:13:726:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:726:17:726:35 | call_trait_m1_2(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:726:33:726:34 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:726:33:726:34 | x2 | T | main.rs:606:5:607:14 | S1 | +| main.rs:727:9:727:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:727:18:727:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:727:18:727:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:727:18:727:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:727:18:727:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:727:18:727:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:727:26:727:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:728:13:728:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:728:17:728:35 | call_trait_m1_3(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:728:33:728:34 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:728:33:728:34 | x2 | T | main.rs:606:5:607:14 | S1 | +| main.rs:729:9:729:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:729:18:729:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:729:18:729:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:729:18:729:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:729:18:729:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:729:18:729:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:729:26:729:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:730:13:730:13 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:730:17:730:33 | call_trait_m1(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:730:31:730:32 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:730:31:730:32 | y2 | T | main.rs:608:5:609:14 | S2 | +| main.rs:731:9:731:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:731:18:731:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:731:18:731:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:731:18:731:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:731:18:731:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:731:18:731:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:731:26:731:26 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:732:13:732:13 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:732:17:732:35 | call_trait_m1_2(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:732:33:732:34 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:732:33:732:34 | y2 | T | main.rs:608:5:609:14 | S2 | +| main.rs:733:9:733:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:733:18:733:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:733:18:733:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:733:18:733:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:733:18:733:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:733:18:733:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:733:26:733:26 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:734:13:734:13 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:734:17:734:35 | call_trait_m1_3(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:734:33:734:34 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:734:33:734:34 | y2 | T | main.rs:608:5:609:14 | S2 | +| main.rs:735:9:735:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:735:18:735:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:735:18:735:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:735:18:735:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:735:18:735:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:735:18:735:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:735:26:735:26 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:736:13:736:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:736:17:736:38 | call_trait_assoc_1(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:736:36:736:37 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:736:36:736:37 | x2 | T | main.rs:606:5:607:14 | S1 | +| main.rs:737:9:737:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:737:18:737:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:737:18:737:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:737:18:737:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:737:18:737:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:737:18:737:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:737:26:737:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:738:13:738:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:738:17:738:38 | call_trait_assoc_2(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:738:36:738:37 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:738:36:738:37 | x2 | T | main.rs:606:5:607:14 | S1 | +| main.rs:739:9:739:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:739:18:739:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:739:18:739:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:739:18:739:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:739:18:739:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:739:18:739:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:739:26:739:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:740:13:740:13 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:740:17:740:38 | call_trait_assoc_1(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:740:36:740:37 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:740:36:740:37 | y2 | T | main.rs:608:5:609:14 | S2 | +| main.rs:741:9:741:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:741:18:741:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:741:18:741:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:741:18:741:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:741:18:741:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:741:18:741:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:741:26:741:26 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:742:13:742:13 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:742:17:742:38 | call_trait_assoc_2(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:742:36:742:37 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:742:36:742:37 | y2 | T | main.rs:608:5:609:14 | S2 | +| main.rs:743:9:743:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:743:18:743:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:743:18:743:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:743:18:743:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:743:18:743:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:743:18:743:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:743:26:743:26 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:745:13:745:14 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:745:13:745:14 | x3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:745:13:745:14 | x3 | T.T | main.rs:606:5:607:14 | S1 | +| main.rs:745:18:747:9 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:745:18:747:9 | MyThing {...} | T | main.rs:601:5:604:5 | MyThing | +| main.rs:745:18:747:9 | MyThing {...} | T.T | main.rs:606:5:607:14 | S1 | +| main.rs:746:16:746:32 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:746:16:746:32 | MyThing {...} | T | main.rs:606:5:607:14 | S1 | +| main.rs:746:29:746:30 | S1 | | main.rs:606:5:607:14 | S1 | +| main.rs:748:13:748:14 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:748:13:748:14 | y3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:748:13:748:14 | y3 | T.T | main.rs:608:5:609:14 | S2 | +| main.rs:748:18:750:9 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:748:18:750:9 | MyThing {...} | T | main.rs:601:5:604:5 | MyThing | +| main.rs:748:18:750:9 | MyThing {...} | T.T | main.rs:608:5:609:14 | S2 | +| main.rs:749:16:749:32 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:749:16:749:32 | MyThing {...} | T | main.rs:608:5:609:14 | S2 | +| main.rs:749:29:749:30 | S2 | | main.rs:608:5:609:14 | S2 | +| main.rs:752:13:752:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:752:17:752:39 | call_trait_thing_m1(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:752:37:752:38 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:752:37:752:38 | x3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:752:37:752:38 | x3 | T.T | main.rs:606:5:607:14 | S1 | +| main.rs:753:9:753:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:753:18:753:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:753:18:753:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:753:18:753:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:753:18:753:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:753:18:753:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:753:26:753:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:754:13:754:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:754:17:754:41 | call_trait_thing_m1_2(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:754:39:754:40 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:754:39:754:40 | x3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:754:39:754:40 | x3 | T.T | main.rs:606:5:607:14 | S1 | +| main.rs:755:9:755:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:755:18:755:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:755:18:755:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:755:18:755:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:755:18:755:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:755:18:755:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:755:26:755:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:756:13:756:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:756:17:756:41 | call_trait_thing_m1_3(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:756:39:756:40 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:756:39:756:40 | x3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:756:39:756:40 | x3 | T.T | main.rs:606:5:607:14 | S1 | +| main.rs:757:9:757:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:757:18:757:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:757:18:757:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:757:18:757:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:757:18:757:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:757:18:757:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:757:26:757:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:758:13:758:13 | b | | main.rs:608:5:609:14 | S2 | +| main.rs:758:17:758:39 | call_trait_thing_m1(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:758:37:758:38 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:758:37:758:38 | y3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:758:37:758:38 | y3 | T.T | main.rs:608:5:609:14 | S2 | +| main.rs:759:9:759:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:759:18:759:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:759:18:759:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:759:18:759:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:759:18:759:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:759:18:759:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:759:26:759:26 | b | | main.rs:608:5:609:14 | S2 | +| main.rs:760:13:760:13 | b | | main.rs:608:5:609:14 | S2 | +| main.rs:760:17:760:41 | call_trait_thing_m1_2(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:760:39:760:40 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:760:39:760:40 | y3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:760:39:760:40 | y3 | T.T | main.rs:608:5:609:14 | S2 | +| main.rs:761:9:761:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:761:18:761:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:761:18:761:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:761:18:761:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:761:18:761:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:761:18:761:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:761:26:761:26 | b | | main.rs:608:5:609:14 | S2 | +| main.rs:762:13:762:13 | b | | main.rs:608:5:609:14 | S2 | +| main.rs:762:17:762:41 | call_trait_thing_m1_3(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:762:39:762:40 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:762:39:762:40 | y3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:762:39:762:40 | y3 | T.T | main.rs:608:5:609:14 | S2 | +| main.rs:763:9:763:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:763:18:763:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:763:18:763:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:763:18:763:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:763:18:763:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:763:18:763:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:763:26:763:26 | b | | main.rs:608:5:609:14 | S2 | +| main.rs:764:13:764:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:764:17:764:26 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:764:24:764:25 | S1 | | main.rs:606:5:607:14 | S1 | +| main.rs:765:13:765:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:765:22:765:31 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:765:29:765:30 | S2 | | main.rs:608:5:609:14 | S2 | +| main.rs:782:15:782:18 | SelfParam | | main.rs:770:5:774:5 | MyEnum | +| main.rs:782:15:782:18 | SelfParam | A | main.rs:781:10:781:10 | T | +| main.rs:782:26:787:9 | { ... } | | main.rs:781:10:781:10 | T | +| main.rs:783:13:786:13 | match self { ... } | | main.rs:781:10:781:10 | T | +| main.rs:783:19:783:22 | self | | main.rs:770:5:774:5 | MyEnum | +| main.rs:783:19:783:22 | self | A | main.rs:781:10:781:10 | T | +| main.rs:784:17:784:29 | ...::C1(...) | | main.rs:770:5:774:5 | MyEnum | +| main.rs:784:17:784:29 | ...::C1(...) | A | main.rs:781:10:781:10 | T | +| main.rs:784:28:784:28 | a | | main.rs:781:10:781:10 | T | +| main.rs:784:34:784:34 | a | | main.rs:781:10:781:10 | T | +| main.rs:785:17:785:32 | ...::C2 {...} | | main.rs:770:5:774:5 | MyEnum | +| main.rs:785:17:785:32 | ...::C2 {...} | A | main.rs:781:10:781:10 | T | +| main.rs:785:30:785:30 | a | | main.rs:781:10:781:10 | T | +| main.rs:785:37:785:37 | a | | main.rs:781:10:781:10 | T | +| main.rs:790:16:796:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:791:13:791:13 | x | | main.rs:770:5:774:5 | MyEnum | +| main.rs:791:13:791:13 | x | A | main.rs:776:5:777:14 | S1 | +| main.rs:791:17:791:30 | ...::C1(...) | | main.rs:770:5:774:5 | MyEnum | +| main.rs:791:17:791:30 | ...::C1(...) | A | main.rs:776:5:777:14 | S1 | +| main.rs:791:28:791:29 | S1 | | main.rs:776:5:777:14 | S1 | +| main.rs:792:13:792:13 | y | | main.rs:770:5:774:5 | MyEnum | +| main.rs:792:13:792:13 | y | A | main.rs:778:5:779:14 | S2 | +| main.rs:792:17:792:36 | ...::C2 {...} | | main.rs:770:5:774:5 | MyEnum | +| main.rs:792:17:792:36 | ...::C2 {...} | A | main.rs:778:5:779:14 | S2 | +| main.rs:792:33:792:34 | S2 | | main.rs:778:5:779:14 | S2 | +| main.rs:794:9:794:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:794:18:794:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:794:18:794:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:794:18:794:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:794:18:794:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:794:18:794:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:794:26:794:26 | x | | main.rs:770:5:774:5 | MyEnum | +| main.rs:794:26:794:26 | x | A | main.rs:776:5:777:14 | S1 | +| main.rs:794:26:794:31 | x.m1() | | main.rs:776:5:777:14 | S1 | +| main.rs:795:9:795:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:795:18:795:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:795:18:795:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:795:18:795:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:795:18:795:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:795:18:795:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:795:26:795:26 | y | | main.rs:770:5:774:5 | MyEnum | +| main.rs:795:26:795:26 | y | A | main.rs:778:5:779:14 | S2 | +| main.rs:795:26:795:31 | y.m1() | | main.rs:778:5:779:14 | S2 | +| main.rs:817:15:817:18 | SelfParam | | main.rs:815:5:818:5 | Self [trait MyTrait1] | +| main.rs:822:15:822:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:822:15:822:19 | SelfParam | TRef | main.rs:820:5:832:5 | Self [trait MyTrait2] | +| main.rs:825:9:831:9 | { ... } | | main.rs:820:20:820:22 | Tr2 | +| main.rs:826:13:830:13 | if ... {...} else {...} | | main.rs:820:20:820:22 | Tr2 | +| main.rs:826:16:826:16 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:826:16:826:20 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:826:20:826:20 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:826:22:828:13 | { ... } | | main.rs:820:20:820:22 | Tr2 | +| main.rs:827:17:827:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:827:17:827:20 | self | TRef | main.rs:820:5:832:5 | Self [trait MyTrait2] | +| main.rs:827:17:827:25 | self.m1() | | main.rs:820:20:820:22 | Tr2 | +| main.rs:828:20:830:13 | { ... } | | main.rs:820:20:820:22 | Tr2 | +| main.rs:829:17:829:31 | ...::m1(...) | | main.rs:820:20:820:22 | Tr2 | +| main.rs:829:26:829:30 | * ... | | main.rs:820:5:832:5 | Self [trait MyTrait2] | +| main.rs:829:27:829:30 | self | | {EXTERNAL LOCATION} | & | +| main.rs:829:27:829:30 | self | TRef | main.rs:820:5:832:5 | Self [trait MyTrait2] | +| main.rs:836:15:836:18 | SelfParam | | main.rs:834:5:846:5 | Self [trait MyTrait3] | +| main.rs:839:9:845:9 | { ... } | | main.rs:834:20:834:22 | Tr3 | +| main.rs:840:13:844:13 | if ... {...} else {...} | | main.rs:834:20:834:22 | Tr3 | +| main.rs:840:16:840:16 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:840:16:840:20 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:840:20:840:20 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:840:22:842:13 | { ... } | | main.rs:834:20:834:22 | Tr3 | +| main.rs:841:17:841:20 | self | | main.rs:834:5:846:5 | Self [trait MyTrait3] | +| main.rs:841:17:841:25 | self.m2() | | main.rs:800:5:803:5 | MyThing | +| main.rs:841:17:841:25 | self.m2() | A | main.rs:834:20:834:22 | Tr3 | +| main.rs:841:17:841:27 | ... .a | | main.rs:834:20:834:22 | Tr3 | +| main.rs:842:20:844:13 | { ... } | | main.rs:834:20:834:22 | Tr3 | +| main.rs:843:17:843:31 | ...::m2(...) | | main.rs:800:5:803:5 | MyThing | +| main.rs:843:17:843:31 | ...::m2(...) | A | main.rs:834:20:834:22 | Tr3 | +| main.rs:843:17:843:33 | ... .a | | main.rs:834:20:834:22 | Tr3 | +| main.rs:843:26:843:30 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:843:26:843:30 | &self | TRef | main.rs:834:5:846:5 | Self [trait MyTrait3] | +| main.rs:843:27:843:30 | self | | main.rs:834:5:846:5 | Self [trait MyTrait3] | +| main.rs:850:15:850:18 | SelfParam | | main.rs:800:5:803:5 | MyThing | +| main.rs:850:15:850:18 | SelfParam | A | main.rs:848:10:848:10 | T | +| main.rs:850:26:852:9 | { ... } | | main.rs:848:10:848:10 | T | +| main.rs:851:13:851:16 | self | | main.rs:800:5:803:5 | MyThing | +| main.rs:851:13:851:16 | self | A | main.rs:848:10:848:10 | T | +| main.rs:851:13:851:18 | self.a | | main.rs:848:10:848:10 | T | +| main.rs:859:15:859:18 | SelfParam | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:859:15:859:18 | SelfParam | A | main.rs:857:10:857:10 | T | +| main.rs:859:35:861:9 | { ... } | | main.rs:800:5:803:5 | MyThing | +| main.rs:859:35:861:9 | { ... } | A | main.rs:857:10:857:10 | T | +| main.rs:860:13:860:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:860:13:860:33 | MyThing {...} | A | main.rs:857:10:857:10 | T | +| main.rs:860:26:860:29 | self | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:860:26:860:29 | self | A | main.rs:857:10:857:10 | T | +| main.rs:860:26:860:31 | self.a | | main.rs:857:10:857:10 | T | +| main.rs:868:44:868:44 | x | | main.rs:868:26:868:41 | T2 | +| main.rs:868:57:870:5 | { ... } | | main.rs:868:22:868:23 | T1 | +| main.rs:869:9:869:9 | x | | main.rs:868:26:868:41 | T2 | +| main.rs:869:9:869:14 | x.m1() | | main.rs:868:22:868:23 | T1 | +| main.rs:872:56:872:56 | x | | main.rs:872:39:872:53 | T | +| main.rs:872:62:876:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:874:13:874:13 | a | | main.rs:800:5:803:5 | MyThing | +| main.rs:874:13:874:13 | a | A | main.rs:810:5:811:14 | S1 | +| main.rs:874:17:874:17 | x | | main.rs:872:39:872:53 | T | +| main.rs:874:17:874:22 | x.m1() | | main.rs:800:5:803:5 | MyThing | +| main.rs:874:17:874:22 | x.m1() | A | main.rs:810:5:811:14 | S1 | | main.rs:875:9:875:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:875:18:875:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:875:18:875:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:875:18:875:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:875:18:875:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:875:18:875:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:875:26:875:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:876:13:876:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:876:17:876:35 | call_trait_m1_3(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:876:33:876:34 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:876:33:876:34 | x2 | T | main.rs:754:5:755:14 | S1 | -| main.rs:877:9:877:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:877:18:877:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:877:18:877:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:877:18:877:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:877:18:877:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:877:18:877:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:877:26:877:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:878:13:878:13 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:878:17:878:33 | call_trait_m1(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:878:31:878:32 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:878:31:878:32 | y2 | T | main.rs:756:5:757:14 | S2 | -| main.rs:879:9:879:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:879:18:879:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:879:18:879:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:879:18:879:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:879:18:879:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:879:18:879:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:879:26:879:26 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:880:13:880:13 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:880:17:880:35 | call_trait_m1_2(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:880:33:880:34 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:880:33:880:34 | y2 | T | main.rs:756:5:757:14 | S2 | -| main.rs:881:9:881:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:881:18:881:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:881:18:881:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:881:18:881:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:881:18:881:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:881:18:881:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:881:26:881:26 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:882:13:882:13 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:882:17:882:35 | call_trait_m1_3(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:882:33:882:34 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:882:33:882:34 | y2 | T | main.rs:756:5:757:14 | S2 | -| main.rs:883:9:883:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:875:26:875:26 | a | | main.rs:800:5:803:5 | MyThing | +| main.rs:875:26:875:26 | a | A | main.rs:810:5:811:14 | S1 | +| main.rs:878:16:902:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:879:13:879:13 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:879:13:879:13 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:879:17:879:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:879:17:879:33 | MyThing {...} | A | main.rs:810:5:811:14 | S1 | +| main.rs:879:30:879:31 | S1 | | main.rs:810:5:811:14 | S1 | +| main.rs:880:13:880:13 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:880:13:880:13 | y | A | main.rs:812:5:813:14 | S2 | +| main.rs:880:17:880:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:880:17:880:33 | MyThing {...} | A | main.rs:812:5:813:14 | S2 | +| main.rs:880:30:880:31 | S2 | | main.rs:812:5:813:14 | S2 | +| main.rs:882:9:882:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:882:18:882:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:882:18:882:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:882:18:882:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:882:18:882:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:882:18:882:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:882:26:882:26 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:882:26:882:26 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:882:26:882:31 | x.m1() | | main.rs:810:5:811:14 | S1 | +| main.rs:883:9:883:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:883:18:883:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:883:18:883:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:883:18:883:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:883:18:883:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:883:18:883:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:883:26:883:26 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:884:13:884:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:884:17:884:38 | call_trait_assoc_1(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:884:36:884:37 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:884:36:884:37 | x2 | T | main.rs:754:5:755:14 | S1 | -| main.rs:885:9:885:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:885:18:885:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:885:18:885:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:885:18:885:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:885:18:885:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:885:18:885:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:885:26:885:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:886:13:886:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:886:17:886:38 | call_trait_assoc_2(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:886:36:886:37 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:886:36:886:37 | x2 | T | main.rs:754:5:755:14 | S1 | -| main.rs:887:9:887:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:887:18:887:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:887:18:887:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:887:18:887:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:887:18:887:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:887:18:887:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:887:26:887:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:888:13:888:13 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:888:17:888:38 | call_trait_assoc_1(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:888:36:888:37 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:888:36:888:37 | y2 | T | main.rs:756:5:757:14 | S2 | -| main.rs:889:9:889:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:883:18:883:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:883:18:883:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:883:18:883:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:883:26:883:26 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:883:26:883:26 | y | A | main.rs:812:5:813:14 | S2 | +| main.rs:883:26:883:31 | y.m1() | | main.rs:812:5:813:14 | S2 | +| main.rs:885:13:885:13 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:885:13:885:13 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:885:17:885:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:885:17:885:33 | MyThing {...} | A | main.rs:810:5:811:14 | S1 | +| main.rs:885:30:885:31 | S1 | | main.rs:810:5:811:14 | S1 | +| main.rs:886:13:886:13 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:886:13:886:13 | y | A | main.rs:812:5:813:14 | S2 | +| main.rs:886:17:886:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:886:17:886:33 | MyThing {...} | A | main.rs:812:5:813:14 | S2 | +| main.rs:886:30:886:31 | S2 | | main.rs:812:5:813:14 | S2 | +| main.rs:888:9:888:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:888:18:888:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:888:18:888:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:888:18:888:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:888:18:888:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:888:18:888:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:888:26:888:26 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:888:26:888:26 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:888:26:888:31 | x.m2() | | main.rs:810:5:811:14 | S1 | +| main.rs:889:9:889:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:889:18:889:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:889:18:889:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:889:18:889:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:889:18:889:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:889:18:889:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:889:26:889:26 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:890:13:890:13 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:890:17:890:38 | call_trait_assoc_2(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:890:36:890:37 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:890:36:890:37 | y2 | T | main.rs:756:5:757:14 | S2 | -| main.rs:891:9:891:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:891:18:891:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:891:18:891:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:891:18:891:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:891:18:891:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:891:18:891:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:891:26:891:26 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:893:13:893:14 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:893:13:893:14 | x3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:893:13:893:14 | x3 | T.T | main.rs:754:5:755:14 | S1 | -| main.rs:893:18:895:9 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:893:18:895:9 | MyThing {...} | T | main.rs:749:5:752:5 | MyThing | -| main.rs:893:18:895:9 | MyThing {...} | T.T | main.rs:754:5:755:14 | S1 | -| main.rs:894:16:894:32 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:894:16:894:32 | MyThing {...} | T | main.rs:754:5:755:14 | S1 | -| main.rs:894:29:894:30 | S1 | | main.rs:754:5:755:14 | S1 | -| main.rs:896:13:896:14 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:896:13:896:14 | y3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:896:13:896:14 | y3 | T.T | main.rs:756:5:757:14 | S2 | -| main.rs:896:18:898:9 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:896:18:898:9 | MyThing {...} | T | main.rs:749:5:752:5 | MyThing | -| main.rs:896:18:898:9 | MyThing {...} | T.T | main.rs:756:5:757:14 | S2 | -| main.rs:897:16:897:32 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:897:16:897:32 | MyThing {...} | T | main.rs:756:5:757:14 | S2 | -| main.rs:897:29:897:30 | S2 | | main.rs:756:5:757:14 | S2 | -| main.rs:900:13:900:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:900:17:900:39 | call_trait_thing_m1(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:900:37:900:38 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:900:37:900:38 | x3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:900:37:900:38 | x3 | T.T | main.rs:754:5:755:14 | S1 | -| main.rs:901:9:901:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:901:18:901:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:901:18:901:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:901:18:901:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:901:18:901:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:901:18:901:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:901:26:901:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:902:13:902:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:902:17:902:41 | call_trait_thing_m1_2(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:902:39:902:40 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:902:39:902:40 | x3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:902:39:902:40 | x3 | T.T | main.rs:754:5:755:14 | S1 | -| main.rs:903:9:903:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:903:18:903:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:903:18:903:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:903:18:903:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:903:18:903:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:903:18:903:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:903:26:903:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:904:13:904:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:904:17:904:41 | call_trait_thing_m1_3(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:904:39:904:40 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:904:39:904:40 | x3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:904:39:904:40 | x3 | T.T | main.rs:754:5:755:14 | S1 | -| main.rs:905:9:905:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:905:18:905:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:905:18:905:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:905:18:905:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:905:18:905:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:905:18:905:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:905:26:905:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:906:13:906:13 | b | | main.rs:756:5:757:14 | S2 | -| main.rs:906:17:906:39 | call_trait_thing_m1(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:906:37:906:38 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:906:37:906:38 | y3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:906:37:906:38 | y3 | T.T | main.rs:756:5:757:14 | S2 | -| main.rs:907:9:907:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:907:18:907:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:907:18:907:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:907:18:907:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:907:18:907:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:907:18:907:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:907:26:907:26 | b | | main.rs:756:5:757:14 | S2 | -| main.rs:908:13:908:13 | b | | main.rs:756:5:757:14 | S2 | -| main.rs:908:17:908:41 | call_trait_thing_m1_2(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:908:39:908:40 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:908:39:908:40 | y3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:908:39:908:40 | y3 | T.T | main.rs:756:5:757:14 | S2 | -| main.rs:909:9:909:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:909:18:909:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:909:18:909:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:909:18:909:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:909:18:909:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:909:18:909:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:909:26:909:26 | b | | main.rs:756:5:757:14 | S2 | -| main.rs:910:13:910:13 | b | | main.rs:756:5:757:14 | S2 | -| main.rs:910:17:910:41 | call_trait_thing_m1_3(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:910:39:910:40 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:910:39:910:40 | y3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:910:39:910:40 | y3 | T.T | main.rs:756:5:757:14 | S2 | -| main.rs:911:9:911:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:911:18:911:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:911:18:911:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:911:18:911:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:911:18:911:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:911:18:911:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:911:26:911:26 | b | | main.rs:756:5:757:14 | S2 | -| main.rs:912:13:912:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:912:17:912:26 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:912:24:912:25 | S1 | | main.rs:754:5:755:14 | S1 | -| main.rs:913:13:913:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:913:22:913:31 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:913:29:913:30 | S2 | | main.rs:756:5:757:14 | S2 | -| main.rs:930:15:930:18 | SelfParam | | main.rs:918:5:922:5 | MyEnum | -| main.rs:930:15:930:18 | SelfParam | A | main.rs:929:10:929:10 | T | -| main.rs:930:26:935:9 | { ... } | | main.rs:929:10:929:10 | T | -| main.rs:931:13:934:13 | match self { ... } | | main.rs:929:10:929:10 | T | -| main.rs:931:19:931:22 | self | | main.rs:918:5:922:5 | MyEnum | -| main.rs:931:19:931:22 | self | A | main.rs:929:10:929:10 | T | -| main.rs:932:17:932:29 | ...::C1(...) | | main.rs:918:5:922:5 | MyEnum | -| main.rs:932:17:932:29 | ...::C1(...) | A | main.rs:929:10:929:10 | T | -| main.rs:932:28:932:28 | a | | main.rs:929:10:929:10 | T | -| main.rs:932:34:932:34 | a | | main.rs:929:10:929:10 | T | -| main.rs:933:17:933:32 | ...::C2 {...} | | main.rs:918:5:922:5 | MyEnum | -| main.rs:933:17:933:32 | ...::C2 {...} | A | main.rs:929:10:929:10 | T | -| main.rs:933:30:933:30 | a | | main.rs:929:10:929:10 | T | -| main.rs:933:37:933:37 | a | | main.rs:929:10:929:10 | T | -| main.rs:938:16:944:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:939:13:939:13 | x | | main.rs:918:5:922:5 | MyEnum | -| main.rs:939:13:939:13 | x | A | main.rs:924:5:925:14 | S1 | -| main.rs:939:17:939:30 | ...::C1(...) | | main.rs:918:5:922:5 | MyEnum | -| main.rs:939:17:939:30 | ...::C1(...) | A | main.rs:924:5:925:14 | S1 | -| main.rs:939:28:939:29 | S1 | | main.rs:924:5:925:14 | S1 | -| main.rs:940:13:940:13 | y | | main.rs:918:5:922:5 | MyEnum | -| main.rs:940:13:940:13 | y | A | main.rs:926:5:927:14 | S2 | -| main.rs:940:17:940:36 | ...::C2 {...} | | main.rs:918:5:922:5 | MyEnum | -| main.rs:940:17:940:36 | ...::C2 {...} | A | main.rs:926:5:927:14 | S2 | -| main.rs:940:33:940:34 | S2 | | main.rs:926:5:927:14 | S2 | -| main.rs:942:9:942:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:942:18:942:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:942:18:942:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:942:18:942:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:942:18:942:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:942:18:942:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:942:26:942:26 | x | | main.rs:918:5:922:5 | MyEnum | -| main.rs:942:26:942:26 | x | A | main.rs:924:5:925:14 | S1 | -| main.rs:942:26:942:31 | x.m1() | | main.rs:924:5:925:14 | S1 | -| main.rs:943:9:943:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:943:18:943:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:943:18:943:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:943:18:943:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:943:18:943:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:943:18:943:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:943:26:943:26 | y | | main.rs:918:5:922:5 | MyEnum | -| main.rs:943:26:943:26 | y | A | main.rs:926:5:927:14 | S2 | -| main.rs:943:26:943:31 | y.m1() | | main.rs:926:5:927:14 | S2 | -| main.rs:965:15:965:18 | SelfParam | | main.rs:963:5:966:5 | Self [trait MyTrait1] | -| main.rs:970:15:970:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:970:15:970:19 | SelfParam | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | -| main.rs:973:9:979:9 | { ... } | | main.rs:968:20:968:22 | Tr2 | -| main.rs:974:13:978:13 | if ... {...} else {...} | | main.rs:968:20:968:22 | Tr2 | -| main.rs:974:16:974:16 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:974:16:974:20 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:974:20:974:20 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:974:22:976:13 | { ... } | | main.rs:968:20:968:22 | Tr2 | -| main.rs:975:17:975:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:975:17:975:20 | self | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | -| main.rs:975:17:975:25 | self.m1() | | main.rs:968:20:968:22 | Tr2 | -| main.rs:976:20:978:13 | { ... } | | main.rs:968:20:968:22 | Tr2 | -| main.rs:977:17:977:31 | ...::m1(...) | | main.rs:968:20:968:22 | Tr2 | -| main.rs:977:26:977:30 | * ... | | main.rs:968:5:980:5 | Self [trait MyTrait2] | -| main.rs:977:27:977:30 | self | | {EXTERNAL LOCATION} | & | -| main.rs:977:27:977:30 | self | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | -| main.rs:984:15:984:18 | SelfParam | | main.rs:982:5:994:5 | Self [trait MyTrait3] | -| main.rs:987:9:993:9 | { ... } | | main.rs:982:20:982:22 | Tr3 | -| main.rs:988:13:992:13 | if ... {...} else {...} | | main.rs:982:20:982:22 | Tr3 | -| main.rs:988:16:988:16 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:988:16:988:20 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:988:20:988:20 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:988:22:990:13 | { ... } | | main.rs:982:20:982:22 | Tr3 | -| main.rs:989:17:989:20 | self | | main.rs:982:5:994:5 | Self [trait MyTrait3] | -| main.rs:989:17:989:25 | self.m2() | | main.rs:948:5:951:5 | MyThing | -| main.rs:989:17:989:25 | self.m2() | A | main.rs:982:20:982:22 | Tr3 | -| main.rs:989:17:989:27 | ... .a | | main.rs:982:20:982:22 | Tr3 | -| main.rs:990:20:992:13 | { ... } | | main.rs:982:20:982:22 | Tr3 | -| main.rs:991:17:991:31 | ...::m2(...) | | main.rs:948:5:951:5 | MyThing | -| main.rs:991:17:991:31 | ...::m2(...) | A | main.rs:982:20:982:22 | Tr3 | -| main.rs:991:17:991:33 | ... .a | | main.rs:982:20:982:22 | Tr3 | -| main.rs:991:26:991:30 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:991:26:991:30 | &self | TRef | main.rs:982:5:994:5 | Self [trait MyTrait3] | -| main.rs:991:27:991:30 | self | | main.rs:982:5:994:5 | Self [trait MyTrait3] | -| main.rs:998:15:998:18 | SelfParam | | main.rs:948:5:951:5 | MyThing | -| main.rs:998:15:998:18 | SelfParam | A | main.rs:996:10:996:10 | T | -| main.rs:998:26:1000:9 | { ... } | | main.rs:996:10:996:10 | T | -| main.rs:999:13:999:16 | self | | main.rs:948:5:951:5 | MyThing | -| main.rs:999:13:999:16 | self | A | main.rs:996:10:996:10 | T | -| main.rs:999:13:999:18 | self.a | | main.rs:996:10:996:10 | T | -| main.rs:1007:15:1007:18 | SelfParam | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1007:15:1007:18 | SelfParam | A | main.rs:1005:10:1005:10 | T | -| main.rs:1007:35:1009:9 | { ... } | | main.rs:948:5:951:5 | MyThing | -| main.rs:1007:35:1009:9 | { ... } | A | main.rs:1005:10:1005:10 | T | -| main.rs:1008:13:1008:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1008:13:1008:33 | MyThing {...} | A | main.rs:1005:10:1005:10 | T | -| main.rs:1008:26:1008:29 | self | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1008:26:1008:29 | self | A | main.rs:1005:10:1005:10 | T | -| main.rs:1008:26:1008:31 | self.a | | main.rs:1005:10:1005:10 | T | -| main.rs:1016:44:1016:44 | x | | main.rs:1016:26:1016:41 | T2 | -| main.rs:1016:57:1018:5 | { ... } | | main.rs:1016:22:1016:23 | T1 | -| main.rs:1017:9:1017:9 | x | | main.rs:1016:26:1016:41 | T2 | -| main.rs:1017:9:1017:14 | x.m1() | | main.rs:1016:22:1016:23 | T1 | -| main.rs:1020:56:1020:56 | x | | main.rs:1020:39:1020:53 | T | -| main.rs:1020:62:1024:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1022:13:1022:13 | a | | main.rs:948:5:951:5 | MyThing | -| main.rs:1022:13:1022:13 | a | A | main.rs:958:5:959:14 | S1 | -| main.rs:1022:17:1022:17 | x | | main.rs:1020:39:1020:53 | T | -| main.rs:1022:17:1022:22 | x.m1() | | main.rs:948:5:951:5 | MyThing | -| main.rs:1022:17:1022:22 | x.m1() | A | main.rs:958:5:959:14 | S1 | -| main.rs:1023:9:1023:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:889:18:889:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:889:18:889:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:889:18:889:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:889:26:889:26 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:889:26:889:26 | y | A | main.rs:812:5:813:14 | S2 | +| main.rs:889:26:889:31 | y.m2() | | main.rs:812:5:813:14 | S2 | +| main.rs:891:13:891:13 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:891:13:891:13 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:891:17:891:34 | MyThing2 {...} | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:891:17:891:34 | MyThing2 {...} | A | main.rs:810:5:811:14 | S1 | +| main.rs:891:31:891:32 | S1 | | main.rs:810:5:811:14 | S1 | +| main.rs:892:13:892:13 | y | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:892:13:892:13 | y | A | main.rs:812:5:813:14 | S2 | +| main.rs:892:17:892:34 | MyThing2 {...} | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:892:17:892:34 | MyThing2 {...} | A | main.rs:812:5:813:14 | S2 | +| main.rs:892:31:892:32 | S2 | | main.rs:812:5:813:14 | S2 | +| main.rs:894:9:894:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:894:18:894:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:894:18:894:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:894:18:894:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:894:18:894:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:894:18:894:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:894:26:894:26 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:894:26:894:26 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:894:26:894:31 | x.m3() | | main.rs:810:5:811:14 | S1 | +| main.rs:895:9:895:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:895:18:895:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:895:18:895:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:895:18:895:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:895:18:895:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:895:18:895:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:895:26:895:26 | y | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:895:26:895:26 | y | A | main.rs:812:5:813:14 | S2 | +| main.rs:895:26:895:31 | y.m3() | | main.rs:812:5:813:14 | S2 | +| main.rs:897:13:897:13 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:897:13:897:13 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:897:17:897:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:897:17:897:33 | MyThing {...} | A | main.rs:810:5:811:14 | S1 | +| main.rs:897:30:897:31 | S1 | | main.rs:810:5:811:14 | S1 | +| main.rs:898:13:898:13 | s | | main.rs:810:5:811:14 | S1 | +| main.rs:898:17:898:32 | call_trait_m1(...) | | main.rs:810:5:811:14 | S1 | +| main.rs:898:31:898:31 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:898:31:898:31 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:900:13:900:13 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:900:13:900:13 | x | A | main.rs:812:5:813:14 | S2 | +| main.rs:900:17:900:34 | MyThing2 {...} | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:900:17:900:34 | MyThing2 {...} | A | main.rs:812:5:813:14 | S2 | +| main.rs:900:31:900:32 | S2 | | main.rs:812:5:813:14 | S2 | +| main.rs:901:13:901:13 | s | | main.rs:800:5:803:5 | MyThing | +| main.rs:901:13:901:13 | s | A | main.rs:812:5:813:14 | S2 | +| main.rs:901:17:901:32 | call_trait_m1(...) | | main.rs:800:5:803:5 | MyThing | +| main.rs:901:17:901:32 | call_trait_m1(...) | A | main.rs:812:5:813:14 | S2 | +| main.rs:901:31:901:31 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:901:31:901:31 | x | A | main.rs:812:5:813:14 | S2 | +| main.rs:918:22:918:22 | x | | {EXTERNAL LOCATION} | & | +| main.rs:918:22:918:22 | x | TRef | main.rs:918:11:918:19 | T | +| main.rs:918:35:920:5 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:918:35:920:5 | { ... } | TRef | main.rs:918:11:918:19 | T | +| main.rs:919:9:919:9 | x | | {EXTERNAL LOCATION} | & | +| main.rs:919:9:919:9 | x | TRef | main.rs:918:11:918:19 | T | +| main.rs:923:17:923:20 | SelfParam | | main.rs:908:5:909:14 | S1 | +| main.rs:923:29:925:9 | { ... } | | main.rs:911:5:912:14 | S2 | +| main.rs:924:13:924:14 | S2 | | main.rs:911:5:912:14 | S2 | +| main.rs:928:21:928:21 | x | | main.rs:928:13:928:14 | T1 | +| main.rs:931:5:933:5 | { ... } | | main.rs:928:17:928:18 | T2 | +| main.rs:932:9:932:9 | x | | main.rs:928:13:928:14 | T1 | +| main.rs:932:9:932:16 | x.into() | | main.rs:928:17:928:18 | T2 | +| main.rs:935:16:951:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:936:13:936:13 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:936:17:936:18 | S1 | | main.rs:908:5:909:14 | S1 | +| main.rs:937:9:937:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:937:18:937:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:937:18:937:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:937:18:937:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:937:18:937:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:937:18:937:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:937:26:937:31 | id(...) | | {EXTERNAL LOCATION} | & | +| main.rs:937:26:937:31 | id(...) | TRef | main.rs:908:5:909:14 | S1 | +| main.rs:937:29:937:30 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:937:29:937:30 | &x | TRef | main.rs:908:5:909:14 | S1 | +| main.rs:937:30:937:30 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:939:13:939:13 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:939:17:939:18 | S1 | | main.rs:908:5:909:14 | S1 | +| main.rs:940:9:940:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:940:18:940:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:940:18:940:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:940:18:940:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:940:18:940:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:940:18:940:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:940:26:940:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:940:26:940:37 | id::<...>(...) | TRef | main.rs:908:5:909:14 | S1 | +| main.rs:940:35:940:36 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:940:35:940:36 | &x | TRef | main.rs:908:5:909:14 | S1 | +| main.rs:940:36:940:36 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:942:13:942:13 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:942:17:942:18 | S1 | | main.rs:908:5:909:14 | S1 | +| main.rs:944:9:944:45 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:944:18:944:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:944:18:944:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:944:18:944:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:944:18:944:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:944:18:944:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:944:26:944:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:944:26:944:44 | id::<...>(...) | TRef | main.rs:914:5:914:25 | dyn Trait | +| main.rs:944:42:944:43 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:944:42:944:43 | &x | TRef | main.rs:908:5:909:14 | S1 | +| main.rs:944:43:944:43 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:946:13:946:13 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:946:17:946:18 | S1 | | main.rs:908:5:909:14 | S1 | +| main.rs:947:9:947:25 | into::<...>(...) | | main.rs:911:5:912:14 | S2 | +| main.rs:947:24:947:24 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:949:13:949:13 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:949:17:949:18 | S1 | | main.rs:908:5:909:14 | S1 | +| main.rs:950:13:950:13 | y | | main.rs:911:5:912:14 | S2 | +| main.rs:950:21:950:27 | into(...) | | main.rs:911:5:912:14 | S2 | +| main.rs:950:26:950:26 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:964:22:964:25 | SelfParam | | main.rs:955:5:961:5 | PairOption | +| main.rs:964:22:964:25 | SelfParam | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:964:22:964:25 | SelfParam | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:964:35:971:9 | { ... } | | main.rs:963:15:963:17 | Snd | +| main.rs:965:13:970:13 | match self { ... } | | file://:0:0:0:0 | ! | +| main.rs:965:13:970:13 | match self { ... } | | main.rs:963:15:963:17 | Snd | +| main.rs:965:19:965:22 | self | | main.rs:955:5:961:5 | PairOption | +| main.rs:965:19:965:22 | self | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:965:19:965:22 | self | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:966:17:966:38 | ...::PairNone(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:966:17:966:38 | ...::PairNone(...) | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:966:17:966:38 | ...::PairNone(...) | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:966:43:966:82 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:966:50:966:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | +| main.rs:966:50:966:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:966:50:966:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:966:50:966:81 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:966:50:966:81 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:967:17:967:38 | ...::PairFst(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:967:17:967:38 | ...::PairFst(...) | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:967:17:967:38 | ...::PairFst(...) | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:967:37:967:37 | _ | | main.rs:963:10:963:12 | Fst | +| main.rs:967:43:967:81 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:967:50:967:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | +| main.rs:967:50:967:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:967:50:967:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:967:50:967:80 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:967:50:967:80 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:968:17:968:40 | ...::PairSnd(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:968:17:968:40 | ...::PairSnd(...) | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:968:17:968:40 | ...::PairSnd(...) | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:968:37:968:39 | snd | | main.rs:963:15:963:17 | Snd | +| main.rs:968:45:968:47 | snd | | main.rs:963:15:963:17 | Snd | +| main.rs:969:17:969:44 | ...::PairBoth(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:969:17:969:44 | ...::PairBoth(...) | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:969:17:969:44 | ...::PairBoth(...) | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:969:38:969:38 | _ | | main.rs:963:10:963:12 | Fst | +| main.rs:969:41:969:43 | snd | | main.rs:963:15:963:17 | Snd | +| main.rs:969:49:969:51 | snd | | main.rs:963:15:963:17 | Snd | +| main.rs:995:10:995:10 | t | | main.rs:955:5:961:5 | PairOption | +| main.rs:995:10:995:10 | t | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:995:10:995:10 | t | Snd | main.rs:955:5:961:5 | PairOption | +| main.rs:995:10:995:10 | t | Snd.Fst | main.rs:977:5:978:14 | S2 | +| main.rs:995:10:995:10 | t | Snd.Snd | main.rs:980:5:981:14 | S3 | +| main.rs:995:30:998:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:996:13:996:13 | x | | main.rs:980:5:981:14 | S3 | +| main.rs:996:17:996:17 | t | | main.rs:955:5:961:5 | PairOption | +| main.rs:996:17:996:17 | t | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:996:17:996:17 | t | Snd | main.rs:955:5:961:5 | PairOption | +| main.rs:996:17:996:17 | t | Snd.Fst | main.rs:977:5:978:14 | S2 | +| main.rs:996:17:996:17 | t | Snd.Snd | main.rs:980:5:981:14 | S3 | +| main.rs:996:17:996:29 | t.unwrapSnd() | | main.rs:955:5:961:5 | PairOption | +| main.rs:996:17:996:29 | t.unwrapSnd() | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:996:17:996:29 | t.unwrapSnd() | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:996:17:996:41 | ... .unwrapSnd() | | main.rs:980:5:981:14 | S3 | +| main.rs:997:9:997:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:997:18:997:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:997:18:997:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:997:18:997:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:997:18:997:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:997:18:997:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:997:26:997:26 | x | | main.rs:980:5:981:14 | S3 | +| main.rs:1008:16:1028:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1010:13:1010:14 | p1 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1010:13:1010:14 | p1 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1010:13:1010:14 | p1 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1010:26:1010:53 | ...::PairBoth(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:1010:26:1010:53 | ...::PairBoth(...) | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1010:26:1010:53 | ...::PairBoth(...) | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1010:47:1010:48 | S1 | | main.rs:974:5:975:14 | S1 | +| main.rs:1010:51:1010:52 | S2 | | main.rs:977:5:978:14 | S2 | +| main.rs:1011:9:1011:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1011:18:1011:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1011:18:1011:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1011:18:1011:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1011:18:1011:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1011:18:1011:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1011:26:1011:27 | p1 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1011:26:1011:27 | p1 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1011:26:1011:27 | p1 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1014:13:1014:14 | p2 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1014:13:1014:14 | p2 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1014:13:1014:14 | p2 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1014:26:1014:47 | ...::PairNone(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:1014:26:1014:47 | ...::PairNone(...) | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1014:26:1014:47 | ...::PairNone(...) | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1015:9:1015:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1015:18:1015:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1015:18:1015:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1015:18:1015:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1015:18:1015:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1015:18:1015:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1015:26:1015:27 | p2 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1015:26:1015:27 | p2 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1015:26:1015:27 | p2 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1018:13:1018:14 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1018:13:1018:14 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1018:13:1018:14 | p3 | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1018:34:1018:56 | ...::PairSnd(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:1018:34:1018:56 | ...::PairSnd(...) | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1018:34:1018:56 | ...::PairSnd(...) | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1018:54:1018:55 | S3 | | main.rs:980:5:981:14 | S3 | +| main.rs:1019:9:1019:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1019:18:1019:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1019:18:1019:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1019:18:1019:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1019:18:1019:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1019:18:1019:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1019:26:1019:27 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1019:26:1019:27 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1019:26:1019:27 | p3 | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1022:13:1022:14 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1022:13:1022:14 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1022:13:1022:14 | p3 | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1022:35:1022:56 | ...::PairNone(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:1022:35:1022:56 | ...::PairNone(...) | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1022:35:1022:56 | ...::PairNone(...) | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1023:9:1023:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1023:18:1023:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1023:18:1023:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1023:18:1023:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1023:18:1023:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1023:18:1023:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1023:26:1023:26 | a | | main.rs:948:5:951:5 | MyThing | -| main.rs:1023:26:1023:26 | a | A | main.rs:958:5:959:14 | S1 | -| main.rs:1026:16:1050:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1027:13:1027:13 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1027:13:1027:13 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1027:17:1027:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1027:17:1027:33 | MyThing {...} | A | main.rs:958:5:959:14 | S1 | -| main.rs:1027:30:1027:31 | S1 | | main.rs:958:5:959:14 | S1 | -| main.rs:1028:13:1028:13 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1028:13:1028:13 | y | A | main.rs:960:5:961:14 | S2 | -| main.rs:1028:17:1028:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1028:17:1028:33 | MyThing {...} | A | main.rs:960:5:961:14 | S2 | -| main.rs:1028:30:1028:31 | S2 | | main.rs:960:5:961:14 | S2 | -| main.rs:1030:9:1030:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1030:18:1030:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1030:18:1030:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1030:18:1030:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1030:18:1030:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1030:18:1030:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1030:26:1030:26 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1030:26:1030:26 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1030:26:1030:31 | x.m1() | | main.rs:958:5:959:14 | S1 | -| main.rs:1031:9:1031:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1031:18:1031:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1031:18:1031:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1031:18:1031:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1031:18:1031:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1031:18:1031:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1031:26:1031:26 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1031:26:1031:26 | y | A | main.rs:960:5:961:14 | S2 | -| main.rs:1031:26:1031:31 | y.m1() | | main.rs:960:5:961:14 | S2 | -| main.rs:1033:13:1033:13 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1033:13:1033:13 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1033:17:1033:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1033:17:1033:33 | MyThing {...} | A | main.rs:958:5:959:14 | S1 | -| main.rs:1033:30:1033:31 | S1 | | main.rs:958:5:959:14 | S1 | -| main.rs:1034:13:1034:13 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1034:13:1034:13 | y | A | main.rs:960:5:961:14 | S2 | -| main.rs:1034:17:1034:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1034:17:1034:33 | MyThing {...} | A | main.rs:960:5:961:14 | S2 | -| main.rs:1034:30:1034:31 | S2 | | main.rs:960:5:961:14 | S2 | -| main.rs:1036:9:1036:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1036:18:1036:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1036:18:1036:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1036:18:1036:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1036:18:1036:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1036:18:1036:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1036:26:1036:26 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1036:26:1036:26 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1036:26:1036:31 | x.m2() | | main.rs:958:5:959:14 | S1 | -| main.rs:1037:9:1037:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1037:18:1037:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1037:18:1037:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1037:18:1037:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1037:18:1037:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1037:18:1037:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1037:26:1037:26 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1037:26:1037:26 | y | A | main.rs:960:5:961:14 | S2 | -| main.rs:1037:26:1037:31 | y.m2() | | main.rs:960:5:961:14 | S2 | -| main.rs:1039:13:1039:13 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1039:13:1039:13 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1039:17:1039:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1039:17:1039:34 | MyThing2 {...} | A | main.rs:958:5:959:14 | S1 | -| main.rs:1039:31:1039:32 | S1 | | main.rs:958:5:959:14 | S1 | -| main.rs:1040:13:1040:13 | y | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1040:13:1040:13 | y | A | main.rs:960:5:961:14 | S2 | -| main.rs:1040:17:1040:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1040:17:1040:34 | MyThing2 {...} | A | main.rs:960:5:961:14 | S2 | -| main.rs:1040:31:1040:32 | S2 | | main.rs:960:5:961:14 | S2 | -| main.rs:1042:9:1042:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1042:18:1042:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1042:18:1042:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1042:18:1042:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1042:18:1042:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1042:18:1042:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1042:26:1042:26 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1042:26:1042:26 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1042:26:1042:31 | x.m3() | | main.rs:958:5:959:14 | S1 | -| main.rs:1043:9:1043:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1043:18:1043:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1043:18:1043:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1043:18:1043:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1043:18:1043:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1043:18:1043:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1043:26:1043:26 | y | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1043:26:1043:26 | y | A | main.rs:960:5:961:14 | S2 | -| main.rs:1043:26:1043:31 | y.m3() | | main.rs:960:5:961:14 | S2 | -| main.rs:1045:13:1045:13 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1045:13:1045:13 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1045:17:1045:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1045:17:1045:33 | MyThing {...} | A | main.rs:958:5:959:14 | S1 | -| main.rs:1045:30:1045:31 | S1 | | main.rs:958:5:959:14 | S1 | -| main.rs:1046:13:1046:13 | s | | main.rs:958:5:959:14 | S1 | -| main.rs:1046:17:1046:32 | call_trait_m1(...) | | main.rs:958:5:959:14 | S1 | -| main.rs:1046:31:1046:31 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1046:31:1046:31 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1048:13:1048:13 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1048:13:1048:13 | x | A | main.rs:960:5:961:14 | S2 | -| main.rs:1048:17:1048:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1048:17:1048:34 | MyThing2 {...} | A | main.rs:960:5:961:14 | S2 | -| main.rs:1048:31:1048:32 | S2 | | main.rs:960:5:961:14 | S2 | -| main.rs:1049:13:1049:13 | s | | main.rs:948:5:951:5 | MyThing | -| main.rs:1049:13:1049:13 | s | A | main.rs:960:5:961:14 | S2 | -| main.rs:1049:17:1049:32 | call_trait_m1(...) | | main.rs:948:5:951:5 | MyThing | -| main.rs:1049:17:1049:32 | call_trait_m1(...) | A | main.rs:960:5:961:14 | S2 | -| main.rs:1049:31:1049:31 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1049:31:1049:31 | x | A | main.rs:960:5:961:14 | S2 | -| main.rs:1066:22:1066:22 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1066:22:1066:22 | x | TRef | main.rs:1066:11:1066:19 | T | -| main.rs:1066:35:1068:5 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1066:35:1068:5 | { ... } | TRef | main.rs:1066:11:1066:19 | T | -| main.rs:1067:9:1067:9 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1067:9:1067:9 | x | TRef | main.rs:1066:11:1066:19 | T | -| main.rs:1071:17:1071:20 | SelfParam | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1071:29:1073:9 | { ... } | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1072:13:1072:14 | S2 | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1076:21:1076:21 | x | | main.rs:1076:13:1076:14 | T1 | -| main.rs:1079:5:1081:5 | { ... } | | main.rs:1076:17:1076:18 | T2 | -| main.rs:1080:9:1080:9 | x | | main.rs:1076:13:1076:14 | T1 | -| main.rs:1080:9:1080:16 | x.into() | | main.rs:1076:17:1076:18 | T2 | -| main.rs:1083:16:1099:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1084:13:1084:13 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1084:17:1084:18 | S1 | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1085:9:1085:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1085:18:1085:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1085:18:1085:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1085:18:1085:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1085:18:1085:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1085:18:1085:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1085:26:1085:31 | id(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1085:26:1085:31 | id(...) | TRef | main.rs:1056:5:1057:14 | S1 | -| main.rs:1085:29:1085:30 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1085:29:1085:30 | &x | TRef | main.rs:1056:5:1057:14 | S1 | -| main.rs:1085:30:1085:30 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1087:13:1087:13 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1087:17:1087:18 | S1 | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1088:9:1088:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1088:18:1088:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1088:18:1088:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1088:18:1088:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1088:18:1088:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1088:18:1088:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1088:26:1088:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1088:26:1088:37 | id::<...>(...) | TRef | main.rs:1056:5:1057:14 | S1 | -| main.rs:1088:35:1088:36 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1088:35:1088:36 | &x | TRef | main.rs:1056:5:1057:14 | S1 | -| main.rs:1088:36:1088:36 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1090:13:1090:13 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1090:17:1090:18 | S1 | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1092:9:1092:45 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1092:18:1092:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1092:18:1092:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1092:18:1092:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1092:18:1092:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1092:18:1092:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1092:26:1092:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1092:26:1092:44 | id::<...>(...) | TRef | main.rs:1062:5:1062:25 | dyn Trait | -| main.rs:1092:42:1092:43 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1092:42:1092:43 | &x | TRef | main.rs:1056:5:1057:14 | S1 | -| main.rs:1092:43:1092:43 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1094:13:1094:13 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1094:17:1094:18 | S1 | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1095:9:1095:25 | into::<...>(...) | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1095:24:1095:24 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1097:13:1097:13 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1097:17:1097:18 | S1 | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1098:13:1098:13 | y | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1098:21:1098:27 | into(...) | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1098:26:1098:26 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1112:22:1112:25 | SelfParam | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1112:22:1112:25 | SelfParam | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1112:22:1112:25 | SelfParam | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1112:35:1119:9 | { ... } | | main.rs:1111:15:1111:17 | Snd | -| main.rs:1113:13:1118:13 | match self { ... } | | file://:0:0:0:0 | ! | -| main.rs:1113:13:1118:13 | match self { ... } | | main.rs:1111:15:1111:17 | Snd | -| main.rs:1113:19:1113:22 | self | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1113:19:1113:22 | self | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1113:19:1113:22 | self | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1114:17:1114:38 | ...::PairNone(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1114:17:1114:38 | ...::PairNone(...) | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1114:17:1114:38 | ...::PairNone(...) | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1114:43:1114:82 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1114:50:1114:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | -| main.rs:1114:50:1114:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1114:50:1114:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1114:50:1114:81 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1114:50:1114:81 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1115:17:1115:38 | ...::PairFst(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1115:17:1115:38 | ...::PairFst(...) | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1115:17:1115:38 | ...::PairFst(...) | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1115:37:1115:37 | _ | | main.rs:1111:10:1111:12 | Fst | -| main.rs:1115:43:1115:81 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1115:50:1115:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | -| main.rs:1115:50:1115:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1115:50:1115:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1115:50:1115:80 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1115:50:1115:80 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1116:17:1116:40 | ...::PairSnd(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1116:17:1116:40 | ...::PairSnd(...) | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1116:17:1116:40 | ...::PairSnd(...) | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1116:37:1116:39 | snd | | main.rs:1111:15:1111:17 | Snd | -| main.rs:1116:45:1116:47 | snd | | main.rs:1111:15:1111:17 | Snd | -| main.rs:1117:17:1117:44 | ...::PairBoth(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1117:17:1117:44 | ...::PairBoth(...) | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1117:17:1117:44 | ...::PairBoth(...) | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1117:38:1117:38 | _ | | main.rs:1111:10:1111:12 | Fst | -| main.rs:1117:41:1117:43 | snd | | main.rs:1111:15:1111:17 | Snd | -| main.rs:1117:49:1117:51 | snd | | main.rs:1111:15:1111:17 | Snd | -| main.rs:1143:10:1143:10 | t | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1143:10:1143:10 | t | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1143:10:1143:10 | t | Snd | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1143:10:1143:10 | t | Snd.Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1143:10:1143:10 | t | Snd.Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1143:30:1146:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1144:13:1144:13 | x | | main.rs:1128:5:1129:14 | S3 | -| main.rs:1144:17:1144:17 | t | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1144:17:1144:17 | t | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1144:17:1144:17 | t | Snd | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1144:17:1144:17 | t | Snd.Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1144:17:1144:17 | t | Snd.Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1144:17:1144:29 | t.unwrapSnd() | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1144:17:1144:29 | t.unwrapSnd() | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1144:17:1144:29 | t.unwrapSnd() | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1144:17:1144:41 | ... .unwrapSnd() | | main.rs:1128:5:1129:14 | S3 | -| main.rs:1145:9:1145:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1145:18:1145:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1145:18:1145:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1145:18:1145:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1145:18:1145:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1145:18:1145:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1145:26:1145:26 | x | | main.rs:1128:5:1129:14 | S3 | -| main.rs:1156:16:1176:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1158:13:1158:14 | p1 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1158:13:1158:14 | p1 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1158:13:1158:14 | p1 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1158:26:1158:53 | ...::PairBoth(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1158:26:1158:53 | ...::PairBoth(...) | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1158:26:1158:53 | ...::PairBoth(...) | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1158:47:1158:48 | S1 | | main.rs:1122:5:1123:14 | S1 | -| main.rs:1158:51:1158:52 | S2 | | main.rs:1125:5:1126:14 | S2 | -| main.rs:1159:9:1159:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1159:18:1159:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1159:18:1159:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1159:18:1159:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1159:18:1159:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1159:18:1159:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1159:26:1159:27 | p1 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1159:26:1159:27 | p1 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1159:26:1159:27 | p1 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1162:13:1162:14 | p2 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1162:13:1162:14 | p2 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1162:13:1162:14 | p2 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1162:26:1162:47 | ...::PairNone(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1162:26:1162:47 | ...::PairNone(...) | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1162:26:1162:47 | ...::PairNone(...) | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1163:9:1163:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1163:18:1163:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1163:18:1163:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1163:18:1163:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1163:18:1163:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1163:18:1163:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1163:26:1163:27 | p2 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1163:26:1163:27 | p2 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1163:26:1163:27 | p2 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1166:13:1166:14 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1166:13:1166:14 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1166:13:1166:14 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1166:34:1166:56 | ...::PairSnd(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1166:34:1166:56 | ...::PairSnd(...) | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1166:34:1166:56 | ...::PairSnd(...) | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1166:54:1166:55 | S3 | | main.rs:1128:5:1129:14 | S3 | -| main.rs:1167:9:1167:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1167:18:1167:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1167:18:1167:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1167:18:1167:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1167:18:1167:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1167:18:1167:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1167:26:1167:27 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1167:26:1167:27 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1167:26:1167:27 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1170:13:1170:14 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1170:13:1170:14 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1170:13:1170:14 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1170:35:1170:56 | ...::PairNone(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1170:35:1170:56 | ...::PairNone(...) | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1170:35:1170:56 | ...::PairNone(...) | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1171:9:1171:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1171:18:1171:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1171:18:1171:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1171:18:1171:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1171:18:1171:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1171:18:1171:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1171:26:1171:27 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1171:26:1171:27 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1171:26:1171:27 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1173:9:1173:55 | g(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1173:11:1173:54 | ...::PairSnd(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1173:11:1173:54 | ...::PairSnd(...) | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1173:11:1173:54 | ...::PairSnd(...) | Snd | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1173:11:1173:54 | ...::PairSnd(...) | Snd.Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1173:11:1173:54 | ...::PairSnd(...) | Snd.Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1173:31:1173:53 | ...::PairSnd(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1173:31:1173:53 | ...::PairSnd(...) | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1173:31:1173:53 | ...::PairSnd(...) | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1173:51:1173:52 | S3 | | main.rs:1128:5:1129:14 | S3 | -| main.rs:1175:13:1175:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1175:13:1175:13 | x | E | main.rs:1122:5:1123:14 | S1 | -| main.rs:1175:13:1175:13 | x | T | main.rs:1148:5:1148:34 | S4 | -| main.rs:1175:13:1175:13 | x | T.T41 | main.rs:1125:5:1126:14 | S2 | -| main.rs:1175:13:1175:13 | x | T.T42 | main.rs:1150:5:1150:22 | S5 | -| main.rs:1175:13:1175:13 | x | T.T42.T5 | main.rs:1125:5:1126:14 | S2 | -| main.rs:1188:16:1188:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1188:16:1188:24 | SelfParam | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | -| main.rs:1188:27:1188:31 | value | | main.rs:1186:19:1186:19 | S | -| main.rs:1190:21:1190:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1190:21:1190:29 | SelfParam | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | -| main.rs:1190:32:1190:36 | value | | main.rs:1186:19:1186:19 | S | -| main.rs:1190:42:1192:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1191:13:1191:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1191:13:1191:16 | self | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | -| main.rs:1191:13:1191:27 | self.set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1191:22:1191:26 | value | | main.rs:1186:19:1186:19 | S | -| main.rs:1197:16:1197:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1197:16:1197:24 | SelfParam | TRefMut | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1197:16:1197:24 | SelfParam | TRefMut.T | main.rs:1195:10:1195:10 | T | -| main.rs:1197:27:1197:31 | value | | main.rs:1195:10:1195:10 | T | -| main.rs:1197:37:1197:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1201:26:1203:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1201:26:1203:9 | { ... } | T | main.rs:1200:10:1200:10 | T | -| main.rs:1202:13:1202:30 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1202:13:1202:30 | ...::MyNone(...) | T | main.rs:1200:10:1200:10 | T | -| main.rs:1207:20:1207:23 | SelfParam | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1207:20:1207:23 | SelfParam | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1207:20:1207:23 | SelfParam | T.T | main.rs:1206:10:1206:10 | T | -| main.rs:1207:41:1212:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1207:41:1212:9 | { ... } | T | main.rs:1206:10:1206:10 | T | -| main.rs:1208:13:1211:13 | match self { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1208:13:1211:13 | match self { ... } | T | main.rs:1206:10:1206:10 | T | -| main.rs:1208:19:1208:22 | self | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1208:19:1208:22 | self | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1208:19:1208:22 | self | T.T | main.rs:1206:10:1206:10 | T | -| main.rs:1209:17:1209:34 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1209:17:1209:34 | ...::MyNone(...) | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1209:17:1209:34 | ...::MyNone(...) | T.T | main.rs:1206:10:1206:10 | T | -| main.rs:1209:39:1209:56 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1209:39:1209:56 | ...::MyNone(...) | T | main.rs:1206:10:1206:10 | T | -| main.rs:1210:17:1210:35 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1210:17:1210:35 | ...::MySome(...) | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1210:17:1210:35 | ...::MySome(...) | T.T | main.rs:1206:10:1206:10 | T | -| main.rs:1210:34:1210:34 | x | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1210:34:1210:34 | x | T | main.rs:1206:10:1206:10 | T | -| main.rs:1210:40:1210:40 | x | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1210:40:1210:40 | x | T | main.rs:1206:10:1206:10 | T | -| main.rs:1218:16:1263:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1219:13:1219:14 | x1 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1219:13:1219:14 | x1 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1219:18:1219:37 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1219:18:1219:37 | ...::new(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1220:9:1220:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1220:18:1220:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1220:18:1220:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1220:18:1220:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1220:18:1220:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1220:18:1220:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1220:26:1220:27 | x1 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1220:26:1220:27 | x1 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1222:17:1222:18 | x2 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1222:17:1222:18 | x2 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1222:22:1222:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1222:22:1222:36 | ...::new(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1223:9:1223:10 | x2 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1223:9:1223:10 | x2 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1223:9:1223:17 | x2.set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1223:16:1223:16 | S | | main.rs:1215:5:1216:13 | S | -| main.rs:1224:9:1224:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1224:18:1224:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1224:18:1224:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1224:18:1224:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1224:18:1224:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1224:18:1224:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1224:26:1224:27 | x2 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1224:26:1224:27 | x2 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1226:17:1226:18 | x3 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1226:17:1226:18 | x3 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1226:22:1226:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1226:22:1226:36 | ...::new(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1227:9:1227:10 | x3 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1227:9:1227:10 | x3 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1227:9:1227:22 | x3.call_set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1227:21:1227:21 | S | | main.rs:1215:5:1216:13 | S | -| main.rs:1228:9:1228:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1228:18:1228:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1228:18:1228:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1228:18:1228:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1228:18:1228:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1228:18:1228:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1228:26:1228:27 | x3 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1228:26:1228:27 | x3 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1230:17:1230:18 | x4 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1230:17:1230:18 | x4 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1230:22:1230:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1230:22:1230:36 | ...::new(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1231:9:1231:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1231:23:1231:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | -| main.rs:1231:23:1231:29 | &mut x4 | TRefMut | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1231:23:1231:29 | &mut x4 | TRefMut.T | main.rs:1215:5:1216:13 | S | -| main.rs:1231:28:1231:29 | x4 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1231:28:1231:29 | x4 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1231:32:1231:32 | S | | main.rs:1215:5:1216:13 | S | -| main.rs:1232:9:1232:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1232:18:1232:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1232:18:1232:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1232:18:1232:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1232:18:1232:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1232:18:1232:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1232:26:1232:27 | x4 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1232:26:1232:27 | x4 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1234:13:1234:14 | x5 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1234:13:1234:14 | x5 | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1234:13:1234:14 | x5 | T.T | main.rs:1215:5:1216:13 | S | -| main.rs:1234:18:1234:58 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1234:18:1234:58 | ...::MySome(...) | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1234:18:1234:58 | ...::MySome(...) | T.T | main.rs:1215:5:1216:13 | S | -| main.rs:1234:35:1234:57 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1234:35:1234:57 | ...::MyNone(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1235:9:1235:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1235:18:1235:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1235:18:1235:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1235:18:1235:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1235:18:1235:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1235:18:1235:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1235:26:1235:27 | x5 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1235:26:1235:27 | x5 | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1235:26:1235:27 | x5 | T.T | main.rs:1215:5:1216:13 | S | -| main.rs:1235:26:1235:37 | x5.flatten() | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1235:26:1235:37 | x5.flatten() | T | main.rs:1215:5:1216:13 | S | -| main.rs:1237:13:1237:14 | x6 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1237:13:1237:14 | x6 | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1237:13:1237:14 | x6 | T.T | main.rs:1215:5:1216:13 | S | -| main.rs:1237:18:1237:58 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1237:18:1237:58 | ...::MySome(...) | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1237:18:1237:58 | ...::MySome(...) | T.T | main.rs:1215:5:1216:13 | S | -| main.rs:1237:35:1237:57 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1237:35:1237:57 | ...::MyNone(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1238:9:1238:62 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1238:18:1238:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1238:18:1238:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1238:18:1238:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1238:18:1238:61 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1238:18:1238:61 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1238:26:1238:61 | ...::flatten(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1238:26:1238:61 | ...::flatten(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1238:59:1238:60 | x6 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1238:59:1238:60 | x6 | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1238:59:1238:60 | x6 | T.T | main.rs:1215:5:1216:13 | S | -| main.rs:1241:13:1241:19 | from_if | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1241:13:1241:19 | from_if | T | main.rs:1215:5:1216:13 | S | -| main.rs:1241:23:1245:9 | if ... {...} else {...} | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1241:23:1245:9 | if ... {...} else {...} | T | main.rs:1215:5:1216:13 | S | -| main.rs:1241:26:1241:26 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1241:26:1241:30 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1241:30:1241:30 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1241:32:1243:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1241:32:1243:9 | { ... } | T | main.rs:1215:5:1216:13 | S | -| main.rs:1242:13:1242:30 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1242:13:1242:30 | ...::MyNone(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1243:16:1245:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1243:16:1245:9 | { ... } | T | main.rs:1215:5:1216:13 | S | -| main.rs:1244:13:1244:31 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1244:13:1244:31 | ...::MySome(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1244:30:1244:30 | S | | main.rs:1215:5:1216:13 | S | -| main.rs:1246:9:1246:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1246:18:1246:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1246:18:1246:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1246:18:1246:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1246:18:1246:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1246:18:1246:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1246:26:1246:32 | from_if | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1246:26:1246:32 | from_if | T | main.rs:1215:5:1216:13 | S | -| main.rs:1249:13:1249:22 | from_match | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1249:13:1249:22 | from_match | T | main.rs:1215:5:1216:13 | S | -| main.rs:1249:26:1252:9 | match ... { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1249:26:1252:9 | match ... { ... } | T | main.rs:1215:5:1216:13 | S | -| main.rs:1249:32:1249:32 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1249:32:1249:36 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1249:36:1249:36 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1250:13:1250:16 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1250:21:1250:38 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1250:21:1250:38 | ...::MyNone(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1251:13:1251:17 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1251:22:1251:40 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1251:22:1251:40 | ...::MySome(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1251:39:1251:39 | S | | main.rs:1215:5:1216:13 | S | -| main.rs:1253:9:1253:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1253:18:1253:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1253:18:1253:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1253:18:1253:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1253:18:1253:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1253:18:1253:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1253:26:1253:35 | from_match | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1253:26:1253:35 | from_match | T | main.rs:1215:5:1216:13 | S | -| main.rs:1256:13:1256:21 | from_loop | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1256:13:1256:21 | from_loop | T | main.rs:1215:5:1216:13 | S | -| main.rs:1256:25:1261:9 | loop { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1256:25:1261:9 | loop { ... } | T | main.rs:1215:5:1216:13 | S | -| main.rs:1256:30:1261:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1257:13:1259:13 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1257:16:1257:16 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1257:16:1257:20 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1257:20:1257:20 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1257:22:1259:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1258:23:1258:40 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1258:23:1258:40 | ...::MyNone(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1260:19:1260:37 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1260:19:1260:37 | ...::MySome(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1260:36:1260:36 | S | | main.rs:1215:5:1216:13 | S | -| main.rs:1262:9:1262:35 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1262:18:1262:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1262:18:1262:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1262:18:1262:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1262:18:1262:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1262:18:1262:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1262:26:1262:34 | from_loop | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1262:26:1262:34 | from_loop | T | main.rs:1215:5:1216:13 | S | -| main.rs:1280:15:1280:18 | SelfParam | | main.rs:1268:5:1269:19 | S | -| main.rs:1280:15:1280:18 | SelfParam | T | main.rs:1279:10:1279:10 | T | -| main.rs:1280:26:1282:9 | { ... } | | main.rs:1279:10:1279:10 | T | -| main.rs:1281:13:1281:16 | self | | main.rs:1268:5:1269:19 | S | -| main.rs:1281:13:1281:16 | self | T | main.rs:1279:10:1279:10 | T | -| main.rs:1281:13:1281:18 | self.0 | | main.rs:1279:10:1279:10 | T | -| main.rs:1284:15:1284:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1284:15:1284:19 | SelfParam | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1284:15:1284:19 | SelfParam | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1284:28:1286:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1284:28:1286:9 | { ... } | TRef | main.rs:1279:10:1279:10 | T | -| main.rs:1285:13:1285:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1285:13:1285:19 | &... | TRef | main.rs:1279:10:1279:10 | T | -| main.rs:1285:14:1285:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1285:14:1285:17 | self | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1285:14:1285:17 | self | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1285:14:1285:19 | self.0 | | main.rs:1279:10:1279:10 | T | -| main.rs:1288:15:1288:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1288:15:1288:25 | SelfParam | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1288:15:1288:25 | SelfParam | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1288:34:1290:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1288:34:1290:9 | { ... } | TRef | main.rs:1279:10:1279:10 | T | -| main.rs:1289:13:1289:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1289:13:1289:19 | &... | TRef | main.rs:1279:10:1279:10 | T | -| main.rs:1289:14:1289:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1289:14:1289:17 | self | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1289:14:1289:17 | self | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1289:14:1289:19 | self.0 | | main.rs:1279:10:1279:10 | T | -| main.rs:1294:29:1294:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1294:29:1294:33 | SelfParam | TRef | main.rs:1293:5:1296:5 | Self [trait ATrait] | -| main.rs:1295:33:1295:36 | SelfParam | | main.rs:1293:5:1296:5 | Self [trait ATrait] | -| main.rs:1301:29:1301:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1301:29:1301:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1301:29:1301:33 | SelfParam | TRef.TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1301:43:1303:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1302:13:1302:22 | (...) | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1302:13:1302:24 | ... .a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1302:14:1302:21 | * ... | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1302:15:1302:21 | (...) | | {EXTERNAL LOCATION} | & | -| main.rs:1302:15:1302:21 | (...) | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1302:16:1302:20 | * ... | | {EXTERNAL LOCATION} | & | -| main.rs:1302:16:1302:20 | * ... | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1302:17:1302:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1302:17:1302:20 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1302:17:1302:20 | self | TRef.TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1306:33:1306:36 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1306:33:1306:36 | SelfParam | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1306:46:1308:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1307:13:1307:19 | (...) | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1307:13:1307:21 | ... .a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1307:14:1307:18 | * ... | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1307:15:1307:18 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1307:15:1307:18 | self | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1311:16:1361:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1312:13:1312:14 | x1 | | main.rs:1268:5:1269:19 | S | -| main.rs:1312:13:1312:14 | x1 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1312:18:1312:22 | S(...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1312:18:1312:22 | S(...) | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1312:20:1312:21 | S2 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1313:9:1313:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1313:18:1313:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1313:18:1313:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1313:18:1313:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1313:18:1313:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1313:18:1313:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1313:26:1313:27 | x1 | | main.rs:1268:5:1269:19 | S | -| main.rs:1313:26:1313:27 | x1 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1313:26:1313:32 | x1.m1() | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1315:13:1315:14 | x2 | | main.rs:1268:5:1269:19 | S | -| main.rs:1315:13:1315:14 | x2 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1315:18:1315:22 | S(...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1315:18:1315:22 | S(...) | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1315:20:1315:21 | S2 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1317:9:1317:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1317:18:1317:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1317:18:1317:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1317:18:1317:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1317:18:1317:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1317:18:1317:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1317:26:1317:27 | x2 | | main.rs:1268:5:1269:19 | S | -| main.rs:1317:26:1317:27 | x2 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1317:26:1317:32 | x2.m2() | | {EXTERNAL LOCATION} | & | -| main.rs:1317:26:1317:32 | x2.m2() | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1318:9:1318:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1318:18:1318:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1318:18:1318:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1318:18:1318:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1318:18:1318:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1318:18:1318:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1318:26:1318:27 | x2 | | main.rs:1268:5:1269:19 | S | -| main.rs:1318:26:1318:27 | x2 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1318:26:1318:32 | x2.m3() | | {EXTERNAL LOCATION} | & | -| main.rs:1318:26:1318:32 | x2.m3() | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1320:13:1320:14 | x3 | | main.rs:1268:5:1269:19 | S | -| main.rs:1320:13:1320:14 | x3 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1320:18:1320:22 | S(...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1320:18:1320:22 | S(...) | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1320:20:1320:21 | S2 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1322:9:1322:42 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1322:18:1322:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1322:18:1322:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1322:18:1322:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1322:18:1322:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1322:18:1322:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1322:26:1322:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1322:26:1322:41 | ...::m2(...) | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1322:38:1322:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1322:38:1322:40 | &x3 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1322:38:1322:40 | &x3 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1322:39:1322:40 | x3 | | main.rs:1268:5:1269:19 | S | -| main.rs:1322:39:1322:40 | x3 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1323:9:1323:42 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1323:18:1323:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1323:18:1323:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1323:18:1323:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1323:18:1323:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1323:18:1323:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1323:26:1323:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1323:26:1323:41 | ...::m3(...) | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1323:38:1323:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1323:38:1323:40 | &x3 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1323:38:1323:40 | &x3 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1323:39:1323:40 | x3 | | main.rs:1268:5:1269:19 | S | -| main.rs:1323:39:1323:40 | x3 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1325:13:1325:14 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1325:13:1325:14 | x4 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1325:13:1325:14 | x4 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1325:18:1325:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1325:18:1325:23 | &... | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1325:18:1325:23 | &... | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1325:19:1325:23 | S(...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1325:19:1325:23 | S(...) | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1325:21:1325:22 | S2 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1327:9:1327:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1327:18:1327:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1327:18:1327:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1327:18:1327:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1327:18:1327:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1327:18:1327:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1327:26:1327:27 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1327:26:1327:27 | x4 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1327:26:1327:27 | x4 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1327:26:1327:32 | x4.m2() | | {EXTERNAL LOCATION} | & | -| main.rs:1327:26:1327:32 | x4.m2() | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1328:9:1328:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1328:18:1328:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1328:18:1328:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1328:18:1328:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1328:18:1328:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1328:18:1328:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1328:26:1328:27 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1328:26:1328:27 | x4 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1328:26:1328:27 | x4 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1328:26:1328:32 | x4.m3() | | {EXTERNAL LOCATION} | & | -| main.rs:1328:26:1328:32 | x4.m3() | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1330:13:1330:14 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1330:13:1330:14 | x5 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1330:13:1330:14 | x5 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1330:18:1330:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1330:18:1330:23 | &... | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1330:18:1330:23 | &... | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1330:19:1330:23 | S(...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1330:19:1330:23 | S(...) | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1330:21:1330:22 | S2 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1332:9:1332:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1332:18:1332:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1332:18:1332:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1332:18:1332:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1332:18:1332:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1332:18:1332:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1332:26:1332:27 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1332:26:1332:27 | x5 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1332:26:1332:27 | x5 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1332:26:1332:32 | x5.m1() | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1333:9:1333:30 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1333:18:1333:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1333:18:1333:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1333:18:1333:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1333:18:1333:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1333:18:1333:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1333:26:1333:27 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1333:26:1333:27 | x5 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1333:26:1333:27 | x5 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1333:26:1333:29 | x5.0 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1335:13:1335:14 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1335:13:1335:14 | x6 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1335:13:1335:14 | x6 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1335:18:1335:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1335:18:1335:23 | &... | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1335:18:1335:23 | &... | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1335:19:1335:23 | S(...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1335:19:1335:23 | S(...) | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1335:21:1335:22 | S2 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1338:9:1338:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1338:18:1338:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1338:18:1338:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1338:18:1338:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1338:18:1338:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1338:18:1338:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1338:26:1338:30 | (...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1338:26:1338:30 | (...) | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1338:26:1338:35 | ... .m1() | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1338:27:1338:29 | * ... | | main.rs:1268:5:1269:19 | S | -| main.rs:1338:27:1338:29 | * ... | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1338:28:1338:29 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1338:28:1338:29 | x6 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1338:28:1338:29 | x6 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1340:13:1340:14 | x7 | | main.rs:1268:5:1269:19 | S | -| main.rs:1340:13:1340:14 | x7 | T | {EXTERNAL LOCATION} | & | -| main.rs:1340:13:1340:14 | x7 | T.TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1340:18:1340:23 | S(...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1340:18:1340:23 | S(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:1340:18:1340:23 | S(...) | T.TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1340:20:1340:22 | &S2 | | {EXTERNAL LOCATION} | & | -| main.rs:1340:20:1340:22 | &S2 | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1340:21:1340:22 | S2 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1343:13:1343:13 | t | | {EXTERNAL LOCATION} | & | -| main.rs:1343:13:1343:13 | t | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1343:17:1343:18 | x7 | | main.rs:1268:5:1269:19 | S | -| main.rs:1343:17:1343:18 | x7 | T | {EXTERNAL LOCATION} | & | -| main.rs:1343:17:1343:18 | x7 | T.TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1343:17:1343:23 | x7.m1() | | {EXTERNAL LOCATION} | & | -| main.rs:1343:17:1343:23 | x7.m1() | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1344:9:1344:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1344:18:1344:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1344:18:1344:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1344:18:1344:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1344:18:1344:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1344:18:1344:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1344:26:1344:27 | x7 | | main.rs:1268:5:1269:19 | S | -| main.rs:1344:26:1344:27 | x7 | T | {EXTERNAL LOCATION} | & | -| main.rs:1344:26:1344:27 | x7 | T.TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1346:13:1346:14 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1346:26:1346:32 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1346:26:1346:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1346:26:1346:44 | "Hello".to_string() | | {EXTERNAL LOCATION} | String | -| main.rs:1350:13:1350:13 | u | | {EXTERNAL LOCATION} | Result | -| main.rs:1350:13:1350:13 | u | T | {EXTERNAL LOCATION} | u32 | -| main.rs:1350:17:1350:18 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1350:17:1350:33 | x9.parse() | | {EXTERNAL LOCATION} | Result | -| main.rs:1350:17:1350:33 | x9.parse() | T | {EXTERNAL LOCATION} | u32 | -| main.rs:1352:13:1352:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1352:13:1352:20 | my_thing | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1352:24:1352:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1352:24:1352:39 | &... | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1352:25:1352:39 | MyInt {...} | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1352:36:1352:37 | 37 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1354:13:1354:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1354:17:1354:24 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1354:17:1354:24 | my_thing | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1354:17:1354:43 | my_thing.method_on_borrow() | | {EXTERNAL LOCATION} | i64 | -| main.rs:1355:9:1355:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1355:18:1355:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1355:18:1355:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1355:18:1355:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1355:18:1355:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1355:18:1355:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1355:26:1355:26 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1358:13:1358:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1358:13:1358:20 | my_thing | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1358:24:1358:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1358:24:1358:39 | &... | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1358:25:1358:39 | MyInt {...} | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1358:36:1358:37 | 38 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1359:13:1359:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1359:17:1359:24 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1359:17:1359:24 | my_thing | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1359:17:1359:47 | my_thing.method_not_on_borrow() | | {EXTERNAL LOCATION} | i64 | -| main.rs:1360:9:1360:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1360:18:1360:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1360:18:1360:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1360:18:1360:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1360:18:1360:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1360:18:1360:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1360:26:1360:26 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1367:16:1367:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1367:16:1367:20 | SelfParam | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1370:16:1370:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1370:16:1370:20 | SelfParam | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1370:32:1372:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1370:32:1372:9 | { ... } | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1371:13:1371:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1371:13:1371:16 | self | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1371:13:1371:22 | self.foo() | | {EXTERNAL LOCATION} | & | -| main.rs:1371:13:1371:22 | self.foo() | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1379:16:1379:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1379:16:1379:20 | SelfParam | TRef | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1379:36:1381:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1379:36:1381:9 | { ... } | TRef | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1380:13:1380:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1380:13:1380:16 | self | TRef | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1384:16:1387:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1385:13:1385:13 | x | | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1385:17:1385:24 | MyStruct | | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1386:9:1386:9 | x | | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1386:9:1386:15 | x.bar() | | {EXTERNAL LOCATION} | & | -| main.rs:1386:9:1386:15 | x.bar() | TRef | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1396:16:1396:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1396:16:1396:20 | SelfParam | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1396:16:1396:20 | SelfParam | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1396:32:1398:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1396:32:1398:9 | { ... } | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1396:32:1398:9 | { ... } | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1397:13:1397:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1397:13:1397:16 | self | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1397:13:1397:16 | self | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1400:16:1400:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1400:16:1400:20 | SelfParam | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1400:16:1400:20 | SelfParam | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1400:23:1400:23 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1400:23:1400:23 | x | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1400:23:1400:23 | x | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1400:42:1402:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1400:42:1402:9 | { ... } | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1400:42:1402:9 | { ... } | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1401:13:1401:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1401:13:1401:16 | self | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1401:13:1401:16 | self | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1405:16:1411:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1406:13:1406:13 | x | | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1406:13:1406:13 | x | T | main.rs:1391:5:1391:13 | S | -| main.rs:1406:17:1406:27 | MyStruct(...) | | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1406:17:1406:27 | MyStruct(...) | T | main.rs:1391:5:1391:13 | S | -| main.rs:1406:26:1406:26 | S | | main.rs:1391:5:1391:13 | S | -| main.rs:1407:9:1407:9 | x | | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1407:9:1407:9 | x | T | main.rs:1391:5:1391:13 | S | -| main.rs:1407:9:1407:15 | x.foo() | | {EXTERNAL LOCATION} | & | -| main.rs:1407:9:1407:15 | x.foo() | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1407:9:1407:15 | x.foo() | TRef.T | main.rs:1391:5:1391:13 | S | -| main.rs:1408:13:1408:13 | x | | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1408:13:1408:13 | x | T | main.rs:1391:5:1391:13 | S | -| main.rs:1408:17:1408:27 | MyStruct(...) | | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1408:17:1408:27 | MyStruct(...) | T | main.rs:1391:5:1391:13 | S | -| main.rs:1408:26:1408:26 | S | | main.rs:1391:5:1391:13 | S | -| main.rs:1410:9:1410:9 | x | | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1410:9:1410:9 | x | T | main.rs:1391:5:1391:13 | S | -| main.rs:1410:9:1410:18 | x.bar(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1410:9:1410:18 | x.bar(...) | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1410:9:1410:18 | x.bar(...) | TRef.T | main.rs:1391:5:1391:13 | S | -| main.rs:1410:15:1410:17 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1410:15:1410:17 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1410:15:1410:17 | &... | TRef.TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1410:15:1410:17 | &... | TRef.TRef.T | main.rs:1391:5:1391:13 | S | -| main.rs:1410:16:1410:17 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1410:16:1410:17 | &x | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1410:16:1410:17 | &x | TRef.T | main.rs:1391:5:1391:13 | S | -| main.rs:1410:17:1410:17 | x | | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1410:17:1410:17 | x | T | main.rs:1391:5:1391:13 | S | -| main.rs:1421:17:1421:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1421:17:1421:25 | SelfParam | TRefMut | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1421:28:1423:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1422:13:1422:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1422:13:1422:16 | self | TRefMut | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1422:13:1422:21 | self.bool | | {EXTERNAL LOCATION} | bool | -| main.rs:1422:13:1422:34 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:1422:25:1422:34 | ! ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1422:26:1422:29 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1422:26:1422:29 | self | TRefMut | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1422:26:1422:34 | self.bool | | {EXTERNAL LOCATION} | bool | -| main.rs:1429:15:1429:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1429:15:1429:19 | SelfParam | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1429:31:1431:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1429:31:1431:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1430:13:1430:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1430:13:1430:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1430:13:1430:19 | &... | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1430:13:1430:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1430:13:1430:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1430:13:1430:19 | &... | TRef.TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1430:14:1430:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1430:14:1430:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1430:14:1430:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1430:14:1430:19 | &... | TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1430:15:1430:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1430:15:1430:19 | &self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1430:15:1430:19 | &self | TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1430:16:1430:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1430:16:1430:19 | self | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1433:15:1433:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1433:15:1433:25 | SelfParam | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1433:37:1435:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1433:37:1435:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1434:13:1434:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1434:13:1434:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1434:13:1434:19 | &... | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1434:13:1434:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1434:13:1434:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1434:13:1434:19 | &... | TRef.TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1434:14:1434:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1434:14:1434:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1434:14:1434:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1434:14:1434:19 | &... | TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1434:15:1434:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1434:15:1434:19 | &self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1434:15:1434:19 | &self | TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1434:16:1434:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1434:16:1434:19 | self | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1437:15:1437:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1437:15:1437:15 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1437:34:1439:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1437:34:1439:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1438:13:1438:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1438:13:1438:13 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1441:15:1441:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1441:15:1441:15 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1441:34:1443:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1441:34:1443:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1442:13:1442:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1442:13:1442:16 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1442:13:1442:16 | &... | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1442:13:1442:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1442:13:1442:16 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1442:13:1442:16 | &... | TRef.TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1442:14:1442:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1442:14:1442:16 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1442:14:1442:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1442:14:1442:16 | &... | TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1442:15:1442:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1442:15:1442:16 | &x | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1442:15:1442:16 | &x | TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1442:16:1442:16 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1442:16:1442:16 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1446:16:1459:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1447:13:1447:13 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1447:17:1447:20 | S {...} | | main.rs:1426:5:1426:13 | S | -| main.rs:1448:9:1448:9 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1448:9:1448:14 | x.f1() | | {EXTERNAL LOCATION} | & | -| main.rs:1448:9:1448:14 | x.f1() | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1449:9:1449:9 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1449:9:1449:14 | x.f2() | | {EXTERNAL LOCATION} | & | -| main.rs:1449:9:1449:14 | x.f2() | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1450:9:1450:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1450:9:1450:17 | ...::f3(...) | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1450:15:1450:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1450:15:1450:16 | &x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1450:16:1450:16 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1452:13:1452:13 | n | | {EXTERNAL LOCATION} | bool | -| main.rs:1452:17:1452:24 | * ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1452:18:1452:24 | * ... | | {EXTERNAL LOCATION} | & | -| main.rs:1452:18:1452:24 | * ... | TRef | {EXTERNAL LOCATION} | bool | -| main.rs:1452:19:1452:24 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1452:19:1452:24 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1452:19:1452:24 | &... | TRef.TRef | {EXTERNAL LOCATION} | bool | -| main.rs:1452:20:1452:24 | &true | | {EXTERNAL LOCATION} | & | -| main.rs:1452:20:1452:24 | &true | TRef | {EXTERNAL LOCATION} | bool | -| main.rs:1452:21:1452:24 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1456:17:1456:20 | flag | | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1456:24:1456:41 | ...::default(...) | | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1457:9:1457:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1457:22:1457:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | -| main.rs:1457:22:1457:30 | &mut flag | TRefMut | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1457:27:1457:30 | flag | | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1458:9:1458:30 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1458:18:1458:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1458:18:1458:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1458:18:1458:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1458:18:1458:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1458:18:1458:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1458:26:1458:29 | flag | | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1473:43:1476:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1473:43:1476:5 | { ... } | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1473:43:1476:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1474:13:1474:13 | x | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1474:17:1474:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1474:17:1474:30 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1474:17:1474:31 | TryExpr | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1474:28:1474:29 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1475:9:1475:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1475:9:1475:22 | ...::Ok(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1475:9:1475:22 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1475:20:1475:21 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1480:46:1484:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1480:46:1484:5 | { ... } | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1480:46:1484:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1481:13:1481:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1481:13:1481:13 | x | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1481:17:1481:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1481:17:1481:30 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1481:28:1481:29 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1482:13:1482:13 | y | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1482:17:1482:17 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1482:17:1482:17 | x | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1482:17:1482:18 | TryExpr | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1483:9:1483:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1483:9:1483:22 | ...::Ok(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1483:9:1483:22 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1483:20:1483:21 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1488:40:1493:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1488:40:1493:5 | { ... } | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1488:40:1493:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1489:13:1489:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1489:13:1489:13 | x | T | {EXTERNAL LOCATION} | Result | -| main.rs:1489:13:1489:13 | x | T.T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1489:17:1489:42 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1489:17:1489:42 | ...::Ok(...) | T | {EXTERNAL LOCATION} | Result | -| main.rs:1489:17:1489:42 | ...::Ok(...) | T.T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1489:28:1489:41 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1489:28:1489:41 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1489:39:1489:40 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1491:17:1491:17 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1491:17:1491:17 | x | T | {EXTERNAL LOCATION} | Result | -| main.rs:1491:17:1491:17 | x | T.T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1491:17:1491:18 | TryExpr | | {EXTERNAL LOCATION} | Result | -| main.rs:1491:17:1491:18 | TryExpr | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1491:17:1491:29 | ... .map(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1491:24:1491:28 | \|...\| s | | {EXTERNAL LOCATION} | dyn Fn | -| main.rs:1491:24:1491:28 | \|...\| s | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| main.rs:1492:9:1492:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1492:9:1492:22 | ...::Ok(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1492:9:1492:22 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1492:20:1492:21 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1497:30:1497:34 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1497:30:1497:34 | input | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1497:30:1497:34 | input | T | main.rs:1497:20:1497:27 | T | -| main.rs:1497:69:1504:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1497:69:1504:5 | { ... } | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1497:69:1504:5 | { ... } | T | main.rs:1497:20:1497:27 | T | -| main.rs:1498:13:1498:17 | value | | main.rs:1497:20:1497:27 | T | -| main.rs:1498:21:1498:25 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1498:21:1498:25 | input | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1498:21:1498:25 | input | T | main.rs:1497:20:1497:27 | T | -| main.rs:1498:21:1498:26 | TryExpr | | main.rs:1497:20:1497:27 | T | -| main.rs:1499:22:1499:38 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1499:22:1499:38 | ...::Ok(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1499:22:1499:38 | ...::Ok(...) | T | main.rs:1497:20:1497:27 | T | -| main.rs:1499:22:1502:10 | ... .and_then(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1499:22:1502:10 | ... .and_then(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1499:33:1499:37 | value | | main.rs:1497:20:1497:27 | T | -| main.rs:1499:49:1502:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | -| main.rs:1499:49:1502:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| main.rs:1499:49:1502:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | Result | -| main.rs:1499:49:1502:9 | \|...\| ... | dyn(Output).E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1499:53:1502:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1499:53:1502:9 | { ... } | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1500:13:1500:31 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1500:22:1500:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1500:22:1500:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1500:22:1500:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1500:22:1500:30 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1500:22:1500:30 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1501:13:1501:34 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1501:13:1501:34 | ...::Ok::<...>(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1503:9:1503:23 | ...::Err(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1503:9:1503:23 | ...::Err(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1503:9:1503:23 | ...::Err(...) | T | main.rs:1497:20:1497:27 | T | -| main.rs:1503:21:1503:22 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1507:16:1523:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1508:9:1510:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1508:16:1508:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1508:16:1508:33 | ...::Ok(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1508:16:1508:33 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1508:27:1508:32 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1508:37:1508:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1508:37:1508:52 | try_same_error(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1508:37:1508:52 | try_same_error(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1508:54:1510:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1509:13:1509:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1509:22:1509:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1509:22:1509:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1509:22:1509:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1509:22:1509:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1509:22:1509:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1509:30:1509:35 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1512:9:1514:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1512:16:1512:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1512:16:1512:33 | ...::Ok(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1512:16:1512:33 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1512:27:1512:32 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1512:37:1512:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1512:37:1512:55 | try_convert_error(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1512:37:1512:55 | try_convert_error(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1512:57:1514:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1513:13:1513:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1513:22:1513:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1513:22:1513:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1513:22:1513:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1513:22:1513:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1513:22:1513:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1513:30:1513:35 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1516:9:1518:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1516:16:1516:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1516:16:1516:33 | ...::Ok(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1516:16:1516:33 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1516:27:1516:32 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1516:37:1516:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1516:37:1516:49 | try_chained(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1516:37:1516:49 | try_chained(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1516:51:1518:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1517:13:1517:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1517:22:1517:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1517:22:1517:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1517:22:1517:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1517:22:1517:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1517:22:1517:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1517:30:1517:35 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:9:1522:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1520:16:1520:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1520:16:1520:33 | ...::Ok(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:16:1520:33 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:27:1520:32 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:37:1520:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1520:37:1520:63 | try_complex(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:37:1520:63 | try_complex(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:49:1520:62 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1520:49:1520:62 | ...::Ok(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:49:1520:62 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:60:1520:61 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:65:1522:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1521:13:1521:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1521:22:1521:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1521:22:1521:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1521:22:1521:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1521:22:1521:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1521:22:1521:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1521:30:1521:35 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1527:16:1618:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1528:13:1528:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1528:22:1528:22 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1529:13:1529:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:1529:17:1529:17 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1530:13:1530:13 | z | | {EXTERNAL LOCATION} | i32 | -| main.rs:1530:17:1530:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1530:17:1530:21 | ... + ... | | {EXTERNAL LOCATION} | i32 | -| main.rs:1530:21:1530:21 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:1531:13:1531:13 | z | | {EXTERNAL LOCATION} | i32 | -| main.rs:1531:17:1531:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1531:17:1531:23 | x.abs() | | {EXTERNAL LOCATION} | i32 | -| main.rs:1532:13:1532:13 | c | | {EXTERNAL LOCATION} | char | -| main.rs:1532:17:1532:19 | 'c' | | {EXTERNAL LOCATION} | char | -| main.rs:1533:13:1533:17 | hello | | {EXTERNAL LOCATION} | & | -| main.rs:1533:13:1533:17 | hello | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1533:21:1533:27 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1533:21:1533:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1534:13:1534:13 | f | | {EXTERNAL LOCATION} | f64 | -| main.rs:1534:17:1534:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | -| main.rs:1535:13:1535:13 | t | | {EXTERNAL LOCATION} | bool | -| main.rs:1535:17:1535:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1536:13:1536:13 | f | | {EXTERNAL LOCATION} | bool | -| main.rs:1536:17:1536:21 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1539:26:1539:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1539:26:1539:30 | SelfParam | TRef | main.rs:1538:9:1542:9 | Self [trait MyTrait] | -| main.rs:1545:26:1545:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1545:26:1545:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1545:26:1545:30 | SelfParam | TRef.TArray | main.rs:1544:14:1544:23 | T | -| main.rs:1545:39:1547:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1545:39:1547:13 | { ... } | TRef | main.rs:1544:14:1544:23 | T | -| main.rs:1546:17:1546:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1546:17:1546:20 | self | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1546:17:1546:20 | self | TRef.TArray | main.rs:1544:14:1544:23 | T | -| main.rs:1546:17:1546:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | -| main.rs:1546:17:1546:36 | ... .unwrap() | TRef | main.rs:1544:14:1544:23 | T | -| main.rs:1546:26:1546:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1549:31:1551:13 | { ... } | | main.rs:1544:14:1544:23 | T | -| main.rs:1550:17:1550:28 | ...::default(...) | | main.rs:1544:14:1544:23 | T | -| main.rs:1554:13:1554:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1554:13:1554:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1554:17:1554:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1554:17:1554:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1554:17:1554:37 | ... .my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1554:17:1554:37 | ... .my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1554:18:1554:18 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1554:21:1554:21 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1554:24:1554:24 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:13:1555:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1555:13:1555:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:17:1555:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1555:17:1555:47 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:22:1555:22 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:37:1555:46 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1555:37:1555:46 | &... | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1555:37:1555:46 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:38:1555:46 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1555:38:1555:46 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:39:1555:39 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:42:1555:42 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:45:1555:45 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1556:13:1556:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1556:17:1556:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1556:24:1556:24 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1559:26:1559:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1559:26:1559:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1559:26:1559:30 | SelfParam | TRef.TSlice | main.rs:1558:14:1558:23 | T | -| main.rs:1559:39:1561:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1559:39:1561:13 | { ... } | TRef | main.rs:1558:14:1558:23 | T | -| main.rs:1560:17:1560:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1560:17:1560:20 | self | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1560:17:1560:20 | self | TRef.TSlice | main.rs:1558:14:1558:23 | T | -| main.rs:1560:17:1560:27 | self.get(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:1560:17:1560:27 | self.get(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:1560:17:1560:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | -| main.rs:1560:17:1560:36 | ... .unwrap() | TRef | main.rs:1558:14:1558:23 | T | -| main.rs:1560:26:1560:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1563:31:1565:13 | { ... } | | main.rs:1558:14:1558:23 | T | -| main.rs:1564:17:1564:28 | ...::default(...) | | main.rs:1558:14:1558:23 | T | -| main.rs:1568:13:1568:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1568:13:1568:13 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1568:13:1568:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1568:25:1568:34 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1568:25:1568:34 | &... | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1568:25:1568:34 | &... | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1568:25:1568:34 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1568:25:1568:34 | &... | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1568:26:1568:34 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1568:26:1568:34 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1568:27:1568:27 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1568:30:1568:30 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1568:33:1568:33 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1569:13:1569:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1569:13:1569:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1569:17:1569:17 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1569:17:1569:17 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1569:17:1569:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1569:17:1569:29 | s.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1569:17:1569:29 | s.my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1570:13:1570:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1570:13:1570:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1570:17:1570:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1570:17:1570:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1570:34:1570:34 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1570:34:1570:34 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1570:34:1570:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1571:13:1571:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1571:17:1571:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1574:26:1574:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1574:26:1574:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1574:26:1574:30 | SelfParam | TRef.T0 | main.rs:1573:14:1573:23 | T | -| main.rs:1574:26:1574:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1574:39:1576:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1574:39:1576:13 | { ... } | TRef | main.rs:1573:14:1573:23 | T | -| main.rs:1575:17:1575:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1575:17:1575:23 | &... | TRef | main.rs:1573:14:1573:23 | T | -| main.rs:1575:18:1575:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1575:18:1575:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1575:18:1575:21 | self | TRef.T0 | main.rs:1573:14:1573:23 | T | -| main.rs:1575:18:1575:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1575:18:1575:23 | self.0 | | main.rs:1573:14:1573:23 | T | -| main.rs:1578:31:1580:13 | { ... } | | main.rs:1573:14:1573:23 | T | -| main.rs:1579:17:1579:28 | ...::default(...) | | main.rs:1573:14:1573:23 | T | -| main.rs:1583:13:1583:13 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1583:13:1583:13 | p | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1583:13:1583:13 | p | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1583:17:1583:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1583:17:1583:23 | TupleExpr | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1583:17:1583:23 | TupleExpr | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1583:18:1583:19 | 42 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1583:22:1583:22 | 7 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1584:13:1584:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1584:13:1584:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1584:17:1584:17 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1584:17:1584:17 | p | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1584:17:1584:17 | p | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1584:17:1584:29 | p.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1584:17:1584:29 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:13:1585:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1585:13:1585:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:17:1585:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1585:17:1585:39 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:37:1585:38 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1585:37:1585:38 | &p | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1585:37:1585:38 | &p | TRef.T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:37:1585:38 | &p | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:38:1585:38 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1585:38:1585:38 | p | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:38:1585:38 | p | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1586:13:1586:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1586:17:1586:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1589:26:1589:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1589:26:1589:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1589:26:1589:30 | SelfParam | TRef.TRef | main.rs:1588:14:1588:23 | T | -| main.rs:1589:39:1591:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1589:39:1591:13 | { ... } | TRef | main.rs:1588:14:1588:23 | T | -| main.rs:1590:17:1590:21 | * ... | | {EXTERNAL LOCATION} | & | -| main.rs:1590:17:1590:21 | * ... | TRef | main.rs:1588:14:1588:23 | T | -| main.rs:1590:18:1590:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1590:18:1590:21 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1590:18:1590:21 | self | TRef.TRef | main.rs:1588:14:1588:23 | T | -| main.rs:1593:31:1595:13 | { ... } | | main.rs:1588:14:1588:23 | T | -| main.rs:1594:17:1594:28 | ...::default(...) | | main.rs:1588:14:1588:23 | T | -| main.rs:1598:13:1598:13 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1598:13:1598:13 | r | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1598:17:1598:19 | &42 | | {EXTERNAL LOCATION} | & | -| main.rs:1598:17:1598:19 | &42 | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1598:18:1598:19 | 42 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1599:13:1599:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1599:13:1599:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1599:17:1599:17 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1599:17:1599:17 | r | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1599:17:1599:29 | r.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1599:17:1599:29 | r.my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1600:13:1600:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1600:13:1600:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1600:17:1600:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1600:17:1600:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1600:33:1600:34 | &r | | {EXTERNAL LOCATION} | & | -| main.rs:1600:33:1600:34 | &r | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1600:33:1600:34 | &r | TRef.TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1600:34:1600:34 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1600:34:1600:34 | r | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1601:13:1601:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1601:17:1601:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1604:26:1604:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1604:26:1604:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1604:26:1604:30 | SelfParam | TRef.TPtrMut | main.rs:1603:14:1603:23 | T | -| main.rs:1604:39:1606:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1604:39:1606:13 | { ... } | TRef | main.rs:1603:14:1603:23 | T | -| main.rs:1605:17:1605:34 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1605:17:1605:34 | { ... } | TRef | main.rs:1603:14:1603:23 | T | -| main.rs:1605:26:1605:32 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1605:26:1605:32 | &... | TRef | main.rs:1603:14:1603:23 | T | -| main.rs:1605:27:1605:32 | * ... | | main.rs:1603:14:1603:23 | T | -| main.rs:1605:28:1605:32 | * ... | | {EXTERNAL LOCATION} | *mut | -| main.rs:1605:28:1605:32 | * ... | TPtrMut | main.rs:1603:14:1603:23 | T | -| main.rs:1605:29:1605:32 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1605:29:1605:32 | self | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1605:29:1605:32 | self | TRef.TPtrMut | main.rs:1603:14:1603:23 | T | -| main.rs:1608:31:1610:13 | { ... } | | main.rs:1603:14:1603:23 | T | -| main.rs:1609:17:1609:28 | ...::default(...) | | main.rs:1603:14:1603:23 | T | -| main.rs:1613:17:1613:17 | v | | {EXTERNAL LOCATION} | i32 | -| main.rs:1613:21:1613:22 | 42 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1614:13:1614:13 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1614:13:1614:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1614:27:1614:32 | &mut v | | {EXTERNAL LOCATION} | &mut | -| main.rs:1614:27:1614:32 | &mut v | TRefMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1614:32:1614:32 | v | | {EXTERNAL LOCATION} | i32 | -| main.rs:1615:13:1615:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1615:13:1615:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1615:17:1615:40 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1615:17:1615:40 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1615:26:1615:26 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1615:26:1615:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1615:26:1615:38 | p.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1615:26:1615:38 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:13:1616:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1616:13:1616:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:17:1616:50 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1616:17:1616:50 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:26:1616:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1616:26:1616:48 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:46:1616:47 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1616:46:1616:47 | &p | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1616:46:1616:47 | &p | TRef.TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:47:1616:47 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1616:47:1616:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1617:13:1617:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1617:17:1617:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1623:16:1635:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1624:13:1624:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:1624:17:1624:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1624:17:1624:29 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1624:25:1624:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:13:1625:13 | y | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:17:1625:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:17:1625:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:25:1625:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1627:17:1627:17 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1628:13:1628:16 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:1628:20:1628:21 | 34 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1628:20:1628:27 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1628:26:1628:27 | 33 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1629:9:1633:9 | if cond {...} else {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1629:12:1629:15 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:1629:17:1631:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1630:17:1630:17 | z | | {EXTERNAL LOCATION} | () | -| main.rs:1630:21:1630:27 | (...) | | {EXTERNAL LOCATION} | () | -| main.rs:1630:22:1630:22 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1630:22:1630:26 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:1630:26:1630:26 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1631:16:1633:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1632:13:1632:13 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1632:13:1632:17 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:1632:17:1632:17 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1634:9:1634:9 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1648:30:1650:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1649:13:1649:31 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1649:23:1649:23 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1649:29:1649:29 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1656:16:1656:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1656:22:1656:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1656:41:1661:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1657:13:1660:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1658:20:1658:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1658:20:1658:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1658:20:1658:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1658:29:1658:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1658:29:1658:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1659:20:1659:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1659:20:1659:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1659:20:1659:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1659:29:1659:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1659:29:1659:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1666:23:1666:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1666:23:1666:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1666:34:1666:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1666:45:1669:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1667:13:1667:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1667:13:1667:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1667:13:1667:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1667:13:1667:27 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1667:23:1667:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1667:23:1667:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1668:13:1668:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1668:13:1668:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1668:13:1668:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1668:13:1668:27 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1668:23:1668:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1668:23:1668:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1674:16:1674:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1674:22:1674:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1674:41:1679:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1675:13:1678:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1676:20:1676:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1676:20:1676:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1676:20:1676:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1676:29:1676:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1676:29:1676:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1677:20:1677:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1677:20:1677:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1677:20:1677:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1677:29:1677:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1677:29:1677:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1684:23:1684:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1684:23:1684:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1684:34:1684:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1684:45:1687:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1685:13:1685:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1685:13:1685:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1685:13:1685:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1685:13:1685:27 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1685:23:1685:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1685:23:1685:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1686:13:1686:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1686:13:1686:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1686:13:1686:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1686:13:1686:27 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1686:23:1686:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1686:23:1686:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1692:16:1692:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1692:22:1692:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1692:41:1697:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1693:13:1696:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1694:20:1694:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1694:20:1694:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1694:20:1694:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1694:29:1694:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1694:29:1694:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1695:20:1695:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1695:20:1695:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1695:20:1695:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1695:29:1695:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1695:29:1695:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1701:23:1701:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1701:23:1701:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1701:34:1701:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1701:45:1704:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1702:13:1702:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1702:13:1702:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1702:13:1702:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1702:13:1702:27 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1702:23:1702:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1702:23:1702:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1703:13:1703:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1703:13:1703:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1703:13:1703:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1703:13:1703:27 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1703:23:1703:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1703:23:1703:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1709:16:1709:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1709:22:1709:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1709:41:1714:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1710:13:1713:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1711:20:1711:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1711:20:1711:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1711:20:1711:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1711:29:1711:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1711:29:1711:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1712:20:1712:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1712:20:1712:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1712:20:1712:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1712:29:1712:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1712:29:1712:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1718:23:1718:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1718:23:1718:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1718:34:1718:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1718:45:1721:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1719:13:1719:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1719:13:1719:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1719:13:1719:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1719:13:1719:27 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1719:23:1719:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1719:23:1719:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1720:13:1720:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1720:13:1720:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1720:13:1720:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1720:13:1720:27 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1720:23:1720:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1720:23:1720:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1726:16:1726:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1726:22:1726:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1726:41:1731:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1727:13:1730:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1728:20:1728:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1728:20:1728:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1728:20:1728:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1728:29:1728:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1728:29:1728:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1729:20:1729:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1729:20:1729:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1729:20:1729:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1729:29:1729:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1729:29:1729:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1735:23:1735:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1735:23:1735:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1735:34:1735:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1735:45:1738:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1736:13:1736:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1736:13:1736:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1736:13:1736:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1736:13:1736:27 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1736:23:1736:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1736:23:1736:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1737:13:1737:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1737:13:1737:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1737:13:1737:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1737:13:1737:27 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1737:23:1737:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1737:23:1737:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1743:19:1743:22 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1743:25:1743:27 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1743:44:1748:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1744:13:1747:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1745:20:1745:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1745:20:1745:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1745:20:1745:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1745:29:1745:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1745:29:1745:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1746:20:1746:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1746:20:1746:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1746:20:1746:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1746:29:1746:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1746:29:1746:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1752:26:1752:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1752:26:1752:34 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1752:37:1752:39 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1752:48:1755:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1753:13:1753:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1753:13:1753:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1753:13:1753:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1753:13:1753:27 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1753:23:1753:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1753:23:1753:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1754:13:1754:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1754:13:1754:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1754:13:1754:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1754:13:1754:27 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1754:23:1754:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1754:23:1754:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1760:18:1760:21 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1760:24:1760:26 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1760:43:1765:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1761:13:1764:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1762:20:1762:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1762:20:1762:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1762:20:1762:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1762:29:1762:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1762:29:1762:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1763:20:1763:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1763:20:1763:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1763:20:1763:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1763:29:1763:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1763:29:1763:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1769:25:1769:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1769:25:1769:33 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1769:36:1769:38 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1769:47:1772:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1770:13:1770:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1770:13:1770:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1770:13:1770:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1770:13:1770:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1770:23:1770:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1770:23:1770:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1771:13:1771:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1771:13:1771:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1771:13:1771:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1771:13:1771:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1771:23:1771:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1771:23:1771:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1777:19:1777:22 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1777:25:1777:27 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1777:44:1782:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1778:13:1781:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1779:20:1779:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1779:20:1779:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1779:20:1779:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1779:29:1779:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1779:29:1779:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1780:20:1780:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1780:20:1780:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1780:20:1780:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1780:29:1780:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1780:29:1780:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1786:26:1786:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1786:26:1786:34 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1786:37:1786:39 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1786:48:1789:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1787:13:1787:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1787:13:1787:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1787:13:1787:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1787:13:1787:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1787:23:1787:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1787:23:1787:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1788:13:1788:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1788:13:1788:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1788:13:1788:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1788:13:1788:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1788:23:1788:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1788:23:1788:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1794:16:1794:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1794:22:1794:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1794:40:1799:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1795:13:1798:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1796:20:1796:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1796:20:1796:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1796:20:1796:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1796:30:1796:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1797:20:1797:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1797:20:1797:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1797:20:1797:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1797:30:1797:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1803:23:1803:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1803:23:1803:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1803:34:1803:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1803:44:1806:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1804:13:1804:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1804:13:1804:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1804:13:1804:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1804:13:1804:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1804:24:1804:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1805:13:1805:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1805:13:1805:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1805:13:1805:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1805:13:1805:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1805:24:1805:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1811:16:1811:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1811:22:1811:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1811:40:1816:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1812:13:1815:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1813:20:1813:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1813:20:1813:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1813:20:1813:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1813:30:1813:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1814:20:1814:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1814:20:1814:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1814:20:1814:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1814:30:1814:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1820:23:1820:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1820:23:1820:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1820:34:1820:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1820:44:1823:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1821:13:1821:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1821:13:1821:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1821:13:1821:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1821:13:1821:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1821:24:1821:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1822:13:1822:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1822:13:1822:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1822:13:1822:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1822:13:1822:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1822:24:1822:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1828:16:1828:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1828:30:1833:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1829:13:1832:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1830:20:1830:26 | - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1830:21:1830:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1830:21:1830:26 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1831:20:1831:26 | - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1831:21:1831:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1831:21:1831:26 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1838:16:1838:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1838:30:1843:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1839:13:1842:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1840:20:1840:26 | ! ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1840:21:1840:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1840:21:1840:26 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1841:20:1841:26 | ! ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1841:21:1841:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1841:21:1841:26 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1847:15:1847:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1847:15:1847:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1847:22:1847:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1847:22:1847:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1847:44:1849:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:13:1848:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1848:13:1848:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1848:13:1848:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1848:13:1848:29 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:13:1848:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:23:1848:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1848:23:1848:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1848:23:1848:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1848:34:1848:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1848:34:1848:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1848:34:1848:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1848:34:1848:50 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:44:1848:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1848:44:1848:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1848:44:1848:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1851:15:1851:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1851:15:1851:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1851:22:1851:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1851:22:1851:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1851:44:1853:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:13:1852:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1852:13:1852:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1852:13:1852:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1852:13:1852:29 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:13:1852:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:23:1852:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1852:23:1852:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1852:23:1852:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1852:34:1852:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1852:34:1852:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1852:34:1852:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1852:34:1852:50 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:44:1852:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1852:44:1852:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1852:44:1852:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1857:24:1857:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1857:24:1857:28 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1857:31:1857:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1857:31:1857:35 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1857:75:1859:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:1857:75:1859:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | -| main.rs:1858:13:1858:29 | (...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:13:1858:63 | ... .partial_cmp(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:1858:13:1858:63 | ... .partial_cmp(...) | T | {EXTERNAL LOCATION} | Ordering | -| main.rs:1858:14:1858:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1858:14:1858:17 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1858:14:1858:19 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:14:1858:28 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:23:1858:26 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1858:23:1858:26 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1858:23:1858:28 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:43:1858:62 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1858:43:1858:62 | &... | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:44:1858:62 | (...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:45:1858:49 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1858:45:1858:49 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1858:45:1858:51 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:45:1858:61 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:55:1858:59 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1858:55:1858:59 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1858:55:1858:61 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1861:15:1861:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1861:15:1861:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1861:22:1861:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1861:22:1861:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1861:44:1863:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:13:1862:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1862:13:1862:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1862:13:1862:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1862:13:1862:28 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:13:1862:48 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:22:1862:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1862:22:1862:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1862:22:1862:28 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1862:33:1862:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1862:33:1862:36 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1862:33:1862:38 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1862:33:1862:48 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:42:1862:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1862:42:1862:46 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1862:42:1862:48 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1865:15:1865:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1865:15:1865:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1865:22:1865:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1865:22:1865:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1865:44:1867:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:13:1866:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1866:13:1866:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1866:13:1866:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1866:13:1866:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:13:1866:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:23:1866:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1866:23:1866:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1866:23:1866:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1866:34:1866:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1866:34:1866:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1866:34:1866:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1866:34:1866:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:44:1866:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1866:44:1866:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1866:44:1866:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1869:15:1869:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1869:15:1869:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1869:22:1869:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1869:22:1869:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1869:44:1871:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:13:1870:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1870:13:1870:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1870:13:1870:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1870:13:1870:28 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:13:1870:48 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:22:1870:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1870:22:1870:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1870:22:1870:28 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1870:33:1870:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1870:33:1870:36 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1870:33:1870:38 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1870:33:1870:48 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:42:1870:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1870:42:1870:46 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1870:42:1870:48 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1873:15:1873:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1873:15:1873:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1873:22:1873:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1873:22:1873:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1873:44:1875:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:13:1874:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1874:13:1874:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1874:13:1874:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1874:13:1874:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:13:1874:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:23:1874:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1874:23:1874:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1874:23:1874:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1874:34:1874:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1874:34:1874:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1874:34:1874:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1874:34:1874:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:44:1874:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1874:44:1874:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1874:44:1874:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1878:26:1878:26 | a | | main.rs:1878:18:1878:23 | T | -| main.rs:1878:32:1878:32 | b | | main.rs:1878:18:1878:23 | T | -| main.rs:1879:9:1879:9 | a | | main.rs:1878:18:1878:23 | T | -| main.rs:1879:13:1879:13 | b | | main.rs:1878:18:1878:23 | T | -| main.rs:1882:16:2013:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1886:13:1886:18 | i64_eq | | {EXTERNAL LOCATION} | bool | -| main.rs:1886:22:1886:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1886:23:1886:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1886:23:1886:34 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1886:31:1886:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1887:13:1887:18 | i64_ne | | {EXTERNAL LOCATION} | bool | -| main.rs:1887:22:1887:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1887:23:1887:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1887:23:1887:34 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1887:31:1887:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1888:13:1888:18 | i64_lt | | {EXTERNAL LOCATION} | bool | -| main.rs:1888:22:1888:34 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1888:23:1888:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1888:23:1888:33 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1888:30:1888:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:13:1889:18 | i64_le | | {EXTERNAL LOCATION} | bool | -| main.rs:1889:22:1889:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1889:23:1889:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:23:1889:34 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1889:31:1889:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1890:13:1890:18 | i64_gt | | {EXTERNAL LOCATION} | bool | -| main.rs:1890:22:1890:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1890:23:1890:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1890:23:1890:34 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1890:30:1890:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1891:13:1891:18 | i64_ge | | {EXTERNAL LOCATION} | bool | -| main.rs:1891:22:1891:37 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1891:23:1891:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1891:23:1891:36 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1891:32:1891:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:13:1894:19 | i64_add | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:23:1894:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:23:1894:35 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:31:1894:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:13:1895:19 | i64_sub | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:23:1895:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:23:1895:35 | ... - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:31:1895:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1896:13:1896:19 | i64_mul | | {EXTERNAL LOCATION} | i64 | -| main.rs:1896:23:1896:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1896:23:1896:35 | ... * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1896:31:1896:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:13:1897:19 | i64_div | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:23:1897:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:23:1897:35 | ... / ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:31:1897:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:13:1898:19 | i64_rem | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:23:1898:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:23:1898:35 | ... % ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:31:1898:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1899:39:1899:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1899:45:1899:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1902:17:1902:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1902:34:1902:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1903:9:1903:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1903:9:1903:31 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1903:27:1903:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1905:17:1905:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1905:34:1905:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1906:9:1906:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1906:9:1906:31 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1906:27:1906:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1908:17:1908:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1908:34:1908:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1909:9:1909:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1909:9:1909:31 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1909:27:1909:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1911:17:1911:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1911:34:1911:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1912:9:1912:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1912:9:1912:31 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1912:27:1912:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1914:17:1914:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1914:34:1914:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1915:9:1915:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1915:9:1915:31 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1915:27:1915:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:13:1918:22 | i64_bitand | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:26:1918:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:26:1918:38 | ... & ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:34:1918:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:13:1919:21 | i64_bitor | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:25:1919:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:25:1919:37 | ... \| ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:33:1919:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:13:1920:22 | i64_bitxor | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:26:1920:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:26:1920:38 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:34:1920:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:13:1921:19 | i64_shl | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:23:1921:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:23:1921:36 | ... << ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:32:1921:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:13:1922:19 | i64_shr | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:23:1922:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:23:1922:36 | ... >> ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:32:1922:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1925:17:1925:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1925:37:1925:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:9:1926:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:9:1926:34 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1926:30:1926:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1928:17:1928:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1928:36:1928:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:9:1929:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:9:1929:33 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1929:29:1929:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1931:17:1931:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1931:37:1931:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1932:9:1932:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1932:9:1932:34 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1932:30:1932:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1934:17:1934:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1934:34:1934:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1935:9:1935:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1935:9:1935:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1935:28:1935:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1937:17:1937:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1937:34:1937:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1938:9:1938:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1938:9:1938:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1938:28:1938:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1940:13:1940:19 | i64_neg | | {EXTERNAL LOCATION} | i64 | -| main.rs:1940:23:1940:28 | - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1940:24:1940:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1941:13:1941:19 | i64_not | | {EXTERNAL LOCATION} | i64 | -| main.rs:1941:23:1941:28 | ! ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1941:24:1941:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1944:13:1944:14 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1944:18:1944:36 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1944:28:1944:28 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1944:34:1944:34 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1945:13:1945:14 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1945:18:1945:36 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1945:28:1945:28 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1945:34:1945:34 | 4 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1948:13:1948:19 | vec2_eq | | {EXTERNAL LOCATION} | bool | -| main.rs:1948:23:1948:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1948:23:1948:30 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1948:29:1948:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1949:13:1949:19 | vec2_ne | | {EXTERNAL LOCATION} | bool | -| main.rs:1949:23:1949:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1949:23:1949:30 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1949:29:1949:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1950:13:1950:19 | vec2_lt | | {EXTERNAL LOCATION} | bool | -| main.rs:1950:23:1950:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1950:23:1950:29 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1950:28:1950:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1951:13:1951:19 | vec2_le | | {EXTERNAL LOCATION} | bool | -| main.rs:1951:23:1951:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1951:23:1951:30 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1951:29:1951:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1952:13:1952:19 | vec2_gt | | {EXTERNAL LOCATION} | bool | -| main.rs:1952:23:1952:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1952:23:1952:29 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1952:28:1952:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1953:13:1953:19 | vec2_ge | | {EXTERNAL LOCATION} | bool | -| main.rs:1953:23:1953:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1953:23:1953:30 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1953:29:1953:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1956:13:1956:20 | vec2_add | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1956:24:1956:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1956:24:1956:30 | ... + ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1956:29:1956:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1957:13:1957:20 | vec2_sub | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1957:24:1957:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1957:24:1957:30 | ... - ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1957:29:1957:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1958:13:1958:20 | vec2_mul | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1958:24:1958:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1958:24:1958:30 | ... * ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1958:29:1958:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1959:13:1959:20 | vec2_div | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1959:24:1959:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1959:24:1959:30 | ... / ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1959:29:1959:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1960:13:1960:20 | vec2_rem | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1960:24:1960:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1960:24:1960:30 | ... % ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1960:29:1960:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1963:17:1963:31 | vec2_add_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1963:35:1963:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1964:9:1964:23 | vec2_add_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1964:9:1964:29 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1964:28:1964:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1966:17:1966:31 | vec2_sub_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1966:35:1966:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1967:9:1967:23 | vec2_sub_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1967:9:1967:29 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1967:28:1967:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1969:17:1969:31 | vec2_mul_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1969:35:1969:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1970:9:1970:23 | vec2_mul_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1970:9:1970:29 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1970:28:1970:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1972:17:1972:31 | vec2_div_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1972:35:1972:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1973:9:1973:23 | vec2_div_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1973:9:1973:29 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1973:28:1973:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1975:17:1975:31 | vec2_rem_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1975:35:1975:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1976:9:1976:23 | vec2_rem_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1976:9:1976:29 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1976:28:1976:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1979:13:1979:23 | vec2_bitand | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1979:27:1979:28 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1979:27:1979:33 | ... & ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1979:32:1979:33 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1980:13:1980:22 | vec2_bitor | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1980:26:1980:27 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1980:26:1980:32 | ... \| ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1980:31:1980:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1981:13:1981:23 | vec2_bitxor | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1981:27:1981:28 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1981:27:1981:33 | ... ^ ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1981:32:1981:33 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1982:13:1982:20 | vec2_shl | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1982:24:1982:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1982:24:1982:33 | ... << ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1982:30:1982:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1983:13:1983:20 | vec2_shr | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1983:24:1983:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1983:24:1983:33 | ... >> ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1983:30:1983:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1986:17:1986:34 | vec2_bitand_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1986:38:1986:39 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1987:9:1987:26 | vec2_bitand_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1987:9:1987:32 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1987:31:1987:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1989:17:1989:33 | vec2_bitor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1989:37:1989:38 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1990:9:1990:25 | vec2_bitor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1990:9:1990:31 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1990:30:1990:31 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1992:17:1992:34 | vec2_bitxor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1992:38:1992:39 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1993:9:1993:26 | vec2_bitxor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1993:9:1993:32 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1993:31:1993:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1995:17:1995:31 | vec2_shl_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1995:35:1995:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1996:9:1996:23 | vec2_shl_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1996:9:1996:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1996:29:1996:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1998:17:1998:31 | vec2_shr_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1998:35:1998:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1999:9:1999:23 | vec2_shr_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1999:9:1999:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1999:29:1999:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2002:13:2002:20 | vec2_neg | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2002:24:2002:26 | - ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2002:25:2002:26 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2003:13:2003:20 | vec2_not | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2003:24:2003:26 | ! ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2003:25:2003:26 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2006:13:2006:24 | default_vec2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2006:28:2006:45 | ...::default(...) | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2007:13:2007:26 | vec2_zero_plus | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2007:30:2007:48 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2007:30:2007:63 | ... + ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2007:40:2007:40 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2007:46:2007:46 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2007:52:2007:63 | default_vec2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2011:13:2011:24 | default_vec2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2011:28:2011:45 | ...::default(...) | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2012:13:2012:26 | vec2_zero_plus | | {EXTERNAL LOCATION} | bool | -| main.rs:2012:30:2012:48 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2012:30:2012:64 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:2012:40:2012:40 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2012:46:2012:46 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2012:53:2012:64 | default_vec2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2022:18:2022:21 | SelfParam | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2022:24:2022:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2025:25:2027:5 | { ... } | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2026:9:2026:10 | S1 | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2029:41:2031:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2029:41:2031:5 | { ... } | dyn(Output) | main.rs:2019:5:2019:14 | S1 | -| main.rs:2030:9:2030:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2030:9:2030:20 | { ... } | dyn(Output) | main.rs:2019:5:2019:14 | S1 | -| main.rs:2030:17:2030:18 | S1 | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2033:41:2035:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2033:41:2035:5 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2034:9:2034:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2034:9:2034:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2043:13:2043:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | -| main.rs:2043:13:2043:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | -| main.rs:2043:13:2043:42 | SelfParam | Ptr.TRefMut | main.rs:2037:5:2037:14 | S2 | -| main.rs:2044:13:2044:15 | _cx | | {EXTERNAL LOCATION} | &mut | -| main.rs:2044:13:2044:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | -| main.rs:2045:44:2047:9 | { ... } | | {EXTERNAL LOCATION} | Poll | -| main.rs:2045:44:2047:9 | { ... } | T | main.rs:2019:5:2019:14 | S1 | -| main.rs:2046:13:2046:38 | ...::Ready(...) | | {EXTERNAL LOCATION} | Poll | -| main.rs:2046:13:2046:38 | ...::Ready(...) | T | main.rs:2019:5:2019:14 | S1 | -| main.rs:2046:36:2046:37 | S1 | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2050:41:2052:5 | { ... } | | main.rs:2037:5:2037:14 | S2 | -| main.rs:2051:9:2051:10 | S2 | | main.rs:2037:5:2037:14 | S2 | -| main.rs:2054:22:2062:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2055:9:2055:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2055:9:2055:12 | f1(...) | dyn(Output) | main.rs:2019:5:2019:14 | S1 | -| main.rs:2055:9:2055:18 | await ... | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2055:9:2055:22 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2056:9:2056:12 | f2(...) | | main.rs:2029:16:2029:39 | impl ... | -| main.rs:2056:9:2056:18 | await ... | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2056:9:2056:22 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2057:9:2057:12 | f3(...) | | main.rs:2033:16:2033:39 | impl ... | -| main.rs:2057:9:2057:18 | await ... | | {EXTERNAL LOCATION} | () | -| main.rs:2058:9:2058:12 | f4(...) | | main.rs:2050:16:2050:39 | impl ... | -| main.rs:2058:9:2058:18 | await ... | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2058:9:2058:22 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2059:9:2059:10 | S2 | | main.rs:2037:5:2037:14 | S2 | -| main.rs:2059:9:2059:16 | await S2 | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2059:9:2059:20 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2060:13:2060:13 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2060:13:2060:13 | b | dyn(Output) | main.rs:2019:5:2019:14 | S1 | -| main.rs:2060:17:2060:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2060:17:2060:28 | { ... } | dyn(Output) | main.rs:2019:5:2019:14 | S1 | -| main.rs:2060:25:2060:26 | S1 | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2061:9:2061:9 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2061:9:2061:9 | b | dyn(Output) | main.rs:2019:5:2019:14 | S1 | -| main.rs:2061:9:2061:15 | await b | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2061:9:2061:19 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2072:15:2072:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2072:15:2072:19 | SelfParam | TRef | main.rs:2071:5:2073:5 | Self [trait Trait1] | -| main.rs:2072:22:2072:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2076:15:2076:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2076:15:2076:19 | SelfParam | TRef | main.rs:2075:5:2077:5 | Self [trait Trait2] | -| main.rs:2076:22:2076:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2080:15:2080:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2080:15:2080:19 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | -| main.rs:2080:22:2080:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2084:15:2084:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2084:15:2084:19 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | -| main.rs:2084:22:2084:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2087:37:2089:5 | { ... } | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2088:9:2088:10 | S1 | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2092:18:2092:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2092:18:2092:22 | SelfParam | TRef | main.rs:2091:5:2093:5 | Self [trait MyTrait] | -| main.rs:2096:18:2096:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2096:18:2096:22 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | -| main.rs:2096:31:2098:9 | { ... } | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2097:13:2097:14 | S2 | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2102:18:2102:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2102:18:2102:22 | SelfParam | TRef | main.rs:2069:5:2069:22 | S3 | -| main.rs:2102:18:2102:22 | SelfParam | TRef.T3 | main.rs:2101:10:2101:17 | T | -| main.rs:2102:30:2105:9 | { ... } | | main.rs:2101:10:2101:17 | T | -| main.rs:2103:17:2103:21 | S3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:2103:17:2103:21 | S3(...) | | main.rs:2069:5:2069:22 | S3 | -| main.rs:2103:17:2103:21 | S3(...) | TRef | main.rs:2069:5:2069:22 | S3 | -| main.rs:2103:17:2103:21 | S3(...) | TRef.T3 | main.rs:2101:10:2101:17 | T | -| main.rs:2103:25:2103:28 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2103:25:2103:28 | self | TRef | main.rs:2069:5:2069:22 | S3 | -| main.rs:2103:25:2103:28 | self | TRef.T3 | main.rs:2101:10:2101:17 | T | -| main.rs:2104:13:2104:21 | t.clone() | | main.rs:2101:10:2101:17 | T | -| main.rs:2108:45:2110:5 | { ... } | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2109:9:2109:10 | S1 | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2112:41:2112:41 | t | | main.rs:2112:26:2112:38 | B | -| main.rs:2112:52:2114:5 | { ... } | | main.rs:2112:23:2112:23 | A | -| main.rs:2113:9:2113:9 | t | | main.rs:2112:26:2112:38 | B | -| main.rs:2113:9:2113:17 | t.get_a() | | main.rs:2112:23:2112:23 | A | -| main.rs:2116:34:2116:34 | x | | main.rs:2116:24:2116:31 | T | -| main.rs:2116:59:2118:5 | { ... } | | main.rs:2116:43:2116:57 | impl ... | -| main.rs:2116:59:2118:5 | { ... } | impl(T) | main.rs:2116:24:2116:31 | T | -| main.rs:2117:9:2117:13 | S3(...) | | main.rs:2069:5:2069:22 | S3 | -| main.rs:2117:9:2117:13 | S3(...) | | main.rs:2116:43:2116:57 | impl ... | -| main.rs:2117:9:2117:13 | S3(...) | T3 | main.rs:2116:24:2116:31 | T | -| main.rs:2117:9:2117:13 | S3(...) | impl(T) | main.rs:2116:24:2116:31 | T | -| main.rs:2117:12:2117:12 | x | | main.rs:2116:24:2116:31 | T | -| main.rs:2120:34:2120:34 | x | | main.rs:2120:24:2120:31 | T | -| main.rs:2120:67:2122:5 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2120:67:2122:5 | { ... } | T | main.rs:2120:50:2120:64 | impl ... | -| main.rs:2120:67:2122:5 | { ... } | T.impl(T) | main.rs:2120:24:2120:31 | T | -| main.rs:2121:9:2121:19 | Some(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2121:9:2121:19 | Some(...) | T | main.rs:2069:5:2069:22 | S3 | -| main.rs:2121:9:2121:19 | Some(...) | T | main.rs:2120:50:2120:64 | impl ... | -| main.rs:2121:9:2121:19 | Some(...) | T.T3 | main.rs:2120:24:2120:31 | T | -| main.rs:2121:9:2121:19 | Some(...) | T.impl(T) | main.rs:2120:24:2120:31 | T | -| main.rs:2121:14:2121:18 | S3(...) | | main.rs:2069:5:2069:22 | S3 | -| main.rs:2121:14:2121:18 | S3(...) | T3 | main.rs:2120:24:2120:31 | T | -| main.rs:2121:17:2121:17 | x | | main.rs:2120:24:2120:31 | T | -| main.rs:2124:34:2124:34 | x | | main.rs:2124:24:2124:31 | T | -| main.rs:2124:78:2126:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2124:78:2126:5 | { ... } | T0 | main.rs:2124:44:2124:58 | impl ... | -| main.rs:2124:78:2126:5 | { ... } | T0.impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2124:78:2126:5 | { ... } | T1 | main.rs:2124:61:2124:75 | impl ... | -| main.rs:2124:78:2126:5 | { ... } | T1.impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2125:9:2125:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2125:9:2125:30 | TupleExpr | T0 | main.rs:2069:5:2069:22 | S3 | -| main.rs:2125:9:2125:30 | TupleExpr | T0 | main.rs:2124:44:2124:58 | impl ... | -| main.rs:2125:9:2125:30 | TupleExpr | T0.T3 | main.rs:2124:24:2124:31 | T | -| main.rs:2125:9:2125:30 | TupleExpr | T0.impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2125:9:2125:30 | TupleExpr | T1 | main.rs:2069:5:2069:22 | S3 | -| main.rs:2125:9:2125:30 | TupleExpr | T1 | main.rs:2124:61:2124:75 | impl ... | -| main.rs:2125:9:2125:30 | TupleExpr | T1.T3 | main.rs:2124:24:2124:31 | T | -| main.rs:2125:9:2125:30 | TupleExpr | T1.impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2125:10:2125:22 | S3(...) | | main.rs:2069:5:2069:22 | S3 | -| main.rs:2125:10:2125:22 | S3(...) | | main.rs:2124:44:2124:58 | impl ... | -| main.rs:2125:10:2125:22 | S3(...) | T3 | main.rs:2124:24:2124:31 | T | -| main.rs:2125:10:2125:22 | S3(...) | impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2125:13:2125:13 | x | | main.rs:2124:24:2124:31 | T | -| main.rs:2125:13:2125:21 | x.clone() | | main.rs:2124:24:2124:31 | T | -| main.rs:2125:25:2125:29 | S3(...) | | main.rs:2069:5:2069:22 | S3 | -| main.rs:2125:25:2125:29 | S3(...) | | main.rs:2124:61:2124:75 | impl ... | -| main.rs:2125:25:2125:29 | S3(...) | T3 | main.rs:2124:24:2124:31 | T | -| main.rs:2125:25:2125:29 | S3(...) | impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2125:28:2125:28 | x | | main.rs:2124:24:2124:31 | T | -| main.rs:2128:26:2128:26 | t | | main.rs:2128:29:2128:43 | impl ... | -| main.rs:2128:51:2130:5 | { ... } | | main.rs:2128:23:2128:23 | A | -| main.rs:2129:9:2129:9 | t | | main.rs:2128:29:2128:43 | impl ... | -| main.rs:2129:9:2129:17 | t.get_a() | | main.rs:2128:23:2128:23 | A | -| main.rs:2132:16:2146:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2133:13:2133:13 | x | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2133:17:2133:20 | f1(...) | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2134:9:2134:9 | x | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2134:9:2134:14 | x.f1() | | {EXTERNAL LOCATION} | () | -| main.rs:2135:9:2135:9 | x | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2135:9:2135:14 | x.f2() | | {EXTERNAL LOCATION} | () | -| main.rs:2136:13:2136:13 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2136:17:2136:32 | get_a_my_trait(...) | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2137:13:2137:13 | b | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2137:17:2137:33 | uses_my_trait1(...) | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2137:32:2137:32 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2138:13:2138:13 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2138:17:2138:32 | get_a_my_trait(...) | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2139:13:2139:13 | c | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2139:17:2139:33 | uses_my_trait2(...) | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2139:32:2139:32 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2140:13:2140:13 | d | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2140:17:2140:34 | uses_my_trait2(...) | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2140:32:2140:33 | S1 | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2141:13:2141:13 | e | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2141:17:2141:35 | get_a_my_trait2(...) | | main.rs:2116:43:2116:57 | impl ... | -| main.rs:2141:17:2141:35 | get_a_my_trait2(...) | impl(T) | main.rs:2066:5:2067:14 | S1 | -| main.rs:2141:17:2141:43 | ... .get_a() | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2141:33:2141:34 | S1 | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2144:13:2144:13 | f | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2144:17:2144:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2144:17:2144:35 | get_a_my_trait3(...) | T | main.rs:2120:50:2120:64 | impl ... | -| main.rs:2144:17:2144:35 | get_a_my_trait3(...) | T.impl(T) | main.rs:2066:5:2067:14 | S1 | -| main.rs:2144:17:2144:44 | ... .unwrap() | | main.rs:2120:50:2120:64 | impl ... | -| main.rs:2144:17:2144:44 | ... .unwrap() | impl(T) | main.rs:2066:5:2067:14 | S1 | -| main.rs:2144:17:2144:52 | ... .get_a() | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2144:33:2144:34 | S1 | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2145:13:2145:13 | g | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T0 | main.rs:2124:44:2124:58 | impl ... | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T0.impl(T) | main.rs:2066:5:2067:14 | S1 | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T1 | main.rs:2124:61:2124:75 | impl ... | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T1.impl(T) | main.rs:2066:5:2067:14 | S1 | -| main.rs:2145:17:2145:37 | ... .0 | | main.rs:2124:44:2124:58 | impl ... | -| main.rs:2145:17:2145:37 | ... .0 | impl(T) | main.rs:2066:5:2067:14 | S1 | -| main.rs:2145:17:2145:45 | ... .get_a() | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2145:33:2145:34 | S1 | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2156:16:2156:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2156:16:2156:20 | SelfParam | TRef | main.rs:2152:5:2153:13 | S | -| main.rs:2156:31:2158:9 | { ... } | | main.rs:2152:5:2153:13 | S | -| main.rs:2157:13:2157:13 | S | | main.rs:2152:5:2153:13 | S | -| main.rs:2167:26:2169:9 | { ... } | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2167:26:2169:9 | { ... } | T | main.rs:2166:10:2166:10 | T | -| main.rs:2168:13:2168:38 | MyVec {...} | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2168:13:2168:38 | MyVec {...} | T | main.rs:2166:10:2166:10 | T | -| main.rs:2168:27:2168:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2168:27:2168:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2168:27:2168:36 | ...::new(...) | T | main.rs:2166:10:2166:10 | T | -| main.rs:2171:17:2171:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:2171:17:2171:25 | SelfParam | TRefMut | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2171:17:2171:25 | SelfParam | TRefMut.T | main.rs:2166:10:2166:10 | T | -| main.rs:2171:28:2171:32 | value | | main.rs:2166:10:2166:10 | T | -| main.rs:2171:38:2173:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2172:13:2172:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:2172:13:2172:16 | self | TRefMut | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2172:13:2172:16 | self | TRefMut.T | main.rs:2166:10:2166:10 | T | -| main.rs:2172:13:2172:21 | self.data | | {EXTERNAL LOCATION} | Vec | -| main.rs:2172:13:2172:21 | self.data | A | {EXTERNAL LOCATION} | Global | -| main.rs:2172:13:2172:21 | self.data | T | main.rs:2166:10:2166:10 | T | -| main.rs:2172:13:2172:33 | ... .push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2172:28:2172:32 | value | | main.rs:2166:10:2166:10 | T | -| main.rs:2180:18:2180:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2180:18:2180:22 | SelfParam | TRef | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2180:18:2180:22 | SelfParam | TRef.T | main.rs:2176:10:2176:10 | T | -| main.rs:2180:25:2180:29 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2180:56:2182:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2180:56:2182:9 | { ... } | TRef | main.rs:2176:10:2176:10 | T | -| main.rs:2181:13:2181:29 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2181:13:2181:29 | &... | TRef | main.rs:2176:10:2176:10 | T | -| main.rs:2181:14:2181:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2181:14:2181:17 | self | TRef | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2181:14:2181:17 | self | TRef.T | main.rs:2176:10:2176:10 | T | -| main.rs:2181:14:2181:22 | self.data | | {EXTERNAL LOCATION} | Vec | -| main.rs:2181:14:2181:22 | self.data | A | {EXTERNAL LOCATION} | Global | -| main.rs:2181:14:2181:22 | self.data | T | main.rs:2176:10:2176:10 | T | -| main.rs:2181:14:2181:29 | ...[index] | | main.rs:2176:10:2176:10 | T | -| main.rs:2181:24:2181:28 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2185:22:2185:26 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2185:22:2185:26 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2185:22:2185:26 | slice | TRef.TSlice | main.rs:2152:5:2153:13 | S | -| main.rs:2185:35:2187:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2186:13:2186:13 | x | | main.rs:2152:5:2153:13 | S | -| main.rs:2186:17:2186:21 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2186:17:2186:21 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2186:17:2186:21 | slice | TRef.TSlice | main.rs:2152:5:2153:13 | S | -| main.rs:2186:17:2186:24 | slice[0] | | main.rs:2152:5:2153:13 | S | -| main.rs:2186:17:2186:30 | ... .foo() | | main.rs:2152:5:2153:13 | S | -| main.rs:2186:23:2186:23 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2189:37:2189:37 | a | | main.rs:2189:20:2189:34 | T | -| main.rs:2189:43:2189:43 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2193:9:2193:9 | a | | main.rs:2189:20:2189:34 | T | -| main.rs:2193:11:2193:11 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2196:16:2207:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2197:17:2197:19 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2197:17:2197:19 | vec | T | main.rs:2152:5:2153:13 | S | -| main.rs:2197:23:2197:34 | ...::new(...) | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2197:23:2197:34 | ...::new(...) | T | main.rs:2152:5:2153:13 | S | -| main.rs:2198:9:2198:11 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2198:9:2198:11 | vec | T | main.rs:2152:5:2153:13 | S | -| main.rs:2198:9:2198:19 | vec.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2198:18:2198:18 | S | | main.rs:2152:5:2153:13 | S | -| main.rs:2199:9:2199:11 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2199:9:2199:11 | vec | T | main.rs:2152:5:2153:13 | S | -| main.rs:2199:9:2199:14 | vec[0] | | main.rs:2152:5:2153:13 | S | -| main.rs:2199:9:2199:20 | ... .foo() | | main.rs:2152:5:2153:13 | S | -| main.rs:2199:13:2199:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2201:13:2201:14 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2201:13:2201:14 | xs | TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2201:21:2201:21 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2201:26:2201:28 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2201:26:2201:28 | [...] | TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2201:27:2201:27 | S | | main.rs:2152:5:2153:13 | S | -| main.rs:2202:13:2202:13 | x | | main.rs:2152:5:2153:13 | S | -| main.rs:2202:17:2202:18 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2202:17:2202:18 | xs | TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2202:17:2202:21 | xs[0] | | main.rs:2152:5:2153:13 | S | -| main.rs:2202:17:2202:27 | ... .foo() | | main.rs:2152:5:2153:13 | S | -| main.rs:2202:20:2202:20 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2204:29:2204:31 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2204:29:2204:31 | vec | T | main.rs:2152:5:2153:13 | S | -| main.rs:2204:34:2204:34 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2206:9:2206:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2206:23:2206:25 | &xs | | {EXTERNAL LOCATION} | & | -| main.rs:2206:23:2206:25 | &xs | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2206:23:2206:25 | &xs | TRef.TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2206:24:2206:25 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2206:24:2206:25 | xs | TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2211:16:2213:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2212:13:2212:13 | x | | {EXTERNAL LOCATION} | String | -| main.rs:2212:17:2212:46 | MacroExpr | | {EXTERNAL LOCATION} | String | -| main.rs:2212:25:2212:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | -| main.rs:2212:25:2212:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2212:25:2212:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2212:25:2212:45 | ...::must_use(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2212:25:2212:45 | { ... } | | {EXTERNAL LOCATION} | String | -| main.rs:2212:38:2212:45 | "World!" | | {EXTERNAL LOCATION} | & | -| main.rs:2212:38:2212:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2221:19:2221:22 | SelfParam | | main.rs:2217:5:2222:5 | Self [trait MyAdd] | -| main.rs:2221:25:2221:27 | rhs | | main.rs:2217:17:2217:26 | Rhs | -| main.rs:2228:19:2228:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2228:25:2228:29 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2228:45:2230:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2229:13:2229:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2237:19:2237:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2237:25:2237:29 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2237:25:2237:29 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2237:46:2239:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2238:13:2238:18 | * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:2238:14:2238:18 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2238:14:2238:18 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2246:19:2246:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2246:25:2246:29 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2246:46:2252:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2247:13:2251:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | -| main.rs:2247:13:2251:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | -| main.rs:2247:16:2247:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2247:22:2249:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2247:22:2249:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2248:17:2248:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2248:17:2248:17 | 1 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2249:20:2251:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2249:20:2251:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2250:17:2250:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2250:17:2250:17 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2261:19:2261:22 | SelfParam | | main.rs:2255:5:2255:19 | S | -| main.rs:2261:19:2261:22 | SelfParam | T | main.rs:2257:10:2257:17 | T | -| main.rs:2261:25:2261:29 | other | | main.rs:2255:5:2255:19 | S | -| main.rs:2261:25:2261:29 | other | T | main.rs:2257:10:2257:17 | T | -| main.rs:2261:54:2263:9 | { ... } | | main.rs:2255:5:2255:19 | S | -| main.rs:2262:13:2262:39 | S(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2262:15:2262:22 | (...) | | main.rs:2257:10:2257:17 | T | -| main.rs:2262:16:2262:19 | self | | main.rs:2255:5:2255:19 | S | -| main.rs:2262:16:2262:19 | self | T | main.rs:2257:10:2257:17 | T | -| main.rs:2262:16:2262:21 | self.0 | | main.rs:2257:10:2257:17 | T | -| main.rs:2262:31:2262:35 | other | | main.rs:2255:5:2255:19 | S | -| main.rs:2262:31:2262:35 | other | T | main.rs:2257:10:2257:17 | T | -| main.rs:2262:31:2262:37 | other.0 | | main.rs:2257:10:2257:17 | T | -| main.rs:2270:19:2270:22 | SelfParam | | main.rs:2255:5:2255:19 | S | -| main.rs:2270:19:2270:22 | SelfParam | T | main.rs:2266:10:2266:17 | T | -| main.rs:2270:25:2270:29 | other | | main.rs:2266:10:2266:17 | T | -| main.rs:2270:51:2272:9 | { ... } | | main.rs:2255:5:2255:19 | S | -| main.rs:2271:13:2271:37 | S(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2271:15:2271:22 | (...) | | main.rs:2266:10:2266:17 | T | -| main.rs:2271:16:2271:19 | self | | main.rs:2255:5:2255:19 | S | -| main.rs:2271:16:2271:19 | self | T | main.rs:2266:10:2266:17 | T | -| main.rs:2271:16:2271:21 | self.0 | | main.rs:2266:10:2266:17 | T | -| main.rs:2271:31:2271:35 | other | | main.rs:2266:10:2266:17 | T | -| main.rs:2282:19:2282:22 | SelfParam | | main.rs:2255:5:2255:19 | S | -| main.rs:2282:19:2282:22 | SelfParam | T | main.rs:2275:14:2275:14 | T | -| main.rs:2282:25:2282:29 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2282:25:2282:29 | other | TRef | main.rs:2275:14:2275:14 | T | -| main.rs:2282:55:2284:9 | { ... } | | main.rs:2255:5:2255:19 | S | -| main.rs:2283:13:2283:37 | S(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2283:15:2283:22 | (...) | | main.rs:2275:14:2275:14 | T | -| main.rs:2283:16:2283:19 | self | | main.rs:2255:5:2255:19 | S | -| main.rs:2283:16:2283:19 | self | T | main.rs:2275:14:2275:14 | T | -| main.rs:2283:16:2283:21 | self.0 | | main.rs:2275:14:2275:14 | T | -| main.rs:2283:31:2283:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2283:31:2283:35 | other | TRef | main.rs:2275:14:2275:14 | T | -| main.rs:2289:20:2289:24 | value | | main.rs:2287:18:2287:18 | T | -| main.rs:2294:20:2294:24 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2294:40:2296:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2295:13:2295:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2301:20:2301:24 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2301:41:2307:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2302:13:2306:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | -| main.rs:2302:13:2306:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | -| main.rs:2302:16:2302:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2302:22:2304:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2302:22:2304:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2303:17:2303:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2303:17:2303:17 | 1 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2304:20:2306:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2304:20:2306:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2305:17:2305:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2305:17:2305:17 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2312:21:2312:25 | value | | main.rs:2310:19:2310:19 | T | -| main.rs:2312:31:2312:31 | x | | main.rs:2310:5:2313:5 | Self [trait MyFrom2] | -| main.rs:2317:21:2317:25 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2317:33:2317:33 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2317:48:2319:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2318:13:2318:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2324:21:2324:25 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2324:34:2324:34 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2324:49:2330:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2325:13:2329:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | -| main.rs:2325:16:2325:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2325:22:2327:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2326:17:2326:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2327:20:2329:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2328:17:2328:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2335:15:2335:15 | x | | main.rs:2333:5:2339:5 | Self [trait MySelfTrait] | -| main.rs:2338:15:2338:15 | x | | main.rs:2333:5:2339:5 | Self [trait MySelfTrait] | -| main.rs:2343:15:2343:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2343:31:2345:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2344:13:2344:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2344:13:2344:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:2344:17:2344:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2348:15:2348:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2348:32:2350:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2349:13:2349:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2349:13:2349:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:2349:17:2349:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2355:15:2355:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2355:31:2357:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2356:13:2356:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2356:13:2356:13 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2360:15:2360:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2360:32:2362:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:2361:13:2361:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2365:16:2390:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2366:13:2366:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2366:22:2366:23 | 73 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2366:22:2366:23 | 73 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2367:9:2367:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2367:9:2367:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2367:18:2367:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2368:9:2368:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2368:9:2368:23 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2368:18:2368:22 | &5i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2368:18:2368:22 | &5i64 | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2368:19:2368:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2369:9:2369:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2369:9:2369:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2369:18:2369:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2371:9:2371:15 | S(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2371:9:2371:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2371:9:2371:31 | ... .my_add(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2371:11:2371:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2371:24:2371:30 | S(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2371:24:2371:30 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2371:26:2371:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2372:9:2372:15 | S(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2372:9:2372:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2372:11:2372:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2372:24:2372:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:9:2373:15 | S(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2373:9:2373:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:9:2373:29 | ... .my_add(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2373:11:2373:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:24:2373:28 | &3i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2373:24:2373:28 | &3i64 | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:25:2373:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:13:2375:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:17:2375:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:30:2375:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2376:13:2376:13 | y | | {EXTERNAL LOCATION} | i64 | -| main.rs:2376:17:2376:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2376:30:2376:33 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2377:13:2377:13 | z | | {EXTERNAL LOCATION} | i64 | -| main.rs:2377:22:2377:43 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2377:38:2377:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2378:9:2378:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2378:23:2378:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2378:30:2378:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2379:9:2379:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2379:23:2379:26 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2379:29:2379:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2380:9:2380:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2380:27:2380:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2380:34:2380:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2382:9:2382:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2382:17:2382:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2383:9:2383:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2383:17:2383:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2384:9:2384:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2384:18:2384:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2385:9:2385:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2385:18:2385:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2386:9:2386:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2386:25:2386:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2387:9:2387:30 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2387:25:2387:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2388:9:2388:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2388:25:2388:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2389:9:2389:29 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2389:25:2389:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2397:26:2399:9 | { ... } | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2398:13:2398:25 | MyCallable {...} | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2401:17:2401:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2401:17:2401:21 | SelfParam | TRef | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2401:31:2403:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2402:13:2402:13 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2402:13:2402:13 | 1 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2406:16:2513:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2409:9:2409:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2409:13:2409:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2409:18:2409:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2409:18:2409:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2409:19:2409:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2409:22:2409:22 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2409:25:2409:25 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2409:28:2409:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2410:9:2410:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2410:18:2410:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2410:18:2410:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2410:18:2410:41 | ... .map(...) | | {EXTERNAL LOCATION} | [;] | -| main.rs:2410:19:2410:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2410:22:2410:22 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2410:25:2410:25 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2410:32:2410:40 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | -| main.rs:2410:32:2410:40 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| main.rs:2410:40:2410:40 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2410:43:2410:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2411:9:2411:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2411:13:2411:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2411:18:2411:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2411:18:2411:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2411:18:2411:38 | ... .into_iter() | | {EXTERNAL LOCATION} | IntoIter | -| main.rs:2411:18:2411:38 | ... .into_iter() | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2411:19:2411:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2411:22:2411:22 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2411:25:2411:25 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2411:40:2411:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2413:13:2413:17 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2413:13:2413:17 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2413:13:2413:17 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | -| main.rs:2413:21:2413:31 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2413:21:2413:31 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2413:21:2413:31 | [...] | TArray | {EXTERNAL LOCATION} | u8 | -| main.rs:2413:22:2413:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2413:27:2413:27 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2413:27:2413:27 | 2 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2413:30:2413:30 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2413:30:2413:30 | 3 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2414:9:2414:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2414:13:2414:13 | u | | {EXTERNAL LOCATION} | i32 | -| main.rs:2414:13:2414:13 | u | | {EXTERNAL LOCATION} | u8 | -| main.rs:2414:18:2414:22 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2414:18:2414:22 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2414:18:2414:22 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | -| main.rs:2414:24:2414:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2416:13:2416:17 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2416:13:2416:17 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2416:21:2416:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2416:21:2416:29 | [1u16; 3] | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2416:22:2416:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2416:28:2416:28 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2417:9:2417:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2417:13:2417:13 | u | | {EXTERNAL LOCATION} | u16 | -| main.rs:2417:18:2417:22 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2417:18:2417:22 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2417:24:2417:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2419:13:2419:17 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2419:13:2419:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2419:26:2419:26 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2419:31:2419:39 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2419:31:2419:39 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2419:31:2419:39 | [...] | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2419:32:2419:32 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2419:32:2419:32 | 1 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2419:35:2419:35 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2419:35:2419:35 | 2 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2419:38:2419:38 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2419:38:2419:38 | 3 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2420:9:2420:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2420:13:2420:13 | u | | {EXTERNAL LOCATION} | u32 | -| main.rs:2420:18:2420:22 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2420:18:2420:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2420:24:2420:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2422:13:2422:17 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2422:13:2422:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2422:26:2422:26 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2422:31:2422:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2422:31:2422:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2422:31:2422:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2422:32:2422:32 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2422:32:2422:32 | 1 | | {EXTERNAL LOCATION} | u64 | -| main.rs:2422:35:2422:35 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2423:9:2423:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2423:13:2423:13 | u | | {EXTERNAL LOCATION} | u64 | -| main.rs:2423:18:2423:22 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2423:18:2423:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2423:24:2423:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2425:17:2425:24 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2425:17:2425:24 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2425:17:2425:24 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2425:28:2425:48 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2425:28:2425:48 | [...] | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2425:28:2425:48 | [...] | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2425:29:2425:33 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2425:29:2425:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2425:36:2425:40 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2425:36:2425:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2425:43:2425:47 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2425:43:2425:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2426:9:2426:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2426:13:2426:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:2426:13:2426:13 | s | TRef | {EXTERNAL LOCATION} | & | -| main.rs:2426:13:2426:13 | s | TRef.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2426:18:2426:26 | &strings1 | | {EXTERNAL LOCATION} | & | -| main.rs:2426:18:2426:26 | &strings1 | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2426:18:2426:26 | &strings1 | TRef.TArray | {EXTERNAL LOCATION} | & | -| main.rs:2426:18:2426:26 | &strings1 | TRef.TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2426:19:2426:26 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2426:19:2426:26 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2426:19:2426:26 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2426:28:2426:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2427:9:2427:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2427:13:2427:13 | s | | {EXTERNAL LOCATION} | &mut | -| main.rs:2427:13:2427:13 | s | TRefMut | {EXTERNAL LOCATION} | & | -| main.rs:2427:13:2427:13 | s | TRefMut.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2427:18:2427:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | -| main.rs:2427:18:2427:30 | &mut strings1 | TRefMut | {EXTERNAL LOCATION} | [;] | -| main.rs:2427:18:2427:30 | &mut strings1 | TRefMut.TArray | {EXTERNAL LOCATION} | & | -| main.rs:2427:18:2427:30 | &mut strings1 | TRefMut.TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2427:23:2427:30 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2427:23:2427:30 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2427:23:2427:30 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2427:32:2427:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2428:9:2428:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2428:13:2428:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:2428:13:2428:13 | s | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2428:18:2428:25 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2428:18:2428:25 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2428:18:2428:25 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2428:27:2428:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2430:13:2430:20 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2430:13:2430:20 | strings2 | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2431:9:2435:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2431:9:2435:9 | [...] | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2432:13:2432:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2432:26:2432:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2432:26:2432:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2433:13:2433:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2433:26:2433:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2433:26:2433:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2434:13:2434:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2434:26:2434:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2434:26:2434:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2436:9:2436:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2436:13:2436:13 | s | | {EXTERNAL LOCATION} | String | -| main.rs:2436:18:2436:25 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2436:18:2436:25 | strings2 | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2436:27:2436:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2438:13:2438:20 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2438:13:2438:20 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2438:13:2438:20 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | -| main.rs:2439:9:2443:9 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2439:9:2443:9 | &... | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2439:9:2443:9 | &... | TRef.TArray | {EXTERNAL LOCATION} | String | -| main.rs:2439:10:2443:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2439:10:2443:9 | [...] | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2440:13:2440:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2440:26:2440:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2440:26:2440:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2441:13:2441:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2441:26:2441:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2441:26:2441:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2442:13:2442:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2442:26:2442:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2442:26:2442:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2444:9:2444:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2444:13:2444:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:2444:13:2444:13 | s | TRef | {EXTERNAL LOCATION} | String | -| main.rs:2444:18:2444:25 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2444:18:2444:25 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2444:18:2444:25 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | -| main.rs:2444:27:2444:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2446:13:2446:21 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2446:13:2446:21 | callables | TArray | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2446:25:2446:81 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2446:25:2446:81 | [...] | TArray | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2446:26:2446:42 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2446:45:2446:61 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2446:64:2446:80 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2447:9:2451:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2447:13:2447:13 | c | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2448:12:2448:20 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2448:12:2448:20 | callables | TArray | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2449:9:2451:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2450:17:2450:22 | result | | {EXTERNAL LOCATION} | i64 | -| main.rs:2450:26:2450:26 | c | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2450:26:2450:33 | c.call() | | {EXTERNAL LOCATION} | i64 | -| main.rs:2455:9:2455:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2455:13:2455:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2455:18:2455:18 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2455:18:2455:22 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2455:18:2455:22 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2455:21:2455:22 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2455:24:2455:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2456:9:2456:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2456:13:2456:13 | u | | {EXTERNAL LOCATION} | Range | -| main.rs:2456:13:2456:13 | u | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2456:13:2456:13 | u | Idx | {EXTERNAL LOCATION} | u8 | -| main.rs:2456:18:2456:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2456:18:2456:26 | [...] | TArray | {EXTERNAL LOCATION} | Range | -| main.rs:2456:18:2456:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2456:18:2456:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | u8 | -| main.rs:2456:19:2456:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2456:19:2456:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2456:19:2456:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2456:19:2456:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | u8 | -| main.rs:2456:24:2456:25 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2456:24:2456:25 | 10 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2456:28:2456:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2457:13:2457:17 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2457:13:2457:17 | range | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2457:21:2457:21 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2457:21:2457:25 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2457:21:2457:25 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2457:24:2457:25 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2458:9:2458:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2458:13:2458:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2458:18:2458:22 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2458:18:2458:22 | range | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2458:24:2458:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2459:13:2459:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2459:26:2459:27 | .. | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2460:9:2460:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2460:18:2460:48 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2460:19:2460:36 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2460:19:2460:36 | [...] | TArray | {EXTERNAL LOCATION} | i64 | -| main.rs:2460:20:2460:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2460:26:2460:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2460:32:2460:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2460:38:2460:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2460:50:2460:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2462:13:2462:18 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2462:13:2462:18 | range1 | Idx | {EXTERNAL LOCATION} | u16 | -| main.rs:2463:9:2466:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | -| main.rs:2463:9:2466:9 | ...::Range {...} | Idx | {EXTERNAL LOCATION} | u16 | -| main.rs:2464:20:2464:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2465:18:2465:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2467:9:2467:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2467:13:2467:13 | u | | {EXTERNAL LOCATION} | u16 | -| main.rs:2467:18:2467:23 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2467:18:2467:23 | range1 | Idx | {EXTERNAL LOCATION} | u16 | -| main.rs:2467:25:2467:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2471:13:2471:17 | vals3 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2471:21:2471:33 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2471:26:2471:26 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2471:29:2471:29 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2471:32:2471:32 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2472:9:2472:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2472:18:2472:22 | vals3 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2472:24:2472:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2474:13:2474:18 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2474:13:2474:18 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2474:13:2474:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2474:32:2474:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2474:32:2474:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2474:32:2474:43 | [...] | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2474:32:2474:52 | ... .to_vec() | | {EXTERNAL LOCATION} | Vec | -| main.rs:2474:32:2474:52 | ... .to_vec() | A | {EXTERNAL LOCATION} | Global | -| main.rs:2474:32:2474:52 | ... .to_vec() | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2474:33:2474:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2474:39:2474:39 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2474:42:2474:42 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2475:9:2475:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2475:13:2475:13 | u | | {EXTERNAL LOCATION} | u16 | -| main.rs:2475:18:2475:23 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2475:18:2475:23 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2475:18:2475:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2475:25:2475:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2477:22:2477:33 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2477:22:2477:33 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2477:22:2477:33 | [...] | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2477:23:2477:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2477:29:2477:29 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2477:32:2477:32 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2478:9:2478:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2478:25:2478:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2480:13:2480:17 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2480:13:2480:17 | vals5 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2480:13:2480:17 | vals5 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2480:13:2480:17 | vals5 | T | {EXTERNAL LOCATION} | u32 | -| main.rs:2480:21:2480:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2480:21:2480:43 | ...::from(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2480:21:2480:43 | ...::from(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2480:21:2480:43 | ...::from(...) | T | {EXTERNAL LOCATION} | u32 | -| main.rs:2480:31:2480:42 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2480:31:2480:42 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2480:31:2480:42 | [...] | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2480:32:2480:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2480:38:2480:38 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2480:41:2480:41 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2481:9:2481:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2481:13:2481:13 | u | | {EXTERNAL LOCATION} | i32 | -| main.rs:2481:13:2481:13 | u | | {EXTERNAL LOCATION} | u32 | -| main.rs:2481:18:2481:22 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2481:18:2481:22 | vals5 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2481:18:2481:22 | vals5 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2481:18:2481:22 | vals5 | T | {EXTERNAL LOCATION} | u32 | -| main.rs:2481:24:2481:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2483:13:2483:17 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2483:13:2483:17 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2483:13:2483:17 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2483:13:2483:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2483:32:2483:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2483:32:2483:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2483:32:2483:43 | [...] | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2483:32:2483:60 | ... .collect() | | {EXTERNAL LOCATION} | Vec | -| main.rs:2483:32:2483:60 | ... .collect() | A | {EXTERNAL LOCATION} | Global | -| main.rs:2483:32:2483:60 | ... .collect() | T | {EXTERNAL LOCATION} | & | -| main.rs:2483:32:2483:60 | ... .collect() | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2483:33:2483:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | -| main.rs:2483:39:2483:39 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2483:42:2483:42 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2484:9:2484:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2484:13:2484:13 | u | | {EXTERNAL LOCATION} | & | -| main.rs:2484:13:2484:13 | u | TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2484:18:2484:22 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2484:18:2484:22 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2484:18:2484:22 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2484:18:2484:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2484:24:2484:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2486:17:2486:21 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2486:17:2486:21 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2486:17:2486:21 | vals7 | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2486:25:2486:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2486:25:2486:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2486:25:2486:34 | ...::new(...) | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2487:9:2487:13 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2487:9:2487:13 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2487:9:2487:13 | vals7 | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2487:9:2487:23 | vals7.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2487:20:2487:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2488:9:2488:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2488:13:2488:13 | u | | {EXTERNAL LOCATION} | u8 | -| main.rs:2488:18:2488:22 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2488:18:2488:22 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2488:18:2488:22 | vals7 | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2488:24:2488:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2490:13:2490:19 | matrix1 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2490:23:2490:50 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2490:28:2490:37 | (...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2490:28:2490:37 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2490:33:2490:33 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2490:36:2490:36 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2490:40:2490:49 | (...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2490:40:2490:49 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2490:45:2490:45 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2490:48:2490:48 | 4 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2492:13:2492:13 | _ | | {EXTERNAL LOCATION} | () | -| main.rs:2492:17:2495:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2492:28:2492:34 | matrix1 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2492:36:2495:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2493:13:2494:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2493:29:2494:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2497:17:2497:20 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2497:17:2497:20 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2497:17:2497:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2497:17:2497:20 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2497:17:2497:20 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2497:17:2497:20 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2497:17:2497:20 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2497:24:2497:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2497:24:2497:55 | ...::new(...) | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2497:24:2497:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2497:24:2497:55 | ...::new(...) | V | {EXTERNAL LOCATION} | Box | -| main.rs:2497:24:2497:55 | ...::new(...) | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2497:24:2497:55 | ...::new(...) | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2497:24:2497:55 | ...::new(...) | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2498:9:2498:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2498:9:2498:12 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2498:9:2498:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2498:9:2498:12 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2498:9:2498:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2498:9:2498:12 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2498:9:2498:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2498:9:2498:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2498:9:2498:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | -| main.rs:2498:9:2498:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2498:9:2498:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | -| main.rs:2498:9:2498:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2498:21:2498:21 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2498:24:2498:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2498:24:2498:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2498:24:2498:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:2498:24:2498:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2498:33:2498:37 | "one" | | {EXTERNAL LOCATION} | & | -| main.rs:2498:33:2498:37 | "one" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2499:9:2499:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2499:9:2499:12 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2499:9:2499:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2499:9:2499:12 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2499:9:2499:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2499:9:2499:12 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2499:9:2499:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2499:9:2499:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2499:9:2499:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | -| main.rs:2499:9:2499:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2499:9:2499:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | -| main.rs:2499:9:2499:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2499:21:2499:21 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2499:24:2499:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2499:24:2499:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2499:24:2499:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:2499:24:2499:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2499:33:2499:37 | "two" | | {EXTERNAL LOCATION} | & | -| main.rs:2499:33:2499:37 | "two" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2500:9:2500:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2500:13:2500:15 | key | | {EXTERNAL LOCATION} | & | -| main.rs:2500:13:2500:15 | key | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2500:20:2500:23 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2500:20:2500:23 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2500:20:2500:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2500:20:2500:23 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2500:20:2500:23 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2500:20:2500:23 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2500:20:2500:23 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2500:20:2500:30 | map1.keys() | | {EXTERNAL LOCATION} | Keys | -| main.rs:2500:20:2500:30 | map1.keys() | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2500:20:2500:30 | map1.keys() | V | {EXTERNAL LOCATION} | Box | -| main.rs:2500:20:2500:30 | map1.keys() | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2500:20:2500:30 | map1.keys() | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2500:20:2500:30 | map1.keys() | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2500:32:2500:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2501:9:2501:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2501:13:2501:17 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2501:13:2501:17 | value | TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2501:13:2501:17 | value | TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2501:13:2501:17 | value | TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2501:13:2501:17 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2501:22:2501:25 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2501:22:2501:25 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2501:22:2501:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2501:22:2501:25 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2501:22:2501:25 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2501:22:2501:25 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2501:22:2501:25 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2501:22:2501:34 | map1.values() | | {EXTERNAL LOCATION} | Values | -| main.rs:2501:22:2501:34 | map1.values() | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2501:22:2501:34 | map1.values() | V | {EXTERNAL LOCATION} | Box | -| main.rs:2501:22:2501:34 | map1.values() | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2501:22:2501:34 | map1.values() | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2501:22:2501:34 | map1.values() | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2501:36:2501:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2502:9:2502:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2502:13:2502:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2502:13:2502:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | -| main.rs:2502:13:2502:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2502:13:2502:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | -| main.rs:2502:13:2502:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2502:13:2502:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2502:13:2502:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2502:13:2502:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2502:14:2502:16 | key | | {EXTERNAL LOCATION} | & | -| main.rs:2502:14:2502:16 | key | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2502:19:2502:23 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2502:19:2502:23 | value | TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2502:19:2502:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2502:19:2502:23 | value | TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2502:19:2502:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2502:29:2502:32 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2502:29:2502:32 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2502:29:2502:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2502:29:2502:32 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2502:29:2502:32 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2502:29:2502:32 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2502:29:2502:32 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2502:29:2502:39 | map1.iter() | | {EXTERNAL LOCATION} | Iter | -| main.rs:2502:29:2502:39 | map1.iter() | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2502:29:2502:39 | map1.iter() | V | {EXTERNAL LOCATION} | Box | -| main.rs:2502:29:2502:39 | map1.iter() | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2502:29:2502:39 | map1.iter() | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2502:29:2502:39 | map1.iter() | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2502:41:2502:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2503:9:2503:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2503:13:2503:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2503:13:2503:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | -| main.rs:2503:13:2503:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2503:13:2503:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | -| main.rs:2503:13:2503:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2503:13:2503:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2503:13:2503:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2503:13:2503:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2503:14:2503:16 | key | | {EXTERNAL LOCATION} | & | -| main.rs:2503:14:2503:16 | key | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2503:19:2503:23 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2503:19:2503:23 | value | TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2503:19:2503:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2503:19:2503:23 | value | TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2503:19:2503:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2503:29:2503:33 | &map1 | | {EXTERNAL LOCATION} | & | -| main.rs:2503:29:2503:33 | &map1 | TRef | {EXTERNAL LOCATION} | HashMap | -| main.rs:2503:29:2503:33 | &map1 | TRef.K | {EXTERNAL LOCATION} | i32 | -| main.rs:2503:29:2503:33 | &map1 | TRef.S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2503:29:2503:33 | &map1 | TRef.V | {EXTERNAL LOCATION} | Box | -| main.rs:2503:29:2503:33 | &map1 | TRef.V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2503:29:2503:33 | &map1 | TRef.V.T | {EXTERNAL LOCATION} | & | -| main.rs:2503:29:2503:33 | &map1 | TRef.V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2503:30:2503:33 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2503:30:2503:33 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2503:30:2503:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2503:30:2503:33 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2503:30:2503:33 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2503:30:2503:33 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2503:30:2503:33 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2503:35:2503:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2507:17:2507:17 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2507:26:2507:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2507:26:2507:26 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2509:13:2509:13 | _ | | {EXTERNAL LOCATION} | () | -| main.rs:2509:17:2512:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2509:23:2509:23 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2509:23:2509:28 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:2509:27:2509:28 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2510:9:2512:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2511:13:2511:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2511:13:2511:18 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:2511:18:2511:18 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2523:40:2525:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2523:40:2525:9 | { ... } | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2523:40:2525:9 | { ... } | T.T | main.rs:2522:10:2522:19 | T | -| main.rs:2524:13:2524:16 | None | | {EXTERNAL LOCATION} | Option | -| main.rs:2524:13:2524:16 | None | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2524:13:2524:16 | None | T.T | main.rs:2522:10:2522:19 | T | -| main.rs:2527:30:2529:9 | { ... } | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2527:30:2529:9 | { ... } | T | main.rs:2522:10:2522:19 | T | -| main.rs:2528:13:2528:28 | S1(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2528:13:2528:28 | S1(...) | T | main.rs:2522:10:2522:19 | T | -| main.rs:2528:16:2528:27 | ...::default(...) | | main.rs:2522:10:2522:19 | T | -| main.rs:2531:19:2531:22 | SelfParam | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2531:19:2531:22 | SelfParam | T | main.rs:2522:10:2522:19 | T | -| main.rs:2531:33:2533:9 | { ... } | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2531:33:2533:9 | { ... } | T | main.rs:2522:10:2522:19 | T | -| main.rs:2532:13:2532:16 | self | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2532:13:2532:16 | self | T | main.rs:2522:10:2522:19 | T | -| main.rs:2544:15:2544:15 | x | | main.rs:2544:12:2544:12 | T | -| main.rs:2544:26:2546:5 | { ... } | | main.rs:2544:12:2544:12 | T | -| main.rs:2545:9:2545:9 | x | | main.rs:2544:12:2544:12 | T | -| main.rs:2548:16:2570:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2549:13:2549:14 | x1 | | {EXTERNAL LOCATION} | Option | -| main.rs:2549:13:2549:14 | x1 | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2549:13:2549:14 | x1 | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2549:34:2549:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2549:34:2549:48 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2549:34:2549:48 | ...::assoc_fun(...) | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2550:13:2550:14 | x2 | | {EXTERNAL LOCATION} | Option | -| main.rs:2550:13:2550:14 | x2 | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2550:13:2550:14 | x2 | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2551:13:2551:14 | x3 | | {EXTERNAL LOCATION} | Option | -| main.rs:2551:13:2551:14 | x3 | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2551:13:2551:14 | x3 | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2552:13:2552:14 | x4 | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2552:13:2552:14 | x4 | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2552:18:2552:48 | ...::method(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2552:18:2552:48 | ...::method(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2552:35:2552:47 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2552:35:2552:47 | ...::default(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2553:13:2553:14 | x5 | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2553:13:2553:14 | x5 | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2553:18:2553:42 | ...::method(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2553:18:2553:42 | ...::method(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2553:29:2553:41 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2553:29:2553:41 | ...::default(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2554:13:2554:14 | x6 | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2554:13:2554:14 | x6 | T4 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2554:18:2554:45 | S4::<...>(...) | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2554:18:2554:45 | S4::<...>(...) | T4 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2554:27:2554:44 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2555:13:2555:14 | x7 | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2555:13:2555:14 | x7 | T4 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2555:18:2555:23 | S4(...) | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2555:18:2555:23 | S4(...) | T4 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2555:21:2555:22 | S2 | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2556:13:2556:14 | x8 | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2556:13:2556:14 | x8 | T4 | {EXTERNAL LOCATION} | i32 | -| main.rs:2556:18:2556:22 | S4(...) | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2556:18:2556:22 | S4(...) | T4 | {EXTERNAL LOCATION} | i32 | -| main.rs:2556:21:2556:21 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2557:13:2557:14 | x9 | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2557:13:2557:14 | x9 | T4 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2557:18:2557:34 | S4(...) | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2557:18:2557:34 | S4(...) | T4 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2557:21:2557:33 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2558:13:2558:15 | x10 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2558:13:2558:15 | x10 | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2558:19:2561:9 | S5::<...> {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2558:19:2561:9 | S5::<...> {...} | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2560:20:2560:37 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2562:13:2562:15 | x11 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2562:13:2562:15 | x11 | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2562:19:2562:34 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2562:19:2562:34 | S5 {...} | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2562:31:2562:32 | S2 | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2563:13:2563:15 | x12 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2563:13:2563:15 | x12 | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:2563:19:2563:33 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2563:19:2563:33 | S5 {...} | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:2563:31:2563:31 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2564:13:2564:15 | x13 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2564:13:2564:15 | x13 | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2564:19:2567:9 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2564:19:2567:9 | S5 {...} | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2566:20:2566:32 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2568:13:2568:15 | x14 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2568:19:2568:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2568:30:2568:47 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2569:13:2569:15 | x15 | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2569:13:2569:15 | x15 | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2569:19:2569:37 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2569:19:2569:37 | ...::default(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2578:35:2580:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2578:35:2580:9 | { ... } | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2578:35:2580:9 | { ... } | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2579:13:2579:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2579:13:2579:26 | TupleExpr | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2579:13:2579:26 | TupleExpr | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2579:14:2579:18 | S1 {...} | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2579:21:2579:25 | S1 {...} | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2581:16:2581:19 | SelfParam | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2581:22:2581:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2584:16:2618:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2585:13:2585:13 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2585:13:2585:13 | a | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2585:13:2585:13 | a | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2585:17:2585:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2585:17:2585:30 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2585:17:2585:30 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:17:2586:17 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2586:17:2586:17 | b | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:17:2586:17 | b | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:21:2586:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2586:21:2586:34 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:21:2586:34 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:13:2587:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2587:13:2587:18 | TuplePat | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:13:2587:18 | TuplePat | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:14:2587:14 | c | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:17:2587:17 | d | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:22:2587:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2587:22:2587:35 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:22:2587:35 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:13:2588:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2588:13:2588:22 | TuplePat | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:13:2588:22 | TuplePat | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:18:2588:18 | e | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:21:2588:21 | f | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:26:2588:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2588:26:2588:39 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:26:2588:39 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:13:2589:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2589:13:2589:26 | TuplePat | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:13:2589:26 | TuplePat | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:18:2589:18 | g | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:25:2589:25 | h | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:30:2589:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2589:30:2589:43 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:30:2589:43 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2591:9:2591:9 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2591:9:2591:9 | a | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2591:9:2591:9 | a | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2591:9:2591:11 | a.0 | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2591:9:2591:17 | ... .foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2592:9:2592:9 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2592:9:2592:9 | b | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2592:9:2592:9 | b | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2592:9:2592:11 | b.1 | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2592:9:2592:17 | ... .foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2593:9:2593:9 | c | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2593:9:2593:15 | c.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2594:9:2594:9 | d | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2594:9:2594:15 | d.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2595:9:2595:9 | e | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2595:9:2595:15 | e.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2596:9:2596:9 | f | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2596:9:2596:15 | f.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2597:9:2597:9 | g | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2597:9:2597:15 | g.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2598:9:2598:9 | h | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2598:9:2598:15 | h.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2603:13:2603:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2603:17:2603:34 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2604:13:2604:13 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2604:17:2604:34 | ...::default(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2605:13:2605:16 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2605:13:2605:16 | pair | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2605:13:2605:16 | pair | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2605:20:2605:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2605:20:2605:25 | TupleExpr | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2605:20:2605:25 | TupleExpr | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2605:21:2605:21 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2605:24:2605:24 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2606:13:2606:13 | i | | {EXTERNAL LOCATION} | i64 | -| main.rs:2606:22:2606:25 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2606:22:2606:25 | pair | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2606:22:2606:25 | pair | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2606:22:2606:27 | pair.0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2607:13:2607:13 | j | | {EXTERNAL LOCATION} | bool | -| main.rs:2607:23:2607:26 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2607:23:2607:26 | pair | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2607:23:2607:26 | pair | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2607:23:2607:28 | pair.1 | | {EXTERNAL LOCATION} | bool | -| main.rs:2609:13:2609:16 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2609:13:2609:16 | pair | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2609:13:2609:16 | pair | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2609:20:2609:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2609:20:2609:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2609:20:2609:32 | ... .into() | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2609:20:2609:32 | ... .into() | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2609:20:2609:32 | ... .into() | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2609:21:2609:21 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2609:24:2609:24 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2610:9:2613:9 | match pair { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2610:15:2610:18 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2610:15:2610:18 | pair | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2610:15:2610:18 | pair | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2611:13:2611:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2611:13:2611:18 | TuplePat | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2611:13:2611:18 | TuplePat | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2611:14:2611:14 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2611:17:2611:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2611:23:2611:42 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2611:30:2611:41 | "unexpected" | | {EXTERNAL LOCATION} | & | -| main.rs:2611:30:2611:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2611:30:2611:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2611:30:2611:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2612:13:2612:13 | _ | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2612:13:2612:13 | _ | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2612:13:2612:13 | _ | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2612:18:2612:35 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2612:25:2612:34 | "expected" | | {EXTERNAL LOCATION} | & | -| main.rs:2612:25:2612:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2612:25:2612:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2612:25:2612:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2614:13:2614:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2614:17:2614:20 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2614:17:2614:20 | pair | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2614:17:2614:20 | pair | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2614:17:2614:22 | pair.0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2616:13:2616:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2616:13:2616:13 | y | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2616:13:2616:13 | y | TRef.T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2616:13:2616:13 | y | TRef.T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2616:17:2616:31 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2616:17:2616:31 | &... | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2616:17:2616:31 | &... | TRef.T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2616:17:2616:31 | &... | TRef.T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2616:18:2616:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2616:18:2616:31 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2616:18:2616:31 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2617:9:2617:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2617:9:2617:9 | y | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2617:9:2617:9 | y | TRef.T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2617:9:2617:9 | y | TRef.T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2617:9:2617:11 | y.0 | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2617:9:2617:17 | ... .foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2623:27:2645:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2624:13:2624:23 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2624:13:2624:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2624:13:2624:23 | boxed_value | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2624:27:2624:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2624:27:2624:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2624:27:2624:42 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2624:36:2624:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2627:9:2635:9 | match boxed_value { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2627:15:2627:25 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2627:15:2627:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2627:15:2627:25 | boxed_value | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2628:13:2628:19 | box 100 | | {EXTERNAL LOCATION} | Box | -| main.rs:2628:13:2628:19 | box 100 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2628:13:2628:19 | box 100 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2628:17:2628:19 | 100 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2628:24:2630:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2629:17:2629:37 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2629:26:2629:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2629:26:2629:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2629:26:2629:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2629:26:2629:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2629:26:2629:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2631:13:2631:17 | box ... | | {EXTERNAL LOCATION} | Box | -| main.rs:2631:13:2631:17 | box ... | A | {EXTERNAL LOCATION} | Global | -| main.rs:2631:13:2631:17 | box ... | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2631:22:2634:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2633:17:2633:52 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2633:26:2633:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2633:26:2633:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2633:26:2633:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2633:26:2633:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2633:26:2633:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2638:13:2638:22 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2638:13:2638:22 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:13:2638:22 | nested_box | T | {EXTERNAL LOCATION} | Box | -| main.rs:2638:13:2638:22 | nested_box | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:13:2638:22 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2638:26:2638:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2638:26:2638:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:26:2638:50 | ...::new(...) | T | {EXTERNAL LOCATION} | Box | -| main.rs:2638:26:2638:50 | ...::new(...) | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:26:2638:50 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2638:35:2638:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2638:35:2638:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:35:2638:49 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2638:44:2638:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2639:9:2644:9 | match nested_box { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2639:15:2639:24 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2639:15:2639:24 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2639:15:2639:24 | nested_box | T | {EXTERNAL LOCATION} | Box | -| main.rs:2639:15:2639:24 | nested_box | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2639:15:2639:24 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2640:13:2640:21 | box ... | | {EXTERNAL LOCATION} | Box | -| main.rs:2640:13:2640:21 | box ... | A | {EXTERNAL LOCATION} | Global | -| main.rs:2640:13:2640:21 | box ... | T | {EXTERNAL LOCATION} | Box | -| main.rs:2640:13:2640:21 | box ... | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2640:13:2640:21 | box ... | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2640:26:2643:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2642:17:2642:60 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2642:26:2642:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2642:26:2642:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2642:26:2642:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2642:26:2642:59 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2642:26:2642:59 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2654:36:2656:9 | { ... } | | main.rs:2651:5:2651:22 | Path | -| main.rs:2655:13:2655:19 | Path {...} | | main.rs:2651:5:2651:22 | Path | -| main.rs:2658:29:2658:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2658:29:2658:33 | SelfParam | TRef | main.rs:2651:5:2651:22 | Path | -| main.rs:2658:59:2660:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:2658:59:2660:9 | { ... } | E | {EXTERNAL LOCATION} | () | -| main.rs:2658:59:2660:9 | { ... } | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2659:13:2659:30 | Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2659:13:2659:30 | Ok(...) | E | {EXTERNAL LOCATION} | () | -| main.rs:2659:13:2659:30 | Ok(...) | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2659:16:2659:29 | ...::new(...) | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2666:39:2668:9 | { ... } | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2667:13:2667:22 | PathBuf {...} | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2676:18:2676:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2676:18:2676:22 | SelfParam | TRef | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2676:34:2680:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2676:34:2680:9 | { ... } | TRef | main.rs:2651:5:2651:22 | Path | -| main.rs:2678:33:2678:43 | ...::new(...) | | main.rs:2651:5:2651:22 | Path | -| main.rs:2679:13:2679:17 | &path | | {EXTERNAL LOCATION} | & | -| main.rs:2679:13:2679:17 | &path | TRef | main.rs:2651:5:2651:22 | Path | -| main.rs:2679:14:2679:17 | path | | main.rs:2651:5:2651:22 | Path | -| main.rs:2683:16:2691:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2684:13:2684:17 | path1 | | main.rs:2651:5:2651:22 | Path | -| main.rs:2684:21:2684:31 | ...::new(...) | | main.rs:2651:5:2651:22 | Path | -| main.rs:2685:13:2685:17 | path2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2685:13:2685:17 | path2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2685:13:2685:17 | path2 | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2685:21:2685:25 | path1 | | main.rs:2651:5:2651:22 | Path | -| main.rs:2685:21:2685:40 | path1.canonicalize() | | {EXTERNAL LOCATION} | Result | -| main.rs:2685:21:2685:40 | path1.canonicalize() | E | {EXTERNAL LOCATION} | () | -| main.rs:2685:21:2685:40 | path1.canonicalize() | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2686:13:2686:17 | path3 | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2686:21:2686:25 | path2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2686:21:2686:25 | path2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2686:21:2686:25 | path2 | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2686:21:2686:34 | path2.unwrap() | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2688:13:2688:20 | pathbuf1 | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2688:24:2688:37 | ...::new(...) | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2689:13:2689:20 | pathbuf2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2689:13:2689:20 | pathbuf2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2689:13:2689:20 | pathbuf2 | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2689:24:2689:31 | pathbuf1 | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2689:24:2689:46 | pathbuf1.canonicalize() | | {EXTERNAL LOCATION} | Result | -| main.rs:2689:24:2689:46 | pathbuf1.canonicalize() | E | {EXTERNAL LOCATION} | () | -| main.rs:2689:24:2689:46 | pathbuf1.canonicalize() | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2690:13:2690:20 | pathbuf3 | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2690:24:2690:31 | pathbuf2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2690:24:2690:31 | pathbuf2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2690:24:2690:31 | pathbuf2 | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2690:24:2690:40 | pathbuf2.unwrap() | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2696:14:2696:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2696:14:2696:18 | SelfParam | TRef | main.rs:2695:5:2697:5 | Self [trait MyTrait] | -| main.rs:2703:14:2703:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2703:14:2703:18 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2703:14:2703:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2703:28:2705:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2704:13:2704:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2704:13:2704:16 | self | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2704:13:2704:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2704:13:2704:18 | self.0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2709:14:2709:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2709:14:2709:18 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2709:14:2709:18 | SelfParam | TRef.T | main.rs:2699:5:2700:19 | S | -| main.rs:2709:14:2709:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2709:28:2711:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2710:13:2710:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2710:13:2710:16 | self | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2710:13:2710:16 | self | TRef.T | main.rs:2699:5:2700:19 | S | -| main.rs:2710:13:2710:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2710:13:2710:18 | self.0 | | main.rs:2699:5:2700:19 | S | -| main.rs:2710:13:2710:18 | self.0 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2710:13:2710:21 | ... .0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2715:15:2715:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2715:15:2715:19 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2715:15:2715:19 | SelfParam | TRef.T | main.rs:2714:10:2714:16 | T | -| main.rs:2715:33:2717:9 | { ... } | | main.rs:2699:5:2700:19 | S | -| main.rs:2715:33:2717:9 | { ... } | T | main.rs:2699:5:2700:19 | S | -| main.rs:2715:33:2717:9 | { ... } | T.T | main.rs:2714:10:2714:16 | T | -| main.rs:2716:13:2716:24 | S(...) | | main.rs:2699:5:2700:19 | S | -| main.rs:2716:13:2716:24 | S(...) | T | main.rs:2699:5:2700:19 | S | -| main.rs:2716:13:2716:24 | S(...) | T.T | main.rs:2714:10:2714:16 | T | -| main.rs:2716:15:2716:23 | S(...) | | main.rs:2699:5:2700:19 | S | -| main.rs:2716:15:2716:23 | S(...) | T | main.rs:2714:10:2714:16 | T | -| main.rs:2716:17:2716:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2716:17:2716:20 | self | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2716:17:2716:20 | self | TRef.T | main.rs:2714:10:2714:16 | T | -| main.rs:2716:17:2716:22 | self.0 | | main.rs:2714:10:2714:16 | T | -| main.rs:2720:14:2720:14 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2720:48:2737:5 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2720:48:2737:5 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2720:48:2737:5 | { ... } | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2720:48:2737:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2721:13:2721:13 | x | | main.rs:2699:5:2700:19 | S | -| main.rs:2721:13:2721:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2721:17:2726:9 | if b {...} else {...} | | main.rs:2699:5:2700:19 | S | -| main.rs:2721:17:2726:9 | if b {...} else {...} | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2721:20:2721:20 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2721:22:2724:9 | { ... } | | main.rs:2699:5:2700:19 | S | -| main.rs:2721:22:2724:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2722:17:2722:17 | y | | main.rs:2699:5:2700:19 | S | -| main.rs:2722:17:2722:17 | y | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2722:21:2722:38 | ...::default(...) | | main.rs:2699:5:2700:19 | S | -| main.rs:2722:21:2722:38 | ...::default(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2723:13:2723:13 | y | | main.rs:2699:5:2700:19 | S | -| main.rs:2723:13:2723:13 | y | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2724:16:2726:9 | { ... } | | main.rs:2699:5:2700:19 | S | -| main.rs:2724:16:2726:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2725:13:2725:16 | S(...) | | main.rs:2699:5:2700:19 | S | -| main.rs:2725:13:2725:16 | S(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2725:15:2725:15 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2730:13:2730:13 | x | | main.rs:2699:5:2700:19 | S | -| main.rs:2730:13:2730:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2730:17:2730:20 | S(...) | | main.rs:2699:5:2700:19 | S | -| main.rs:2730:17:2730:20 | S(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2730:19:2730:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2731:9:2736:9 | if b {...} else {...} | | {EXTERNAL LOCATION} | Box | -| main.rs:2731:9:2736:9 | if b {...} else {...} | A | {EXTERNAL LOCATION} | Global | -| main.rs:2731:9:2736:9 | if b {...} else {...} | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2731:9:2736:9 | if b {...} else {...} | T | main.rs:2699:5:2700:19 | S | -| main.rs:2731:9:2736:9 | if b {...} else {...} | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2731:9:2736:9 | if b {...} else {...} | T.T | main.rs:2699:5:2700:19 | S | -| main.rs:2731:9:2736:9 | if b {...} else {...} | T.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2731:9:2736:9 | if b {...} else {...} | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2731:12:2731:12 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2731:14:2734:9 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2731:14:2734:9 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2731:14:2734:9 | { ... } | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2731:14:2734:9 | { ... } | T | main.rs:2699:5:2700:19 | S | -| main.rs:2731:14:2734:9 | { ... } | T.T | main.rs:2699:5:2700:19 | S | -| main.rs:2731:14:2734:9 | { ... } | T.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2731:14:2734:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2732:17:2732:17 | x | | main.rs:2699:5:2700:19 | S | -| main.rs:2732:17:2732:17 | x | T | main.rs:2699:5:2700:19 | S | -| main.rs:2732:17:2732:17 | x | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2732:21:2732:21 | x | | main.rs:2699:5:2700:19 | S | -| main.rs:2732:21:2732:21 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2732:21:2732:26 | x.m2() | | main.rs:2699:5:2700:19 | S | -| main.rs:2732:21:2732:26 | x.m2() | T | main.rs:2699:5:2700:19 | S | -| main.rs:2732:21:2732:26 | x.m2() | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2733:13:2733:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2733:13:2733:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2733:13:2733:23 | ...::new(...) | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2733:13:2733:23 | ...::new(...) | T | main.rs:2699:5:2700:19 | S | -| main.rs:2733:13:2733:23 | ...::new(...) | T.T | main.rs:2699:5:2700:19 | S | -| main.rs:2733:13:2733:23 | ...::new(...) | T.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2733:13:2733:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2733:22:2733:22 | x | | main.rs:2699:5:2700:19 | S | -| main.rs:2733:22:2733:22 | x | T | main.rs:2699:5:2700:19 | S | -| main.rs:2733:22:2733:22 | x | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2734:16:2736:9 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2734:16:2736:9 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2734:16:2736:9 | { ... } | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2734:16:2736:9 | { ... } | T | main.rs:2699:5:2700:19 | S | -| main.rs:2734:16:2736:9 | { ... } | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2734:16:2736:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2735:13:2735:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2735:13:2735:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2735:13:2735:23 | ...::new(...) | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2735:13:2735:23 | ...::new(...) | T | main.rs:2699:5:2700:19 | S | -| main.rs:2735:13:2735:23 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2735:13:2735:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2735:22:2735:22 | x | | main.rs:2699:5:2700:19 | S | -| main.rs:2735:22:2735:22 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2741:22:2745:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2742:18:2742:18 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2742:33:2744:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2743:13:2743:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2743:13:2743:17 | ... + ... | | {EXTERNAL LOCATION} | i32 | -| main.rs:2743:17:2743:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2750:11:2750:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2750:30:2758:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2752:13:2752:13 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2752:17:2756:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2753:13:2755:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2753:16:2753:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2753:21:2755:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2754:24:2754:25 | 12 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2757:9:2757:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2761:20:2768:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2764:26:2764:27 | 12 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2766:9:2766:30 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2766:18:2766:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2766:18:2766:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2766:18:2766:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2766:18:2766:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2766:18:2766:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2767:9:2767:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2770:20:2772:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2771:16:2771:16 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2775:11:2775:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2775:30:2783:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2776:13:2776:13 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2776:17:2780:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2777:13:2779:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2777:16:2777:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2777:21:2779:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2778:24:2778:25 | 12 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2781:9:2781:30 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2781:18:2781:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2781:18:2781:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2781:18:2781:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2781:18:2781:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2781:18:2781:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2781:29:2781:29 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2782:9:2782:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2787:16:2834:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2788:13:2788:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2788:13:2788:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2788:17:2788:20 | None | | {EXTERNAL LOCATION} | Option | -| main.rs:2788:17:2788:20 | None | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2789:13:2789:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2789:13:2789:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2789:30:2789:30 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2789:30:2789:30 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2790:13:2790:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2790:13:2790:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2790:17:2790:35 | ...::None | | {EXTERNAL LOCATION} | Option | -| main.rs:2790:17:2790:35 | ...::None | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2791:13:2791:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2791:13:2791:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2791:17:2791:35 | ...::None::<...> | | {EXTERNAL LOCATION} | Option | -| main.rs:2791:17:2791:35 | ...::None::<...> | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2793:26:2793:28 | opt | | {EXTERNAL LOCATION} | Option | -| main.rs:2793:26:2793:28 | opt | T | main.rs:2793:23:2793:23 | T | -| main.rs:2793:42:2793:42 | x | | main.rs:2793:23:2793:23 | T | -| main.rs:2793:48:2793:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2795:13:2795:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2795:13:2795:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2795:17:2795:20 | None | | {EXTERNAL LOCATION} | Option | -| main.rs:2795:17:2795:20 | None | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2796:9:2796:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2796:20:2796:20 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2796:20:2796:20 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2796:23:2796:23 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2803:13:2803:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2803:13:2803:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2803:13:2803:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2803:17:2803:39 | ...::A {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2803:17:2803:39 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2803:17:2803:39 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2803:37:2803:37 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2804:13:2804:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2804:13:2804:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2804:13:2804:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2804:40:2804:40 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2804:40:2804:40 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2804:40:2804:40 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2805:13:2805:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2805:13:2805:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2805:13:2805:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2805:17:2805:52 | ...::A {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2805:17:2805:52 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2805:17:2805:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2805:50:2805:50 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2807:13:2807:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2807:13:2807:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2807:13:2807:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2807:17:2809:9 | ...::B::<...> {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2807:17:2809:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2807:17:2809:9 | ...::B::<...> {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2808:20:2808:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2811:29:2811:29 | e | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2811:29:2811:29 | e | T1 | main.rs:2811:26:2811:26 | T | -| main.rs:2811:29:2811:29 | e | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2811:53:2811:53 | x | | main.rs:2811:26:2811:26 | T | -| main.rs:2811:59:2811:60 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2814:13:2814:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2814:13:2814:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2814:13:2814:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2814:17:2816:9 | ...::B {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2814:17:2816:9 | ...::B {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2814:17:2816:9 | ...::B {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2815:20:2815:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2817:9:2817:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2817:23:2817:23 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2817:23:2817:23 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2817:23:2817:23 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2817:26:2817:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2819:13:2819:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2819:13:2819:13 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2819:13:2819:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2819:17:2819:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2819:17:2819:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | -| main.rs:2819:17:2819:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2819:28:2819:28 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2820:13:2820:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2820:13:2820:13 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2820:13:2820:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2820:38:2820:38 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2820:38:2820:38 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2820:38:2820:38 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2821:13:2821:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2821:13:2821:13 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2821:13:2821:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2821:17:2821:44 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2821:17:2821:44 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | -| main.rs:2821:17:2821:44 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2821:43:2821:43 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2822:13:2822:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2822:13:2822:13 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2822:13:2822:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2822:17:2822:44 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2822:17:2822:44 | ...::Ok::<...>(...) | E | {EXTERNAL LOCATION} | String | -| main.rs:2822:17:2822:44 | ...::Ok::<...>(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2822:43:2822:43 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2824:29:2824:31 | res | | {EXTERNAL LOCATION} | Result | -| main.rs:2824:29:2824:31 | res | E | main.rs:2824:26:2824:26 | E | -| main.rs:2824:29:2824:31 | res | T | main.rs:2824:23:2824:23 | T | -| main.rs:2824:48:2824:48 | x | | main.rs:2824:26:2824:26 | E | -| main.rs:2824:54:2824:55 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2826:13:2826:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2826:13:2826:13 | x | E | {EXTERNAL LOCATION} | bool | -| main.rs:2826:13:2826:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2826:17:2826:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2826:17:2826:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | bool | -| main.rs:2826:17:2826:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2826:28:2826:28 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2827:9:2827:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2827:20:2827:20 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2827:20:2827:20 | x | E | {EXTERNAL LOCATION} | bool | -| main.rs:2827:20:2827:20 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2827:23:2827:27 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:2829:17:2829:17 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2829:17:2829:17 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2829:17:2829:17 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2829:21:2829:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2829:21:2829:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2829:21:2829:30 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2830:9:2830:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2830:9:2830:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2830:9:2830:9 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2830:9:2830:17 | x.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2830:16:2830:16 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2832:13:2832:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:2832:17:2832:34 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2833:9:2833:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2833:9:2833:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2833:9:2833:9 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2833:9:2833:17 | x.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2833:16:2833:16 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:2840:14:2840:17 | SelfParam | | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2843:14:2843:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2843:14:2843:18 | SelfParam | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2843:21:2843:25 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2843:21:2843:25 | other | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2843:44:2845:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2843:44:2845:9 | { ... } | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2844:13:2844:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2844:13:2844:16 | self | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2844:13:2844:20 | self.f() | | {EXTERNAL LOCATION} | & | -| main.rs:2844:13:2844:20 | self.f() | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2850:14:2850:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | -| main.rs:2850:28:2852:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2851:13:2851:16 | self | | {EXTERNAL LOCATION} | i32 | -| main.rs:2857:14:2857:17 | SelfParam | | {EXTERNAL LOCATION} | usize | -| main.rs:2857:28:2859:9 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2858:13:2858:16 | self | | {EXTERNAL LOCATION} | usize | -| main.rs:2864:14:2864:17 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2864:14:2864:17 | SelfParam | TRef | main.rs:2862:10:2862:10 | T | -| main.rs:2864:28:2866:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2864:28:2866:9 | { ... } | TRef | main.rs:2862:10:2862:10 | T | -| main.rs:2865:13:2865:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2865:13:2865:16 | self | TRef | main.rs:2862:10:2862:10 | T | -| main.rs:2869:25:2873:5 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2870:17:2870:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2870:17:2870:17 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2870:21:2870:21 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2870:21:2870:21 | 0 | | {EXTERNAL LOCATION} | usize | -| main.rs:2871:9:2871:9 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2871:9:2871:9 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2871:9:2871:17 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:2871:13:2871:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2871:13:2871:13 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2871:13:2871:17 | x.f() | | {EXTERNAL LOCATION} | i32 | -| main.rs:2871:13:2871:17 | x.f() | | {EXTERNAL LOCATION} | usize | -| main.rs:2872:9:2872:9 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2872:9:2872:9 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2875:12:2883:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2876:13:2876:13 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2876:24:2876:24 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2876:24:2876:24 | 0 | | {EXTERNAL LOCATION} | usize | -| main.rs:2877:13:2877:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2877:13:2877:13 | y | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2877:17:2877:18 | &1 | | {EXTERNAL LOCATION} | & | -| main.rs:2877:17:2877:18 | &1 | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2877:18:2877:18 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2878:13:2878:13 | z | | {EXTERNAL LOCATION} | & | -| main.rs:2878:13:2878:13 | z | TRef | {EXTERNAL LOCATION} | usize | -| main.rs:2878:17:2878:17 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2878:17:2878:22 | x.g(...) | | {EXTERNAL LOCATION} | & | -| main.rs:2878:17:2878:22 | x.g(...) | TRef | {EXTERNAL LOCATION} | usize | -| main.rs:2878:21:2878:21 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2878:21:2878:21 | y | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2880:13:2880:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2880:17:2880:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2881:13:2881:13 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2881:24:2881:24 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2881:24:2881:24 | 1 | | {EXTERNAL LOCATION} | usize | -| main.rs:2882:13:2882:13 | z | | {EXTERNAL LOCATION} | i32 | -| main.rs:2882:17:2882:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2882:17:2882:24 | x.max(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2882:23:2882:23 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2892:11:2927:1 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2893:5:2893:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2894:5:2894:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2895:5:2895:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2895:20:2895:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2895:41:2895:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2896:5:2896:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2897:5:2897:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2898:5:2898:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2899:5:2899:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2900:5:2900:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2901:5:2901:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2902:5:2902:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2903:5:2903:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2904:5:2904:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2905:5:2905:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2906:5:2906:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2907:5:2907:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2908:5:2908:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2909:5:2909:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2910:5:2910:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2911:5:2911:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2911:5:2911:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2912:5:2912:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2913:5:2913:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2914:5:2914:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2915:5:2915:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2916:5:2916:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2917:5:2917:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2918:5:2918:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2919:5:2919:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2920:5:2920:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2921:5:2921:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2922:5:2922:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2923:5:2923:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2924:5:2924:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2925:5:2925:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2925:5:2925:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2925:5:2925:20 | ...::f(...) | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2925:5:2925:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2925:16:2925:19 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2926:5:2926:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1023:18:1023:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1023:18:1023:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1023:18:1023:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1023:26:1023:27 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1023:26:1023:27 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1023:26:1023:27 | p3 | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1025:9:1025:55 | g(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1025:11:1025:54 | ...::PairSnd(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:1025:11:1025:54 | ...::PairSnd(...) | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1025:11:1025:54 | ...::PairSnd(...) | Snd | main.rs:955:5:961:5 | PairOption | +| main.rs:1025:11:1025:54 | ...::PairSnd(...) | Snd.Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1025:11:1025:54 | ...::PairSnd(...) | Snd.Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1025:31:1025:53 | ...::PairSnd(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:1025:31:1025:53 | ...::PairSnd(...) | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1025:31:1025:53 | ...::PairSnd(...) | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1025:51:1025:52 | S3 | | main.rs:980:5:981:14 | S3 | +| main.rs:1027:13:1027:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1027:13:1027:13 | x | E | main.rs:974:5:975:14 | S1 | +| main.rs:1027:13:1027:13 | x | T | main.rs:1000:5:1000:34 | S4 | +| main.rs:1027:13:1027:13 | x | T.T41 | main.rs:977:5:978:14 | S2 | +| main.rs:1027:13:1027:13 | x | T.T42 | main.rs:1002:5:1002:22 | S5 | +| main.rs:1027:13:1027:13 | x | T.T42.T5 | main.rs:977:5:978:14 | S2 | +| main.rs:1040:16:1040:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1040:16:1040:24 | SelfParam | TRefMut | main.rs:1038:5:1045:5 | Self [trait MyTrait] | +| main.rs:1040:27:1040:31 | value | | main.rs:1038:19:1038:19 | S | +| main.rs:1042:21:1042:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1042:21:1042:29 | SelfParam | TRefMut | main.rs:1038:5:1045:5 | Self [trait MyTrait] | +| main.rs:1042:32:1042:36 | value | | main.rs:1038:19:1038:19 | S | +| main.rs:1042:42:1044:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1043:13:1043:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1043:13:1043:16 | self | TRefMut | main.rs:1038:5:1045:5 | Self [trait MyTrait] | +| main.rs:1043:13:1043:27 | self.set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1043:22:1043:26 | value | | main.rs:1038:19:1038:19 | S | +| main.rs:1049:16:1049:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1049:16:1049:24 | SelfParam | TRefMut | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1049:16:1049:24 | SelfParam | TRefMut.T | main.rs:1047:10:1047:10 | T | +| main.rs:1049:27:1049:31 | value | | main.rs:1047:10:1047:10 | T | +| main.rs:1049:37:1049:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1053:26:1055:9 | { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1053:26:1055:9 | { ... } | T | main.rs:1052:10:1052:10 | T | +| main.rs:1054:13:1054:30 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1054:13:1054:30 | ...::MyNone(...) | T | main.rs:1052:10:1052:10 | T | +| main.rs:1059:20:1059:23 | SelfParam | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1059:20:1059:23 | SelfParam | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1059:20:1059:23 | SelfParam | T.T | main.rs:1058:10:1058:10 | T | +| main.rs:1059:41:1064:9 | { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1059:41:1064:9 | { ... } | T | main.rs:1058:10:1058:10 | T | +| main.rs:1060:13:1063:13 | match self { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1060:13:1063:13 | match self { ... } | T | main.rs:1058:10:1058:10 | T | +| main.rs:1060:19:1060:22 | self | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1060:19:1060:22 | self | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1060:19:1060:22 | self | T.T | main.rs:1058:10:1058:10 | T | +| main.rs:1061:17:1061:34 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1061:17:1061:34 | ...::MyNone(...) | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1061:17:1061:34 | ...::MyNone(...) | T.T | main.rs:1058:10:1058:10 | T | +| main.rs:1061:39:1061:56 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1061:39:1061:56 | ...::MyNone(...) | T | main.rs:1058:10:1058:10 | T | +| main.rs:1062:17:1062:35 | ...::MySome(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1062:17:1062:35 | ...::MySome(...) | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1062:17:1062:35 | ...::MySome(...) | T.T | main.rs:1058:10:1058:10 | T | +| main.rs:1062:34:1062:34 | x | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1062:34:1062:34 | x | T | main.rs:1058:10:1058:10 | T | +| main.rs:1062:40:1062:40 | x | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1062:40:1062:40 | x | T | main.rs:1058:10:1058:10 | T | +| main.rs:1070:16:1115:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1071:13:1071:14 | x1 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1071:13:1071:14 | x1 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1071:18:1071:37 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1071:18:1071:37 | ...::new(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1072:9:1072:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1072:18:1072:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1072:18:1072:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1072:18:1072:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1072:18:1072:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1072:18:1072:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1072:26:1072:27 | x1 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1072:26:1072:27 | x1 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1074:17:1074:18 | x2 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1074:17:1074:18 | x2 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1074:22:1074:36 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1074:22:1074:36 | ...::new(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1075:9:1075:10 | x2 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1075:9:1075:10 | x2 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1075:9:1075:17 | x2.set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1075:16:1075:16 | S | | main.rs:1067:5:1068:13 | S | +| main.rs:1076:9:1076:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1076:18:1076:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1076:18:1076:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1076:18:1076:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1076:18:1076:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1076:18:1076:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1076:26:1076:27 | x2 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1076:26:1076:27 | x2 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1078:17:1078:18 | x3 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1078:17:1078:18 | x3 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1078:22:1078:36 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1078:22:1078:36 | ...::new(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1079:9:1079:10 | x3 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1079:9:1079:10 | x3 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1079:9:1079:22 | x3.call_set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1079:21:1079:21 | S | | main.rs:1067:5:1068:13 | S | +| main.rs:1080:9:1080:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1080:18:1080:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1080:18:1080:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1080:18:1080:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1080:18:1080:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1080:18:1080:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1080:26:1080:27 | x3 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1080:26:1080:27 | x3 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1082:17:1082:18 | x4 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1082:17:1082:18 | x4 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1082:22:1082:36 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1082:22:1082:36 | ...::new(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1083:9:1083:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1083:23:1083:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | +| main.rs:1083:23:1083:29 | &mut x4 | TRefMut | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1083:23:1083:29 | &mut x4 | TRefMut.T | main.rs:1067:5:1068:13 | S | +| main.rs:1083:28:1083:29 | x4 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1083:28:1083:29 | x4 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1083:32:1083:32 | S | | main.rs:1067:5:1068:13 | S | +| main.rs:1084:9:1084:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1084:18:1084:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1084:18:1084:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1084:18:1084:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1084:18:1084:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1084:18:1084:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1084:26:1084:27 | x4 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1084:26:1084:27 | x4 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1086:13:1086:14 | x5 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1086:13:1086:14 | x5 | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1086:13:1086:14 | x5 | T.T | main.rs:1067:5:1068:13 | S | +| main.rs:1086:18:1086:58 | ...::MySome(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1086:18:1086:58 | ...::MySome(...) | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1086:18:1086:58 | ...::MySome(...) | T.T | main.rs:1067:5:1068:13 | S | +| main.rs:1086:35:1086:57 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1086:35:1086:57 | ...::MyNone(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1087:9:1087:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1087:18:1087:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1087:18:1087:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1087:18:1087:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1087:18:1087:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1087:18:1087:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1087:26:1087:27 | x5 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1087:26:1087:27 | x5 | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1087:26:1087:27 | x5 | T.T | main.rs:1067:5:1068:13 | S | +| main.rs:1087:26:1087:37 | x5.flatten() | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1087:26:1087:37 | x5.flatten() | T | main.rs:1067:5:1068:13 | S | +| main.rs:1089:13:1089:14 | x6 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1089:13:1089:14 | x6 | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1089:13:1089:14 | x6 | T.T | main.rs:1067:5:1068:13 | S | +| main.rs:1089:18:1089:58 | ...::MySome(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1089:18:1089:58 | ...::MySome(...) | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1089:18:1089:58 | ...::MySome(...) | T.T | main.rs:1067:5:1068:13 | S | +| main.rs:1089:35:1089:57 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1089:35:1089:57 | ...::MyNone(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1090:9:1090:62 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1090:18:1090:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1090:18:1090:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1090:18:1090:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1090:18:1090:61 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1090:18:1090:61 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1090:26:1090:61 | ...::flatten(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1090:26:1090:61 | ...::flatten(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1090:59:1090:60 | x6 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1090:59:1090:60 | x6 | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1090:59:1090:60 | x6 | T.T | main.rs:1067:5:1068:13 | S | +| main.rs:1093:13:1093:19 | from_if | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1093:13:1093:19 | from_if | T | main.rs:1067:5:1068:13 | S | +| main.rs:1093:23:1097:9 | if ... {...} else {...} | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1093:23:1097:9 | if ... {...} else {...} | T | main.rs:1067:5:1068:13 | S | +| main.rs:1093:26:1093:26 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1093:26:1093:30 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1093:30:1093:30 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1093:32:1095:9 | { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1093:32:1095:9 | { ... } | T | main.rs:1067:5:1068:13 | S | +| main.rs:1094:13:1094:30 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1094:13:1094:30 | ...::MyNone(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1095:16:1097:9 | { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1095:16:1097:9 | { ... } | T | main.rs:1067:5:1068:13 | S | +| main.rs:1096:13:1096:31 | ...::MySome(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1096:13:1096:31 | ...::MySome(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1096:30:1096:30 | S | | main.rs:1067:5:1068:13 | S | +| main.rs:1098:9:1098:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1098:18:1098:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1098:18:1098:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1098:18:1098:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1098:18:1098:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1098:18:1098:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1098:26:1098:32 | from_if | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1098:26:1098:32 | from_if | T | main.rs:1067:5:1068:13 | S | +| main.rs:1101:13:1101:22 | from_match | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1101:13:1101:22 | from_match | T | main.rs:1067:5:1068:13 | S | +| main.rs:1101:26:1104:9 | match ... { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1101:26:1104:9 | match ... { ... } | T | main.rs:1067:5:1068:13 | S | +| main.rs:1101:32:1101:32 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1101:32:1101:36 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1101:36:1101:36 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1102:13:1102:16 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1102:21:1102:38 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1102:21:1102:38 | ...::MyNone(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1103:13:1103:17 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1103:22:1103:40 | ...::MySome(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1103:22:1103:40 | ...::MySome(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1103:39:1103:39 | S | | main.rs:1067:5:1068:13 | S | +| main.rs:1105:9:1105:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1105:18:1105:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1105:18:1105:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1105:18:1105:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1105:18:1105:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1105:18:1105:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1105:26:1105:35 | from_match | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1105:26:1105:35 | from_match | T | main.rs:1067:5:1068:13 | S | +| main.rs:1108:13:1108:21 | from_loop | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1108:13:1108:21 | from_loop | T | main.rs:1067:5:1068:13 | S | +| main.rs:1108:25:1113:9 | loop { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1108:25:1113:9 | loop { ... } | T | main.rs:1067:5:1068:13 | S | +| main.rs:1108:30:1113:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1109:13:1111:13 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1109:16:1109:16 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1109:16:1109:20 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1109:20:1109:20 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1109:22:1111:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1110:23:1110:40 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1110:23:1110:40 | ...::MyNone(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1112:19:1112:37 | ...::MySome(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1112:19:1112:37 | ...::MySome(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1112:36:1112:36 | S | | main.rs:1067:5:1068:13 | S | +| main.rs:1114:9:1114:35 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1114:18:1114:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1114:18:1114:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1114:18:1114:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1114:18:1114:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1114:18:1114:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1114:26:1114:34 | from_loop | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1114:26:1114:34 | from_loop | T | main.rs:1067:5:1068:13 | S | +| main.rs:1132:15:1132:18 | SelfParam | | main.rs:1120:5:1121:19 | S | +| main.rs:1132:15:1132:18 | SelfParam | T | main.rs:1131:10:1131:10 | T | +| main.rs:1132:26:1134:9 | { ... } | | main.rs:1131:10:1131:10 | T | +| main.rs:1133:13:1133:16 | self | | main.rs:1120:5:1121:19 | S | +| main.rs:1133:13:1133:16 | self | T | main.rs:1131:10:1131:10 | T | +| main.rs:1133:13:1133:18 | self.0 | | main.rs:1131:10:1131:10 | T | +| main.rs:1136:15:1136:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1136:15:1136:19 | SelfParam | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1136:15:1136:19 | SelfParam | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1136:28:1138:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1136:28:1138:9 | { ... } | TRef | main.rs:1131:10:1131:10 | T | +| main.rs:1137:13:1137:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1137:13:1137:19 | &... | TRef | main.rs:1131:10:1131:10 | T | +| main.rs:1137:14:1137:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1137:14:1137:17 | self | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1137:14:1137:17 | self | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1137:14:1137:19 | self.0 | | main.rs:1131:10:1131:10 | T | +| main.rs:1140:15:1140:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1140:15:1140:25 | SelfParam | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1140:15:1140:25 | SelfParam | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1140:34:1142:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1140:34:1142:9 | { ... } | TRef | main.rs:1131:10:1131:10 | T | +| main.rs:1141:13:1141:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1141:13:1141:19 | &... | TRef | main.rs:1131:10:1131:10 | T | +| main.rs:1141:14:1141:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1141:14:1141:17 | self | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1141:14:1141:17 | self | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1141:14:1141:19 | self.0 | | main.rs:1131:10:1131:10 | T | +| main.rs:1146:29:1146:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1146:29:1146:33 | SelfParam | TRef | main.rs:1145:5:1148:5 | Self [trait ATrait] | +| main.rs:1147:33:1147:36 | SelfParam | | main.rs:1145:5:1148:5 | Self [trait ATrait] | +| main.rs:1153:29:1153:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1153:29:1153:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1153:29:1153:33 | SelfParam | TRef.TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1153:43:1155:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1154:13:1154:22 | (...) | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1154:13:1154:24 | ... .a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1154:14:1154:21 | * ... | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1154:15:1154:21 | (...) | | {EXTERNAL LOCATION} | & | +| main.rs:1154:15:1154:21 | (...) | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1154:16:1154:20 | * ... | | {EXTERNAL LOCATION} | & | +| main.rs:1154:16:1154:20 | * ... | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1154:17:1154:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1154:17:1154:20 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1154:17:1154:20 | self | TRef.TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1158:33:1158:36 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1158:33:1158:36 | SelfParam | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1158:46:1160:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1159:13:1159:19 | (...) | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1159:13:1159:21 | ... .a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1159:14:1159:18 | * ... | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1159:15:1159:18 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1159:15:1159:18 | self | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1163:16:1213:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1164:13:1164:14 | x1 | | main.rs:1120:5:1121:19 | S | +| main.rs:1164:13:1164:14 | x1 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1164:18:1164:22 | S(...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1164:18:1164:22 | S(...) | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1164:20:1164:21 | S2 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1165:9:1165:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1165:18:1165:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1165:18:1165:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1165:18:1165:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1165:18:1165:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1165:18:1165:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1165:26:1165:27 | x1 | | main.rs:1120:5:1121:19 | S | +| main.rs:1165:26:1165:27 | x1 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1165:26:1165:32 | x1.m1() | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1167:13:1167:14 | x2 | | main.rs:1120:5:1121:19 | S | +| main.rs:1167:13:1167:14 | x2 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1167:18:1167:22 | S(...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1167:18:1167:22 | S(...) | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1167:20:1167:21 | S2 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1169:9:1169:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1169:18:1169:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1169:18:1169:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1169:18:1169:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1169:18:1169:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1169:18:1169:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1169:26:1169:27 | x2 | | main.rs:1120:5:1121:19 | S | +| main.rs:1169:26:1169:27 | x2 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1169:26:1169:32 | x2.m2() | | {EXTERNAL LOCATION} | & | +| main.rs:1169:26:1169:32 | x2.m2() | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1170:9:1170:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1170:18:1170:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1170:18:1170:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1170:18:1170:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1170:18:1170:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1170:18:1170:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1170:26:1170:27 | x2 | | main.rs:1120:5:1121:19 | S | +| main.rs:1170:26:1170:27 | x2 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1170:26:1170:32 | x2.m3() | | {EXTERNAL LOCATION} | & | +| main.rs:1170:26:1170:32 | x2.m3() | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1172:13:1172:14 | x3 | | main.rs:1120:5:1121:19 | S | +| main.rs:1172:13:1172:14 | x3 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1172:18:1172:22 | S(...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1172:18:1172:22 | S(...) | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1172:20:1172:21 | S2 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1174:9:1174:42 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1174:18:1174:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1174:18:1174:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1174:18:1174:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1174:18:1174:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1174:18:1174:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1174:26:1174:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1174:26:1174:41 | ...::m2(...) | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1174:38:1174:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1174:38:1174:40 | &x3 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1174:38:1174:40 | &x3 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1174:39:1174:40 | x3 | | main.rs:1120:5:1121:19 | S | +| main.rs:1174:39:1174:40 | x3 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1175:9:1175:42 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1175:18:1175:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1175:18:1175:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1175:18:1175:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1175:18:1175:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1175:18:1175:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1175:26:1175:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1175:26:1175:41 | ...::m3(...) | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1175:38:1175:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1175:38:1175:40 | &x3 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1175:38:1175:40 | &x3 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1175:39:1175:40 | x3 | | main.rs:1120:5:1121:19 | S | +| main.rs:1175:39:1175:40 | x3 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1177:13:1177:14 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1177:13:1177:14 | x4 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1177:13:1177:14 | x4 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1177:18:1177:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1177:18:1177:23 | &... | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1177:18:1177:23 | &... | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1177:19:1177:23 | S(...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1177:19:1177:23 | S(...) | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1177:21:1177:22 | S2 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1179:9:1179:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1179:18:1179:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1179:18:1179:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1179:18:1179:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1179:18:1179:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1179:18:1179:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1179:26:1179:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1179:26:1179:27 | x4 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1179:26:1179:27 | x4 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1179:26:1179:32 | x4.m2() | | {EXTERNAL LOCATION} | & | +| main.rs:1179:26:1179:32 | x4.m2() | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1180:9:1180:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1180:18:1180:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1180:18:1180:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1180:18:1180:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1180:18:1180:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1180:18:1180:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1180:26:1180:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1180:26:1180:27 | x4 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1180:26:1180:27 | x4 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1180:26:1180:32 | x4.m3() | | {EXTERNAL LOCATION} | & | +| main.rs:1180:26:1180:32 | x4.m3() | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1182:13:1182:14 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1182:13:1182:14 | x5 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1182:13:1182:14 | x5 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1182:18:1182:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1182:18:1182:23 | &... | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1182:18:1182:23 | &... | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1182:19:1182:23 | S(...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1182:19:1182:23 | S(...) | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1182:21:1182:22 | S2 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1184:9:1184:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1184:18:1184:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1184:18:1184:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1184:18:1184:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1184:18:1184:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1184:18:1184:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1184:26:1184:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1184:26:1184:27 | x5 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1184:26:1184:27 | x5 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1184:26:1184:32 | x5.m1() | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1185:9:1185:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1185:18:1185:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1185:18:1185:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1185:18:1185:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1185:18:1185:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1185:18:1185:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1185:26:1185:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1185:26:1185:27 | x5 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1185:26:1185:27 | x5 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1185:26:1185:29 | x5.0 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1187:13:1187:14 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1187:13:1187:14 | x6 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1187:13:1187:14 | x6 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1187:18:1187:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1187:18:1187:23 | &... | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1187:18:1187:23 | &... | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1187:19:1187:23 | S(...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1187:19:1187:23 | S(...) | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1187:21:1187:22 | S2 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1190:9:1190:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1190:18:1190:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1190:18:1190:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1190:18:1190:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1190:18:1190:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1190:18:1190:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1190:26:1190:30 | (...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1190:26:1190:30 | (...) | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1190:26:1190:35 | ... .m1() | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1190:27:1190:29 | * ... | | main.rs:1120:5:1121:19 | S | +| main.rs:1190:27:1190:29 | * ... | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1190:28:1190:29 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1190:28:1190:29 | x6 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1190:28:1190:29 | x6 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1192:13:1192:14 | x7 | | main.rs:1120:5:1121:19 | S | +| main.rs:1192:13:1192:14 | x7 | T | {EXTERNAL LOCATION} | & | +| main.rs:1192:13:1192:14 | x7 | T.TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1192:18:1192:23 | S(...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1192:18:1192:23 | S(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:1192:18:1192:23 | S(...) | T.TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1192:20:1192:22 | &S2 | | {EXTERNAL LOCATION} | & | +| main.rs:1192:20:1192:22 | &S2 | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1192:21:1192:22 | S2 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1195:13:1195:13 | t | | {EXTERNAL LOCATION} | & | +| main.rs:1195:13:1195:13 | t | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1195:17:1195:18 | x7 | | main.rs:1120:5:1121:19 | S | +| main.rs:1195:17:1195:18 | x7 | T | {EXTERNAL LOCATION} | & | +| main.rs:1195:17:1195:18 | x7 | T.TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1195:17:1195:23 | x7.m1() | | {EXTERNAL LOCATION} | & | +| main.rs:1195:17:1195:23 | x7.m1() | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1196:9:1196:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1196:18:1196:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1196:18:1196:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1196:18:1196:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1196:18:1196:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1196:18:1196:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1196:26:1196:27 | x7 | | main.rs:1120:5:1121:19 | S | +| main.rs:1196:26:1196:27 | x7 | T | {EXTERNAL LOCATION} | & | +| main.rs:1196:26:1196:27 | x7 | T.TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1198:13:1198:14 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1198:26:1198:32 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1198:26:1198:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1198:26:1198:44 | "Hello".to_string() | | {EXTERNAL LOCATION} | String | +| main.rs:1202:13:1202:13 | u | | {EXTERNAL LOCATION} | Result | +| main.rs:1202:13:1202:13 | u | E | {EXTERNAL LOCATION} | ParseIntError | +| main.rs:1202:13:1202:13 | u | T | {EXTERNAL LOCATION} | u32 | +| main.rs:1202:17:1202:18 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1202:17:1202:33 | x9.parse() | | {EXTERNAL LOCATION} | Result | +| main.rs:1202:17:1202:33 | x9.parse() | E | {EXTERNAL LOCATION} | ParseIntError | +| main.rs:1202:17:1202:33 | x9.parse() | T | {EXTERNAL LOCATION} | u32 | +| main.rs:1204:13:1204:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1204:13:1204:20 | my_thing | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1204:24:1204:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1204:24:1204:39 | &... | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1204:25:1204:39 | MyInt {...} | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1204:36:1204:37 | 37 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1206:13:1206:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1206:17:1206:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1206:17:1206:24 | my_thing | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1206:17:1206:43 | my_thing.method_on_borrow() | | {EXTERNAL LOCATION} | i64 | +| main.rs:1207:9:1207:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1207:18:1207:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1207:18:1207:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1207:18:1207:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1207:18:1207:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1207:18:1207:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1207:26:1207:26 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1210:13:1210:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1210:13:1210:20 | my_thing | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1210:24:1210:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1210:24:1210:39 | &... | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1210:25:1210:39 | MyInt {...} | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1210:36:1210:37 | 38 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1211:13:1211:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1211:17:1211:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1211:17:1211:24 | my_thing | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1211:17:1211:47 | my_thing.method_not_on_borrow() | | {EXTERNAL LOCATION} | i64 | +| main.rs:1212:9:1212:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1212:18:1212:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1212:18:1212:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1212:18:1212:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1212:18:1212:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1212:18:1212:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1212:26:1212:26 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1219:16:1219:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1219:16:1219:20 | SelfParam | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1222:16:1222:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1222:16:1222:20 | SelfParam | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1222:32:1224:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1222:32:1224:9 | { ... } | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1223:13:1223:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1223:13:1223:16 | self | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1223:13:1223:22 | self.foo() | | {EXTERNAL LOCATION} | & | +| main.rs:1223:13:1223:22 | self.foo() | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1231:16:1231:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1231:16:1231:20 | SelfParam | TRef | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1231:36:1233:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1231:36:1233:9 | { ... } | TRef | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1232:13:1232:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1232:13:1232:16 | self | TRef | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1236:16:1239:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1237:13:1237:13 | x | | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1237:17:1237:24 | MyStruct | | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1238:9:1238:9 | x | | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1238:9:1238:15 | x.bar() | | {EXTERNAL LOCATION} | & | +| main.rs:1238:9:1238:15 | x.bar() | TRef | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1248:16:1248:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1248:16:1248:20 | SelfParam | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1248:16:1248:20 | SelfParam | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1248:32:1250:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1248:32:1250:9 | { ... } | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1248:32:1250:9 | { ... } | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1249:13:1249:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1249:13:1249:16 | self | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1249:13:1249:16 | self | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1252:16:1252:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1252:16:1252:20 | SelfParam | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1252:16:1252:20 | SelfParam | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1252:23:1252:23 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1252:23:1252:23 | x | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1252:23:1252:23 | x | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1252:42:1254:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1252:42:1254:9 | { ... } | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1252:42:1254:9 | { ... } | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1253:13:1253:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1253:13:1253:16 | self | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1253:13:1253:16 | self | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1257:16:1263:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1258:13:1258:13 | x | | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1258:13:1258:13 | x | T | main.rs:1243:5:1243:13 | S | +| main.rs:1258:17:1258:27 | MyStruct(...) | | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1258:17:1258:27 | MyStruct(...) | T | main.rs:1243:5:1243:13 | S | +| main.rs:1258:26:1258:26 | S | | main.rs:1243:5:1243:13 | S | +| main.rs:1259:9:1259:9 | x | | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1259:9:1259:9 | x | T | main.rs:1243:5:1243:13 | S | +| main.rs:1259:9:1259:15 | x.foo() | | {EXTERNAL LOCATION} | & | +| main.rs:1259:9:1259:15 | x.foo() | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1259:9:1259:15 | x.foo() | TRef.T | main.rs:1243:5:1243:13 | S | +| main.rs:1260:13:1260:13 | x | | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1260:13:1260:13 | x | T | main.rs:1243:5:1243:13 | S | +| main.rs:1260:17:1260:27 | MyStruct(...) | | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1260:17:1260:27 | MyStruct(...) | T | main.rs:1243:5:1243:13 | S | +| main.rs:1260:26:1260:26 | S | | main.rs:1243:5:1243:13 | S | +| main.rs:1262:9:1262:9 | x | | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1262:9:1262:9 | x | T | main.rs:1243:5:1243:13 | S | +| main.rs:1262:9:1262:18 | x.bar(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1262:9:1262:18 | x.bar(...) | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1262:9:1262:18 | x.bar(...) | TRef.T | main.rs:1243:5:1243:13 | S | +| main.rs:1262:15:1262:17 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1262:15:1262:17 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1262:15:1262:17 | &... | TRef.TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1262:15:1262:17 | &... | TRef.TRef.T | main.rs:1243:5:1243:13 | S | +| main.rs:1262:16:1262:17 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1262:16:1262:17 | &x | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1262:16:1262:17 | &x | TRef.T | main.rs:1243:5:1243:13 | S | +| main.rs:1262:17:1262:17 | x | | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1262:17:1262:17 | x | T | main.rs:1243:5:1243:13 | S | +| main.rs:1273:17:1273:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1273:17:1273:25 | SelfParam | TRefMut | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1273:28:1275:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1274:13:1274:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1274:13:1274:16 | self | TRefMut | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1274:13:1274:21 | self.bool | | {EXTERNAL LOCATION} | bool | +| main.rs:1274:13:1274:34 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:1274:25:1274:34 | ! ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1274:26:1274:29 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1274:26:1274:29 | self | TRefMut | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1274:26:1274:34 | self.bool | | {EXTERNAL LOCATION} | bool | +| main.rs:1281:15:1281:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1281:15:1281:19 | SelfParam | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1281:31:1283:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1281:31:1283:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1282:13:1282:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1282:13:1282:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1282:13:1282:19 | &... | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1282:13:1282:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1282:13:1282:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1282:13:1282:19 | &... | TRef.TRef.TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1282:14:1282:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1282:14:1282:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1282:14:1282:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1282:14:1282:19 | &... | TRef.TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1282:15:1282:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1282:15:1282:19 | &self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1282:15:1282:19 | &self | TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1282:16:1282:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1282:16:1282:19 | self | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1285:15:1285:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1285:15:1285:25 | SelfParam | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1285:37:1287:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1285:37:1287:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1286:13:1286:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1286:13:1286:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1286:13:1286:19 | &... | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1286:13:1286:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1286:13:1286:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1286:13:1286:19 | &... | TRef.TRef.TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1286:14:1286:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1286:14:1286:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1286:14:1286:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1286:14:1286:19 | &... | TRef.TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1286:15:1286:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1286:15:1286:19 | &self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1286:15:1286:19 | &self | TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1286:16:1286:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1286:16:1286:19 | self | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1289:15:1289:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1289:15:1289:15 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1289:34:1291:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1289:34:1291:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1290:13:1290:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1290:13:1290:13 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1293:15:1293:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1293:15:1293:15 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1293:34:1295:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1293:34:1295:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1294:13:1294:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1294:13:1294:16 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1294:13:1294:16 | &... | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1294:13:1294:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1294:13:1294:16 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1294:13:1294:16 | &... | TRef.TRef.TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1294:14:1294:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1294:14:1294:16 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1294:14:1294:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1294:14:1294:16 | &... | TRef.TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1294:15:1294:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1294:15:1294:16 | &x | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1294:15:1294:16 | &x | TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1294:16:1294:16 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1294:16:1294:16 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1298:16:1311:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1299:13:1299:13 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1299:17:1299:20 | S {...} | | main.rs:1278:5:1278:13 | S | +| main.rs:1300:9:1300:9 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1300:9:1300:14 | x.f1() | | {EXTERNAL LOCATION} | & | +| main.rs:1300:9:1300:14 | x.f1() | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1301:9:1301:9 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1301:9:1301:14 | x.f2() | | {EXTERNAL LOCATION} | & | +| main.rs:1301:9:1301:14 | x.f2() | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1302:9:1302:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1302:9:1302:17 | ...::f3(...) | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1302:15:1302:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1302:15:1302:16 | &x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1302:16:1302:16 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1304:13:1304:13 | n | | {EXTERNAL LOCATION} | bool | +| main.rs:1304:17:1304:24 | * ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1304:18:1304:24 | * ... | | {EXTERNAL LOCATION} | & | +| main.rs:1304:18:1304:24 | * ... | TRef | {EXTERNAL LOCATION} | bool | +| main.rs:1304:19:1304:24 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1304:19:1304:24 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1304:19:1304:24 | &... | TRef.TRef | {EXTERNAL LOCATION} | bool | +| main.rs:1304:20:1304:24 | &true | | {EXTERNAL LOCATION} | & | +| main.rs:1304:20:1304:24 | &true | TRef | {EXTERNAL LOCATION} | bool | +| main.rs:1304:21:1304:24 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1308:17:1308:20 | flag | | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1308:24:1308:41 | ...::default(...) | | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1309:9:1309:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1309:22:1309:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | +| main.rs:1309:22:1309:30 | &mut flag | TRefMut | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1309:27:1309:30 | flag | | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1310:9:1310:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1310:18:1310:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1310:18:1310:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1310:18:1310:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1310:18:1310:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1310:18:1310:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1310:26:1310:29 | flag | | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1325:43:1328:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1325:43:1328:5 | { ... } | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1325:43:1328:5 | { ... } | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1326:13:1326:13 | x | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1326:17:1326:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1326:17:1326:30 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1326:17:1326:31 | TryExpr | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1326:28:1326:29 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1327:9:1327:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1327:9:1327:22 | ...::Ok(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1327:9:1327:22 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1327:20:1327:21 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1332:46:1336:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1332:46:1336:5 | { ... } | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1332:46:1336:5 | { ... } | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1333:13:1333:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1333:13:1333:13 | x | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1333:17:1333:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1333:17:1333:30 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1333:28:1333:29 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1334:13:1334:13 | y | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1334:17:1334:17 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1334:17:1334:17 | x | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1334:17:1334:18 | TryExpr | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1335:9:1335:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1335:9:1335:22 | ...::Ok(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1335:9:1335:22 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1335:20:1335:21 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1340:40:1345:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1340:40:1345:5 | { ... } | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1340:40:1345:5 | { ... } | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1341:13:1341:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1341:13:1341:13 | x | T | {EXTERNAL LOCATION} | Result | +| main.rs:1341:13:1341:13 | x | T.T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1341:17:1341:42 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1341:17:1341:42 | ...::Ok(...) | T | {EXTERNAL LOCATION} | Result | +| main.rs:1341:17:1341:42 | ...::Ok(...) | T.T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1341:28:1341:41 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1341:28:1341:41 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1341:39:1341:40 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1343:17:1343:17 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1343:17:1343:17 | x | T | {EXTERNAL LOCATION} | Result | +| main.rs:1343:17:1343:17 | x | T.T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1343:17:1343:18 | TryExpr | | {EXTERNAL LOCATION} | Result | +| main.rs:1343:17:1343:18 | TryExpr | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1343:17:1343:29 | ... .map(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1343:24:1343:28 | \|...\| s | | {EXTERNAL LOCATION} | dyn Fn | +| main.rs:1343:24:1343:28 | \|...\| s | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| main.rs:1344:9:1344:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1344:9:1344:22 | ...::Ok(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1344:9:1344:22 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1344:20:1344:21 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1349:30:1349:34 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1349:30:1349:34 | input | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1349:30:1349:34 | input | T | main.rs:1349:20:1349:27 | T | +| main.rs:1349:69:1356:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1349:69:1356:5 | { ... } | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1349:69:1356:5 | { ... } | T | main.rs:1349:20:1349:27 | T | +| main.rs:1350:13:1350:17 | value | | main.rs:1349:20:1349:27 | T | +| main.rs:1350:21:1350:25 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1350:21:1350:25 | input | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1350:21:1350:25 | input | T | main.rs:1349:20:1349:27 | T | +| main.rs:1350:21:1350:26 | TryExpr | | main.rs:1349:20:1349:27 | T | +| main.rs:1351:22:1351:38 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1351:22:1351:38 | ...::Ok(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1351:22:1351:38 | ...::Ok(...) | T | main.rs:1349:20:1349:27 | T | +| main.rs:1351:22:1354:10 | ... .and_then(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1351:22:1354:10 | ... .and_then(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1351:33:1351:37 | value | | main.rs:1349:20:1349:27 | T | +| main.rs:1351:49:1354:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | +| main.rs:1351:49:1354:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| main.rs:1351:49:1354:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | Result | +| main.rs:1351:49:1354:9 | \|...\| ... | dyn(Output).E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1351:53:1354:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1351:53:1354:9 | { ... } | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1352:13:1352:31 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1352:22:1352:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1352:22:1352:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1352:22:1352:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1352:22:1352:30 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1352:22:1352:30 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1353:13:1353:34 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1353:13:1353:34 | ...::Ok::<...>(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1355:9:1355:23 | ...::Err(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1355:9:1355:23 | ...::Err(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1355:9:1355:23 | ...::Err(...) | T | main.rs:1349:20:1349:27 | T | +| main.rs:1355:21:1355:22 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1359:16:1375:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1360:9:1362:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1360:16:1360:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1360:16:1360:33 | ...::Ok(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1360:16:1360:33 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1360:27:1360:32 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1360:37:1360:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1360:37:1360:52 | try_same_error(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1360:37:1360:52 | try_same_error(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1360:54:1362:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1361:13:1361:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1361:22:1361:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1361:22:1361:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1361:22:1361:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1361:22:1361:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1361:22:1361:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1361:30:1361:35 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1364:9:1366:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1364:16:1364:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1364:16:1364:33 | ...::Ok(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1364:16:1364:33 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1364:27:1364:32 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1364:37:1364:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1364:37:1364:55 | try_convert_error(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1364:37:1364:55 | try_convert_error(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1364:57:1366:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1365:13:1365:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1365:22:1365:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1365:22:1365:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1365:22:1365:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1365:22:1365:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1365:22:1365:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1365:30:1365:35 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1368:9:1370:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1368:16:1368:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1368:16:1368:33 | ...::Ok(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1368:16:1368:33 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1368:27:1368:32 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1368:37:1368:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1368:37:1368:49 | try_chained(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1368:37:1368:49 | try_chained(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1368:51:1370:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1369:13:1369:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1369:22:1369:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1369:22:1369:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1369:22:1369:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1369:22:1369:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1369:22:1369:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1369:30:1369:35 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:9:1374:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1372:16:1372:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1372:16:1372:33 | ...::Ok(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:16:1372:33 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:27:1372:32 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:37:1372:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1372:37:1372:63 | try_complex(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:37:1372:63 | try_complex(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:49:1372:62 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1372:49:1372:62 | ...::Ok(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:49:1372:62 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:60:1372:61 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:65:1374:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1373:13:1373:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1373:22:1373:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1373:22:1373:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1373:22:1373:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1373:22:1373:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1373:22:1373:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1373:30:1373:35 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1379:16:1470:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1380:13:1380:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1380:22:1380:22 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1381:13:1381:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:1381:17:1381:17 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1382:13:1382:13 | z | | {EXTERNAL LOCATION} | i32 | +| main.rs:1382:17:1382:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1382:17:1382:21 | ... + ... | | {EXTERNAL LOCATION} | i32 | +| main.rs:1382:21:1382:21 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:1383:13:1383:13 | z | | {EXTERNAL LOCATION} | i32 | +| main.rs:1383:17:1383:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1383:17:1383:23 | x.abs() | | {EXTERNAL LOCATION} | i32 | +| main.rs:1384:13:1384:13 | c | | {EXTERNAL LOCATION} | char | +| main.rs:1384:17:1384:19 | 'c' | | {EXTERNAL LOCATION} | char | +| main.rs:1385:13:1385:17 | hello | | {EXTERNAL LOCATION} | & | +| main.rs:1385:13:1385:17 | hello | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1385:21:1385:27 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1385:21:1385:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1386:13:1386:13 | f | | {EXTERNAL LOCATION} | f64 | +| main.rs:1386:17:1386:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | +| main.rs:1387:13:1387:13 | t | | {EXTERNAL LOCATION} | bool | +| main.rs:1387:17:1387:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1388:13:1388:13 | f | | {EXTERNAL LOCATION} | bool | +| main.rs:1388:17:1388:21 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1391:26:1391:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1391:26:1391:30 | SelfParam | TRef | main.rs:1390:9:1394:9 | Self [trait MyTrait] | +| main.rs:1397:26:1397:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1397:26:1397:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1397:26:1397:30 | SelfParam | TRef.TArray | main.rs:1396:14:1396:23 | T | +| main.rs:1397:39:1399:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1397:39:1399:13 | { ... } | TRef | main.rs:1396:14:1396:23 | T | +| main.rs:1398:17:1398:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1398:17:1398:20 | self | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1398:17:1398:20 | self | TRef.TArray | main.rs:1396:14:1396:23 | T | +| main.rs:1398:17:1398:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | +| main.rs:1398:17:1398:36 | ... .unwrap() | TRef | main.rs:1396:14:1396:23 | T | +| main.rs:1398:26:1398:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1401:31:1403:13 | { ... } | | main.rs:1396:14:1396:23 | T | +| main.rs:1402:17:1402:28 | ...::default(...) | | main.rs:1396:14:1396:23 | T | +| main.rs:1406:13:1406:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1406:13:1406:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1406:17:1406:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1406:17:1406:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1406:17:1406:37 | ... .my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1406:17:1406:37 | ... .my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1406:18:1406:18 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1406:21:1406:21 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1406:24:1406:24 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:13:1407:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1407:13:1407:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:17:1407:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1407:17:1407:47 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:22:1407:22 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:37:1407:46 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1407:37:1407:46 | &... | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1407:37:1407:46 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:38:1407:46 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1407:38:1407:46 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:39:1407:39 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:42:1407:42 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:45:1407:45 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1408:13:1408:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1408:17:1408:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1408:24:1408:24 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1411:26:1411:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1411:26:1411:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1411:26:1411:30 | SelfParam | TRef.TSlice | main.rs:1410:14:1410:23 | T | +| main.rs:1411:39:1413:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1411:39:1413:13 | { ... } | TRef | main.rs:1410:14:1410:23 | T | +| main.rs:1412:17:1412:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1412:17:1412:20 | self | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1412:17:1412:20 | self | TRef.TSlice | main.rs:1410:14:1410:23 | T | +| main.rs:1412:17:1412:27 | self.get(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:1412:17:1412:27 | self.get(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:1412:17:1412:27 | self.get(...) | T.TRef | main.rs:1410:14:1410:23 | T | +| main.rs:1412:17:1412:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | +| main.rs:1412:17:1412:36 | ... .unwrap() | TRef | main.rs:1410:14:1410:23 | T | +| main.rs:1412:26:1412:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1415:31:1417:13 | { ... } | | main.rs:1410:14:1410:23 | T | +| main.rs:1416:17:1416:28 | ...::default(...) | | main.rs:1410:14:1410:23 | T | +| main.rs:1420:13:1420:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1420:13:1420:13 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1420:13:1420:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1420:25:1420:34 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1420:25:1420:34 | &... | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1420:25:1420:34 | &... | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1420:25:1420:34 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1420:25:1420:34 | &... | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1420:26:1420:34 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1420:26:1420:34 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1420:27:1420:27 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1420:30:1420:30 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1420:33:1420:33 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1421:13:1421:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1421:13:1421:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1421:17:1421:17 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1421:17:1421:17 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1421:17:1421:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1421:17:1421:29 | s.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1421:17:1421:29 | s.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1422:13:1422:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1422:13:1422:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1422:17:1422:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1422:17:1422:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1422:34:1422:34 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1422:34:1422:34 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1422:34:1422:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1423:13:1423:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1423:17:1423:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1426:26:1426:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1426:26:1426:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1426:26:1426:30 | SelfParam | TRef.T0 | main.rs:1425:14:1425:23 | T | +| main.rs:1426:26:1426:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1426:39:1428:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1426:39:1428:13 | { ... } | TRef | main.rs:1425:14:1425:23 | T | +| main.rs:1427:17:1427:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1427:17:1427:23 | &... | TRef | main.rs:1425:14:1425:23 | T | +| main.rs:1427:18:1427:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1427:18:1427:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1427:18:1427:21 | self | TRef.T0 | main.rs:1425:14:1425:23 | T | +| main.rs:1427:18:1427:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1427:18:1427:23 | self.0 | | main.rs:1425:14:1425:23 | T | +| main.rs:1430:31:1432:13 | { ... } | | main.rs:1425:14:1425:23 | T | +| main.rs:1431:17:1431:28 | ...::default(...) | | main.rs:1425:14:1425:23 | T | +| main.rs:1435:13:1435:13 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1435:13:1435:13 | p | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1435:13:1435:13 | p | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1435:17:1435:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1435:17:1435:23 | TupleExpr | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1435:17:1435:23 | TupleExpr | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1435:18:1435:19 | 42 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1435:22:1435:22 | 7 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1436:13:1436:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1436:13:1436:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1436:17:1436:17 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1436:17:1436:17 | p | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1436:17:1436:17 | p | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1436:17:1436:29 | p.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1436:17:1436:29 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1437:13:1437:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1437:13:1437:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1437:17:1437:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1437:17:1437:39 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1437:37:1437:38 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1437:37:1437:38 | &p | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1437:37:1437:38 | &p | TRef.T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1437:37:1437:38 | &p | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1437:38:1437:38 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1437:38:1437:38 | p | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1437:38:1437:38 | p | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1438:13:1438:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1438:17:1438:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1441:26:1441:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1441:26:1441:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1441:26:1441:30 | SelfParam | TRef.TRef | main.rs:1440:14:1440:23 | T | +| main.rs:1441:39:1443:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1441:39:1443:13 | { ... } | TRef | main.rs:1440:14:1440:23 | T | +| main.rs:1442:17:1442:21 | * ... | | {EXTERNAL LOCATION} | & | +| main.rs:1442:17:1442:21 | * ... | TRef | main.rs:1440:14:1440:23 | T | +| main.rs:1442:18:1442:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1442:18:1442:21 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1442:18:1442:21 | self | TRef.TRef | main.rs:1440:14:1440:23 | T | +| main.rs:1445:31:1447:13 | { ... } | | main.rs:1440:14:1440:23 | T | +| main.rs:1446:17:1446:28 | ...::default(...) | | main.rs:1440:14:1440:23 | T | +| main.rs:1450:13:1450:13 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1450:13:1450:13 | r | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1450:17:1450:19 | &42 | | {EXTERNAL LOCATION} | & | +| main.rs:1450:17:1450:19 | &42 | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1450:18:1450:19 | 42 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1451:13:1451:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1451:13:1451:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1451:17:1451:17 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1451:17:1451:17 | r | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1451:17:1451:29 | r.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1451:17:1451:29 | r.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1452:13:1452:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1452:13:1452:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1452:17:1452:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1452:17:1452:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1452:33:1452:34 | &r | | {EXTERNAL LOCATION} | & | +| main.rs:1452:33:1452:34 | &r | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1452:33:1452:34 | &r | TRef.TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1452:34:1452:34 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1452:34:1452:34 | r | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1453:13:1453:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1453:17:1453:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1456:26:1456:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1456:26:1456:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1456:26:1456:30 | SelfParam | TRef.TPtrMut | main.rs:1455:14:1455:23 | T | +| main.rs:1456:39:1458:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1456:39:1458:13 | { ... } | TRef | main.rs:1455:14:1455:23 | T | +| main.rs:1457:17:1457:34 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1457:17:1457:34 | { ... } | TRef | main.rs:1455:14:1455:23 | T | +| main.rs:1457:26:1457:32 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1457:26:1457:32 | &... | TRef | main.rs:1455:14:1455:23 | T | +| main.rs:1457:27:1457:32 | * ... | | main.rs:1455:14:1455:23 | T | +| main.rs:1457:28:1457:32 | * ... | | {EXTERNAL LOCATION} | *mut | +| main.rs:1457:28:1457:32 | * ... | TPtrMut | main.rs:1455:14:1455:23 | T | +| main.rs:1457:29:1457:32 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1457:29:1457:32 | self | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1457:29:1457:32 | self | TRef.TPtrMut | main.rs:1455:14:1455:23 | T | +| main.rs:1460:31:1462:13 | { ... } | | main.rs:1455:14:1455:23 | T | +| main.rs:1461:17:1461:28 | ...::default(...) | | main.rs:1455:14:1455:23 | T | +| main.rs:1465:17:1465:17 | v | | {EXTERNAL LOCATION} | i32 | +| main.rs:1465:21:1465:22 | 42 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1466:13:1466:13 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1466:13:1466:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1466:27:1466:32 | &mut v | | {EXTERNAL LOCATION} | &mut | +| main.rs:1466:27:1466:32 | &mut v | TRefMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1466:32:1466:32 | v | | {EXTERNAL LOCATION} | i32 | +| main.rs:1467:13:1467:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1467:13:1467:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1467:17:1467:40 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1467:17:1467:40 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1467:26:1467:26 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1467:26:1467:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1467:26:1467:38 | p.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1467:26:1467:38 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1468:13:1468:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1468:13:1468:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1468:17:1468:50 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1468:17:1468:50 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1468:26:1468:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1468:26:1468:48 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1468:46:1468:47 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1468:46:1468:47 | &p | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1468:46:1468:47 | &p | TRef.TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1468:47:1468:47 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1468:47:1468:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1469:13:1469:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1469:17:1469:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1475:16:1487:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1476:13:1476:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:1476:17:1476:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1476:17:1476:29 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1476:25:1476:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:13:1477:13 | y | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:17:1477:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:17:1477:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:25:1477:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1479:17:1479:17 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1480:13:1480:16 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:1480:20:1480:21 | 34 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1480:20:1480:27 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1480:26:1480:27 | 33 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1481:9:1485:9 | if cond {...} else {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1481:12:1481:15 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:1481:17:1483:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1482:17:1482:17 | z | | {EXTERNAL LOCATION} | () | +| main.rs:1482:21:1482:27 | (...) | | {EXTERNAL LOCATION} | () | +| main.rs:1482:22:1482:22 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1482:22:1482:26 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:1482:26:1482:26 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1483:16:1485:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1484:13:1484:13 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1484:13:1484:17 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:1484:17:1484:17 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1486:9:1486:9 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1500:30:1502:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1501:13:1501:31 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1501:23:1501:23 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1501:29:1501:29 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1508:16:1508:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1508:22:1508:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1508:41:1513:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1509:13:1512:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1510:20:1510:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1510:20:1510:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1510:20:1510:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1510:29:1510:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1510:29:1510:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1511:20:1511:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1511:20:1511:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1511:20:1511:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1511:29:1511:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1511:29:1511:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1518:23:1518:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1518:23:1518:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1518:34:1518:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1518:45:1521:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1519:13:1519:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1519:13:1519:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1519:13:1519:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1519:13:1519:27 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1519:23:1519:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1519:23:1519:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1520:13:1520:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1520:13:1520:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1520:13:1520:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1520:13:1520:27 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1520:23:1520:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1520:23:1520:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1526:16:1526:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1526:22:1526:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1526:41:1531:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1527:13:1530:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1528:20:1528:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1528:20:1528:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1528:20:1528:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1528:29:1528:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1528:29:1528:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1529:20:1529:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1529:20:1529:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1529:20:1529:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1529:29:1529:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1529:29:1529:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1536:23:1536:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1536:23:1536:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1536:34:1536:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1536:45:1539:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1537:13:1537:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1537:13:1537:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1537:13:1537:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1537:13:1537:27 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1537:23:1537:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1537:23:1537:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1538:13:1538:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1538:13:1538:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1538:13:1538:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1538:13:1538:27 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1538:23:1538:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1538:23:1538:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1544:16:1544:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1544:22:1544:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1544:41:1549:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1545:13:1548:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1546:20:1546:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1546:20:1546:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1546:20:1546:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1546:29:1546:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1546:29:1546:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1547:20:1547:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1547:20:1547:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1547:20:1547:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1547:29:1547:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1547:29:1547:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1553:23:1553:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1553:23:1553:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1553:34:1553:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1553:45:1556:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1554:13:1554:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1554:13:1554:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1554:13:1554:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1554:13:1554:27 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1554:23:1554:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1554:23:1554:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1555:13:1555:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1555:13:1555:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1555:13:1555:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1555:13:1555:27 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1555:23:1555:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1555:23:1555:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1561:16:1561:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1561:22:1561:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1561:41:1566:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1562:13:1565:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1563:20:1563:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1563:20:1563:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1563:20:1563:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1563:29:1563:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1563:29:1563:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1564:20:1564:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1564:20:1564:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1564:20:1564:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1564:29:1564:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1564:29:1564:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1570:23:1570:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1570:23:1570:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1570:34:1570:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1570:45:1573:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1571:13:1571:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1571:13:1571:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1571:13:1571:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1571:13:1571:27 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1571:23:1571:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1571:23:1571:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1572:13:1572:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1572:13:1572:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1572:13:1572:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1572:13:1572:27 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1572:23:1572:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1572:23:1572:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1578:16:1578:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1578:22:1578:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1578:41:1583:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1579:13:1582:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1580:20:1580:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1580:20:1580:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1580:20:1580:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1580:29:1580:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1580:29:1580:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1581:20:1581:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1581:20:1581:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1581:20:1581:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1581:29:1581:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1581:29:1581:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1587:23:1587:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1587:23:1587:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1587:34:1587:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1587:45:1590:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1588:13:1588:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1588:13:1588:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1588:13:1588:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1588:13:1588:27 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1588:23:1588:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1588:23:1588:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1589:13:1589:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1589:13:1589:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1589:13:1589:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1589:13:1589:27 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1589:23:1589:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1589:23:1589:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1595:19:1595:22 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1595:25:1595:27 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1595:44:1600:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1596:13:1599:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1597:20:1597:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1597:20:1597:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1597:20:1597:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1597:29:1597:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1597:29:1597:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1598:20:1598:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1598:20:1598:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1598:20:1598:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1598:29:1598:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1598:29:1598:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1604:26:1604:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1604:26:1604:34 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1604:37:1604:39 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1604:48:1607:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1605:13:1605:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1605:13:1605:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1605:13:1605:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1605:13:1605:27 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1605:23:1605:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1605:23:1605:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1606:13:1606:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1606:13:1606:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1606:13:1606:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1606:13:1606:27 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1606:23:1606:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1606:23:1606:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1612:18:1612:21 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1612:24:1612:26 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1612:43:1617:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1613:13:1616:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1614:20:1614:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1614:20:1614:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1614:20:1614:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1614:29:1614:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1614:29:1614:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1615:20:1615:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1615:20:1615:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1615:20:1615:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1615:29:1615:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1615:29:1615:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1621:25:1621:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1621:25:1621:33 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1621:36:1621:38 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1621:47:1624:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1622:13:1622:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1622:13:1622:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1622:13:1622:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1622:13:1622:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1622:23:1622:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1622:23:1622:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1623:13:1623:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1623:13:1623:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1623:13:1623:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1623:13:1623:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1623:23:1623:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1623:23:1623:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1629:19:1629:22 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1629:25:1629:27 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1629:44:1634:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1630:13:1633:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1631:20:1631:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1631:20:1631:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1631:20:1631:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1631:29:1631:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1631:29:1631:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1632:20:1632:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1632:20:1632:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1632:20:1632:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1632:29:1632:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1632:29:1632:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1638:26:1638:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1638:26:1638:34 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1638:37:1638:39 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1638:48:1641:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1639:13:1639:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1639:13:1639:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1639:13:1639:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1639:13:1639:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1639:23:1639:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1639:23:1639:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1640:13:1640:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1640:13:1640:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1640:13:1640:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1640:13:1640:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1640:23:1640:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1640:23:1640:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1646:16:1646:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1646:22:1646:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1646:40:1651:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1647:13:1650:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1648:20:1648:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1648:20:1648:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1648:20:1648:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1648:30:1648:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1649:20:1649:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1649:20:1649:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1649:20:1649:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1649:30:1649:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1655:23:1655:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1655:23:1655:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1655:34:1655:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1655:44:1658:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1656:13:1656:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1656:13:1656:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1656:13:1656:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1656:13:1656:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1656:24:1656:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1657:13:1657:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1657:13:1657:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1657:13:1657:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1657:13:1657:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1657:24:1657:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1663:16:1663:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1663:22:1663:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1663:40:1668:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1664:13:1667:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1665:20:1665:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1665:20:1665:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1665:20:1665:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1665:30:1665:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1666:20:1666:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1666:20:1666:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1666:20:1666:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1666:30:1666:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1672:23:1672:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1672:23:1672:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1672:34:1672:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1672:44:1675:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1673:13:1673:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1673:13:1673:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1673:13:1673:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1673:13:1673:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1673:24:1673:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1674:13:1674:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1674:13:1674:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1674:13:1674:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1674:13:1674:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1674:24:1674:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1680:16:1680:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1680:30:1685:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1681:13:1684:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1682:20:1682:26 | - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1682:21:1682:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1682:21:1682:26 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1683:20:1683:26 | - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1683:21:1683:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1683:21:1683:26 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1690:16:1690:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1690:30:1695:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1691:13:1694:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1692:20:1692:26 | ! ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1692:21:1692:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1692:21:1692:26 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1693:20:1693:26 | ! ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1693:21:1693:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1693:21:1693:26 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1699:15:1699:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1699:15:1699:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1699:22:1699:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1699:22:1699:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1699:44:1701:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:13:1700:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1700:13:1700:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1700:13:1700:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1700:13:1700:29 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:13:1700:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:23:1700:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1700:23:1700:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1700:23:1700:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1700:34:1700:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1700:34:1700:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1700:34:1700:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1700:34:1700:50 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:44:1700:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1700:44:1700:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1700:44:1700:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1703:15:1703:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1703:15:1703:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1703:22:1703:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1703:22:1703:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1703:44:1705:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:13:1704:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1704:13:1704:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1704:13:1704:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1704:13:1704:29 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:13:1704:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:23:1704:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1704:23:1704:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1704:23:1704:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1704:34:1704:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1704:34:1704:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1704:34:1704:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1704:34:1704:50 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:44:1704:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1704:44:1704:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1704:44:1704:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1709:24:1709:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1709:24:1709:28 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1709:31:1709:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1709:31:1709:35 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1709:75:1711:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:1709:75:1711:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | +| main.rs:1710:13:1710:29 | (...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:13:1710:63 | ... .partial_cmp(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:1710:13:1710:63 | ... .partial_cmp(...) | T | {EXTERNAL LOCATION} | Ordering | +| main.rs:1710:14:1710:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1710:14:1710:17 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1710:14:1710:19 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:14:1710:28 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:23:1710:26 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1710:23:1710:26 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1710:23:1710:28 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:43:1710:62 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1710:43:1710:62 | &... | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:44:1710:62 | (...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:45:1710:49 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1710:45:1710:49 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1710:45:1710:51 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:45:1710:61 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:55:1710:59 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1710:55:1710:59 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1710:55:1710:61 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1713:15:1713:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1713:15:1713:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1713:22:1713:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1713:22:1713:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1713:44:1715:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:13:1714:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1714:13:1714:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1714:13:1714:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1714:13:1714:28 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:13:1714:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:22:1714:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1714:22:1714:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1714:22:1714:28 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1714:33:1714:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1714:33:1714:36 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1714:33:1714:38 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1714:33:1714:48 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:42:1714:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1714:42:1714:46 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1714:42:1714:48 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1717:15:1717:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1717:15:1717:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1717:22:1717:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1717:22:1717:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1717:44:1719:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:13:1718:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1718:13:1718:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1718:13:1718:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1718:13:1718:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:13:1718:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:23:1718:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1718:23:1718:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1718:23:1718:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1718:34:1718:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1718:34:1718:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1718:34:1718:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1718:34:1718:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:44:1718:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1718:44:1718:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1718:44:1718:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1721:15:1721:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1721:15:1721:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1721:22:1721:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1721:22:1721:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1721:44:1723:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:13:1722:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1722:13:1722:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1722:13:1722:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1722:13:1722:28 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:13:1722:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:22:1722:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1722:22:1722:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1722:22:1722:28 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1722:33:1722:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1722:33:1722:36 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1722:33:1722:38 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1722:33:1722:48 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:42:1722:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1722:42:1722:46 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1722:42:1722:48 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1725:15:1725:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1725:15:1725:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1725:22:1725:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1725:22:1725:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1725:44:1727:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:13:1726:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1726:13:1726:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1726:13:1726:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1726:13:1726:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:13:1726:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:23:1726:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1726:23:1726:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1726:23:1726:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1726:34:1726:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1726:34:1726:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1726:34:1726:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1726:34:1726:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:44:1726:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1726:44:1726:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1726:44:1726:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1730:26:1730:26 | a | | main.rs:1730:18:1730:23 | T | +| main.rs:1730:32:1730:32 | b | | main.rs:1730:18:1730:23 | T | +| main.rs:1730:51:1732:5 | { ... } | | main.rs:1730:18:1730:23 | T::Output[Add] | +| main.rs:1731:9:1731:9 | a | | main.rs:1730:18:1730:23 | T | +| main.rs:1731:9:1731:13 | ... + ... | | main.rs:1730:18:1730:23 | T::Output[Add] | +| main.rs:1731:13:1731:13 | b | | main.rs:1730:18:1730:23 | T | +| main.rs:1734:16:1865:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1738:13:1738:18 | i64_eq | | {EXTERNAL LOCATION} | bool | +| main.rs:1738:22:1738:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1738:23:1738:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1738:23:1738:34 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1738:31:1738:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1739:13:1739:18 | i64_ne | | {EXTERNAL LOCATION} | bool | +| main.rs:1739:22:1739:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1739:23:1739:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1739:23:1739:34 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1739:31:1739:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1740:13:1740:18 | i64_lt | | {EXTERNAL LOCATION} | bool | +| main.rs:1740:22:1740:34 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1740:23:1740:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1740:23:1740:33 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1740:30:1740:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1741:13:1741:18 | i64_le | | {EXTERNAL LOCATION} | bool | +| main.rs:1741:22:1741:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1741:23:1741:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1741:23:1741:34 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1741:31:1741:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1742:13:1742:18 | i64_gt | | {EXTERNAL LOCATION} | bool | +| main.rs:1742:22:1742:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1742:23:1742:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1742:23:1742:34 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1742:30:1742:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1743:13:1743:18 | i64_ge | | {EXTERNAL LOCATION} | bool | +| main.rs:1743:22:1743:37 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1743:23:1743:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1743:23:1743:36 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1743:32:1743:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1746:13:1746:19 | i64_add | | {EXTERNAL LOCATION} | i64 | +| main.rs:1746:23:1746:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1746:23:1746:35 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1746:31:1746:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1747:13:1747:19 | i64_sub | | {EXTERNAL LOCATION} | i64 | +| main.rs:1747:23:1747:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1747:23:1747:35 | ... - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1747:31:1747:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1748:13:1748:19 | i64_mul | | {EXTERNAL LOCATION} | i64 | +| main.rs:1748:23:1748:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1748:23:1748:35 | ... * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1748:31:1748:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1749:13:1749:19 | i64_div | | {EXTERNAL LOCATION} | i64 | +| main.rs:1749:23:1749:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1749:23:1749:35 | ... / ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1749:31:1749:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1750:13:1750:19 | i64_rem | | {EXTERNAL LOCATION} | i64 | +| main.rs:1750:23:1750:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1750:23:1750:35 | ... % ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1750:31:1750:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1751:13:1751:25 | i64_param_add | | {EXTERNAL LOCATION} | i64 | +| main.rs:1751:29:1751:49 | param_add(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:1751:39:1751:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1751:45:1751:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1754:17:1754:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1754:34:1754:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1755:9:1755:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1755:9:1755:31 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1755:27:1755:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1757:17:1757:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1757:34:1757:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1758:9:1758:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1758:9:1758:31 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1758:27:1758:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1760:17:1760:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1760:34:1760:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1761:9:1761:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1761:9:1761:31 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1761:27:1761:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1763:17:1763:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1763:34:1763:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1764:9:1764:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1764:9:1764:31 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1764:27:1764:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1766:17:1766:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1766:34:1766:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1767:9:1767:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1767:9:1767:31 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1767:27:1767:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1770:13:1770:22 | i64_bitand | | {EXTERNAL LOCATION} | i64 | +| main.rs:1770:26:1770:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1770:26:1770:38 | ... & ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1770:34:1770:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1771:13:1771:21 | i64_bitor | | {EXTERNAL LOCATION} | i64 | +| main.rs:1771:25:1771:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1771:25:1771:37 | ... \| ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1771:33:1771:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1772:13:1772:22 | i64_bitxor | | {EXTERNAL LOCATION} | i64 | +| main.rs:1772:26:1772:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1772:26:1772:38 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1772:34:1772:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1773:13:1773:19 | i64_shl | | {EXTERNAL LOCATION} | i64 | +| main.rs:1773:23:1773:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1773:23:1773:36 | ... << ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1773:32:1773:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1774:13:1774:19 | i64_shr | | {EXTERNAL LOCATION} | i64 | +| main.rs:1774:23:1774:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1774:23:1774:36 | ... >> ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1774:32:1774:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1777:17:1777:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1777:37:1777:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1778:9:1778:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1778:9:1778:34 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1778:30:1778:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1780:17:1780:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1780:36:1780:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1781:9:1781:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1781:9:1781:33 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1781:29:1781:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1783:17:1783:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1783:37:1783:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1784:9:1784:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1784:9:1784:34 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1784:30:1784:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1786:17:1786:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1786:34:1786:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1787:9:1787:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1787:9:1787:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1787:28:1787:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1789:17:1789:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1789:34:1789:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1790:9:1790:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1790:9:1790:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1790:28:1790:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1792:13:1792:19 | i64_neg | | {EXTERNAL LOCATION} | i64 | +| main.rs:1792:23:1792:28 | - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1792:24:1792:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1793:13:1793:19 | i64_not | | {EXTERNAL LOCATION} | i64 | +| main.rs:1793:23:1793:28 | ! ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1793:24:1793:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1796:13:1796:14 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1796:18:1796:36 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1796:28:1796:28 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1796:34:1796:34 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1797:13:1797:14 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1797:18:1797:36 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1797:28:1797:28 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1797:34:1797:34 | 4 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1800:13:1800:19 | vec2_eq | | {EXTERNAL LOCATION} | bool | +| main.rs:1800:23:1800:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1800:23:1800:30 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1800:29:1800:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1801:13:1801:19 | vec2_ne | | {EXTERNAL LOCATION} | bool | +| main.rs:1801:23:1801:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1801:23:1801:30 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1801:29:1801:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1802:13:1802:19 | vec2_lt | | {EXTERNAL LOCATION} | bool | +| main.rs:1802:23:1802:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1802:23:1802:29 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1802:28:1802:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1803:13:1803:19 | vec2_le | | {EXTERNAL LOCATION} | bool | +| main.rs:1803:23:1803:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1803:23:1803:30 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1803:29:1803:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1804:13:1804:19 | vec2_gt | | {EXTERNAL LOCATION} | bool | +| main.rs:1804:23:1804:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1804:23:1804:29 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1804:28:1804:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1805:13:1805:19 | vec2_ge | | {EXTERNAL LOCATION} | bool | +| main.rs:1805:23:1805:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1805:23:1805:30 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1805:29:1805:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1808:13:1808:20 | vec2_add | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1808:24:1808:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1808:24:1808:30 | ... + ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1808:29:1808:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1809:13:1809:20 | vec2_sub | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1809:24:1809:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1809:24:1809:30 | ... - ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1809:29:1809:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1810:13:1810:20 | vec2_mul | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1810:24:1810:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1810:24:1810:30 | ... * ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1810:29:1810:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1811:13:1811:20 | vec2_div | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1811:24:1811:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1811:24:1811:30 | ... / ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1811:29:1811:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1812:13:1812:20 | vec2_rem | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1812:24:1812:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1812:24:1812:30 | ... % ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1812:29:1812:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1815:17:1815:31 | vec2_add_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1815:35:1815:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1816:9:1816:23 | vec2_add_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1816:9:1816:29 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1816:28:1816:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1818:17:1818:31 | vec2_sub_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1818:35:1818:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1819:9:1819:23 | vec2_sub_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1819:9:1819:29 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1819:28:1819:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1821:17:1821:31 | vec2_mul_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1821:35:1821:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1822:9:1822:23 | vec2_mul_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1822:9:1822:29 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1822:28:1822:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1824:17:1824:31 | vec2_div_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1824:35:1824:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1825:9:1825:23 | vec2_div_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1825:9:1825:29 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1825:28:1825:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1827:17:1827:31 | vec2_rem_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1827:35:1827:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1828:9:1828:23 | vec2_rem_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1828:9:1828:29 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1828:28:1828:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1831:13:1831:23 | vec2_bitand | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1831:27:1831:28 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1831:27:1831:33 | ... & ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1831:32:1831:33 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1832:13:1832:22 | vec2_bitor | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1832:26:1832:27 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1832:26:1832:32 | ... \| ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1832:31:1832:32 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1833:13:1833:23 | vec2_bitxor | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1833:27:1833:28 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1833:27:1833:33 | ... ^ ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1833:32:1833:33 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1834:13:1834:20 | vec2_shl | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1834:24:1834:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1834:24:1834:33 | ... << ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1834:30:1834:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1835:13:1835:20 | vec2_shr | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1835:24:1835:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1835:24:1835:33 | ... >> ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1835:30:1835:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1838:17:1838:34 | vec2_bitand_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1838:38:1838:39 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1839:9:1839:26 | vec2_bitand_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1839:9:1839:32 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1839:31:1839:32 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1841:17:1841:33 | vec2_bitor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1841:37:1841:38 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1842:9:1842:25 | vec2_bitor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1842:9:1842:31 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1842:30:1842:31 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1844:17:1844:34 | vec2_bitxor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1844:38:1844:39 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1845:9:1845:26 | vec2_bitxor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1845:9:1845:32 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1845:31:1845:32 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1847:17:1847:31 | vec2_shl_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1847:35:1847:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1848:9:1848:23 | vec2_shl_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1848:9:1848:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1848:29:1848:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1850:17:1850:31 | vec2_shr_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1850:35:1850:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1851:9:1851:23 | vec2_shr_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1851:9:1851:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1851:29:1851:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1854:13:1854:20 | vec2_neg | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1854:24:1854:26 | - ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1854:25:1854:26 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1855:13:1855:20 | vec2_not | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1855:24:1855:26 | ! ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1855:25:1855:26 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1858:13:1858:24 | default_vec2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1858:28:1858:45 | ...::default(...) | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1859:13:1859:26 | vec2_zero_plus | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1859:30:1859:48 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1859:30:1859:63 | ... + ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1859:40:1859:40 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1859:46:1859:46 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1859:52:1859:63 | default_vec2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1863:13:1863:24 | default_vec2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1863:28:1863:45 | ...::default(...) | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1864:13:1864:26 | vec2_zero_plus | | {EXTERNAL LOCATION} | bool | +| main.rs:1864:30:1864:48 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1864:30:1864:64 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1864:40:1864:40 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1864:46:1864:46 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1864:53:1864:64 | default_vec2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1874:18:1874:21 | SelfParam | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1874:24:1874:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1877:25:1879:5 | { ... } | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1878:9:1878:10 | S1 | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1881:41:1883:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1881:41:1883:5 | { ... } | dyn(Output) | main.rs:1871:5:1871:14 | S1 | +| main.rs:1882:9:1882:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1882:9:1882:20 | { ... } | dyn(Output) | main.rs:1871:5:1871:14 | S1 | +| main.rs:1882:17:1882:18 | S1 | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1885:41:1887:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1885:41:1887:5 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:1886:9:1886:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1886:9:1886:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:1895:13:1895:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | +| main.rs:1895:13:1895:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | +| main.rs:1895:13:1895:42 | SelfParam | Ptr.TRefMut | main.rs:1889:5:1889:14 | S2 | +| main.rs:1896:13:1896:15 | _cx | | {EXTERNAL LOCATION} | &mut | +| main.rs:1896:13:1896:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | +| main.rs:1897:44:1899:9 | { ... } | | {EXTERNAL LOCATION} | Poll | +| main.rs:1897:44:1899:9 | { ... } | T | main.rs:1871:5:1871:14 | S1 | +| main.rs:1898:13:1898:38 | ...::Ready(...) | | {EXTERNAL LOCATION} | Poll | +| main.rs:1898:13:1898:38 | ...::Ready(...) | T | main.rs:1871:5:1871:14 | S1 | +| main.rs:1898:36:1898:37 | S1 | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1902:41:1904:5 | { ... } | | main.rs:1889:5:1889:14 | S2 | +| main.rs:1903:9:1903:10 | S2 | | main.rs:1889:5:1889:14 | S2 | +| main.rs:1906:22:1914:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1907:9:1907:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1907:9:1907:12 | f1(...) | dyn(Output) | main.rs:1871:5:1871:14 | S1 | +| main.rs:1907:9:1907:18 | await ... | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1907:9:1907:22 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:1908:9:1908:12 | f2(...) | | main.rs:1881:16:1881:39 | impl ... | +| main.rs:1908:9:1908:18 | await ... | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1908:9:1908:22 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:1909:9:1909:12 | f3(...) | | main.rs:1885:16:1885:39 | impl ... | +| main.rs:1909:9:1909:18 | await ... | | {EXTERNAL LOCATION} | () | +| main.rs:1910:9:1910:12 | f4(...) | | main.rs:1902:16:1902:39 | impl ... | +| main.rs:1910:9:1910:18 | await ... | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1910:9:1910:22 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:1911:9:1911:10 | S2 | | main.rs:1889:5:1889:14 | S2 | +| main.rs:1911:9:1911:16 | await S2 | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1911:9:1911:20 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:1912:13:1912:13 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1912:13:1912:13 | b | dyn(Output) | main.rs:1871:5:1871:14 | S1 | +| main.rs:1912:17:1912:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1912:17:1912:28 | { ... } | dyn(Output) | main.rs:1871:5:1871:14 | S1 | +| main.rs:1912:25:1912:26 | S1 | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1913:9:1913:9 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1913:9:1913:9 | b | dyn(Output) | main.rs:1871:5:1871:14 | S1 | +| main.rs:1913:9:1913:15 | await b | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1913:9:1913:19 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:1924:15:1924:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1924:15:1924:19 | SelfParam | TRef | main.rs:1923:5:1925:5 | Self [trait Trait1] | +| main.rs:1924:22:1924:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1928:15:1928:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1928:15:1928:19 | SelfParam | TRef | main.rs:1927:5:1929:5 | Self [trait Trait2] | +| main.rs:1928:22:1928:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1932:15:1932:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1932:15:1932:19 | SelfParam | TRef | main.rs:1918:5:1919:14 | S1 | +| main.rs:1932:22:1932:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1936:15:1936:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1936:15:1936:19 | SelfParam | TRef | main.rs:1918:5:1919:14 | S1 | +| main.rs:1936:22:1936:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1939:37:1941:5 | { ... } | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1940:9:1940:10 | S1 | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1944:18:1944:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1944:18:1944:22 | SelfParam | TRef | main.rs:1943:5:1945:5 | Self [trait MyTrait] | +| main.rs:1948:18:1948:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1948:18:1948:22 | SelfParam | TRef | main.rs:1918:5:1919:14 | S1 | +| main.rs:1948:31:1950:9 | { ... } | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1949:13:1949:14 | S2 | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1954:18:1954:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1954:18:1954:22 | SelfParam | TRef | main.rs:1921:5:1921:22 | S3 | +| main.rs:1954:18:1954:22 | SelfParam | TRef.T3 | main.rs:1953:10:1953:17 | T | +| main.rs:1954:30:1957:9 | { ... } | | main.rs:1953:10:1953:17 | T | +| main.rs:1955:17:1955:21 | S3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1955:17:1955:21 | S3(...) | | main.rs:1921:5:1921:22 | S3 | +| main.rs:1955:17:1955:21 | S3(...) | TRef | main.rs:1921:5:1921:22 | S3 | +| main.rs:1955:17:1955:21 | S3(...) | TRef.T3 | main.rs:1953:10:1953:17 | T | +| main.rs:1955:25:1955:28 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1955:25:1955:28 | self | TRef | main.rs:1921:5:1921:22 | S3 | +| main.rs:1955:25:1955:28 | self | TRef.T3 | main.rs:1953:10:1953:17 | T | +| main.rs:1956:13:1956:21 | t.clone() | | main.rs:1953:10:1953:17 | T | +| main.rs:1960:45:1962:5 | { ... } | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1961:9:1961:10 | S1 | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1964:41:1964:41 | t | | main.rs:1964:26:1964:38 | B | +| main.rs:1964:52:1966:5 | { ... } | | main.rs:1964:23:1964:23 | A | +| main.rs:1965:9:1965:9 | t | | main.rs:1964:26:1964:38 | B | +| main.rs:1965:9:1965:17 | t.get_a() | | main.rs:1964:23:1964:23 | A | +| main.rs:1968:34:1968:34 | x | | main.rs:1968:24:1968:31 | T | +| main.rs:1968:59:1970:5 | { ... } | | main.rs:1968:43:1968:57 | impl ... | +| main.rs:1968:59:1970:5 | { ... } | impl(T) | main.rs:1968:24:1968:31 | T | +| main.rs:1969:9:1969:13 | S3(...) | | main.rs:1921:5:1921:22 | S3 | +| main.rs:1969:9:1969:13 | S3(...) | | main.rs:1968:43:1968:57 | impl ... | +| main.rs:1969:9:1969:13 | S3(...) | T3 | main.rs:1968:24:1968:31 | T | +| main.rs:1969:9:1969:13 | S3(...) | impl(T) | main.rs:1968:24:1968:31 | T | +| main.rs:1969:12:1969:12 | x | | main.rs:1968:24:1968:31 | T | +| main.rs:1972:34:1972:34 | x | | main.rs:1972:24:1972:31 | T | +| main.rs:1972:67:1974:5 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:1972:67:1974:5 | { ... } | T | main.rs:1972:50:1972:64 | impl ... | +| main.rs:1972:67:1974:5 | { ... } | T.impl(T) | main.rs:1972:24:1972:31 | T | +| main.rs:1973:9:1973:19 | Some(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:1973:9:1973:19 | Some(...) | T | main.rs:1921:5:1921:22 | S3 | +| main.rs:1973:9:1973:19 | Some(...) | T | main.rs:1972:50:1972:64 | impl ... | +| main.rs:1973:9:1973:19 | Some(...) | T.T3 | main.rs:1972:24:1972:31 | T | +| main.rs:1973:9:1973:19 | Some(...) | T.impl(T) | main.rs:1972:24:1972:31 | T | +| main.rs:1973:14:1973:18 | S3(...) | | main.rs:1921:5:1921:22 | S3 | +| main.rs:1973:14:1973:18 | S3(...) | T3 | main.rs:1972:24:1972:31 | T | +| main.rs:1973:17:1973:17 | x | | main.rs:1972:24:1972:31 | T | +| main.rs:1976:34:1976:34 | x | | main.rs:1976:24:1976:31 | T | +| main.rs:1976:78:1978:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1976:78:1978:5 | { ... } | T0 | main.rs:1976:44:1976:58 | impl ... | +| main.rs:1976:78:1978:5 | { ... } | T0.impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1976:78:1978:5 | { ... } | T1 | main.rs:1976:61:1976:75 | impl ... | +| main.rs:1976:78:1978:5 | { ... } | T1.impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1977:9:1977:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1977:9:1977:30 | TupleExpr | T0 | main.rs:1921:5:1921:22 | S3 | +| main.rs:1977:9:1977:30 | TupleExpr | T0 | main.rs:1976:44:1976:58 | impl ... | +| main.rs:1977:9:1977:30 | TupleExpr | T0.T3 | main.rs:1976:24:1976:31 | T | +| main.rs:1977:9:1977:30 | TupleExpr | T0.impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1977:9:1977:30 | TupleExpr | T1 | main.rs:1921:5:1921:22 | S3 | +| main.rs:1977:9:1977:30 | TupleExpr | T1 | main.rs:1976:61:1976:75 | impl ... | +| main.rs:1977:9:1977:30 | TupleExpr | T1.T3 | main.rs:1976:24:1976:31 | T | +| main.rs:1977:9:1977:30 | TupleExpr | T1.impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1977:10:1977:22 | S3(...) | | main.rs:1921:5:1921:22 | S3 | +| main.rs:1977:10:1977:22 | S3(...) | | main.rs:1976:44:1976:58 | impl ... | +| main.rs:1977:10:1977:22 | S3(...) | T3 | main.rs:1976:24:1976:31 | T | +| main.rs:1977:10:1977:22 | S3(...) | impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1977:13:1977:13 | x | | main.rs:1976:24:1976:31 | T | +| main.rs:1977:13:1977:21 | x.clone() | | main.rs:1976:24:1976:31 | T | +| main.rs:1977:25:1977:29 | S3(...) | | main.rs:1921:5:1921:22 | S3 | +| main.rs:1977:25:1977:29 | S3(...) | | main.rs:1976:61:1976:75 | impl ... | +| main.rs:1977:25:1977:29 | S3(...) | T3 | main.rs:1976:24:1976:31 | T | +| main.rs:1977:25:1977:29 | S3(...) | impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1977:28:1977:28 | x | | main.rs:1976:24:1976:31 | T | +| main.rs:1980:26:1980:26 | t | | main.rs:1980:29:1980:43 | impl ... | +| main.rs:1980:51:1982:5 | { ... } | | main.rs:1980:23:1980:23 | A | +| main.rs:1981:9:1981:9 | t | | main.rs:1980:29:1980:43 | impl ... | +| main.rs:1981:9:1981:17 | t.get_a() | | main.rs:1980:23:1980:23 | A | +| main.rs:1984:16:1998:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1985:13:1985:13 | x | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1985:17:1985:20 | f1(...) | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1986:9:1986:9 | x | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1986:9:1986:14 | x.f1() | | {EXTERNAL LOCATION} | () | +| main.rs:1987:9:1987:9 | x | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1987:9:1987:14 | x.f2() | | {EXTERNAL LOCATION} | () | +| main.rs:1988:13:1988:13 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1988:17:1988:32 | get_a_my_trait(...) | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1989:13:1989:13 | b | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1989:17:1989:33 | uses_my_trait1(...) | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1989:32:1989:32 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1990:13:1990:13 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1990:17:1990:32 | get_a_my_trait(...) | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1991:13:1991:13 | c | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1991:17:1991:33 | uses_my_trait2(...) | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1991:32:1991:32 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1992:13:1992:13 | d | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1992:17:1992:34 | uses_my_trait2(...) | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1992:32:1992:33 | S1 | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1993:13:1993:13 | e | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1993:17:1993:35 | get_a_my_trait2(...) | | main.rs:1968:43:1968:57 | impl ... | +| main.rs:1993:17:1993:35 | get_a_my_trait2(...) | impl(T) | main.rs:1918:5:1919:14 | S1 | +| main.rs:1993:17:1993:43 | ... .get_a() | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1993:33:1993:34 | S1 | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1996:13:1996:13 | f | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1996:17:1996:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:1996:17:1996:35 | get_a_my_trait3(...) | T | main.rs:1972:50:1972:64 | impl ... | +| main.rs:1996:17:1996:35 | get_a_my_trait3(...) | T.impl(T) | main.rs:1918:5:1919:14 | S1 | +| main.rs:1996:17:1996:44 | ... .unwrap() | | main.rs:1972:50:1972:64 | impl ... | +| main.rs:1996:17:1996:44 | ... .unwrap() | impl(T) | main.rs:1918:5:1919:14 | S1 | +| main.rs:1996:17:1996:52 | ... .get_a() | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1996:33:1996:34 | S1 | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1997:13:1997:13 | g | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | T0 | main.rs:1976:44:1976:58 | impl ... | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | T0.impl(T) | main.rs:1918:5:1919:14 | S1 | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | T1 | main.rs:1976:61:1976:75 | impl ... | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | T1.impl(T) | main.rs:1918:5:1919:14 | S1 | +| main.rs:1997:17:1997:37 | ... .0 | | main.rs:1976:44:1976:58 | impl ... | +| main.rs:1997:17:1997:37 | ... .0 | impl(T) | main.rs:1918:5:1919:14 | S1 | +| main.rs:1997:17:1997:45 | ... .get_a() | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1997:33:1997:34 | S1 | | main.rs:1918:5:1919:14 | S1 | +| main.rs:2008:16:2008:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2008:16:2008:20 | SelfParam | TRef | main.rs:2004:5:2005:13 | S | +| main.rs:2008:31:2010:9 | { ... } | | main.rs:2004:5:2005:13 | S | +| main.rs:2009:13:2009:13 | S | | main.rs:2004:5:2005:13 | S | +| main.rs:2019:26:2021:9 | { ... } | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2019:26:2021:9 | { ... } | T | main.rs:2018:10:2018:10 | T | +| main.rs:2020:13:2020:38 | MyVec {...} | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2020:13:2020:38 | MyVec {...} | T | main.rs:2018:10:2018:10 | T | +| main.rs:2020:27:2020:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2020:27:2020:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2020:27:2020:36 | ...::new(...) | T | main.rs:2018:10:2018:10 | T | +| main.rs:2023:17:2023:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:2023:17:2023:25 | SelfParam | TRefMut | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2023:17:2023:25 | SelfParam | TRefMut.T | main.rs:2018:10:2018:10 | T | +| main.rs:2023:28:2023:32 | value | | main.rs:2018:10:2018:10 | T | +| main.rs:2023:38:2025:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2024:13:2024:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:2024:13:2024:16 | self | TRefMut | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2024:13:2024:16 | self | TRefMut.T | main.rs:2018:10:2018:10 | T | +| main.rs:2024:13:2024:21 | self.data | | {EXTERNAL LOCATION} | Vec | +| main.rs:2024:13:2024:21 | self.data | A | {EXTERNAL LOCATION} | Global | +| main.rs:2024:13:2024:21 | self.data | T | main.rs:2018:10:2018:10 | T | +| main.rs:2024:13:2024:33 | ... .push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2024:28:2024:32 | value | | main.rs:2018:10:2018:10 | T | +| main.rs:2032:18:2032:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2032:18:2032:22 | SelfParam | TRef | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2032:18:2032:22 | SelfParam | TRef.T | main.rs:2028:10:2028:10 | T | +| main.rs:2032:25:2032:29 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2032:56:2034:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2032:56:2034:9 | { ... } | TRef | main.rs:2028:10:2028:10 | T | +| main.rs:2033:13:2033:29 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2033:13:2033:29 | &... | TRef | {EXTERNAL LOCATION} | u8 | +| main.rs:2033:13:2033:29 | &... | TRef | main.rs:2028:10:2028:10 | T | +| main.rs:2033:14:2033:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2033:14:2033:17 | self | TRef | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2033:14:2033:17 | self | TRef.T | main.rs:2028:10:2028:10 | T | +| main.rs:2033:14:2033:22 | self.data | | {EXTERNAL LOCATION} | Vec | +| main.rs:2033:14:2033:22 | self.data | A | {EXTERNAL LOCATION} | Global | +| main.rs:2033:14:2033:22 | self.data | T | main.rs:2028:10:2028:10 | T | +| main.rs:2033:14:2033:29 | ...[index] | | {EXTERNAL LOCATION} | u8 | +| main.rs:2033:14:2033:29 | ...[index] | | main.rs:2028:10:2028:10 | T | +| main.rs:2033:24:2033:28 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2037:22:2037:26 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2037:22:2037:26 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2037:22:2037:26 | slice | TRef.TSlice | main.rs:2004:5:2005:13 | S | +| main.rs:2037:35:2039:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2038:13:2038:13 | x | | main.rs:2004:5:2005:13 | S | +| main.rs:2038:17:2038:21 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2038:17:2038:21 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2038:17:2038:21 | slice | TRef.TSlice | main.rs:2004:5:2005:13 | S | +| main.rs:2038:17:2038:24 | slice[0] | | main.rs:2004:5:2005:13 | S | +| main.rs:2038:17:2038:30 | ... .foo() | | main.rs:2004:5:2005:13 | S | +| main.rs:2038:23:2038:23 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2041:37:2041:37 | a | | main.rs:2041:20:2041:34 | T | +| main.rs:2041:43:2041:43 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2044:5:2046:5 | { ... } | | main.rs:2041:20:2041:34 | T::Output[Index] | +| main.rs:2045:9:2045:9 | a | | main.rs:2041:20:2041:34 | T | +| main.rs:2045:9:2045:12 | a[b] | | main.rs:2041:20:2041:34 | T::Output[Index] | +| main.rs:2045:11:2045:11 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2048:16:2059:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2049:17:2049:19 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2049:17:2049:19 | vec | T | main.rs:2004:5:2005:13 | S | +| main.rs:2049:23:2049:34 | ...::new(...) | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2049:23:2049:34 | ...::new(...) | T | main.rs:2004:5:2005:13 | S | +| main.rs:2050:9:2050:11 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2050:9:2050:11 | vec | T | main.rs:2004:5:2005:13 | S | +| main.rs:2050:9:2050:19 | vec.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2050:18:2050:18 | S | | main.rs:2004:5:2005:13 | S | +| main.rs:2051:9:2051:11 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2051:9:2051:11 | vec | T | main.rs:2004:5:2005:13 | S | +| main.rs:2051:9:2051:14 | vec[0] | | main.rs:2004:5:2005:13 | S | +| main.rs:2051:9:2051:20 | ... .foo() | | main.rs:2004:5:2005:13 | S | +| main.rs:2051:13:2051:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2053:13:2053:14 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2053:13:2053:14 | xs | TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2053:21:2053:21 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2053:26:2053:28 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2053:26:2053:28 | [...] | TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2053:27:2053:27 | S | | main.rs:2004:5:2005:13 | S | +| main.rs:2054:13:2054:13 | x | | main.rs:2004:5:2005:13 | S | +| main.rs:2054:17:2054:18 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2054:17:2054:18 | xs | TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2054:17:2054:21 | xs[0] | | main.rs:2004:5:2005:13 | S | +| main.rs:2054:17:2054:27 | ... .foo() | | main.rs:2004:5:2005:13 | S | +| main.rs:2054:20:2054:20 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2056:13:2056:13 | y | | main.rs:2004:5:2005:13 | S | +| main.rs:2056:17:2056:35 | param_index(...) | | main.rs:2004:5:2005:13 | S | +| main.rs:2056:29:2056:31 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2056:29:2056:31 | vec | T | main.rs:2004:5:2005:13 | S | +| main.rs:2056:34:2056:34 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2058:9:2058:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2058:23:2058:25 | &xs | | {EXTERNAL LOCATION} | & | +| main.rs:2058:23:2058:25 | &xs | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2058:23:2058:25 | &xs | TRef.TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2058:24:2058:25 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2058:24:2058:25 | xs | TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2063:16:2065:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2064:13:2064:13 | x | | {EXTERNAL LOCATION} | String | +| main.rs:2064:17:2064:46 | MacroExpr | | {EXTERNAL LOCATION} | String | +| main.rs:2064:25:2064:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | +| main.rs:2064:25:2064:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2064:25:2064:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2064:25:2064:45 | ...::must_use(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2064:25:2064:45 | { ... } | | {EXTERNAL LOCATION} | String | +| main.rs:2064:38:2064:45 | "World!" | | {EXTERNAL LOCATION} | & | +| main.rs:2064:38:2064:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2073:19:2073:22 | SelfParam | | main.rs:2069:5:2074:5 | Self [trait MyAdd] | +| main.rs:2073:25:2073:27 | rhs | | main.rs:2069:17:2069:26 | Rhs | +| main.rs:2080:19:2080:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2080:25:2080:29 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2080:45:2082:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2081:13:2081:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2089:19:2089:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2089:25:2089:29 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2089:25:2089:29 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2089:46:2091:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2090:13:2090:18 | * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:2090:14:2090:18 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2090:14:2090:18 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2098:19:2098:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2098:25:2098:29 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2098:46:2104:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2099:13:2103:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| main.rs:2099:13:2103:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | +| main.rs:2099:16:2099:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2099:22:2101:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2099:22:2101:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2100:17:2100:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2100:17:2100:17 | 1 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2101:20:2103:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2101:20:2103:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2102:17:2102:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2102:17:2102:17 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2113:19:2113:22 | SelfParam | | main.rs:2107:5:2107:19 | S | +| main.rs:2113:19:2113:22 | SelfParam | T | main.rs:2109:10:2109:17 | T | +| main.rs:2113:25:2113:29 | other | | main.rs:2107:5:2107:19 | S | +| main.rs:2113:25:2113:29 | other | T | main.rs:2109:10:2109:17 | T | +| main.rs:2113:54:2115:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2113:54:2115:9 | { ... } | T | main.rs:2109:10:2109:17 | T::Output[MyAdd] | +| main.rs:2114:13:2114:39 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2114:13:2114:39 | S(...) | T | main.rs:2109:10:2109:17 | T::Output[MyAdd] | +| main.rs:2114:15:2114:22 | (...) | | main.rs:2109:10:2109:17 | T | +| main.rs:2114:15:2114:38 | ... .my_add(...) | | main.rs:2109:10:2109:17 | T::Output[MyAdd] | +| main.rs:2114:16:2114:19 | self | | main.rs:2107:5:2107:19 | S | +| main.rs:2114:16:2114:19 | self | T | main.rs:2109:10:2109:17 | T | +| main.rs:2114:16:2114:21 | self.0 | | main.rs:2109:10:2109:17 | T | +| main.rs:2114:31:2114:35 | other | | main.rs:2107:5:2107:19 | S | +| main.rs:2114:31:2114:35 | other | T | main.rs:2109:10:2109:17 | T | +| main.rs:2114:31:2114:37 | other.0 | | main.rs:2109:10:2109:17 | T | +| main.rs:2122:19:2122:22 | SelfParam | | main.rs:2107:5:2107:19 | S | +| main.rs:2122:19:2122:22 | SelfParam | T | main.rs:2118:10:2118:17 | T | +| main.rs:2122:25:2122:29 | other | | main.rs:2118:10:2118:17 | T | +| main.rs:2122:51:2124:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2122:51:2124:9 | { ... } | T | main.rs:2118:10:2118:17 | T::Output[MyAdd] | +| main.rs:2123:13:2123:37 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2123:13:2123:37 | S(...) | T | main.rs:2118:10:2118:17 | T::Output[MyAdd] | +| main.rs:2123:15:2123:22 | (...) | | main.rs:2118:10:2118:17 | T | +| main.rs:2123:15:2123:36 | ... .my_add(...) | | main.rs:2118:10:2118:17 | T::Output[MyAdd] | +| main.rs:2123:16:2123:19 | self | | main.rs:2107:5:2107:19 | S | +| main.rs:2123:16:2123:19 | self | T | main.rs:2118:10:2118:17 | T | +| main.rs:2123:16:2123:21 | self.0 | | main.rs:2118:10:2118:17 | T | +| main.rs:2123:31:2123:35 | other | | main.rs:2118:10:2118:17 | T | +| main.rs:2134:19:2134:22 | SelfParam | | main.rs:2107:5:2107:19 | S | +| main.rs:2134:19:2134:22 | SelfParam | T | main.rs:2127:14:2127:14 | T | +| main.rs:2134:25:2134:29 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2134:25:2134:29 | other | TRef | main.rs:2127:14:2127:14 | T | +| main.rs:2134:55:2136:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2134:55:2136:9 | { ... } | T | main.rs:2127:14:2127:14 | T::Output[MyAdd] | +| main.rs:2135:13:2135:37 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2135:13:2135:37 | S(...) | T | main.rs:2127:14:2127:14 | T::Output[MyAdd] | +| main.rs:2135:15:2135:22 | (...) | | main.rs:2127:14:2127:14 | T | +| main.rs:2135:15:2135:36 | ... .my_add(...) | | main.rs:2127:14:2127:14 | T::Output[MyAdd] | +| main.rs:2135:16:2135:19 | self | | main.rs:2107:5:2107:19 | S | +| main.rs:2135:16:2135:19 | self | T | main.rs:2127:14:2127:14 | T | +| main.rs:2135:16:2135:21 | self.0 | | main.rs:2127:14:2127:14 | T | +| main.rs:2135:31:2135:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2135:31:2135:35 | other | TRef | main.rs:2127:14:2127:14 | T | +| main.rs:2141:20:2141:24 | value | | main.rs:2139:18:2139:18 | T | +| main.rs:2146:20:2146:24 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2146:40:2148:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2147:13:2147:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2153:20:2153:24 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2153:41:2159:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2154:13:2158:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| main.rs:2154:13:2158:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | +| main.rs:2154:16:2154:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2154:22:2156:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2154:22:2156:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2155:17:2155:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2155:17:2155:17 | 1 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2156:20:2158:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2156:20:2158:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2157:17:2157:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2157:17:2157:17 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2164:21:2164:25 | value | | main.rs:2162:19:2162:19 | T | +| main.rs:2164:31:2164:31 | x | | main.rs:2162:5:2165:5 | Self [trait MyFrom2] | +| main.rs:2169:21:2169:25 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2169:33:2169:33 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2169:48:2171:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2170:13:2170:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2176:21:2176:25 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2176:34:2176:34 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2176:49:2182:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2177:13:2181:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| main.rs:2177:16:2177:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2177:22:2179:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2178:17:2178:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2179:20:2181:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2180:17:2180:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2187:15:2187:15 | x | | main.rs:2185:5:2191:5 | Self [trait MySelfTrait] | +| main.rs:2190:15:2190:15 | x | | main.rs:2185:5:2191:5 | Self [trait MySelfTrait] | +| main.rs:2195:15:2195:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2195:31:2197:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2196:13:2196:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2196:13:2196:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:2196:17:2196:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2200:15:2200:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2200:32:2202:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2201:13:2201:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2201:13:2201:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:2201:17:2201:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2207:15:2207:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2207:31:2209:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2208:13:2208:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2208:13:2208:13 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2212:15:2212:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2212:32:2214:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:2213:13:2213:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2217:16:2242:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2218:13:2218:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2218:22:2218:23 | 73 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2218:22:2218:23 | 73 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2219:9:2219:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2219:9:2219:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2219:18:2219:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2220:9:2220:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2220:9:2220:23 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2220:18:2220:22 | &5i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2220:18:2220:22 | &5i64 | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2220:19:2220:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2221:9:2221:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2221:9:2221:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2221:18:2221:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2223:9:2223:15 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2223:9:2223:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2223:9:2223:31 | ... .my_add(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2223:9:2223:31 | ... .my_add(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2223:9:2223:31 | ... .my_add(...) | T | main.rs:2107:5:2107:19 | S | +| main.rs:2223:9:2223:31 | ... .my_add(...) | T.T | main.rs:2109:10:2109:17 | T::Output[MyAdd] | +| main.rs:2223:9:2223:31 | ... .my_add(...) | T.T | main.rs:2118:10:2118:17 | T::Output[MyAdd] | +| main.rs:2223:9:2223:31 | ... .my_add(...) | T.T | main.rs:2127:14:2127:14 | T::Output[MyAdd] | +| main.rs:2223:11:2223:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2223:24:2223:30 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2223:24:2223:30 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2223:26:2223:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2224:9:2224:15 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2224:9:2224:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2224:9:2224:28 | ... .my_add(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2224:9:2224:28 | ... .my_add(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2224:11:2224:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2224:24:2224:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2225:9:2225:15 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2225:9:2225:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2225:9:2225:29 | ... .my_add(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2225:9:2225:29 | ... .my_add(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2225:11:2225:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2225:24:2225:28 | &3i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2225:24:2225:28 | &3i64 | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2225:25:2225:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2227:13:2227:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2227:17:2227:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2227:30:2227:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:13:2228:13 | y | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:17:2228:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:30:2228:33 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2229:13:2229:13 | z | | {EXTERNAL LOCATION} | i64 | +| main.rs:2229:22:2229:43 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2229:38:2229:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2230:9:2230:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2230:23:2230:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2230:30:2230:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2231:9:2231:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2231:23:2231:26 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2231:29:2231:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2232:9:2232:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2232:27:2232:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2232:34:2232:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2234:9:2234:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2234:17:2234:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2235:9:2235:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2235:17:2235:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2236:9:2236:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2236:18:2236:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2237:9:2237:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2237:18:2237:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2238:9:2238:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2238:25:2238:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2239:9:2239:30 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2239:25:2239:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2240:9:2240:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2240:25:2240:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2241:9:2241:29 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2241:25:2241:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2249:26:2251:9 | { ... } | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2250:13:2250:25 | MyCallable {...} | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2253:17:2253:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2253:17:2253:21 | SelfParam | TRef | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2253:31:2255:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2254:13:2254:13 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2254:13:2254:13 | 1 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2258:16:2365:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2261:9:2261:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2261:13:2261:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2261:18:2261:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2261:18:2261:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2261:19:2261:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2261:22:2261:22 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2261:25:2261:25 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2261:28:2261:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2262:9:2262:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2262:18:2262:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2262:18:2262:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2262:18:2262:41 | ... .map(...) | | {EXTERNAL LOCATION} | [;] | +| main.rs:2262:19:2262:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2262:22:2262:22 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2262:25:2262:25 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2262:32:2262:40 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | +| main.rs:2262:32:2262:40 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| main.rs:2262:40:2262:40 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2262:43:2262:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2263:9:2263:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2263:13:2263:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2263:18:2263:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2263:18:2263:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2263:18:2263:38 | ... .into_iter() | | {EXTERNAL LOCATION} | IntoIter | +| main.rs:2263:18:2263:38 | ... .into_iter() | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2263:19:2263:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2263:22:2263:22 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2263:25:2263:25 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2263:40:2263:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2265:13:2265:17 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2265:13:2265:17 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2265:13:2265:17 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | +| main.rs:2265:21:2265:31 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2265:21:2265:31 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2265:21:2265:31 | [...] | TArray | {EXTERNAL LOCATION} | u8 | +| main.rs:2265:22:2265:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2265:27:2265:27 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2265:27:2265:27 | 2 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2265:30:2265:30 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2265:30:2265:30 | 3 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2266:9:2266:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2266:13:2266:13 | u | | {EXTERNAL LOCATION} | i32 | +| main.rs:2266:13:2266:13 | u | | {EXTERNAL LOCATION} | u8 | +| main.rs:2266:18:2266:22 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2266:18:2266:22 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2266:18:2266:22 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | +| main.rs:2266:24:2266:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2268:13:2268:17 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2268:13:2268:17 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2268:21:2268:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2268:21:2268:29 | [1u16; 3] | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2268:22:2268:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2268:28:2268:28 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2269:9:2269:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2269:13:2269:13 | u | | {EXTERNAL LOCATION} | u16 | +| main.rs:2269:18:2269:22 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2269:18:2269:22 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2269:24:2269:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2271:13:2271:17 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2271:13:2271:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2271:26:2271:26 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2271:31:2271:39 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2271:31:2271:39 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2271:31:2271:39 | [...] | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2271:32:2271:32 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2271:32:2271:32 | 1 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2271:35:2271:35 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2271:35:2271:35 | 2 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2271:38:2271:38 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2271:38:2271:38 | 3 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2272:9:2272:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2272:13:2272:13 | u | | {EXTERNAL LOCATION} | u32 | +| main.rs:2272:18:2272:22 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2272:18:2272:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2272:24:2272:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2274:13:2274:17 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2274:13:2274:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2274:26:2274:26 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2274:31:2274:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2274:31:2274:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2274:31:2274:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2274:32:2274:32 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2274:32:2274:32 | 1 | | {EXTERNAL LOCATION} | u64 | +| main.rs:2274:35:2274:35 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2275:9:2275:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2275:13:2275:13 | u | | {EXTERNAL LOCATION} | u64 | +| main.rs:2275:18:2275:22 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2275:18:2275:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2275:24:2275:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2277:17:2277:24 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2277:17:2277:24 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2277:17:2277:24 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2277:28:2277:48 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2277:28:2277:48 | [...] | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2277:28:2277:48 | [...] | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2277:29:2277:33 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2277:29:2277:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2277:36:2277:40 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2277:36:2277:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2277:43:2277:47 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2277:43:2277:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2278:9:2278:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2278:13:2278:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:2278:13:2278:13 | s | TRef | {EXTERNAL LOCATION} | & | +| main.rs:2278:13:2278:13 | s | TRef.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2278:18:2278:26 | &strings1 | | {EXTERNAL LOCATION} | & | +| main.rs:2278:18:2278:26 | &strings1 | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2278:18:2278:26 | &strings1 | TRef.TArray | {EXTERNAL LOCATION} | & | +| main.rs:2278:18:2278:26 | &strings1 | TRef.TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2278:19:2278:26 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2278:19:2278:26 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2278:19:2278:26 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2278:28:2278:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2279:9:2279:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2279:13:2279:13 | s | | {EXTERNAL LOCATION} | I::Item[Iterator] | +| main.rs:2279:13:2279:13 | s | | {EXTERNAL LOCATION} | &mut | +| main.rs:2279:13:2279:13 | s | TRefMut | {EXTERNAL LOCATION} | & | +| main.rs:2279:13:2279:13 | s | TRefMut.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2279:18:2279:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | +| main.rs:2279:18:2279:30 | &mut strings1 | TRefMut | {EXTERNAL LOCATION} | [;] | +| main.rs:2279:18:2279:30 | &mut strings1 | TRefMut.TArray | {EXTERNAL LOCATION} | & | +| main.rs:2279:18:2279:30 | &mut strings1 | TRefMut.TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2279:23:2279:30 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2279:23:2279:30 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2279:23:2279:30 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2279:32:2279:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2280:9:2280:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2280:13:2280:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:2280:13:2280:13 | s | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2280:18:2280:25 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2280:18:2280:25 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2280:18:2280:25 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2280:27:2280:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2282:13:2282:20 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2282:13:2282:20 | strings2 | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2283:9:2287:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2283:9:2287:9 | [...] | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2284:13:2284:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2284:26:2284:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2284:26:2284:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2285:13:2285:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2285:26:2285:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2285:26:2285:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2286:13:2286:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2286:26:2286:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2286:26:2286:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2288:9:2288:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2288:13:2288:13 | s | | {EXTERNAL LOCATION} | String | +| main.rs:2288:18:2288:25 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2288:18:2288:25 | strings2 | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2288:27:2288:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2290:13:2290:20 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2290:13:2290:20 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2290:13:2290:20 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | +| main.rs:2291:9:2295:9 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2291:9:2295:9 | &... | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2291:9:2295:9 | &... | TRef.TArray | {EXTERNAL LOCATION} | String | +| main.rs:2291:10:2295:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2291:10:2295:9 | [...] | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2292:13:2292:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2292:26:2292:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2292:26:2292:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2293:13:2293:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2293:26:2293:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2293:26:2293:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2294:13:2294:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2294:26:2294:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2294:26:2294:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2296:9:2296:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2296:13:2296:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:2296:13:2296:13 | s | TRef | {EXTERNAL LOCATION} | String | +| main.rs:2296:18:2296:25 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2296:18:2296:25 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2296:18:2296:25 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | +| main.rs:2296:27:2296:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2298:13:2298:21 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2298:13:2298:21 | callables | TArray | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2298:25:2298:81 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2298:25:2298:81 | [...] | TArray | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2298:26:2298:42 | ...::new(...) | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2298:45:2298:61 | ...::new(...) | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2298:64:2298:80 | ...::new(...) | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2299:9:2303:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2299:13:2299:13 | c | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2300:12:2300:20 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2300:12:2300:20 | callables | TArray | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2301:9:2303:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2302:17:2302:22 | result | | {EXTERNAL LOCATION} | i64 | +| main.rs:2302:26:2302:26 | c | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2302:26:2302:33 | c.call() | | {EXTERNAL LOCATION} | i64 | +| main.rs:2307:9:2307:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2307:13:2307:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2307:18:2307:18 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2307:18:2307:22 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2307:18:2307:22 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2307:21:2307:22 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2307:24:2307:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2308:9:2308:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2308:13:2308:13 | u | | {EXTERNAL LOCATION} | Range | +| main.rs:2308:13:2308:13 | u | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2308:13:2308:13 | u | Idx | {EXTERNAL LOCATION} | u8 | +| main.rs:2308:18:2308:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2308:18:2308:26 | [...] | TArray | {EXTERNAL LOCATION} | Range | +| main.rs:2308:18:2308:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2308:18:2308:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | u8 | +| main.rs:2308:19:2308:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2308:19:2308:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2308:19:2308:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2308:19:2308:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | u8 | +| main.rs:2308:24:2308:25 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2308:24:2308:25 | 10 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2308:28:2308:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2309:13:2309:17 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2309:13:2309:17 | range | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2309:21:2309:21 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2309:21:2309:25 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2309:21:2309:25 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2309:24:2309:25 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2310:9:2310:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2310:13:2310:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2310:18:2310:22 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2310:18:2310:22 | range | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2310:24:2310:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2311:13:2311:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2311:26:2311:27 | .. | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2312:9:2312:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2312:18:2312:48 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2312:19:2312:36 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2312:19:2312:36 | [...] | TArray | {EXTERNAL LOCATION} | i64 | +| main.rs:2312:20:2312:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2312:26:2312:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2312:32:2312:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2312:38:2312:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2312:50:2312:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2314:13:2314:18 | range1 | | {EXTERNAL LOCATION} | Range | +| main.rs:2314:13:2314:18 | range1 | Idx | {EXTERNAL LOCATION} | u16 | +| main.rs:2315:9:2318:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | +| main.rs:2315:9:2318:9 | ...::Range {...} | Idx | {EXTERNAL LOCATION} | u16 | +| main.rs:2316:20:2316:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2317:18:2317:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2319:9:2319:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2319:13:2319:13 | u | | {EXTERNAL LOCATION} | u16 | +| main.rs:2319:18:2319:23 | range1 | | {EXTERNAL LOCATION} | Range | +| main.rs:2319:18:2319:23 | range1 | Idx | {EXTERNAL LOCATION} | u16 | +| main.rs:2319:25:2319:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2323:13:2323:17 | vals3 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2323:21:2323:33 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2323:26:2323:26 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2323:29:2323:29 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2323:32:2323:32 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2324:9:2324:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2324:18:2324:22 | vals3 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2324:24:2324:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2326:13:2326:18 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2326:13:2326:18 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2326:13:2326:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2326:32:2326:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2326:32:2326:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2326:32:2326:43 | [...] | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2326:32:2326:52 | ... .to_vec() | | {EXTERNAL LOCATION} | Vec | +| main.rs:2326:32:2326:52 | ... .to_vec() | A | {EXTERNAL LOCATION} | Global | +| main.rs:2326:32:2326:52 | ... .to_vec() | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2326:33:2326:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2326:39:2326:39 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2326:42:2326:42 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2327:9:2327:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2327:13:2327:13 | u | | {EXTERNAL LOCATION} | u16 | +| main.rs:2327:18:2327:23 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2327:18:2327:23 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2327:18:2327:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2327:25:2327:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2329:22:2329:33 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2329:22:2329:33 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2329:22:2329:33 | [...] | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2329:23:2329:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2329:29:2329:29 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2329:32:2329:32 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2330:9:2330:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2330:25:2330:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2332:13:2332:17 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2332:13:2332:17 | vals5 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2332:13:2332:17 | vals5 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2332:13:2332:17 | vals5 | T | {EXTERNAL LOCATION} | u32 | +| main.rs:2332:21:2332:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2332:21:2332:43 | ...::from(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2332:21:2332:43 | ...::from(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2332:21:2332:43 | ...::from(...) | T | {EXTERNAL LOCATION} | u32 | +| main.rs:2332:31:2332:42 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2332:31:2332:42 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2332:31:2332:42 | [...] | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2332:32:2332:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2332:38:2332:38 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2332:41:2332:41 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2333:9:2333:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2333:13:2333:13 | u | | {EXTERNAL LOCATION} | i32 | +| main.rs:2333:13:2333:13 | u | | {EXTERNAL LOCATION} | u32 | +| main.rs:2333:18:2333:22 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2333:18:2333:22 | vals5 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2333:18:2333:22 | vals5 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2333:18:2333:22 | vals5 | T | {EXTERNAL LOCATION} | u32 | +| main.rs:2333:24:2333:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2335:13:2335:17 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2335:13:2335:17 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2335:13:2335:17 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2335:13:2335:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2335:32:2335:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2335:32:2335:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2335:32:2335:43 | [...] | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2335:32:2335:60 | ... .collect() | | {EXTERNAL LOCATION} | Vec | +| main.rs:2335:32:2335:60 | ... .collect() | A | {EXTERNAL LOCATION} | Global | +| main.rs:2335:32:2335:60 | ... .collect() | T | {EXTERNAL LOCATION} | & | +| main.rs:2335:32:2335:60 | ... .collect() | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2335:33:2335:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | +| main.rs:2335:39:2335:39 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2335:42:2335:42 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2336:9:2336:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2336:13:2336:13 | u | | {EXTERNAL LOCATION} | & | +| main.rs:2336:13:2336:13 | u | TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2336:18:2336:22 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2336:18:2336:22 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2336:18:2336:22 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2336:18:2336:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2336:24:2336:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2338:17:2338:21 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2338:17:2338:21 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2338:17:2338:21 | vals7 | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2338:25:2338:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2338:25:2338:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2338:25:2338:34 | ...::new(...) | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2339:9:2339:13 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2339:9:2339:13 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2339:9:2339:13 | vals7 | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2339:9:2339:23 | vals7.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2339:20:2339:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2340:9:2340:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2340:13:2340:13 | u | | {EXTERNAL LOCATION} | u8 | +| main.rs:2340:18:2340:22 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2340:18:2340:22 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2340:18:2340:22 | vals7 | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2340:24:2340:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2342:13:2342:19 | matrix1 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2342:23:2342:50 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2342:28:2342:37 | (...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2342:28:2342:37 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2342:33:2342:33 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2342:36:2342:36 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2342:40:2342:49 | (...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2342:40:2342:49 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2342:45:2342:45 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2342:48:2342:48 | 4 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2344:13:2344:13 | _ | | {EXTERNAL LOCATION} | () | +| main.rs:2344:17:2347:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2344:28:2344:34 | matrix1 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2344:36:2347:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2345:13:2346:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2345:29:2346:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2349:17:2349:20 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2349:17:2349:20 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2349:17:2349:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2349:17:2349:20 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2349:17:2349:20 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2349:17:2349:20 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2349:17:2349:20 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2349:24:2349:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2349:24:2349:55 | ...::new(...) | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2349:24:2349:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2349:24:2349:55 | ...::new(...) | V | {EXTERNAL LOCATION} | Box | +| main.rs:2349:24:2349:55 | ...::new(...) | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2349:24:2349:55 | ...::new(...) | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2349:24:2349:55 | ...::new(...) | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2350:9:2350:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2350:9:2350:12 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2350:9:2350:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2350:9:2350:12 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2350:9:2350:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2350:9:2350:12 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2350:9:2350:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2350:9:2350:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2350:9:2350:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | +| main.rs:2350:9:2350:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2350:9:2350:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | +| main.rs:2350:9:2350:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2350:21:2350:21 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2350:24:2350:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2350:24:2350:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2350:24:2350:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:2350:24:2350:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2350:33:2350:37 | "one" | | {EXTERNAL LOCATION} | & | +| main.rs:2350:33:2350:37 | "one" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2351:9:2351:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2351:9:2351:12 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2351:9:2351:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2351:9:2351:12 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2351:9:2351:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2351:9:2351:12 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2351:9:2351:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2351:9:2351:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2351:9:2351:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | +| main.rs:2351:9:2351:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2351:9:2351:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | +| main.rs:2351:9:2351:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2351:21:2351:21 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2351:24:2351:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2351:24:2351:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2351:24:2351:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:2351:24:2351:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2351:33:2351:37 | "two" | | {EXTERNAL LOCATION} | & | +| main.rs:2351:33:2351:37 | "two" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2352:9:2352:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2352:13:2352:15 | key | | {EXTERNAL LOCATION} | & | +| main.rs:2352:13:2352:15 | key | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2352:20:2352:23 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2352:20:2352:23 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2352:20:2352:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2352:20:2352:23 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2352:20:2352:23 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2352:20:2352:23 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2352:20:2352:23 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2352:20:2352:30 | map1.keys() | | {EXTERNAL LOCATION} | Keys | +| main.rs:2352:20:2352:30 | map1.keys() | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2352:20:2352:30 | map1.keys() | V | {EXTERNAL LOCATION} | Box | +| main.rs:2352:20:2352:30 | map1.keys() | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2352:20:2352:30 | map1.keys() | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2352:20:2352:30 | map1.keys() | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2352:32:2352:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2353:9:2353:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2353:13:2353:17 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2353:13:2353:17 | value | TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2353:13:2353:17 | value | TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2353:13:2353:17 | value | TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2353:13:2353:17 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2353:22:2353:25 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2353:22:2353:25 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2353:22:2353:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2353:22:2353:25 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2353:22:2353:25 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2353:22:2353:25 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2353:22:2353:25 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2353:22:2353:34 | map1.values() | | {EXTERNAL LOCATION} | Values | +| main.rs:2353:22:2353:34 | map1.values() | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2353:22:2353:34 | map1.values() | V | {EXTERNAL LOCATION} | Box | +| main.rs:2353:22:2353:34 | map1.values() | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2353:22:2353:34 | map1.values() | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2353:22:2353:34 | map1.values() | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2353:36:2353:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2354:9:2354:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2354:13:2354:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2354:13:2354:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | +| main.rs:2354:13:2354:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2354:13:2354:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | +| main.rs:2354:13:2354:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2354:13:2354:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2354:13:2354:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2354:13:2354:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2354:14:2354:16 | key | | {EXTERNAL LOCATION} | & | +| main.rs:2354:14:2354:16 | key | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2354:19:2354:23 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2354:19:2354:23 | value | TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2354:19:2354:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2354:19:2354:23 | value | TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2354:19:2354:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2354:29:2354:32 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2354:29:2354:32 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2354:29:2354:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2354:29:2354:32 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2354:29:2354:32 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2354:29:2354:32 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2354:29:2354:32 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2354:29:2354:39 | map1.iter() | | {EXTERNAL LOCATION} | Iter | +| main.rs:2354:29:2354:39 | map1.iter() | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2354:29:2354:39 | map1.iter() | V | {EXTERNAL LOCATION} | Box | +| main.rs:2354:29:2354:39 | map1.iter() | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2354:29:2354:39 | map1.iter() | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2354:29:2354:39 | map1.iter() | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2354:41:2354:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2355:9:2355:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2355:13:2355:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2355:13:2355:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | +| main.rs:2355:13:2355:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2355:13:2355:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | +| main.rs:2355:13:2355:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2355:13:2355:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2355:13:2355:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2355:13:2355:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2355:14:2355:16 | key | | {EXTERNAL LOCATION} | & | +| main.rs:2355:14:2355:16 | key | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2355:19:2355:23 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2355:19:2355:23 | value | TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2355:19:2355:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2355:19:2355:23 | value | TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2355:19:2355:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2355:29:2355:33 | &map1 | | {EXTERNAL LOCATION} | & | +| main.rs:2355:29:2355:33 | &map1 | TRef | {EXTERNAL LOCATION} | HashMap | +| main.rs:2355:29:2355:33 | &map1 | TRef.K | {EXTERNAL LOCATION} | i32 | +| main.rs:2355:29:2355:33 | &map1 | TRef.S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2355:29:2355:33 | &map1 | TRef.V | {EXTERNAL LOCATION} | Box | +| main.rs:2355:29:2355:33 | &map1 | TRef.V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2355:29:2355:33 | &map1 | TRef.V.T | {EXTERNAL LOCATION} | & | +| main.rs:2355:29:2355:33 | &map1 | TRef.V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2355:30:2355:33 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2355:30:2355:33 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2355:30:2355:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2355:30:2355:33 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2355:30:2355:33 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2355:30:2355:33 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2355:30:2355:33 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2355:35:2355:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2359:17:2359:17 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2359:26:2359:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2359:26:2359:26 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2361:13:2361:13 | _ | | {EXTERNAL LOCATION} | () | +| main.rs:2361:17:2364:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2361:23:2361:23 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2361:23:2361:28 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:2361:27:2361:28 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2362:9:2364:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2363:13:2363:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2363:13:2363:18 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:2363:18:2363:18 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2375:40:2377:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:2375:40:2377:9 | { ... } | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2375:40:2377:9 | { ... } | T.T | main.rs:2374:10:2374:19 | T | +| main.rs:2376:13:2376:16 | None | | {EXTERNAL LOCATION} | Option | +| main.rs:2376:13:2376:16 | None | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2376:13:2376:16 | None | T.T | main.rs:2374:10:2374:19 | T | +| main.rs:2379:30:2381:9 | { ... } | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2379:30:2381:9 | { ... } | T | main.rs:2374:10:2374:19 | T | +| main.rs:2380:13:2380:28 | S1(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2380:13:2380:28 | S1(...) | T | main.rs:2374:10:2374:19 | T | +| main.rs:2380:16:2380:27 | ...::default(...) | | main.rs:2374:10:2374:19 | T | +| main.rs:2383:19:2383:22 | SelfParam | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2383:19:2383:22 | SelfParam | T | main.rs:2374:10:2374:19 | T | +| main.rs:2383:33:2385:9 | { ... } | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2383:33:2385:9 | { ... } | T | main.rs:2374:10:2374:19 | T | +| main.rs:2384:13:2384:16 | self | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2384:13:2384:16 | self | T | main.rs:2374:10:2374:19 | T | +| main.rs:2396:15:2396:15 | x | | main.rs:2396:12:2396:12 | T | +| main.rs:2396:26:2398:5 | { ... } | | main.rs:2396:12:2396:12 | T | +| main.rs:2397:9:2397:9 | x | | main.rs:2396:12:2396:12 | T | +| main.rs:2400:16:2422:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2401:13:2401:14 | x1 | | {EXTERNAL LOCATION} | Option | +| main.rs:2401:13:2401:14 | x1 | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2401:13:2401:14 | x1 | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2401:34:2401:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2401:34:2401:48 | ...::assoc_fun(...) | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2401:34:2401:48 | ...::assoc_fun(...) | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2402:13:2402:14 | x2 | | {EXTERNAL LOCATION} | Option | +| main.rs:2402:13:2402:14 | x2 | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2402:13:2402:14 | x2 | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2402:18:2402:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2402:18:2402:38 | ...::assoc_fun(...) | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2402:18:2402:38 | ...::assoc_fun(...) | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2403:13:2403:14 | x3 | | {EXTERNAL LOCATION} | Option | +| main.rs:2403:13:2403:14 | x3 | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2403:13:2403:14 | x3 | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2403:18:2403:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2403:18:2403:32 | ...::assoc_fun(...) | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2403:18:2403:32 | ...::assoc_fun(...) | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2404:13:2404:14 | x4 | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2404:13:2404:14 | x4 | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2404:18:2404:48 | ...::method(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2404:18:2404:48 | ...::method(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2404:35:2404:47 | ...::default(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2404:35:2404:47 | ...::default(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2405:13:2405:14 | x5 | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2405:13:2405:14 | x5 | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2405:18:2405:42 | ...::method(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2405:18:2405:42 | ...::method(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2405:29:2405:41 | ...::default(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2405:29:2405:41 | ...::default(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2406:13:2406:14 | x6 | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2406:13:2406:14 | x6 | T4 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2406:18:2406:45 | S4::<...>(...) | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2406:18:2406:45 | S4::<...>(...) | T4 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2406:27:2406:44 | ...::default(...) | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2407:13:2407:14 | x7 | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2407:13:2407:14 | x7 | T4 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2407:18:2407:23 | S4(...) | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2407:18:2407:23 | S4(...) | T4 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2407:21:2407:22 | S2 | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2408:13:2408:14 | x8 | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2408:13:2408:14 | x8 | T4 | {EXTERNAL LOCATION} | i32 | +| main.rs:2408:18:2408:22 | S4(...) | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2408:18:2408:22 | S4(...) | T4 | {EXTERNAL LOCATION} | i32 | +| main.rs:2408:21:2408:21 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2409:13:2409:14 | x9 | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2409:13:2409:14 | x9 | T4 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2409:18:2409:34 | S4(...) | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2409:18:2409:34 | S4(...) | T4 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2409:21:2409:33 | ...::default(...) | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2410:13:2410:15 | x10 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2410:13:2410:15 | x10 | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2410:19:2413:9 | S5::<...> {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2410:19:2413:9 | S5::<...> {...} | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2412:20:2412:37 | ...::default(...) | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2414:13:2414:15 | x11 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2414:13:2414:15 | x11 | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2414:19:2414:34 | S5 {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2414:19:2414:34 | S5 {...} | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2414:31:2414:32 | S2 | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2415:13:2415:15 | x12 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2415:13:2415:15 | x12 | T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:2415:19:2415:33 | S5 {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2415:19:2415:33 | S5 {...} | T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:2415:31:2415:31 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2416:13:2416:15 | x13 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2416:13:2416:15 | x13 | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2416:19:2419:9 | S5 {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2416:19:2419:9 | S5 {...} | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2418:20:2418:32 | ...::default(...) | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2420:13:2420:15 | x14 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2420:19:2420:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2420:30:2420:47 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2421:13:2421:15 | x15 | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2421:13:2421:15 | x15 | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2421:19:2421:37 | ...::default(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2421:19:2421:37 | ...::default(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2430:35:2432:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2430:35:2432:9 | { ... } | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2430:35:2432:9 | { ... } | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2431:13:2431:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2431:13:2431:26 | TupleExpr | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2431:13:2431:26 | TupleExpr | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2431:14:2431:18 | S1 {...} | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2431:21:2431:25 | S1 {...} | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2433:16:2433:19 | SelfParam | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2433:22:2433:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2436:16:2470:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2437:13:2437:13 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2437:13:2437:13 | a | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2437:13:2437:13 | a | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2437:17:2437:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2437:17:2437:30 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2437:17:2437:30 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:17:2438:17 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2438:17:2438:17 | b | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:17:2438:17 | b | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:21:2438:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2438:21:2438:34 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:21:2438:34 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:13:2439:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2439:13:2439:18 | TuplePat | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:13:2439:18 | TuplePat | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:14:2439:14 | c | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:17:2439:17 | d | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:22:2439:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2439:22:2439:35 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:22:2439:35 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:13:2440:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2440:13:2440:22 | TuplePat | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:13:2440:22 | TuplePat | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:18:2440:18 | e | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:21:2440:21 | f | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:26:2440:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2440:26:2440:39 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:26:2440:39 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:13:2441:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2441:13:2441:26 | TuplePat | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:13:2441:26 | TuplePat | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:18:2441:18 | g | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:25:2441:25 | h | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:30:2441:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2441:30:2441:43 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:30:2441:43 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2443:9:2443:9 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2443:9:2443:9 | a | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2443:9:2443:9 | a | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2443:9:2443:11 | a.0 | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2443:9:2443:17 | ... .foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2444:9:2444:9 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2444:9:2444:9 | b | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2444:9:2444:9 | b | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2444:9:2444:11 | b.1 | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2444:9:2444:17 | ... .foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2445:9:2445:9 | c | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2445:9:2445:15 | c.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2446:9:2446:9 | d | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2446:9:2446:15 | d.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2447:9:2447:9 | e | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2447:9:2447:15 | e.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2448:9:2448:9 | f | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2448:9:2448:15 | f.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2449:9:2449:9 | g | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2449:9:2449:15 | g.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2450:9:2450:9 | h | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2450:9:2450:15 | h.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2455:13:2455:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2455:17:2455:34 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2456:13:2456:13 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2456:17:2456:34 | ...::default(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2457:13:2457:16 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2457:13:2457:16 | pair | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2457:13:2457:16 | pair | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2457:20:2457:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2457:20:2457:25 | TupleExpr | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2457:20:2457:25 | TupleExpr | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2457:21:2457:21 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2457:24:2457:24 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2458:13:2458:13 | i | | {EXTERNAL LOCATION} | i64 | +| main.rs:2458:22:2458:25 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2458:22:2458:25 | pair | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2458:22:2458:25 | pair | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2458:22:2458:27 | pair.0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2459:13:2459:13 | j | | {EXTERNAL LOCATION} | bool | +| main.rs:2459:23:2459:26 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2459:23:2459:26 | pair | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2459:23:2459:26 | pair | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2459:23:2459:28 | pair.1 | | {EXTERNAL LOCATION} | bool | +| main.rs:2461:13:2461:16 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2461:13:2461:16 | pair | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2461:13:2461:16 | pair | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2461:20:2461:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2461:20:2461:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2461:20:2461:32 | ... .into() | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2461:20:2461:32 | ... .into() | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2461:20:2461:32 | ... .into() | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2461:21:2461:21 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2461:24:2461:24 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2462:9:2465:9 | match pair { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2462:15:2462:18 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2462:15:2462:18 | pair | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2462:15:2462:18 | pair | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2463:13:2463:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2463:13:2463:18 | TuplePat | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2463:13:2463:18 | TuplePat | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2463:14:2463:14 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2463:17:2463:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2463:23:2463:42 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2463:30:2463:41 | "unexpected" | | {EXTERNAL LOCATION} | & | +| main.rs:2463:30:2463:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2463:30:2463:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2463:30:2463:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2464:13:2464:13 | _ | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2464:13:2464:13 | _ | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2464:13:2464:13 | _ | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2464:18:2464:35 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2464:25:2464:34 | "expected" | | {EXTERNAL LOCATION} | & | +| main.rs:2464:25:2464:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2464:25:2464:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2464:25:2464:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2466:13:2466:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2466:17:2466:20 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2466:17:2466:20 | pair | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2466:17:2466:20 | pair | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2466:17:2466:22 | pair.0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2468:13:2468:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2468:13:2468:13 | y | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2468:13:2468:13 | y | TRef.T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2468:13:2468:13 | y | TRef.T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2468:17:2468:31 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2468:17:2468:31 | &... | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2468:17:2468:31 | &... | TRef.T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2468:17:2468:31 | &... | TRef.T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2468:18:2468:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2468:18:2468:31 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2468:18:2468:31 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2469:9:2469:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2469:9:2469:9 | y | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2469:9:2469:9 | y | TRef.T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2469:9:2469:9 | y | TRef.T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2469:9:2469:11 | y.0 | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2469:9:2469:17 | ... .foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2475:27:2497:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2476:13:2476:23 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2476:13:2476:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2476:13:2476:23 | boxed_value | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2476:27:2476:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2476:27:2476:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2476:27:2476:42 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2476:36:2476:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2479:9:2487:9 | match boxed_value { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2479:15:2479:25 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2479:15:2479:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2479:15:2479:25 | boxed_value | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2480:13:2480:19 | box 100 | | {EXTERNAL LOCATION} | Box | +| main.rs:2480:13:2480:19 | box 100 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2480:13:2480:19 | box 100 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2480:17:2480:19 | 100 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2480:24:2482:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2481:17:2481:37 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2481:26:2481:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2481:26:2481:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2481:26:2481:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2481:26:2481:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2481:26:2481:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2483:13:2483:17 | box ... | | {EXTERNAL LOCATION} | Box | +| main.rs:2483:13:2483:17 | box ... | A | {EXTERNAL LOCATION} | Global | +| main.rs:2483:13:2483:17 | box ... | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2483:22:2486:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2485:17:2485:52 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2485:26:2485:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2485:26:2485:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2485:26:2485:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2485:26:2485:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2485:26:2485:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2490:13:2490:22 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2490:13:2490:22 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:13:2490:22 | nested_box | T | {EXTERNAL LOCATION} | Box | +| main.rs:2490:13:2490:22 | nested_box | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:13:2490:22 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2490:26:2490:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2490:26:2490:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:26:2490:50 | ...::new(...) | T | {EXTERNAL LOCATION} | Box | +| main.rs:2490:26:2490:50 | ...::new(...) | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:26:2490:50 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2490:35:2490:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2490:35:2490:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:35:2490:49 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2490:44:2490:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2491:9:2496:9 | match nested_box { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2491:15:2491:24 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2491:15:2491:24 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2491:15:2491:24 | nested_box | T | {EXTERNAL LOCATION} | Box | +| main.rs:2491:15:2491:24 | nested_box | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2491:15:2491:24 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2492:13:2492:21 | box ... | | {EXTERNAL LOCATION} | Box | +| main.rs:2492:13:2492:21 | box ... | A | {EXTERNAL LOCATION} | Global | +| main.rs:2492:13:2492:21 | box ... | T | {EXTERNAL LOCATION} | Box | +| main.rs:2492:13:2492:21 | box ... | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2492:13:2492:21 | box ... | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2492:26:2495:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2494:17:2494:60 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2494:26:2494:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2494:26:2494:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2494:26:2494:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2494:26:2494:59 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2494:26:2494:59 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2506:36:2508:9 | { ... } | | main.rs:2503:5:2503:22 | Path | +| main.rs:2507:13:2507:19 | Path {...} | | main.rs:2503:5:2503:22 | Path | +| main.rs:2510:29:2510:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2510:29:2510:33 | SelfParam | TRef | main.rs:2503:5:2503:22 | Path | +| main.rs:2510:59:2512:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:2510:59:2512:9 | { ... } | E | {EXTERNAL LOCATION} | () | +| main.rs:2510:59:2512:9 | { ... } | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2511:13:2511:30 | Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2511:13:2511:30 | Ok(...) | E | {EXTERNAL LOCATION} | () | +| main.rs:2511:13:2511:30 | Ok(...) | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2511:16:2511:29 | ...::new(...) | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2518:39:2520:9 | { ... } | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2519:13:2519:22 | PathBuf {...} | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2528:18:2528:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2528:18:2528:22 | SelfParam | TRef | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2528:34:2532:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2528:34:2532:9 | { ... } | TRef | main.rs:2503:5:2503:22 | Path | +| main.rs:2530:33:2530:43 | ...::new(...) | | main.rs:2503:5:2503:22 | Path | +| main.rs:2531:13:2531:17 | &path | | {EXTERNAL LOCATION} | & | +| main.rs:2531:13:2531:17 | &path | TRef | main.rs:2503:5:2503:22 | Path | +| main.rs:2531:14:2531:17 | path | | main.rs:2503:5:2503:22 | Path | +| main.rs:2535:16:2543:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2536:13:2536:17 | path1 | | main.rs:2503:5:2503:22 | Path | +| main.rs:2536:21:2536:31 | ...::new(...) | | main.rs:2503:5:2503:22 | Path | +| main.rs:2537:13:2537:17 | path2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2537:13:2537:17 | path2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2537:13:2537:17 | path2 | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2537:21:2537:25 | path1 | | main.rs:2503:5:2503:22 | Path | +| main.rs:2537:21:2537:40 | path1.canonicalize() | | {EXTERNAL LOCATION} | Result | +| main.rs:2537:21:2537:40 | path1.canonicalize() | E | {EXTERNAL LOCATION} | () | +| main.rs:2537:21:2537:40 | path1.canonicalize() | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2538:13:2538:17 | path3 | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2538:21:2538:25 | path2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2538:21:2538:25 | path2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2538:21:2538:25 | path2 | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2538:21:2538:34 | path2.unwrap() | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2540:13:2540:20 | pathbuf1 | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2540:24:2540:37 | ...::new(...) | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2541:13:2541:20 | pathbuf2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2541:13:2541:20 | pathbuf2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2541:13:2541:20 | pathbuf2 | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2541:24:2541:31 | pathbuf1 | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2541:24:2541:46 | pathbuf1.canonicalize() | | {EXTERNAL LOCATION} | Result | +| main.rs:2541:24:2541:46 | pathbuf1.canonicalize() | E | {EXTERNAL LOCATION} | () | +| main.rs:2541:24:2541:46 | pathbuf1.canonicalize() | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2542:13:2542:20 | pathbuf3 | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2542:24:2542:31 | pathbuf2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2542:24:2542:31 | pathbuf2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2542:24:2542:31 | pathbuf2 | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2542:24:2542:40 | pathbuf2.unwrap() | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2548:14:2548:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2548:14:2548:18 | SelfParam | TRef | main.rs:2547:5:2549:5 | Self [trait MyTrait] | +| main.rs:2555:14:2555:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2555:14:2555:18 | SelfParam | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2555:14:2555:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2555:28:2557:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2556:13:2556:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2556:13:2556:16 | self | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2556:13:2556:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2556:13:2556:18 | self.0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2561:14:2561:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2561:14:2561:18 | SelfParam | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2561:14:2561:18 | SelfParam | TRef.T | main.rs:2551:5:2552:19 | S | +| main.rs:2561:14:2561:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2561:28:2563:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2562:13:2562:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2562:13:2562:16 | self | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2562:13:2562:16 | self | TRef.T | main.rs:2551:5:2552:19 | S | +| main.rs:2562:13:2562:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2562:13:2562:18 | self.0 | | main.rs:2551:5:2552:19 | S | +| main.rs:2562:13:2562:18 | self.0 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2562:13:2562:21 | ... .0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2567:15:2567:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2567:15:2567:19 | SelfParam | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2567:15:2567:19 | SelfParam | TRef.T | main.rs:2566:10:2566:16 | T | +| main.rs:2567:33:2569:9 | { ... } | | main.rs:2551:5:2552:19 | S | +| main.rs:2567:33:2569:9 | { ... } | T | main.rs:2551:5:2552:19 | S | +| main.rs:2567:33:2569:9 | { ... } | T.T | main.rs:2566:10:2566:16 | T | +| main.rs:2568:13:2568:24 | S(...) | | main.rs:2551:5:2552:19 | S | +| main.rs:2568:13:2568:24 | S(...) | T | main.rs:2551:5:2552:19 | S | +| main.rs:2568:13:2568:24 | S(...) | T.T | main.rs:2566:10:2566:16 | T | +| main.rs:2568:15:2568:23 | S(...) | | main.rs:2551:5:2552:19 | S | +| main.rs:2568:15:2568:23 | S(...) | T | main.rs:2566:10:2566:16 | T | +| main.rs:2568:17:2568:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2568:17:2568:20 | self | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2568:17:2568:20 | self | TRef.T | main.rs:2566:10:2566:16 | T | +| main.rs:2568:17:2568:22 | self.0 | | main.rs:2566:10:2566:16 | T | +| main.rs:2572:14:2572:14 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2572:48:2589:5 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2572:48:2589:5 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2572:48:2589:5 | { ... } | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2572:48:2589:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2573:13:2573:13 | x | | main.rs:2551:5:2552:19 | S | +| main.rs:2573:13:2573:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2573:17:2578:9 | if b {...} else {...} | | main.rs:2551:5:2552:19 | S | +| main.rs:2573:17:2578:9 | if b {...} else {...} | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2573:20:2573:20 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2573:22:2576:9 | { ... } | | main.rs:2551:5:2552:19 | S | +| main.rs:2573:22:2576:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2574:17:2574:17 | y | | main.rs:2551:5:2552:19 | S | +| main.rs:2574:17:2574:17 | y | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2574:21:2574:38 | ...::default(...) | | main.rs:2551:5:2552:19 | S | +| main.rs:2574:21:2574:38 | ...::default(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2575:13:2575:13 | y | | main.rs:2551:5:2552:19 | S | +| main.rs:2575:13:2575:13 | y | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2576:16:2578:9 | { ... } | | main.rs:2551:5:2552:19 | S | +| main.rs:2576:16:2578:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2577:13:2577:16 | S(...) | | main.rs:2551:5:2552:19 | S | +| main.rs:2577:13:2577:16 | S(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2577:15:2577:15 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2582:13:2582:13 | x | | main.rs:2551:5:2552:19 | S | +| main.rs:2582:13:2582:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2582:17:2582:20 | S(...) | | main.rs:2551:5:2552:19 | S | +| main.rs:2582:17:2582:20 | S(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2582:19:2582:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2583:9:2588:9 | if b {...} else {...} | | {EXTERNAL LOCATION} | Box | +| main.rs:2583:9:2588:9 | if b {...} else {...} | A | {EXTERNAL LOCATION} | Global | +| main.rs:2583:9:2588:9 | if b {...} else {...} | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2583:9:2588:9 | if b {...} else {...} | T | main.rs:2551:5:2552:19 | S | +| main.rs:2583:9:2588:9 | if b {...} else {...} | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2583:9:2588:9 | if b {...} else {...} | T.T | main.rs:2551:5:2552:19 | S | +| main.rs:2583:9:2588:9 | if b {...} else {...} | T.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2583:9:2588:9 | if b {...} else {...} | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2583:12:2583:12 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2583:14:2586:9 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2583:14:2586:9 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2583:14:2586:9 | { ... } | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2583:14:2586:9 | { ... } | T | main.rs:2551:5:2552:19 | S | +| main.rs:2583:14:2586:9 | { ... } | T.T | main.rs:2551:5:2552:19 | S | +| main.rs:2583:14:2586:9 | { ... } | T.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2583:14:2586:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2584:17:2584:17 | x | | main.rs:2551:5:2552:19 | S | +| main.rs:2584:17:2584:17 | x | T | main.rs:2551:5:2552:19 | S | +| main.rs:2584:17:2584:17 | x | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2584:21:2584:21 | x | | main.rs:2551:5:2552:19 | S | +| main.rs:2584:21:2584:21 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2584:21:2584:26 | x.m2() | | main.rs:2551:5:2552:19 | S | +| main.rs:2584:21:2584:26 | x.m2() | T | main.rs:2551:5:2552:19 | S | +| main.rs:2584:21:2584:26 | x.m2() | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2585:13:2585:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2585:13:2585:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2585:13:2585:23 | ...::new(...) | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2585:13:2585:23 | ...::new(...) | T | main.rs:2551:5:2552:19 | S | +| main.rs:2585:13:2585:23 | ...::new(...) | T.T | main.rs:2551:5:2552:19 | S | +| main.rs:2585:13:2585:23 | ...::new(...) | T.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2585:13:2585:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2585:22:2585:22 | x | | main.rs:2551:5:2552:19 | S | +| main.rs:2585:22:2585:22 | x | T | main.rs:2551:5:2552:19 | S | +| main.rs:2585:22:2585:22 | x | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2586:16:2588:9 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2586:16:2588:9 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2586:16:2588:9 | { ... } | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2586:16:2588:9 | { ... } | T | main.rs:2551:5:2552:19 | S | +| main.rs:2586:16:2588:9 | { ... } | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2586:16:2588:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2587:13:2587:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2587:13:2587:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2587:13:2587:23 | ...::new(...) | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2587:13:2587:23 | ...::new(...) | T | main.rs:2551:5:2552:19 | S | +| main.rs:2587:13:2587:23 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2587:13:2587:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2587:22:2587:22 | x | | main.rs:2551:5:2552:19 | S | +| main.rs:2587:22:2587:22 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2593:22:2597:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2594:18:2594:18 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2594:33:2596:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2595:13:2595:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2595:13:2595:17 | ... + ... | | {EXTERNAL LOCATION} | i32 | +| main.rs:2595:17:2595:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2602:11:2602:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2602:30:2610:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2604:13:2604:13 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2604:17:2608:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2605:13:2607:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2605:16:2605:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2605:21:2607:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2606:24:2606:25 | 12 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2609:9:2609:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2613:20:2620:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2616:26:2616:27 | 12 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2618:9:2618:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2618:18:2618:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2618:18:2618:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2618:18:2618:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2618:18:2618:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2618:18:2618:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2619:9:2619:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2622:20:2624:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2623:16:2623:16 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2627:11:2627:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2627:30:2635:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2628:13:2628:13 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2628:17:2632:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2629:13:2631:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2629:16:2629:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2629:21:2631:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2630:24:2630:25 | 12 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2633:9:2633:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2633:18:2633:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2633:18:2633:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2633:18:2633:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2633:18:2633:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2633:18:2633:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2633:29:2633:29 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2634:9:2634:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2639:16:2686:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2640:13:2640:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2640:13:2640:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2640:17:2640:20 | None | | {EXTERNAL LOCATION} | Option | +| main.rs:2640:17:2640:20 | None | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2641:13:2641:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2641:13:2641:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2641:30:2641:30 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2641:30:2641:30 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2642:13:2642:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2642:13:2642:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2642:17:2642:35 | ...::None | | {EXTERNAL LOCATION} | Option | +| main.rs:2642:17:2642:35 | ...::None | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2643:13:2643:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2643:13:2643:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2643:17:2643:35 | ...::None::<...> | | {EXTERNAL LOCATION} | Option | +| main.rs:2643:17:2643:35 | ...::None::<...> | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2645:26:2645:28 | opt | | {EXTERNAL LOCATION} | Option | +| main.rs:2645:26:2645:28 | opt | T | main.rs:2645:23:2645:23 | T | +| main.rs:2645:42:2645:42 | x | | main.rs:2645:23:2645:23 | T | +| main.rs:2645:48:2645:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2647:13:2647:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2647:13:2647:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2647:17:2647:20 | None | | {EXTERNAL LOCATION} | Option | +| main.rs:2647:17:2647:20 | None | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2648:9:2648:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2648:20:2648:20 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2648:20:2648:20 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2648:23:2648:23 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2655:13:2655:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2655:13:2655:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2655:13:2655:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2655:17:2655:39 | ...::A {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2655:17:2655:39 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2655:17:2655:39 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2655:37:2655:37 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2656:13:2656:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2656:13:2656:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2656:13:2656:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2656:40:2656:40 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2656:40:2656:40 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2656:40:2656:40 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2657:13:2657:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2657:13:2657:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2657:13:2657:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2657:17:2657:52 | ...::A {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2657:17:2657:52 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2657:17:2657:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2657:50:2657:50 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2659:13:2659:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2659:13:2659:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2659:13:2659:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2659:17:2661:9 | ...::B::<...> {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2659:17:2661:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2659:17:2661:9 | ...::B::<...> {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2660:20:2660:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2663:29:2663:29 | e | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2663:29:2663:29 | e | T1 | main.rs:2663:26:2663:26 | T | +| main.rs:2663:29:2663:29 | e | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2663:53:2663:53 | x | | main.rs:2663:26:2663:26 | T | +| main.rs:2663:59:2663:60 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2666:13:2666:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2666:13:2666:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2666:13:2666:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2666:17:2668:9 | ...::B {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2666:17:2668:9 | ...::B {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2666:17:2668:9 | ...::B {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2667:20:2667:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2669:9:2669:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2669:23:2669:23 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2669:23:2669:23 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2669:23:2669:23 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2669:26:2669:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2671:13:2671:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2671:13:2671:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2671:13:2671:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2671:17:2671:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2671:17:2671:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | +| main.rs:2671:17:2671:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2671:28:2671:28 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2672:13:2672:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2672:13:2672:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2672:13:2672:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2672:38:2672:38 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2672:38:2672:38 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2672:38:2672:38 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2673:13:2673:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2673:13:2673:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2673:13:2673:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2673:17:2673:44 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2673:17:2673:44 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | +| main.rs:2673:17:2673:44 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2673:43:2673:43 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2674:13:2674:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2674:13:2674:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2674:13:2674:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2674:17:2674:44 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2674:17:2674:44 | ...::Ok::<...>(...) | E | {EXTERNAL LOCATION} | String | +| main.rs:2674:17:2674:44 | ...::Ok::<...>(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2674:43:2674:43 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2676:29:2676:31 | res | | {EXTERNAL LOCATION} | Result | +| main.rs:2676:29:2676:31 | res | E | main.rs:2676:26:2676:26 | E | +| main.rs:2676:29:2676:31 | res | T | main.rs:2676:23:2676:23 | T | +| main.rs:2676:48:2676:48 | x | | main.rs:2676:26:2676:26 | E | +| main.rs:2676:54:2676:55 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2678:13:2678:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2678:13:2678:13 | x | E | {EXTERNAL LOCATION} | bool | +| main.rs:2678:13:2678:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2678:17:2678:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2678:17:2678:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | bool | +| main.rs:2678:17:2678:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2678:28:2678:28 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2679:9:2679:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2679:20:2679:20 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2679:20:2679:20 | x | E | {EXTERNAL LOCATION} | bool | +| main.rs:2679:20:2679:20 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2679:23:2679:27 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:2681:17:2681:17 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2681:17:2681:17 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2681:17:2681:17 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2681:21:2681:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2681:21:2681:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2681:21:2681:30 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2682:9:2682:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2682:9:2682:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2682:9:2682:9 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2682:9:2682:17 | x.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2682:16:2682:16 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2684:13:2684:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:2684:17:2684:34 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2685:9:2685:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2685:9:2685:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2685:9:2685:9 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2685:9:2685:17 | x.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2685:16:2685:16 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:2692:14:2692:17 | SelfParam | | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2695:14:2695:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2695:14:2695:18 | SelfParam | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2695:21:2695:25 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2695:21:2695:25 | other | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2695:44:2697:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2695:44:2697:9 | { ... } | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2696:13:2696:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2696:13:2696:16 | self | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2696:13:2696:20 | self.f() | | {EXTERNAL LOCATION} | & | +| main.rs:2696:13:2696:20 | self.f() | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2702:14:2702:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| main.rs:2702:28:2704:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2703:13:2703:16 | self | | {EXTERNAL LOCATION} | i32 | +| main.rs:2709:14:2709:17 | SelfParam | | {EXTERNAL LOCATION} | usize | +| main.rs:2709:28:2711:9 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2710:13:2710:16 | self | | {EXTERNAL LOCATION} | usize | +| main.rs:2716:14:2716:17 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2716:14:2716:17 | SelfParam | TRef | main.rs:2714:10:2714:10 | T | +| main.rs:2716:28:2718:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2716:28:2718:9 | { ... } | TRef | main.rs:2714:10:2714:10 | T | +| main.rs:2717:13:2717:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2717:13:2717:16 | self | TRef | main.rs:2714:10:2714:10 | T | +| main.rs:2721:25:2725:5 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2722:17:2722:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2722:17:2722:17 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2722:21:2722:21 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2722:21:2722:21 | 0 | | {EXTERNAL LOCATION} | usize | +| main.rs:2723:9:2723:9 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2723:9:2723:9 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2723:9:2723:17 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:2723:13:2723:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2723:13:2723:13 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2723:13:2723:17 | x.f() | | {EXTERNAL LOCATION} | i32 | +| main.rs:2723:13:2723:17 | x.f() | | {EXTERNAL LOCATION} | usize | +| main.rs:2724:9:2724:9 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2724:9:2724:9 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2727:12:2735:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2728:13:2728:13 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2728:24:2728:24 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2728:24:2728:24 | 0 | | {EXTERNAL LOCATION} | usize | +| main.rs:2729:13:2729:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2729:13:2729:13 | y | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2729:17:2729:18 | &1 | | {EXTERNAL LOCATION} | & | +| main.rs:2729:17:2729:18 | &1 | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2729:18:2729:18 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2730:13:2730:13 | z | | {EXTERNAL LOCATION} | & | +| main.rs:2730:13:2730:13 | z | TRef | {EXTERNAL LOCATION} | usize | +| main.rs:2730:17:2730:17 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2730:17:2730:22 | x.g(...) | | {EXTERNAL LOCATION} | & | +| main.rs:2730:17:2730:22 | x.g(...) | TRef | {EXTERNAL LOCATION} | usize | +| main.rs:2730:21:2730:21 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2730:21:2730:21 | y | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2732:13:2732:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2732:17:2732:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2733:13:2733:13 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2733:24:2733:24 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2733:24:2733:24 | 1 | | {EXTERNAL LOCATION} | usize | +| main.rs:2734:13:2734:13 | z | | {EXTERNAL LOCATION} | i32 | +| main.rs:2734:17:2734:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2734:17:2734:24 | x.max(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2734:23:2734:23 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2744:11:2779:1 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2745:5:2745:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2746:5:2746:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2747:5:2747:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2747:20:2747:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2747:41:2747:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2748:5:2748:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2749:5:2749:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2750:5:2750:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2751:5:2751:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2752:5:2752:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2753:5:2753:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2754:5:2754:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2755:5:2755:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2756:5:2756:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2757:5:2757:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2758:5:2758:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2759:5:2759:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2760:5:2760:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2761:5:2761:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2762:5:2762:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2763:5:2763:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2763:5:2763:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2764:5:2764:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2765:5:2765:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2766:5:2766:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2767:5:2767:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2768:5:2768:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2769:5:2769:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2770:5:2770:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2771:5:2771:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2772:5:2772:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2773:5:2773:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2774:5:2774:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2775:5:2775:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2776:5:2776:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2777:5:2777:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2777:5:2777:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2777:5:2777:20 | ...::f(...) | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2777:5:2777:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2777:16:2777:19 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2778:5:2778:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:4:19:4:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:4:19:4:23 | SelfParam | TRef | overloading.rs:2:5:11:5 | Self [trait FirstTrait] | +| overloading.rs:4:34:6:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:5:13:5:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:8:20:8:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:8:20:8:24 | SelfParam | TRef | overloading.rs:2:5:11:5 | Self [trait FirstTrait] | +| overloading.rs:14:19:14:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:14:19:14:23 | SelfParam | TRef | overloading.rs:12:5:19:5 | Self [trait SecondTrait] | +| overloading.rs:14:33:16:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:15:13:15:13 | 1 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:15:13:15:13 | 1 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:18:20:18:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:18:20:18:24 | SelfParam | TRef | overloading.rs:12:5:19:5 | Self [trait SecondTrait] | +| overloading.rs:24:20:24:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:24:20:24:24 | SelfParam | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:24:35:26:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:25:13:25:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:29:31:31:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:30:13:30:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:35:20:35:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:35:20:35:24 | SelfParam | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:35:34:37:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:36:13:36:13 | 1 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:36:13:36:13 | 1 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:43:20:43:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:43:20:43:24 | SelfParam | TRef | overloading.rs:40:5:40:14 | S2 | +| overloading.rs:43:35:45:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:44:13:44:17 | false | | {EXTERNAL LOCATION} | bool | +| overloading.rs:48:31:50:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:49:13:49:17 | false | | {EXTERNAL LOCATION} | bool | +| overloading.rs:53:16:70:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:54:13:54:13 | s | | overloading.rs:20:5:21:13 | S | +| overloading.rs:54:17:54:17 | S | | overloading.rs:20:5:21:13 | S | +| overloading.rs:56:13:56:15 | _b1 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:56:19:56:40 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:56:38:56:39 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:56:38:56:39 | &s | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:56:39:56:39 | s | | overloading.rs:20:5:21:13 | S | +| overloading.rs:57:13:57:15 | _b2 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:57:19:57:47 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:57:45:57:46 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:57:45:57:46 | &s | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:57:46:57:46 | s | | overloading.rs:20:5:21:13 | S | +| overloading.rs:58:13:58:15 | _b3 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:58:19:58:64 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:58:45:58:63 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:58:45:58:63 | &... | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:58:46:58:63 | ...::default(...) | | overloading.rs:20:5:21:13 | S | +| overloading.rs:59:13:59:15 | _b4 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:59:19:59:48 | ...::method2(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:59:46:59:47 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:59:46:59:47 | &s | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:59:47:59:47 | s | | overloading.rs:20:5:21:13 | S | +| overloading.rs:60:13:60:15 | _b5 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:60:19:60:65 | ...::method2(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:60:46:60:64 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:60:46:60:64 | &... | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:60:47:60:64 | ...::default(...) | | overloading.rs:20:5:21:13 | S | +| overloading.rs:62:13:62:15 | _n1 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:62:19:62:41 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:62:39:62:40 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:62:39:62:40 | &s | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:62:40:62:40 | s | | overloading.rs:20:5:21:13 | S | +| overloading.rs:63:13:63:15 | _n2 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:63:19:63:48 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:63:46:63:47 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:63:46:63:47 | &s | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:63:47:63:47 | s | | overloading.rs:20:5:21:13 | S | +| overloading.rs:64:13:64:15 | _n3 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:64:19:64:65 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:64:46:64:64 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:64:46:64:64 | &... | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:64:47:64:64 | ...::default(...) | | overloading.rs:20:5:21:13 | S | +| overloading.rs:65:13:65:15 | _n4 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:65:19:65:49 | ...::method2(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:65:47:65:48 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:65:47:65:48 | &s | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:65:48:65:48 | s | | overloading.rs:20:5:21:13 | S | +| overloading.rs:66:13:66:15 | _n5 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:66:19:66:66 | ...::method2(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:66:47:66:65 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:66:47:66:65 | &... | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:66:48:66:65 | ...::default(...) | | overloading.rs:20:5:21:13 | S | +| overloading.rs:68:9:68:37 | ...::function(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:69:9:69:38 | ...::function(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:78:26:78:29 | SelfParam | | overloading.rs:77:5:81:5 | Self [trait OverlappingTrait] | +| overloading.rs:80:28:80:31 | SelfParam | | overloading.rs:77:5:81:5 | Self [trait OverlappingTrait] | +| overloading.rs:80:34:80:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:85:26:85:29 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:85:38:87:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:86:13:86:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:90:28:90:31 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:90:34:90:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:90:48:92:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:91:13:91:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:97:26:97:29 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:97:38:99:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:98:13:98:16 | self | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:102:28:102:31 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:102:40:104:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:103:13:103:16 | self | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:111:26:111:29 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:111:26:111:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:111:38:113:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:112:13:112:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:116:28:116:31 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:116:28:116:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:116:40:118:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:117:13:117:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:123:26:123:29 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:123:26:123:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:123:38:125:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:124:13:124:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:128:28:128:31 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:128:28:128:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:128:34:128:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:128:48:130:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:129:13:129:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:135:26:135:29 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:135:26:135:29 | SelfParam | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:135:38:137:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:136:13:136:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:140:28:140:31 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:140:28:140:31 | SelfParam | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:140:34:140:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:140:48:142:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:141:13:141:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:149:14:149:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:149:14:149:18 | SelfParam | TRef | overloading.rs:148:5:150:5 | Self [trait OverlappingTrait2] | +| overloading.rs:149:21:149:21 | x | | {EXTERNAL LOCATION} | & | +| overloading.rs:149:21:149:21 | x | TRef | overloading.rs:148:29:148:29 | T | +| overloading.rs:154:14:154:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:154:14:154:18 | SelfParam | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:154:14:154:18 | SelfParam | TRef.T3 | overloading.rs:152:10:152:10 | T | +| overloading.rs:154:21:154:21 | x | | {EXTERNAL LOCATION} | & | +| overloading.rs:154:21:154:21 | x | TRef | overloading.rs:152:10:152:10 | T | +| overloading.rs:154:37:156:9 | { ... } | | {EXTERNAL LOCATION} | & | +| overloading.rs:154:37:156:9 | { ... } | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:154:37:156:9 | { ... } | TRef.T3 | overloading.rs:152:10:152:10 | T | +| overloading.rs:155:13:155:16 | self | | {EXTERNAL LOCATION} | & | +| overloading.rs:155:13:155:16 | self | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:155:13:155:16 | self | TRef.T3 | overloading.rs:152:10:152:10 | T | +| overloading.rs:161:14:161:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:161:14:161:18 | SelfParam | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:161:14:161:18 | SelfParam | TRef.T3 | overloading.rs:159:10:159:10 | T | +| overloading.rs:161:21:161:21 | x | | overloading.rs:159:10:159:10 | T | +| overloading.rs:161:36:163:9 | { ... } | | {EXTERNAL LOCATION} | & | +| overloading.rs:161:36:163:9 | { ... } | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:161:36:163:9 | { ... } | TRef.T3 | overloading.rs:159:10:159:10 | T | +| overloading.rs:162:13:162:16 | self | | {EXTERNAL LOCATION} | & | +| overloading.rs:162:13:162:16 | self | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:162:13:162:16 | self | TRef.T3 | overloading.rs:159:10:159:10 | T | +| overloading.rs:168:14:168:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:168:14:168:18 | SelfParam | TRef | overloading.rs:166:5:169:5 | Self [trait MyTrait1] | +| overloading.rs:168:21:168:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:178:14:178:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:178:14:178:18 | SelfParam | TRef | overloading.rs:173:5:174:14 | S4 | +| overloading.rs:178:21:178:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:188:14:188:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:188:14:188:18 | SelfParam | TRef | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:188:14:188:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:188:21:188:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:197:16:223:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:198:13:198:13 | x | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:198:17:198:18 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:199:9:199:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:199:18:199:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:199:18:199:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:199:18:199:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:199:18:199:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:199:18:199:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:199:26:199:26 | x | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:199:26:199:42 | x.common_method() | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:200:9:200:46 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:200:18:200:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:200:18:200:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:200:18:200:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:200:18:200:45 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:200:18:200:45 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:200:26:200:45 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:200:44:200:44 | x | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:201:9:201:45 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:201:18:201:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:201:18:201:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:201:18:201:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:201:18:201:44 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:201:18:201:44 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:201:26:201:26 | x | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:201:26:201:44 | x.common_method_2() | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:202:9:202:48 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:202:18:202:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:202:18:202:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:202:18:202:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:202:18:202:47 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:202:18:202:47 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:202:26:202:47 | ...::common_method_2(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:202:46:202:46 | x | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:204:13:204:13 | y | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:204:13:204:13 | y | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:204:17:204:22 | S2(...) | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:204:17:204:22 | S2(...) | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:204:20:204:21 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:205:9:205:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:205:18:205:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:205:18:205:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:205:18:205:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:205:18:205:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:205:18:205:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:205:26:205:26 | y | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:205:26:205:26 | y | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:205:26:205:42 | y.common_method() | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:206:9:206:57 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:206:18:206:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:206:18:206:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:206:18:206:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:206:18:206:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:206:18:206:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:206:26:206:56 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:206:50:206:55 | S2(...) | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:206:50:206:55 | S2(...) | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:206:53:206:54 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:208:13:208:13 | z | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:208:13:208:13 | z | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:208:17:208:21 | S2(...) | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:208:17:208:21 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:208:20:208:20 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:209:9:209:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:209:18:209:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:209:18:209:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:209:18:209:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:209:18:209:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:209:18:209:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:209:26:209:26 | z | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:209:26:209:26 | z | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:209:26:209:42 | z.common_method() | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:210:9:210:50 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:210:18:210:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:210:18:210:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:210:18:210:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:210:18:210:49 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:210:18:210:49 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:210:26:210:49 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:210:44:210:48 | S2(...) | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:210:44:210:48 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:210:47:210:47 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:211:9:211:57 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:211:18:211:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:211:18:211:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:211:18:211:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:211:18:211:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:211:18:211:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:211:26:211:56 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:211:51:211:55 | S2(...) | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:211:51:211:55 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:211:54:211:54 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:213:13:213:13 | w | | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:213:13:213:13 | w | T3 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:213:17:213:22 | S3(...) | | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:213:17:213:22 | S3(...) | T3 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:213:20:213:21 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:214:9:214:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:214:18:214:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:214:18:214:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:214:18:214:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:214:18:214:31 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:214:18:214:31 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:214:26:214:26 | w | | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:214:26:214:26 | w | T3 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:214:26:214:31 | w.m(...) | | {EXTERNAL LOCATION} | & | +| overloading.rs:214:26:214:31 | w.m(...) | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:214:26:214:31 | w.m(...) | TRef.T3 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:214:30:214:30 | x | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:215:9:215:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:215:18:215:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:215:18:215:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:215:18:215:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:215:18:215:37 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:215:18:215:37 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:215:26:215:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | +| overloading.rs:215:26:215:37 | ...::m(...) | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:215:26:215:37 | ...::m(...) | TRef.T3 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:215:32:215:33 | &w | | {EXTERNAL LOCATION} | & | +| overloading.rs:215:32:215:33 | &w | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:215:32:215:33 | &w | TRef.T3 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:215:33:215:33 | w | | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:215:33:215:33 | w | T3 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:215:36:215:36 | x | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:217:9:217:10 | S4 | | overloading.rs:173:5:174:14 | S4 | +| overloading.rs:217:9:217:14 | S4.m() | | {EXTERNAL LOCATION} | () | +| overloading.rs:218:9:218:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:218:15:218:17 | &S4 | | {EXTERNAL LOCATION} | & | +| overloading.rs:218:15:218:17 | &S4 | TRef | overloading.rs:173:5:174:14 | S4 | +| overloading.rs:218:16:218:17 | S4 | | overloading.rs:173:5:174:14 | S4 | +| overloading.rs:219:9:219:16 | S5(...) | | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:219:9:219:16 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:219:9:219:20 | ... .m() | | {EXTERNAL LOCATION} | () | +| overloading.rs:219:12:219:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:220:9:220:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:220:15:220:23 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:220:15:220:23 | &... | TRef | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:220:15:220:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:220:16:220:23 | S5(...) | | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:220:16:220:23 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:220:19:220:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:221:9:221:16 | S5(...) | | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:221:9:221:16 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | +| overloading.rs:221:9:221:20 | ... .m() | | {EXTERNAL LOCATION} | () | +| overloading.rs:221:12:221:15 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:222:9:222:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:222:15:222:23 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:222:15:222:23 | &... | TRef | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:222:15:222:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | bool | +| overloading.rs:222:16:222:23 | S5(...) | | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:222:16:222:23 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | +| overloading.rs:222:19:222:22 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:228:14:228:17 | SelfParam | | overloading.rs:227:5:229:5 | Self [trait Trait1] | +| overloading.rs:228:20:228:20 | x | | overloading.rs:227:18:227:19 | T1 | +| overloading.rs:233:14:233:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:233:20:233:20 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:233:35:235:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:234:13:234:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:240:14:240:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:240:20:240:20 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:240:35:242:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:241:13:241:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:241:13:241:13 | 0 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:246:14:246:17 | SelfParam | | overloading.rs:245:5:247:5 | Self [trait Trait2] | +| overloading.rs:246:20:246:20 | x | | overloading.rs:245:18:245:19 | T1 | +| overloading.rs:251:14:251:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:251:20:251:20 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:251:35:253:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:252:13:252:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:258:14:258:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:258:20:258:20 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:258:35:260:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:259:13:259:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:259:13:259:13 | 0 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:263:12:270:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:264:13:264:13 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:264:17:264:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:265:13:265:13 | y | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:265:17:265:17 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:265:17:265:25 | x.f(...) | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:265:21:265:24 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:266:13:266:13 | z | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:266:22:266:22 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:266:22:266:44 | x.f(...) | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:266:26:266:43 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:267:13:267:13 | z | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:267:17:267:17 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:267:17:267:25 | x.f(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:267:21:267:24 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:268:13:268:13 | z | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:268:22:268:22 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:268:22:268:44 | x.f(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:268:26:268:43 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:269:13:269:13 | z | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:269:22:269:22 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:269:22:269:30 | x.g(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:269:26:269:29 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:286:35:288:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:287:13:287:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:295:35:297:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:296:13:296:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:302:14:302:14 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:302:29:304:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:303:13:303:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:309:14:309:14 | x | | {EXTERNAL LOCATION} | bool | +| overloading.rs:309:31:311:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:310:13:310:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:314:12:321:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:315:9:315:25 | ...::Assoc(...) | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:316:9:316:26 | ...::Assoc(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:319:9:319:26 | ...::f(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:319:22:319:25 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:320:9:320:22 | ...::f(...) | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:320:21:320:21 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:330:14:330:17 | SelfParam | | overloading.rs:327:5:331:5 | Self [trait MyTrait] | +| overloading.rs:334:14:334:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:334:14:334:17 | SelfParam | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:334:27:336:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:335:13:335:16 | self | | overloading.rs:325:5:325:25 | S | +| overloading.rs:335:13:335:16 | self | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:335:13:335:18 | self.0 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:338:14:338:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:338:14:338:17 | SelfParam | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:338:27:340:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:339:13:339:16 | self | | overloading.rs:325:5:325:25 | S | +| overloading.rs:339:13:339:16 | self | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:339:13:339:18 | self.0 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:344:14:344:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:344:14:344:17 | SelfParam | T | {EXTERNAL LOCATION} | bool | +| overloading.rs:344:28:346:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:345:13:345:16 | self | | overloading.rs:325:5:325:25 | S | +| overloading.rs:345:13:345:16 | self | T | {EXTERNAL LOCATION} | bool | +| overloading.rs:345:13:345:18 | self.0 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:352:14:352:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:352:14:352:17 | SelfParam | T | overloading.rs:349:10:349:10 | T | +| overloading.rs:352:25:359:9 | { ... } | | overloading.rs:325:5:325:25 | S | +| overloading.rs:352:25:359:9 | { ... } | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:353:17:353:17 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:353:21:353:47 | ...::f(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:353:26:353:46 | S(...) | | overloading.rs:325:5:325:25 | S | +| overloading.rs:353:26:353:46 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:353:28:353:45 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:354:17:354:17 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:354:21:354:61 | ...::f(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:354:40:354:60 | S(...) | | overloading.rs:325:5:325:25 | S | +| overloading.rs:354:40:354:60 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:354:42:354:59 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:355:17:355:17 | x | | {EXTERNAL LOCATION} | bool | +| overloading.rs:355:21:355:55 | ...::g(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:355:34:355:54 | S(...) | | overloading.rs:325:5:325:25 | S | +| overloading.rs:355:34:355:54 | S(...) | T | {EXTERNAL LOCATION} | bool | +| overloading.rs:355:36:355:53 | ...::default(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:356:17:356:17 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:356:21:356:54 | ...::g(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:356:33:356:53 | S(...) | | overloading.rs:325:5:325:25 | S | +| overloading.rs:356:33:356:53 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:356:35:356:52 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:357:17:357:17 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:357:21:357:61 | ...::g(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:357:40:357:60 | S(...) | | overloading.rs:325:5:325:25 | S | +| overloading.rs:357:40:357:60 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:357:42:357:59 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:358:13:358:16 | S(...) | | overloading.rs:325:5:325:25 | S | +| overloading.rs:358:13:358:16 | S(...) | T | {EXTERNAL LOCATION} | i32 | +| overloading.rs:358:13:358:16 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:358:15:358:15 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:367:17:370:5 | { ... } | | overloading.rs:364:5:365:13 | S | +| overloading.rs:368:13:368:13 | x | | overloading.rs:364:5:365:13 | S | +| overloading.rs:368:17:368:34 | ...::default(...) | | overloading.rs:364:5:365:13 | S | +| overloading.rs:369:9:369:21 | ...::from(...) | | overloading.rs:364:5:365:13 | S | +| overloading.rs:369:20:369:20 | x | | overloading.rs:364:5:365:13 | S | +| overloading.rs:378:17:378:17 | _ | | overloading.rs:364:5:365:13 | S | +| overloading.rs:378:31:380:9 | { ... } | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:379:13:379:14 | S1 | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:385:17:385:17 | _ | | overloading.rs:374:5:374:14 | S2 | +| overloading.rs:385:32:387:9 | { ... } | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:386:13:386:14 | S1 | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:392:17:392:17 | _ | | overloading.rs:364:5:365:13 | S | +| overloading.rs:392:31:394:9 | { ... } | | overloading.rs:374:5:374:14 | S2 | +| overloading.rs:393:13:393:14 | S2 | | overloading.rs:374:5:374:14 | S2 | +| overloading.rs:397:10:397:10 | b | | {EXTERNAL LOCATION} | bool | +| overloading.rs:397:25:401:5 | { ... } | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:398:13:398:13 | s | | overloading.rs:364:5:365:13 | S | +| overloading.rs:398:17:398:54 | if b {...} else {...} | | overloading.rs:364:5:365:13 | S | +| overloading.rs:398:20:398:20 | b | | {EXTERNAL LOCATION} | bool | +| overloading.rs:398:22:398:26 | { ... } | | overloading.rs:364:5:365:13 | S | +| overloading.rs:398:24:398:24 | S | | overloading.rs:364:5:365:13 | S | +| overloading.rs:398:33:398:54 | { ... } | | overloading.rs:364:5:365:13 | S | +| overloading.rs:398:35:398:52 | ...::default(...) | | overloading.rs:364:5:365:13 | S | +| overloading.rs:399:13:399:13 | x | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:399:17:399:29 | ...::from(...) | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:399:28:399:28 | s | | overloading.rs:364:5:365:13 | S | +| overloading.rs:400:9:400:9 | x | | overloading.rs:372:5:372:14 | S1 | | pattern_matching.rs:13:26:133:1 | { ... } | | {EXTERNAL LOCATION} | Option | | pattern_matching.rs:13:26:133:1 | { ... } | T | {EXTERNAL LOCATION} | () | | pattern_matching.rs:14:9:14:13 | value | | {EXTERNAL LOCATION} | Option | diff --git a/rust/ql/test/query-tests/security/CWE-312/CONSISTENCY/PathResolutionConsistency.expected b/rust/ql/test/query-tests/security/CWE-312/CONSISTENCY/PathResolutionConsistency.expected index 580c9cd8202c..7ab983902e0b 100644 --- a/rust/ql/test/query-tests/security/CWE-312/CONSISTENCY/PathResolutionConsistency.expected +++ b/rust/ql/test/query-tests/security/CWE-312/CONSISTENCY/PathResolutionConsistency.expected @@ -1,2 +1,2 @@ multipleResolvedTargets -| test_storage.rs:36:45:36:57 | text.as_ref() | +| test_storage.rs:40:5:40:31 | combined.extend(...) | diff --git a/shared/concepts/CHANGELOG.md b/shared/concepts/CHANGELOG.md index 29dba07c3659..933fc5e7cd91 100644 --- a/shared/concepts/CHANGELOG.md +++ b/shared/concepts/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.0.16 + +No user-facing changes. + ## 0.0.15 No user-facing changes. diff --git a/shared/concepts/change-notes/released/0.0.16.md b/shared/concepts/change-notes/released/0.0.16.md new file mode 100644 index 000000000000..62b5521ea013 --- /dev/null +++ b/shared/concepts/change-notes/released/0.0.16.md @@ -0,0 +1,3 @@ +## 0.0.16 + +No user-facing changes. diff --git a/shared/concepts/codeql-pack.release.yml b/shared/concepts/codeql-pack.release.yml index dff35216fc69..a49f7be4cff3 100644 --- a/shared/concepts/codeql-pack.release.yml +++ b/shared/concepts/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.0.15 +lastReleaseVersion: 0.0.16 diff --git a/shared/concepts/qlpack.yml b/shared/concepts/qlpack.yml index 40350f8b33c0..240ee962cfd4 100644 --- a/shared/concepts/qlpack.yml +++ b/shared/concepts/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/concepts -version: 0.0.15 +version: 0.0.17-dev groups: shared library: true dependencies: diff --git a/shared/controlflow/CHANGELOG.md b/shared/controlflow/CHANGELOG.md index 1fd69b562a68..88666b4ad289 100644 --- a/shared/controlflow/CHANGELOG.md +++ b/shared/controlflow/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.26 + +No user-facing changes. + ## 2.0.25 No user-facing changes. diff --git a/shared/controlflow/change-notes/released/2.0.26.md b/shared/controlflow/change-notes/released/2.0.26.md new file mode 100644 index 000000000000..9b1fe95f5774 --- /dev/null +++ b/shared/controlflow/change-notes/released/2.0.26.md @@ -0,0 +1,3 @@ +## 2.0.26 + +No user-facing changes. diff --git a/shared/controlflow/codeql-pack.release.yml b/shared/controlflow/codeql-pack.release.yml index f54d86201189..63d57bef4816 100644 --- a/shared/controlflow/codeql-pack.release.yml +++ b/shared/controlflow/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.0.25 +lastReleaseVersion: 2.0.26 diff --git a/shared/controlflow/codeql/controlflow/Cfg.qll b/shared/controlflow/codeql/controlflow/Cfg.qll index 62eebe8e183e..157bf0ffd4f3 100644 --- a/shared/controlflow/codeql/controlflow/Cfg.qll +++ b/shared/controlflow/codeql/controlflow/Cfg.qll @@ -1122,6 +1122,9 @@ module MakeWithSplitting< /** Gets the scope of this node. */ CfgScope getScope() { result = getNodeCfgScope(this) } + /** Gets the enclosing callable of this node. */ + CfgScope getEnclosingCallable() { result = this.getScope() } + /** Gets a successor node of a given type, if any. */ Node getASuccessor(SuccessorType t) { result = getASuccessor(this, t) } @@ -1310,160 +1313,19 @@ module MakeWithSplitting< } } - /** A node to be included in the output of `TestOutput`. */ - signature class RelevantNodeSig extends Node; - - /** - * Import this module into a `.ql` file to output a CFG. The - * graph is restricted to nodes from `RelevantNode`. - */ - module TestOutput { - /** Holds if `pred -> succ` is an edge in the CFG. */ - query predicate edges(RelevantNode pred, RelevantNode succ, string label) { - label = - strictconcat(SuccessorType t, string s | - succ = getASuccessor(pred, t) and - if t instanceof DirectSuccessor then s = "" else s = t.toString() - | - s, ", " order by s - ) - } - - /** - * Provides logic for representing a CFG as a [Mermaid diagram](https://mermaid.js.org/). - */ - module Mermaid { - private string nodeId(RelevantNode n) { - result = - any(int i | - n = - rank[i](RelevantNode p, string filePath, int startLine, int startColumn, int endLine, - int endColumn | - p.getLocation() - .hasLocationInfo(filePath, startLine, startColumn, endLine, endColumn) - | - p order by filePath, startLine, startColumn, endLine, endColumn, p.toString() - ) - ).toString() - } - - private string nodes() { - result = - concat(RelevantNode n, string id, string text | - id = nodeId(n) and - text = n.toString() - | - id + "[\"" + text + "\"]", "\n" order by id - ) - } + private import PrintGraph as Pp - private string edge(RelevantNode pred, RelevantNode succ) { - edges(pred, succ, _) and - exists(string label | - edges(pred, succ, label) and - if label = "" - then result = nodeId(pred) + " --> " + nodeId(succ) - else result = nodeId(pred) + " -- " + label + " --> " + nodeId(succ) - ) - } + private module PrintGraphInput implements Pp::InputSig { + class Callable = CfgScope; - private string edges() { - result = - concat(RelevantNode pred, RelevantNode succ, string edge, string filePath, int startLine, - int startColumn, int endLine, int endColumn | - edge = edge(pred, succ) and - pred.getLocation().hasLocationInfo(filePath, startLine, startColumn, endLine, endColumn) - | - edge, "\n" - order by - filePath, startLine, startColumn, endLine, endColumn, pred.toString() - ) - } + class ControlFlowNode = Node; - /** Holds if the Mermaid representation is `s`. */ - query predicate mermaid(string s) { s = "flowchart TD\n" + nodes() + "\n\n" + edges() } + ControlFlowNode getASuccessor(ControlFlowNode n, SuccessorType t) { + result = n.getASuccessor(t) } } - /** Provides the input to `ViewCfgQuery`. */ - signature module ViewCfgQueryInputSig { - /** The source file selected in the IDE. Should be an `external` predicate. */ - string selectedSourceFile(); - - /** The source line selected in the IDE. Should be an `external` predicate. */ - int selectedSourceLine(); - - /** The source column selected in the IDE. Should be an `external` predicate. */ - int selectedSourceColumn(); - - /** - * Holds if CFG scope `scope` spans column `startColumn` of line `startLine` to - * column `endColumn` of line `endLine` in `file`. - */ - predicate cfgScopeSpan( - CfgScope scope, File file, int startLine, int startColumn, int endLine, int endColumn - ); - } - - /** - * Provides an implementation for a `View CFG` query. - * - * Import this module into a `.ql` that looks like - * - * ```ql - * @name Print CFG - * @description Produces a representation of a file's Control Flow Graph. - * This query is used by the VS Code extension. - * @id /print-cfg - * @kind graph - * @tags ide-contextual-queries/print-cfg - * ``` - */ - module ViewCfgQuery ViewCfgQueryInput> { - private import ViewCfgQueryInput - - bindingset[file, line, column] - private CfgScope smallestEnclosingScope(File file, int line, int column) { - result = - min(CfgScope scope, int startLine, int startColumn, int endLine, int endColumn | - cfgScopeSpan(scope, file, startLine, startColumn, endLine, endColumn) and - ( - startLine < line - or - startLine = line and startColumn <= column - ) and - ( - endLine > line - or - endLine = line and endColumn >= column - ) - | - scope order by startLine desc, startColumn desc, endLine, endColumn - ) - } - - private import IdeContextual - - private class RelevantNode extends Node { - RelevantNode() { - this.getScope() = - smallestEnclosingScope(getFileBySourceArchiveName(selectedSourceFile()), - selectedSourceLine(), selectedSourceColumn()) - } - - string getOrderDisambiguation() { result = "" } - } - - private module Output = TestOutput; - - import Output::Mermaid - - /** Holds if `pred` -> `succ` is an edge in the CFG. */ - query predicate edges(RelevantNode pred, RelevantNode succ, string attr, string val) { - attr = "semmle.label" and - Output::edges(pred, succ, val) - } - } + import Pp::PrintGraph /** Provides a set of consistency queries. */ module Consistency { diff --git a/shared/controlflow/codeql/controlflow/PrintGraph.qll b/shared/controlflow/codeql/controlflow/PrintGraph.qll new file mode 100644 index 000000000000..c4a942feab23 --- /dev/null +++ b/shared/controlflow/codeql/controlflow/PrintGraph.qll @@ -0,0 +1,187 @@ +/** + * Provides modules for printing control flow graphs in VSCode via the "View + * CFG" query. Also provides modules for printing control flow graphs in tests + * and as Mermaid diagrams. + */ +overlay[local?] +module; + +private import codeql.util.FileSystem +private import codeql.util.Location +private import SuccessorType + +signature module InputSig { + class Callable; + + class ControlFlowNode { + Callable getEnclosingCallable(); + + Location getLocation(); + + string toString(); + } + + ControlFlowNode getASuccessor(ControlFlowNode n, SuccessorType t); +} + +/** Provides modules for printing control flow graphs. */ +module PrintGraph Input> { + private import Input + + /** A node to be included in the output of `TestOutput`. */ + signature class RelevantNodeSig extends ControlFlowNode; + + /** + * Import this module into a `.ql` file to output a CFG. The + * graph is restricted to nodes from `RelevantNode`. + */ + module TestOutput { + /** Holds if `pred -> succ` is an edge in the CFG. */ + query predicate edges(RelevantNode pred, RelevantNode succ, string label) { + label = + strictconcat(SuccessorType t, string s | + succ = getASuccessor(pred, t) and + if t instanceof DirectSuccessor then s = "" else s = t.toString() + | + s, ", " order by s + ) + } + + /** + * Provides logic for representing a CFG as a [Mermaid diagram](https://mermaid.js.org/). + */ + module Mermaid { + private string nodeId(RelevantNode n) { + result = + any(int i | + n = + rank[i](RelevantNode p, string filePath, int startLine, int startColumn, int endLine, + int endColumn | + p.getLocation() + .hasLocationInfo(filePath, startLine, startColumn, endLine, endColumn) + | + p order by filePath, startLine, startColumn, endLine, endColumn, p.toString() + ) + ).toString() + } + + private string nodes() { + result = + concat(RelevantNode n, string id, string text | + id = nodeId(n) and + text = n.toString() + | + id + "[\"" + text + "\"]", "\n" order by id + ) + } + + private string edge(RelevantNode pred, RelevantNode succ) { + edges(pred, succ, _) and + exists(string label | + edges(pred, succ, label) and + if label = "" + then result = nodeId(pred) + " --> " + nodeId(succ) + else result = nodeId(pred) + " -- " + label + " --> " + nodeId(succ) + ) + } + + private string edges() { + result = + concat(RelevantNode pred, RelevantNode succ, string edge, string filePath, int startLine, + int startColumn, int endLine, int endColumn | + edge = edge(pred, succ) and + pred.getLocation().hasLocationInfo(filePath, startLine, startColumn, endLine, endColumn) + | + edge, "\n" + order by + filePath, startLine, startColumn, endLine, endColumn, pred.toString() + ) + } + + /** Holds if the Mermaid representation is `s`. */ + query predicate mermaid(string s) { s = "flowchart TD\n" + nodes() + "\n\n" + edges() } + } + } + + /** Provides the input to `ViewCfgQuery`. */ + signature module ViewCfgQueryInputSig { + /** Gets the source file selected in the IDE. Should be an `external` predicate. */ + string selectedSourceFile(); + + /** Gets the source line selected in the IDE. Should be an `external` predicate. */ + int selectedSourceLine(); + + /** Gets the source column selected in the IDE. Should be an `external` predicate. */ + int selectedSourceColumn(); + + /** + * Holds if `callable` spans column `startColumn` of line `startLine` to + * column `endColumn` of line `endLine` in `file`. + */ + predicate cfgScopeSpan( + Callable callable, File file, int startLine, int startColumn, int endLine, int endColumn + ); + } + + /** + * Provides an implementation for a `View CFG` query. + * + * Import this module into a `.ql` that looks like + * + * ```ql + * @name Print CFG + * @description Produces a representation of a file's Control Flow Graph. + * This query is used by the VS Code extension. + * @id /print-cfg + * @kind graph + * @tags ide-contextual-queries/print-cfg + * ``` + */ + module ViewCfgQuery ViewCfgQueryInput> { + private import ViewCfgQueryInput + + bindingset[file, line, column] + private Callable smallestEnclosingScope(File file, int line, int column) { + result = + min(Callable callable, int startLine, int startColumn, int endLine, int endColumn | + cfgScopeSpan(callable, file, startLine, startColumn, endLine, endColumn) and + ( + startLine < line + or + startLine = line and startColumn <= column + ) and + ( + endLine > line + or + endLine = line and endColumn >= column + ) + | + callable order by startLine desc, startColumn desc, endLine, endColumn + ) + } + + private import IdeContextual + + final private class FinalControlFlowNode = ControlFlowNode; + + private class RelevantNode extends FinalControlFlowNode { + RelevantNode() { + this.getEnclosingCallable() = + smallestEnclosingScope(getFileBySourceArchiveName(selectedSourceFile()), + selectedSourceLine(), selectedSourceColumn()) + } + + string getOrderDisambiguation() { result = "" } + } + + private module Output = TestOutput; + + import Output::Mermaid + + /** Holds if `pred` -> `succ` is an edge in the CFG. */ + query predicate edges(RelevantNode pred, RelevantNode succ, string attr, string val) { + attr = "semmle.label" and + Output::edges(pred, succ, val) + } + } +} diff --git a/shared/controlflow/qlpack.yml b/shared/controlflow/qlpack.yml index f8e86c3b834d..6ae58a799e62 100644 --- a/shared/controlflow/qlpack.yml +++ b/shared/controlflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/controlflow -version: 2.0.25 +version: 2.0.27-dev groups: shared library: true dependencies: diff --git a/shared/dataflow/CHANGELOG.md b/shared/dataflow/CHANGELOG.md index 49857928ffe2..f9d35bda41df 100644 --- a/shared/dataflow/CHANGELOG.md +++ b/shared/dataflow/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.26 + +No user-facing changes. + ## 2.0.25 No user-facing changes. diff --git a/shared/dataflow/change-notes/released/2.0.26.md b/shared/dataflow/change-notes/released/2.0.26.md new file mode 100644 index 000000000000..9b1fe95f5774 --- /dev/null +++ b/shared/dataflow/change-notes/released/2.0.26.md @@ -0,0 +1,3 @@ +## 2.0.26 + +No user-facing changes. diff --git a/shared/dataflow/codeql-pack.release.yml b/shared/dataflow/codeql-pack.release.yml index f54d86201189..63d57bef4816 100644 --- a/shared/dataflow/codeql-pack.release.yml +++ b/shared/dataflow/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.0.25 +lastReleaseVersion: 2.0.26 diff --git a/shared/dataflow/qlpack.yml b/shared/dataflow/qlpack.yml index 86bfb0a5b055..d16d8379bbb5 100644 --- a/shared/dataflow/qlpack.yml +++ b/shared/dataflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/dataflow -version: 2.0.25 +version: 2.0.27-dev groups: shared library: true dependencies: diff --git a/shared/mad/CHANGELOG.md b/shared/mad/CHANGELOG.md index bc1ee96895ce..7fe382ef31da 100644 --- a/shared/mad/CHANGELOG.md +++ b/shared/mad/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/mad/change-notes/released/1.0.42.md b/shared/mad/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/mad/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/mad/codeql-pack.release.yml b/shared/mad/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/mad/codeql-pack.release.yml +++ b/shared/mad/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/mad/qlpack.yml b/shared/mad/qlpack.yml index 349dc19aa337..9adf5d48ad5e 100644 --- a/shared/mad/qlpack.yml +++ b/shared/mad/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/mad -version: 1.0.41 +version: 1.0.43-dev groups: shared library: true dependencies: diff --git a/shared/quantum/CHANGELOG.md b/shared/quantum/CHANGELOG.md index d5252bfc0c4f..7ac497bdb32c 100644 --- a/shared/quantum/CHANGELOG.md +++ b/shared/quantum/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.0.20 + +No user-facing changes. + ## 0.0.19 No user-facing changes. diff --git a/shared/quantum/change-notes/released/0.0.20.md b/shared/quantum/change-notes/released/0.0.20.md new file mode 100644 index 000000000000..98daf20a59a1 --- /dev/null +++ b/shared/quantum/change-notes/released/0.0.20.md @@ -0,0 +1,3 @@ +## 0.0.20 + +No user-facing changes. diff --git a/shared/quantum/codeql-pack.release.yml b/shared/quantum/codeql-pack.release.yml index f406319f372e..d2e86745bcaa 100644 --- a/shared/quantum/codeql-pack.release.yml +++ b/shared/quantum/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.0.19 +lastReleaseVersion: 0.0.20 diff --git a/shared/quantum/qlpack.yml b/shared/quantum/qlpack.yml index f394fab96541..91774b4db2df 100644 --- a/shared/quantum/qlpack.yml +++ b/shared/quantum/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/quantum -version: 0.0.19 +version: 0.0.21-dev groups: shared library: true dependencies: diff --git a/shared/rangeanalysis/CHANGELOG.md b/shared/rangeanalysis/CHANGELOG.md index 3dde8baa4b06..56497c3d31e4 100644 --- a/shared/rangeanalysis/CHANGELOG.md +++ b/shared/rangeanalysis/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/rangeanalysis/change-notes/released/1.0.42.md b/shared/rangeanalysis/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/rangeanalysis/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/rangeanalysis/codeql-pack.release.yml b/shared/rangeanalysis/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/rangeanalysis/codeql-pack.release.yml +++ b/shared/rangeanalysis/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/rangeanalysis/qlpack.yml b/shared/rangeanalysis/qlpack.yml index 846d83bc93c4..a5e5998c4a76 100644 --- a/shared/rangeanalysis/qlpack.yml +++ b/shared/rangeanalysis/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rangeanalysis -version: 1.0.41 +version: 1.0.43-dev groups: shared library: true dependencies: diff --git a/shared/regex/CHANGELOG.md b/shared/regex/CHANGELOG.md index 2e3dacffd923..48478854251d 100644 --- a/shared/regex/CHANGELOG.md +++ b/shared/regex/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/regex/change-notes/released/1.0.42.md b/shared/regex/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/regex/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/regex/codeql-pack.release.yml b/shared/regex/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/regex/codeql-pack.release.yml +++ b/shared/regex/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/regex/codeql/regex/nfa/ExponentialBackTracking.qll b/shared/regex/codeql/regex/nfa/ExponentialBackTracking.qll index 23f764973715..116029c56a94 100644 --- a/shared/regex/codeql/regex/nfa/ExponentialBackTracking.qll +++ b/shared/regex/codeql/regex/nfa/ExponentialBackTracking.qll @@ -95,7 +95,7 @@ module Make { ) } - string toString() { result = this.(InfiniteRepetitionQuantifier).toString() } + string toString() { result = super.toString() } } /** diff --git a/shared/regex/codeql/regex/nfa/NfaUtils.qll b/shared/regex/codeql/regex/nfa/NfaUtils.qll index e1be49796e00..468cf7a3e963 100644 --- a/shared/regex/codeql/regex/nfa/NfaUtils.qll +++ b/shared/regex/codeql/regex/nfa/NfaUtils.qll @@ -104,11 +104,11 @@ module Make { private class RegexpCharacterConstant instanceof RegExpConstant { RegexpCharacterConstant() { this.isCharacter() } - string toString() { result = this.(RegExpConstant).toString() } + string toString() { result = super.toString() } - RegExpTerm getRootTerm() { result = this.(RegExpConstant).getRootTerm() } + RegExpTerm getRootTerm() { result = super.getRootTerm() } - string getValue() { result = this.(RegExpConstant).getValue() } + string getValue() { result = super.getValue() } } /** @@ -578,11 +578,11 @@ module Make { ) } - string toString() { result = this.(RegExpTerm).toString() } + string toString() { result = super.toString() } - RegExpTerm getAChild() { result = this.(RegExpTerm).getChild(_) } + RegExpTerm getAChild() { result = super.getChild(_) } - RegExpTerm getChild(int i) { result = this.(RegExpTerm).getChild(i) } + RegExpTerm getChild(int i) { result = super.getChild(i) } } /** @@ -601,11 +601,11 @@ module Make { ) } - string toString() { result = this.(RegExpTerm).toString() } + string toString() { result = super.toString() } - RegExpTerm getAChild() { result = this.(RegExpTerm).getAChild() } + RegExpTerm getAChild() { result = super.getAChild() } - RegExpTerm getChild(int i) { result = this.(RegExpTerm).getChild(i) } + RegExpTerm getChild(int i) { result = super.getChild(i) } } /** @@ -621,11 +621,11 @@ module Make { ) } - string toString() { result = this.(RegExpTerm).toString() } + string toString() { result = super.toString() } - RegExpTerm getAChild() { result = this.(RegExpTerm).getAChild() } + RegExpTerm getAChild() { result = super.getAChild() } - RegExpTerm getChild(int i) { result = this.(RegExpTerm).getChild(i) } + RegExpTerm getChild(int i) { result = super.getChild(i) } } /** diff --git a/shared/regex/qlpack.yml b/shared/regex/qlpack.yml index 80b995f7c50c..2dd532583184 100644 --- a/shared/regex/qlpack.yml +++ b/shared/regex/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/regex -version: 1.0.41 +version: 1.0.43-dev groups: shared library: true dependencies: diff --git a/shared/ssa/CHANGELOG.md b/shared/ssa/CHANGELOG.md index 62c6ce297f98..49bac05febbf 100644 --- a/shared/ssa/CHANGELOG.md +++ b/shared/ssa/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.18 + +No user-facing changes. + ## 2.0.17 No user-facing changes. diff --git a/shared/ssa/change-notes/released/2.0.18.md b/shared/ssa/change-notes/released/2.0.18.md new file mode 100644 index 000000000000..11e398dac31a --- /dev/null +++ b/shared/ssa/change-notes/released/2.0.18.md @@ -0,0 +1,3 @@ +## 2.0.18 + +No user-facing changes. diff --git a/shared/ssa/codeql-pack.release.yml b/shared/ssa/codeql-pack.release.yml index a5f7c15c020f..16342205c738 100644 --- a/shared/ssa/codeql-pack.release.yml +++ b/shared/ssa/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.0.17 +lastReleaseVersion: 2.0.18 diff --git a/shared/ssa/qlpack.yml b/shared/ssa/qlpack.yml index c1b143d616ef..5e567790cfef 100644 --- a/shared/ssa/qlpack.yml +++ b/shared/ssa/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ssa -version: 2.0.17 +version: 2.0.19-dev groups: shared library: true dependencies: diff --git a/shared/threat-models/CHANGELOG.md b/shared/threat-models/CHANGELOG.md index d0c8171cdf67..e91058f491a0 100644 --- a/shared/threat-models/CHANGELOG.md +++ b/shared/threat-models/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/threat-models/change-notes/released/1.0.42.md b/shared/threat-models/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/threat-models/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/threat-models/codeql-pack.release.yml b/shared/threat-models/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/threat-models/codeql-pack.release.yml +++ b/shared/threat-models/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/threat-models/qlpack.yml b/shared/threat-models/qlpack.yml index 634544a4eb87..65539cd3c1b9 100644 --- a/shared/threat-models/qlpack.yml +++ b/shared/threat-models/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/threat-models -version: 1.0.41 +version: 1.0.43-dev library: true groups: shared dataExtensions: diff --git a/shared/tutorial/CHANGELOG.md b/shared/tutorial/CHANGELOG.md index 833807725734..4ecb5dcd241b 100644 --- a/shared/tutorial/CHANGELOG.md +++ b/shared/tutorial/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/tutorial/change-notes/released/1.0.42.md b/shared/tutorial/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/tutorial/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/tutorial/codeql-pack.release.yml b/shared/tutorial/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/tutorial/codeql-pack.release.yml +++ b/shared/tutorial/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/tutorial/qlpack.yml b/shared/tutorial/qlpack.yml index 93b95d3210c3..d632d0426b4a 100644 --- a/shared/tutorial/qlpack.yml +++ b/shared/tutorial/qlpack.yml @@ -1,7 +1,7 @@ name: codeql/tutorial description: Library for the CodeQL detective tutorials, helping new users learn to write CodeQL queries. -version: 1.0.41 +version: 1.0.43-dev groups: shared library: true warnOnImplicitThis: true diff --git a/shared/typeflow/CHANGELOG.md b/shared/typeflow/CHANGELOG.md index caecb313a31a..176ba027afe0 100644 --- a/shared/typeflow/CHANGELOG.md +++ b/shared/typeflow/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/typeflow/change-notes/released/1.0.42.md b/shared/typeflow/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/typeflow/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/typeflow/codeql-pack.release.yml b/shared/typeflow/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/typeflow/codeql-pack.release.yml +++ b/shared/typeflow/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/typeflow/qlpack.yml b/shared/typeflow/qlpack.yml index 4512e9553856..19f169087689 100644 --- a/shared/typeflow/qlpack.yml +++ b/shared/typeflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typeflow -version: 1.0.41 +version: 1.0.43-dev groups: shared library: true dependencies: diff --git a/shared/typeinference/CHANGELOG.md b/shared/typeinference/CHANGELOG.md index 356c331b5dfe..4d23ebe8abb1 100644 --- a/shared/typeinference/CHANGELOG.md +++ b/shared/typeinference/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.0.23 + +No user-facing changes. + ## 0.0.22 No user-facing changes. diff --git a/shared/typeinference/change-notes/released/0.0.23.md b/shared/typeinference/change-notes/released/0.0.23.md new file mode 100644 index 000000000000..e89a1284bb82 --- /dev/null +++ b/shared/typeinference/change-notes/released/0.0.23.md @@ -0,0 +1,3 @@ +## 0.0.23 + +No user-facing changes. diff --git a/shared/typeinference/codeql-pack.release.yml b/shared/typeinference/codeql-pack.release.yml index 11aaa2243f57..cc2195603d84 100644 --- a/shared/typeinference/codeql-pack.release.yml +++ b/shared/typeinference/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.0.22 +lastReleaseVersion: 0.0.23 diff --git a/shared/typeinference/codeql/typeinference/internal/TypeInference.qll b/shared/typeinference/codeql/typeinference/internal/TypeInference.qll index 654102ce2167..c33c49e7a168 100644 --- a/shared/typeinference/codeql/typeinference/internal/TypeInference.qll +++ b/shared/typeinference/codeql/typeinference/internal/TypeInference.qll @@ -980,6 +980,11 @@ module Make1 Input1> { not t = abs.getATypeParameter() } + pragma[nomagic] + private predicate hasTypeConstraint(HasTypeTree term, Type constraint) { + hasTypeConstraint(term, constraint, constraint) + } + /** * Holds if the type tree at `tt` satisfies the constraint `constraint` * with the type `t` at `path`. @@ -994,7 +999,7 @@ module Make1 Input1> { path = prefix0.append(suffix) ) or - hasTypeConstraint(tt, constraint, constraint) and + hasTypeConstraint(tt, constraint) and t = getTypeAt(tt, path) } diff --git a/shared/typeinference/qlpack.yml b/shared/typeinference/qlpack.yml index 6bb3be57eba1..cd15cfac9861 100644 --- a/shared/typeinference/qlpack.yml +++ b/shared/typeinference/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typeinference -version: 0.0.22 +version: 0.0.24-dev groups: shared library: true dependencies: diff --git a/shared/typetracking/CHANGELOG.md b/shared/typetracking/CHANGELOG.md index 8504089f8728..d5ca15b5be73 100644 --- a/shared/typetracking/CHANGELOG.md +++ b/shared/typetracking/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.26 + +No user-facing changes. + ## 2.0.25 No user-facing changes. diff --git a/shared/typetracking/change-notes/released/2.0.26.md b/shared/typetracking/change-notes/released/2.0.26.md new file mode 100644 index 000000000000..9b1fe95f5774 --- /dev/null +++ b/shared/typetracking/change-notes/released/2.0.26.md @@ -0,0 +1,3 @@ +## 2.0.26 + +No user-facing changes. diff --git a/shared/typetracking/codeql-pack.release.yml b/shared/typetracking/codeql-pack.release.yml index f54d86201189..63d57bef4816 100644 --- a/shared/typetracking/codeql-pack.release.yml +++ b/shared/typetracking/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.0.25 +lastReleaseVersion: 2.0.26 diff --git a/shared/typetracking/qlpack.yml b/shared/typetracking/qlpack.yml index fe7582bbde63..41e4b42ff3b3 100644 --- a/shared/typetracking/qlpack.yml +++ b/shared/typetracking/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typetracking -version: 2.0.25 +version: 2.0.27-dev groups: shared library: true dependencies: diff --git a/shared/typos/CHANGELOG.md b/shared/typos/CHANGELOG.md index cfbec562b146..9e886726714d 100644 --- a/shared/typos/CHANGELOG.md +++ b/shared/typos/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/typos/change-notes/released/1.0.42.md b/shared/typos/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/typos/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/typos/codeql-pack.release.yml b/shared/typos/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/typos/codeql-pack.release.yml +++ b/shared/typos/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/typos/qlpack.yml b/shared/typos/qlpack.yml index e587573ad405..cf3df223c88c 100644 --- a/shared/typos/qlpack.yml +++ b/shared/typos/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typos -version: 1.0.41 +version: 1.0.43-dev groups: shared library: true warnOnImplicitThis: true diff --git a/shared/util/CHANGELOG.md b/shared/util/CHANGELOG.md index 904aa45e034f..de6fbcff12f1 100644 --- a/shared/util/CHANGELOG.md +++ b/shared/util/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.29 + +No user-facing changes. + ## 2.0.28 No user-facing changes. diff --git a/shared/util/change-notes/released/2.0.29.md b/shared/util/change-notes/released/2.0.29.md new file mode 100644 index 000000000000..c8e5d5c3d050 --- /dev/null +++ b/shared/util/change-notes/released/2.0.29.md @@ -0,0 +1,3 @@ +## 2.0.29 + +No user-facing changes. diff --git a/shared/util/codeql-pack.release.yml b/shared/util/codeql-pack.release.yml index ec5bd6ba3691..1425cb159e43 100644 --- a/shared/util/codeql-pack.release.yml +++ b/shared/util/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.0.28 +lastReleaseVersion: 2.0.29 diff --git a/shared/util/codeql/util/UnboundList.qll b/shared/util/codeql/util/UnboundList.qll index 4ee447c5cfe3..79fac6506d6a 100644 --- a/shared/util/codeql/util/UnboundList.qll +++ b/shared/util/codeql/util/UnboundList.qll @@ -78,6 +78,9 @@ module Make Input> { /** Holds if this list is empty. */ predicate isEmpty() { this = "" } + bindingset[this] + private int stringLength() { result = super.length() } + /** Gets the length of this list. */ bindingset[this] pragma[inline_late] @@ -115,24 +118,55 @@ module Make Input> { /** Holds if this list starts with `e`, followed by `suffix`. */ bindingset[this] predicate isCons(Element e, UnboundList suffix) { - exists(string regexp | regexp = "([0-9]+)\\.(.*)" | - e = decode(this.regexpCapture(regexp, 1)) and - suffix = this.regexpCapture(regexp, 2) + exists(string elem | + // it is more efficient to not create a capture group for the suffix, since + // `regexpCapture` will then always join in both groups, only to afterwards filter + // based on the requested group (the group number is not part of the binding set + // of `regexpCapture`) + elem = this.regexpCapture("^([0-9]+)\\..*$", 1) and + e = decode(elem) and + suffix = this.suffix(elem.length() + 1) ) } /** Holds if this list starts with `prefix`, followed by `e`. */ bindingset[this] predicate isSnoc(UnboundList prefix, Element e) { - exists(string regexp | regexp = "(|.+\\.)([0-9]+)\\." | - prefix = this.regexpCapture(regexp, 1) and - e = decode(this.regexpCapture(regexp, 2)) - ) + // same remark as above about not using multiple capture groups + prefix = this.regexpCapture("^(|.+\\.)[0-9]+\\.$", 1) and + e = decode(this.substring(prefix.stringLength(), this.stringLength() - 1)) } /** Gets the head of this list, if any. */ bindingset[this] Element getHead() { result = this.getElement(0) } + + /** + * Gets the `i`th prefix of this list, if any. + * + * Only holds when this list is non-empty, and only returns proper prefixes. + */ + bindingset[this] + UnboundList getProperPrefix(int i) { + exists(string regexp, int occurrenceOffset | regexp = "[0-9]+\\." | + exists(this.regexpFind(regexp, i, occurrenceOffset)) and + result = this.prefix(occurrenceOffset) + ) + } + + /** + * Gets a prefix of this list, if any. + * + * Only holds when this list is non-empty, and only returns proper prefixes. + */ + bindingset[this] + UnboundList getAProperPrefix() { result = this.getProperPrefix(_) } + + /** + * Gets a prefix of this list, including the list itself. + */ + bindingset[this] + UnboundList getAPrefix() { result = [this, this.getAProperPrefix()] } } /** Provides predicates for constructing `UnboundList`s. */ diff --git a/shared/util/qlpack.yml b/shared/util/qlpack.yml index dd8c960aa0bb..18d1315e0da5 100644 --- a/shared/util/qlpack.yml +++ b/shared/util/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/util -version: 2.0.28 +version: 2.0.30-dev groups: shared library: true dependencies: null diff --git a/shared/xml/CHANGELOG.md b/shared/xml/CHANGELOG.md index 7a85ea45c7b3..c642973980d3 100644 --- a/shared/xml/CHANGELOG.md +++ b/shared/xml/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/xml/change-notes/released/1.0.42.md b/shared/xml/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/xml/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/xml/codeql-pack.release.yml b/shared/xml/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/xml/codeql-pack.release.yml +++ b/shared/xml/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/xml/qlpack.yml b/shared/xml/qlpack.yml index ad13296db46a..63b5786ba440 100644 --- a/shared/xml/qlpack.yml +++ b/shared/xml/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/xml -version: 1.0.41 +version: 1.0.43-dev groups: shared library: true dependencies: diff --git a/shared/yaml/CHANGELOG.md b/shared/yaml/CHANGELOG.md index 78b636e0288b..b2c9cee85a63 100644 --- a/shared/yaml/CHANGELOG.md +++ b/shared/yaml/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/yaml/change-notes/released/1.0.42.md b/shared/yaml/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/yaml/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/yaml/codeql-pack.release.yml b/shared/yaml/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/yaml/codeql-pack.release.yml +++ b/shared/yaml/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/yaml/qlpack.yml b/shared/yaml/qlpack.yml index 03ddecb8a053..1ecff982de77 100644 --- a/shared/yaml/qlpack.yml +++ b/shared/yaml/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/yaml -version: 1.0.41 +version: 1.0.43-dev groups: shared library: true warnOnImplicitThis: true diff --git a/swift/ql/lib/CHANGELOG.md b/swift/ql/lib/CHANGELOG.md index f4fe2159e07a..65446a02bf35 100644 --- a/swift/ql/lib/CHANGELOG.md +++ b/swift/ql/lib/CHANGELOG.md @@ -1,3 +1,7 @@ +## 6.2.2 + +No user-facing changes. + ## 6.2.1 ### Minor Analysis Improvements diff --git a/swift/ql/lib/change-notes/released/6.2.2.md b/swift/ql/lib/change-notes/released/6.2.2.md new file mode 100644 index 000000000000..769c4987cc02 --- /dev/null +++ b/swift/ql/lib/change-notes/released/6.2.2.md @@ -0,0 +1,3 @@ +## 6.2.2 + +No user-facing changes. diff --git a/swift/ql/lib/codeql-pack.release.yml b/swift/ql/lib/codeql-pack.release.yml index 8e36085279d5..0d8f9cf75478 100644 --- a/swift/ql/lib/codeql-pack.release.yml +++ b/swift/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 6.2.1 +lastReleaseVersion: 6.2.2 diff --git a/swift/ql/lib/qlpack.yml b/swift/ql/lib/qlpack.yml index 9fc1e4731dd8..da06170849bc 100644 --- a/swift/ql/lib/qlpack.yml +++ b/swift/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/swift-all -version: 6.2.1 +version: 6.2.3-dev groups: swift extractor: swift dbscheme: swift.dbscheme diff --git a/swift/ql/src/CHANGELOG.md b/swift/ql/src/CHANGELOG.md index bf6367cf668b..0b3d34fc0f58 100644 --- a/swift/ql/src/CHANGELOG.md +++ b/swift/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.2.16 + +No user-facing changes. + ## 1.2.15 No user-facing changes. diff --git a/swift/ql/src/change-notes/released/1.2.16.md b/swift/ql/src/change-notes/released/1.2.16.md new file mode 100644 index 000000000000..2cba5480d4e6 --- /dev/null +++ b/swift/ql/src/change-notes/released/1.2.16.md @@ -0,0 +1,3 @@ +## 1.2.16 + +No user-facing changes. diff --git a/swift/ql/src/codeql-pack.release.yml b/swift/ql/src/codeql-pack.release.yml index df8980e5dd26..11aa69f2d7a0 100644 --- a/swift/ql/src/codeql-pack.release.yml +++ b/swift/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.2.15 +lastReleaseVersion: 1.2.16 diff --git a/swift/ql/src/qlpack.yml b/swift/ql/src/qlpack.yml index 86538099f759..58dd667f57b0 100644 --- a/swift/ql/src/qlpack.yml +++ b/swift/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/swift-queries -version: 1.2.15 +version: 1.2.17-dev groups: - swift - queries