commit 6e4f9cd65a5ceac9da1e73a24a616a21f10876c6 Author: Paul W. Date: Wed Sep 23 00:36:22 2026 -0400 init diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..cb95ee7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/node_modules/ +/target/ diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 index 0000000..01e0b46 --- /dev/null +++ b/Cargo.lock @@ -0,0 +1,215 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "aho-corasick" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c982642fa9e8606056828ee9a8505737230110bb1099153c79efe865c59d12ba" +dependencies = [ + "memchr", +] + +[[package]] +name = "cc" +version = "1.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54413ede23c2daf518f35156dfde027feb2374004d63bd497f983c8db9c0e313" +dependencies = [ + "find-msvc-tools", + "shlex", +] + +[[package]] +name = "equivalent" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" + +[[package]] +name = "find-msvc-tools" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef25905e51abafe4dcea6c15fec58c57b601cdbd0ee53d22ea1d3016c587d39b" + +[[package]] +name = "hashbrown" +version = "0.17.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" + +[[package]] +name = "indexmap" +version = "2.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc4e190f5d26ca7051642629da2c52fc03bde85a03197c99408dcd291734c855" +dependencies = [ + "equivalent", + "hashbrown", +] + +[[package]] +name = "itoa" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" + +[[package]] +name = "memchr" +version = "2.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98" + +[[package]] +name = "proc-macro2" +version = "1.0.107" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quote" +version = "1.0.47" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "regex" +version = "1.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f020237b6c8eed93db2e2cb53c00c60a8e1bc73da7d073199a1180401450218d" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad8553b9b26413251cbf30e620595c7a41b3887f03da04579c0e6b0d6a06b4b2" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6f6ff9a378485b298a5286656da665ba74413d36db0979633275d2e708145d4" + +[[package]] +name = "serde" +version = "1.0.229" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4148590afebada386688f18773da617792bf2ef03ffc1e4cbd2b1d45b023e0ba" +dependencies = [ + "serde_core", +] + +[[package]] +name = "serde_core" +version = "1.0.229" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67dca2c9c51e58a4791a4b1ed58308b39c64224d349a935ab5039aa360942a48" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.229" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "serde_json" +version = "1.0.151" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c841b55ecdae098c80dcae9cf767f6f8a0c2cdb3416bbef72181df4d0fe73f14" +dependencies = [ + "indexmap", + "itoa", + "memchr", + "serde", + "serde_core", + "zmij", +] + +[[package]] +name = "shlex" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba" + +[[package]] +name = "streaming-iterator" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b2231b7c3057d5e4ad0156fb3dc807d900806020c5ffa3ee6ff2c8c76fb8520" + +[[package]] +name = "syn" +version = "3.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8593e8e72159ed2257d083c7a454a85cbf854f37a0966d8d483aff8c8a3ebcee" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "tree-sitter" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2038684e0058edba0d17302619f62eabce4a8e11c6ac59506996a8d79848851d" +dependencies = [ + "cc", + "regex", + "serde_json", + "streaming-iterator", + "tree-sitter-language", +] + +[[package]] +name = "tree-sitter-language" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca0d1bf6fdd806e43ae5198f82f527056d359def39e54e67a0f478ac09dac081" + +[[package]] +name = "tree-sitter-lscript" +version = "0.1.0" +dependencies = [ + "cc", + "tree-sitter", + "tree-sitter-language", +] + +[[package]] +name = "unicode-ident" +version = "1.0.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d245f478577f809a851594d02313b640fb437e0bb33866753cff937863096954" + +[[package]] +name = "zmij" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b" diff --git a/Cargo.toml b/Cargo.toml new file mode 100644 index 0000000..483087c --- /dev/null +++ b/Cargo.toml @@ -0,0 +1,24 @@ +[package] +name = "tree-sitter-lscript" +description = "LScript grammar for Tree-sitter" +version = "0.1.0" +publish = false +readme = "README.md" +keywords = ["incremental", "parsing", "tree-sitter", "lscript"] +categories = ["parsing", "text-editors"] +edition = "2024" +autoexamples = false +build = "bindings/rust/build.rs" +include = ["bindings/rust/*", "docs/*", "grammar.js", "queries/*", "src/*", "tree-sitter.json"] + +[lib] +path = "bindings/rust/lib.rs" + +[dependencies] +tree-sitter-language = "0.1" + +[build-dependencies] +cc = "1.2" + +[dev-dependencies] +tree-sitter = "0.27" diff --git a/README.md b/README.md new file mode 100644 index 0000000..3341a89 --- /dev/null +++ b/README.md @@ -0,0 +1,36 @@ +# tree-sitter-lscript + +Tree-sitter grammar and editor queries for LScript. + +This package provides a lossless, error-tolerant concrete syntax tree for +LScript editors and source tools. Syntax fixtures and tests are included here. + +The public named-node and field contract is documented in +[docs/cst.md](docs/cst.md). + +## Development + +Tree-sitter 0.27 and Node.js are required. + +```sh +npm install +npm run generate +npm test +npm run test:fixtures +npm run test:queries +cargo test +``` + +`test:fixtures` requires every syntax-valid fixture to parse without an `ERROR` +or `MISSING` node. It also checks syntax-invalid fixtures and fails if a new one +is accepted without recovery. Three exceptions are listed explicitly by the +script: the adjacency-only `=-` and `!=` lexer errors, and recovery after a +repeated result operator. These need lexical or recovery handling rather than +a looser grammar rule. + +The future-reserved word `context` is not yet emitted as a Tree-sitter keyword +because it has no grammar production. It should move into lexical handling with +the two adjacency checks above. + +Generated parser sources under `src/` are committed so consumers do not need +Node.js or the Tree-sitter CLI. diff --git a/bindings/rust/build.rs b/bindings/rust/build.rs new file mode 100644 index 0000000..bcf775b --- /dev/null +++ b/bindings/rust/build.rs @@ -0,0 +1,15 @@ +fn main() { + let source_directory = std::path::Path::new("src"); + let parser = source_directory.join("parser.c"); + let scanner = source_directory.join("scanner.c"); + + cc::Build::new() + .std("c11") + .include(source_directory) + .file(&parser) + .file(&scanner) + .compile("tree-sitter-lscript"); + + println!("cargo:rerun-if-changed={}", parser.display()); + println!("cargo:rerun-if-changed={}", scanner.display()); +} diff --git a/bindings/rust/lib.rs b/bindings/rust/lib.rs new file mode 100644 index 0000000..36f7b00 --- /dev/null +++ b/bindings/rust/lib.rs @@ -0,0 +1,187 @@ +//! LScript language support for the Tree-sitter parsing library. + +use tree_sitter_language::LanguageFn; + +unsafe extern "C" { + fn tree_sitter_lscript() -> *const (); +} + +/// The Tree-sitter language function for LScript. +pub const LANGUAGE: LanguageFn = unsafe { LanguageFn::from_raw(tree_sitter_lscript) }; + +/// Generated descriptions of the grammar's named node types. +pub const NODE_TYPES: &str = include_str!("../../src/node-types.json"); + +/// The default syntax-highlighting query. +pub const HIGHLIGHTS_QUERY: &str = include_str!("../../queries/highlights.scm"); + +#[cfg(test)] +mod tests { + fn parse(source: &str) -> tree_sitter::Tree { + let mut parser = tree_sitter::Parser::new(); + parser + .set_language(&super::LANGUAGE.into()) + .expect("generated LScript grammar must load"); + parser + .parse(source, None) + .expect("parser must produce a tree") + } + + #[test] + fn loads_and_parses_lscript() { + let tree = parse("answer :: 42\n"); + assert!(!tree.root_node().has_error()); + } + + #[test] + fn exposes_stable_expression_fields_without_precedence_wrappers() { + let source = "answer := left + right * -value\n"; + let tree = parse(source); + let declaration = tree.root_node().named_child(0).unwrap(); + let addition = declaration.child_by_field_name("value").unwrap(); + + assert_eq!(addition.kind(), "binary_expression"); + assert_eq!( + addition + .child_by_field_name("operator") + .unwrap() + .utf8_text(source.as_bytes()) + .unwrap(), + "+" + ); + assert_eq!( + addition.child_by_field_name("left").unwrap().kind(), + "identifier" + ); + + let multiplication = addition.child_by_field_name("right").unwrap(); + assert_eq!(multiplication.kind(), "binary_expression"); + let negation = multiplication.child_by_field_name("right").unwrap(); + assert_eq!(negation.kind(), "unary_expression"); + assert_eq!( + negation.child_by_field_name("operand").unwrap().kind(), + "identifier" + ); + } + + #[test] + fn exposes_meaningful_type_constructor_fields() { + let source = "Transform :: []{i32?} -> [str]i32 ! Error\n"; + let tree = parse(source); + let declaration = tree.root_node().named_child(0).unwrap(); + let definition = declaration.child_by_field_name("value").unwrap(); + let function = definition.named_child(0).unwrap(); + + assert_eq!(function.kind(), "function_type"); + assert_eq!( + function + .child_by_field_name("effect") + .unwrap() + .utf8_text(source.as_bytes()) + .unwrap(), + "->" + ); + assert_eq!( + function.child_by_field_name("input").unwrap().kind(), + "array_type" + ); + let result = function.child_by_field_name("result").unwrap(); + assert_eq!(result.kind(), "result_type"); + assert_eq!( + result.child_by_field_name("value").unwrap().kind(), + "map_type" + ); + assert_eq!( + result.child_by_field_name("error").unwrap().kind(), + "identifier" + ); + } + + #[test] + fn exposes_typed_function_headers() { + let source = + "named :: @ value: i32 => i32 { value }\nadd :: @ (a: i32, b: i32) { a + b }\n"; + let tree = parse(source); + assert!( + !tree.root_node().has_error(), + "{}", + tree.root_node().to_sexp() + ); + + let named = tree.root_node().named_child(0).unwrap(); + let function = named.child_by_field_name("value").unwrap(); + assert_eq!(function.kind(), "function_literal"); + let parameter = function.child_by_field_name("parameter").unwrap(); + assert_eq!(parameter.kind(), "typed_parameter"); + assert_eq!( + parameter + .child_by_field_name("pattern") + .unwrap() + .utf8_text(source.as_bytes()) + .unwrap(), + "value" + ); + assert_eq!( + function + .child_by_field_name("effect") + .unwrap() + .utf8_text(source.as_bytes()) + .unwrap(), + "=>" + ); + assert_eq!( + function.child_by_field_name("result").unwrap().kind(), + "primitive_type" + ); + assert_eq!( + function.child_by_field_name("body").unwrap().kind(), + "block" + ); + + let tuple_declaration = tree.root_node().named_child(1).unwrap(); + let tuple_function = tuple_declaration.child_by_field_name("value").unwrap(); + let tuple_input = tuple_function.child_by_field_name("parameter").unwrap(); + assert_eq!(tuple_input.kind(), "typed_tuple_pattern"); + assert!(tuple_function.child_by_field_name("parameters").is_none()); + assert_eq!(tuple_input.named_child_count(), 2); + for index in 0..2 { + assert_eq!( + tuple_input.named_child(index).unwrap().kind(), + "typed_tuple_component" + ); + } + } + + #[test] + fn rejects_removed_function_literal_forms() { + for source in [ + "old: i32 -> i32: value@ value\n", + "old: i32 -> i32:\n@ value: i32 { value }\n", + "old :: @ value\n", + "old :: @ (value:i32) { value }\n", + "old :: @ (value:i32,) { value }\n", + "old :: @ (\nvalue:i32\n) -> i32 { value }\n", + ] { + assert!(parse(source).root_node().has_error(), "accepted {source}"); + } + } + + #[test] + fn distinguishes_compact_ranges_floats_and_word_prefixes() { + let source = "value := (item.value, 0..slice\n\ + trailing_dot := 1.\n\ + anchor := value\n\ + android := value\n\ + order: []Item = []\n\ + ready := first\n\ + and second\n\ + or fallback\n"; + let tree = parse(source); + + assert!( + !tree.root_node().has_error(), + "{}", + tree.root_node().to_sexp() + ); + } +} diff --git a/docs/cst.md b/docs/cst.md new file mode 100644 index 0000000..04b8b72 --- /dev/null +++ b/docs/cst.md @@ -0,0 +1,87 @@ +# Concrete syntax tree contract + +This document describes the named nodes and fields intended for consumers such +as editor integrations, formatters, and structural search. Rules prefixed with `_` +and rules listed as Tree-sitter supertypes are implementation details and do not +appear as named wrapper nodes in ordinary trees. + +## Source and declarations + +`source_file` contains declarations, imports, publication declarations, and +standalone expressions directly. The choice-only `module_item`, `expression`, +and `value_expression` rules are hidden supertypes. + +`declaration` uses these fields: + +- `name` for a named declaration; +- `pattern` for a destructuring declaration; +- `type` for an explicit type; +- `value` for an initializer. + +The punctuation distinguishes immutable, mutable, typed, and deferred forms. +Consumers should inspect that punctuation rather than infer the form from the +set of fields alone. + +## Expressions + +Only expressions that actually contain an operator produce an operator node: + +| Node | Fields | +| --- | --- | +| `assignment_expression` | `left`, `operator`, `right` | +| `range_expression` | `left`, `operator`, `right` | +| `binary_expression` | `left`, `operator`, `right` | +| `unary_expression` | `operator`, `operand` | +| `postfix_expression` | `value`, repeated `operator`; member and index operators additionally expose `member` or `index` | +| `pipeline_expression` | `input`, followed by stage nodes | + +Precedence-only rules are hidden. For example, `a + b * -c` has one outer and +one inner `binary_expression`, then a `unary_expression`; it does not contain a +wrapper for every precedence level. + +Literal leaves are named. Boolean and nil values use `boolean_literal` and +`nil_literal`; numeric, string, character, and unit literals retain their +specific nodes. `default_expression` is also named. + +`function_literal` takes one input and owns the `body` field. Direct binding +appears as `parameter: (typed_parameter)`; tuple destructuring appears as +`parameter: (typed_tuple_pattern)`. A `typed_tuple_pattern` contains zero or at +least two `typed_tuple_component` nodes. These bind components of one tuple +input, not separate function arguments. `()` matches unit; singleton tuple +patterns are invalid. Typed bindings expose `pattern` and `type`; a header may +also expose `effect` (`->` or `=>`) and `result`. + +## Types + +Meaningful type constructors are named directly: + +| Node | Fields | +| --- | --- | +| `function_type` | `input`, `effect`, `result` | +| `result_type` | `value`, `error` | +| `optional_type` | `value` | +| `array_type` | `element` | +| `map_type` | `key`, `value` | +| `grouped_type` | `value` | +| `type_application` | `constructor` followed by its type arguments | + +Primitive, unit, tuple, product, sum, and bits types retain their corresponding +named nodes. Internal primary/container/result categories are hidden. + +## Trivia and physical lines + +Comments are named extra nodes. Spaces, tabs, and structural newlines remain in +the source gaps between nodes, so a formatter must retain the original source +alongside the tree. Leading-operator and pipeline continuations use composite +tokens containing their newline; this prevents a scope separator from stealing +a valid continuation and preserves the language's physical-line rules. + +## Compatibility + +Adding nodes or fields is compatible. Removing or renaming a named node or +field, changing its meaning, or changing which source construct owns it is a +breaking CST change. Until the package reaches 1.0, such changes require corpus +snapshot updates and a version change, and must be called out in release notes. + +The Tree-sitter tree is designed for source tooling and error recovery; it does +not perform semantic validation. diff --git a/grammar.js b/grammar.js new file mode 100644 index 0000000..0235f3a --- /dev/null +++ b/grammar.js @@ -0,0 +1,692 @@ +/// +// @ts-check + +const PREC = { + ASSIGNMENT: 1, + RANGE: 2, + OR: 3, + AND: 4, + NOT: 5, + COMPARE: 6, + BIT_OR: 7, + BIT_XOR: 8, + BIT_AND: 9, + ADD: 10, + MULTIPLY: 11, + PREFIX: 12, + POSTFIX: 13, +}; + +const RESERVED_WORDS = [ + "and", "as", "bits", "break", "continue", "default", "distinct", "else", + "false", "for", "if", "in", "loop", "match", "nil", "not", "or", "pub", + "return", "true", "use", + "bit", "chr", "f32", "f64", "i8", "i16", "i32", "i64", "nvr", "str", + "u8", "u16", "u32", "u64", +]; + +module.exports = grammar({ + name: "lscript", + + externals: $ => [ + $._and_continuation, + $._or_continuation, + $._trailing_dot_float, + ], + + extras: $ => [/[ \t]/, $.comment], + word: $ => $.identifier, + reserved: { + global: _ => RESERVED_WORDS, + }, + + supertypes: $ => [ + $.module_item, + $.expression, + $.value_expression, + $.type_expression, + $.primary_expression, + $.literal, + $.type_name, + $.binding_pattern, + $.pattern_atom, + $.pipeline_stage, + $.inline_pipeline_stage, + ], + + conflicts: $ => [ + [$.product_pattern_field, $.primary_expression], + [$.pattern_atom, $.literal], + [$.pattern_atom, $.primary_expression], + [$.signed_numeric_literal], + [$.source_file, $._scope_separator], + [$.qualified_name], + [$.block, $._scope_separator], + [$.match_expression, $._scope_separator], + [$.product_constructor, $._scope_separator], + [$.tuple_type], + [$.type_application], + [$.tuple_pattern], + [$.product_pattern], + [$.array_pattern], + [$.tuple_value], + [$.collection_literal], + [$.block, $.product_pattern], + [$.array_pattern, $.collection_literal], + [$.typed_tuple_pattern], + [$.unit_pattern, $.unit_literal], + [$.sum_pattern, $.sum_constructor], + [$.bits_pattern, $.bits_constructor], + [$.primary_expression, $.qualified_name], + [$.array_pattern_entry, $.primary_expression], + [$.continue_expression], + [$.unit_type, $.unit_literal], + [$.unit_type, $.unit_pattern, $.unit_literal], + [$.product_pattern_field, $.primary_expression, $.type_name], + [$.pattern_atom, $.primary_expression, $.type_name], + [$.type_name, $.qualified_name], + [$.primary_expression, $.type_name], + [$.type_expression, $.function_type], + [$.array_type, $.collection_literal], + ], + + rules: { + source_file: $ => seq( + repeat($._newline), + optional(seq( + $.module_item, + repeat(seq($._scope_separator, $.module_item)), + repeat($._newline), + )), + ), + + module_item: $ => choice( + $.use_declaration, + $.pub_declaration, + $.expression, + ), + + use_declaration: $ => seq( + "use", + choice( + seq($.module_path, optional(seq("as", field("alias", $.identifier)))), + seq($.module_path, ".", "{", listBody($, $.import_member), "}"), + ), + ), + + import_member: $ => seq( + field("name", $.identifier), + optional(seq("as", field("alias", $.identifier))), + ), + + module_path: $ => choice( + $.type_name, + seq(choice(".", ".."), $.type_name), + ), + + pub_declaration: $ => seq("pub", "{", scopeBody($, $.identifier), "}"), + + expression: $ => choice( + $.declaration, + $.value_expression, + ), + + value_expression: $ => choice( + $.function_literal, + $.return_expression, + $.break_expression, + $.continue_expression, + $.pipeline_expression, + $._ordinary_expression, + ), + + declaration: $ => choice( + seq( + field("name", $.identifier), + "::", + field("value", choice($.type_definition, prec(1, $.value_expression))), + ), + seq( + field("name", $.identifier), + ":=", + field("value", $.value_expression), + ), + seq( + field("name", $.identifier), + ":", + field("type", $.type_expression), + choice( + seq(":", field("value", $.value_expression)), + optional(seq("=", field("value", $.value_expression))), + ), + ), + seq( + field("pattern", choice($.tuple_pattern, $.product_pattern)), + choice("::", ":="), + field("value", $.value_expression), + ), + ), + + type_definition: $ => seq(optional("distinct"), $.type_expression), + + type_expression: $ => choice( + $.function_type, + $._result_type, + ), + + function_type: $ => prec.right(seq( + field("input", $._result_type), + field("effect", choice("->", "=>")), + field("result", $.type_expression), + )), + + _result_type: $ => choice( + $.result_type, + $.optional_type, + $._container_type, + ), + + result_type: $ => seq( + field("value", $._container_type), + "!", + field("error", $._container_type), + ), + + optional_type: $ => seq( + field("value", $._container_type), + repeat1("?"), + ), + + _container_type: $ => choice( + $.array_type, + $.map_type, + $._primary_type, + ), + + array_type: $ => prec.right(seq( + "[", + "]", + field("element", $._container_type), + )), + + map_type: $ => prec.right(seq( + "[", + field("key", $.type_expression), + "]", + field("value", $._container_type), + )), + + _primary_type: $ => choice( + $.primitive_type, + $.type_name, + $.unit_type, + $.tuple_type, + $.product_type, + $.sum_type, + $.bits_type, + $.type_application, + $.grouped_type, + ), + + grouped_type: $ => seq("{", field("value", $.type_expression), "}"), + + unit_type: _ => seq("(", ")"), + + tuple_type: $ => seq( + "(", + listBodyAtLeastTwo($, $.type_expression), + ")", + ), + + type_application: $ => seq( + field("constructor", $.type_name), + "<", + listBody($, $.type_expression), + ">", + ), + + product_type: $ => seq("&", "{", scopeBody($, $.product_field), "}"), + + product_field: $ => seq( + field("name", $.identifier), + ":", + field("type", $.type_expression), + choice(":", "="), + optional(field("default", $.expression)), + ), + + sum_type: $ => seq( + "|", + optional($.integer_type), + "{", + scopeBody($, $.sum_variant), + "}", + ), + + sum_variant: $ => seq( + field("name", $.identifier), + optional(choice( + seq(":", field("payload", $.type_expression)), + seq("::", field("discriminant", $.signed_integer_literal)), + )), + ), + + bits_type: $ => seq( + "bits", + "|", + $.unsigned_integer_type, + "{", + scopeBody($, $.bits_member), + "}", + ), + + bits_member: $ => seq($.identifier, "::", $.integer_literal), + + primitive_type: _ => choice( + "f32", "f64", "bit", "chr", "str", "nvr", + "i8", "i16", "i32", "i64", "u8", "u16", "u32", "u64", + ), + + integer_type: _ => choice("i8", "i16", "i32", "i64", "u8", "u16", "u32", "u64"), + unsigned_integer_type: _ => choice("u8", "u16", "u32", "u64"), + + function_literal: $ => choice( + prec(1, seq( + "@", + field("parameter", $.typed_parameter), + optional(seq( + field("effect", choice("->", "=>")), + field("result", $.type_expression), + )), + field("body", $.block), + )), + prec(1, seq( + "@", + field("parameter", $.typed_tuple_pattern), + optional(seq( + field("effect", choice("->", "=>")), + field("result", $.type_expression), + )), + field("body", $.block), + )), + prec(1, seq("@", field("body", $.block))), + ), + + typed_tuple_pattern: $ => seq("(", optional(listBodyAtLeastTwo($, $.typed_tuple_component)), ")"), + + typed_parameter: $ => seq( + field("pattern", $.binding_pattern), + ":", + field("type", $._result_type), + ), + + typed_tuple_component: $ => seq( + field("pattern", $.binding_pattern), + ":", + field("type", $.type_expression), + ), + + return_expression: $ => prec.right(seq("return", optional($.expression))), + break_expression: $ => prec.right(seq("break", optional($.label), optional($.expression))), + continue_expression: $ => seq("continue", optional($.label)), + + label: $ => seq("`", $.identifier), + + if_expression: $ => prec.right(seq( + "if", + field("condition", $.expression), + field("consequence", $.block), + optional(seq("else", field("alternative", choice($.block, $.if_expression)))), + )), + + match_expression: $ => seq( + "match", + field("value", $.expression), + "{", + scopeBody($, $.match_arm), + "}", + ), + + match_arm: $ => seq( + field("pattern", $.pattern), + optional(seq("if", field("guard", $.expression))), + "=>", + field("body", $.expression), + ), + + loop_expression: $ => seq("loop", optional($.label), $.block), + + for_expression: $ => seq( + "for", + field("pattern", $.binding_pattern), + "in", + field("value", $.expression), + optional($.label), + field("body", $.block), + ), + + block: $ => seq("{", scopeBody($, $.expression), "}"), + + pattern: $ => prec.left(seq($.pattern_atom, repeat(seq("or", $.pattern_atom)))), + + binding_pattern: $ => choice( + "_", + $.identifier, + $.unit_pattern, + $.tuple_pattern, + $.product_pattern, + ), + + pattern_atom: $ => choice( + "_", + $.identifier, + $.signed_numeric_literal, + $.string_literal, + $.character_literal, + $.boolean_literal, + $.nil_literal, + $.sum_pattern, + $.bits_pattern, + $.unit_pattern, + $.tuple_pattern, + $.product_pattern, + $.array_pattern, + ), + + unit_pattern: _ => seq("(", ")"), + tuple_pattern: $ => seq("(", listBodyAtLeastTwo($, $.pattern), ")"), + + product_pattern: $ => seq("{", listBody($, $.product_pattern_field), "}"), + product_pattern_field: $ => seq($.identifier, optional(seq("as", $.identifier))), + + sum_pattern: $ => seq( + "|", + optional($.type_name), + ".", + field("variant", $.identifier), + optional($.pattern_atom), + ), + + bits_pattern: $ => seq( + "|", + optional($.type_name), + ".", + "{", + listBody($, $.identifier), + "}", + ), + + array_pattern: $ => seq("[", listBody($, $.array_pattern_entry), "]"), + array_pattern_entry: $ => choice($.pattern, seq("...", choice($.identifier, "_"))), + + pipeline_expression: $ => prec.dynamic(1, prec.left(choice( + seq(field("input", choice($._prefix_expression, $.function_literal)), $.inline_pipeline_stage, repeat($.pipeline_stage)), + seq(field("input", choice($._non_assignment_expression, $.function_literal)), $.continuation_pipeline_stage, repeat($.pipeline_stage)), + ))), + + pipeline_stage: $ => choice($.inline_pipeline_stage, $.continuation_pipeline_stage), + inline_pipeline_stage: $ => choice($.direct_pipeline_stage, $.aggregate_pipeline_stage), + continuation_pipeline_stage: $ => choice( + seq( + $._direct_pipeline_continuation, + field("callable", $.pipeline_callable), + repeat(choice("?", "!")), + ), + seq( + $._aggregate_pipeline_continuation, + field("callable", $.aggregate_pipeline_callable), + field("arguments", $.aggregate_tail), + repeat(choice("?", "!")), + ), + ), + + direct_pipeline_stage: $ => seq( + "->", + field("callable", $.pipeline_callable), + repeat(choice("?", "!")), + ), + + aggregate_pipeline_stage: $ => seq( + "|>", + field("callable", $.aggregate_pipeline_callable), + field("arguments", $.aggregate_tail), + repeat(choice("?", "!")), + ), + + aggregate_tail: $ => choice( + seq("(", listBodyOneOrMore($, $.expression), ")"), + seq("[", optional(listBody($, $.array_tail_entry)), "]"), + ), + + array_tail_entry: $ => choice($.expression, seq("...", $.expression)), + + pipeline_callable: $ => seq( + $.primary_expression, + repeat(choice( + seq(".", $.identifier), + seq("[", $.expression, "]"), + )), + ), + + aggregate_pipeline_callable: $ => seq( + $.primary_expression, + repeat(seq(".", $.identifier)), + ), + + _ordinary_expression: $ => choice( + $.assignment_expression, + $._non_assignment_expression, + ), + + _non_assignment_expression: $ => choice( + $.range_expression, + $._binary_expression, + ), + + _binary_expression: $ => choice( + $.binary_expression, + $._prefix_expression, + ), + + _prefix_expression: $ => choice( + $.unary_expression, + $.postfix_expression, + $.primary_expression, + ), + + assignment_expression: $ => prec.right(PREC.ASSIGNMENT, seq( + field("left", $._non_assignment_expression), + field("operator", choice("=", "+=", "-=", "*=", "/=", "%=", "&=", "^=", "|=")), + field("right", choice( + $.function_literal, + $.return_expression, + $.break_expression, + $.pipeline_expression, + $._non_assignment_expression, + )), + )), + + range_expression: $ => prec.left(PREC.RANGE, seq( + field("left", $._binary_expression), + field("operator", choice("..<", "..=")), + field("right", $._binary_expression), + )), + + binary_expression: $ => choice( + binaryExpression($, "or", PREC.OR, $._or_continuation, true), + binaryExpression($, "and", PREC.AND, $._and_continuation, true), + binaryExpression($, choice("<", "<=", ">", ">=", "=="), PREC.COMPARE, $._comparison_continuation, true), + binaryExpression($, "|", PREC.BIT_OR, null), + binaryExpression($, "^", PREC.BIT_XOR), + binaryExpression($, "&", PREC.BIT_AND, null), + binaryExpression($, choice("+", "-"), PREC.ADD, "+"), + binaryExpression($, choice("*", "/", "%"), PREC.MULTIPLY), + ), + + unary_expression: $ => prec.right(PREC.PREFIX, seq( + field("operator", choice("not", "!", "-", "~")), + field("operand", $._prefix_expression), + )), + + postfix_expression: $ => prec.left(PREC.POSTFIX, seq( + field("value", $.primary_expression), + repeat1(field("operator", choice( + seq(".", field("member", $.identifier)), + seq("[", field("index", $.expression), "]"), + "?", + "!", + ))), + )), + + primary_expression: $ => choice( + $.literal, + $.identifier, + $.block, + $.if_expression, + $.match_expression, + $.loop_expression, + $.for_expression, + $.tuple_value, + $.collection_literal, + $.product_constructor, + $.sum_constructor, + $.bits_constructor, + $.default_expression, + ), + + tuple_value: $ => seq("(", listBodyAtLeastTwo($, $.expression), ")"), + + collection_literal: $ => seq("[", listBody($, $.collection_entry), "]"), + collection_entry: $ => choice( + seq($.expression, optional(seq("=>", $.expression))), + seq("...", $.expression), + ), + + product_constructor: $ => seq( + "&", + optional($.type_name), + ".", + "{", + scopeBody($, $.product_entry), + "}", + ), + + product_entry: $ => choice( + seq($.identifier, choice(":", "="), $.expression), + seq("...", $.expression), + ), + + sum_constructor: $ => seq("|", optional($.type_name), ".", $.identifier), + bits_constructor: $ => seq("|", optional($.type_name), ".", "{", listBody($, $.identifier), "}"), + + literal: $ => choice( + $.signed_numeric_literal, + $.string_literal, + $.character_literal, + $.boolean_literal, + $.nil_literal, + $.unit_literal, + ), + + boolean_literal: _ => choice("true", "false"), + nil_literal: _ => "nil", + default_expression: _ => "default", + unit_literal: _ => seq("(", ")"), + signed_numeric_literal: $ => seq(optional("-"), choice( + $.integer_literal, + $.float_literal, + alias($._trailing_dot_float, $.float_literal), + )), + signed_integer_literal: $ => seq(optional("-"), $.integer_literal), + + integer_literal: _ => token(choice( + /0[bB][01](?:_?[01])*/, + /0[oO][0-7](?:_?[0-7])*/, + /0[xX][0-9a-fA-F](?:_?[0-9a-fA-F])*/, + /[0-9](?:_?[0-9])*/, + )), + + float_literal: _ => token(choice( + /[0-9](?:_?[0-9])*\.[0-9](?:_?[0-9])*(?:[eE][+-]?[0-9](?:_?[0-9])*)?/, + /\.[0-9](?:_?[0-9])*(?:[eE][+-]?[0-9](?:_?[0-9])*)?/, + /[0-9](?:_?[0-9])*[eE][+-]?[0-9](?:_?[0-9])*/, + )), + + string_literal: _ => token(/'(?:[^'\\\r\n]|\\(?:[\\'nrt0]|u\{[0-9a-fA-F]{1,6}\}))*'/), + character_literal: _ => token(/c'(?:[^'\\\r\n]|\\(?:[\\'nrt0]|u\{[0-9a-fA-F]{1,6}\}))'/), + + type_name: $ => choice($.identifier, $.qualified_name), + qualified_name: $ => seq($.identifier, repeat1(seq(".", $.identifier))), + identifier: _ => /[A-Za-z_][A-Za-z0-9_]*/, + comment: _ => token(seq("#", /[^\r\n]*/)), + + _direct_pipeline_continuation: _ => token(seq(/\r?\n[ \t]*/, "->")), + _aggregate_pipeline_continuation: _ => token(seq(/\r?\n[ \t]*/, "|>")), + _comparison_continuation: _ => token(seq(/\r?\n[ \t]*/, choice("<=", ">=", "==", "<", ">"))), + _newline: _ => /\r?\n/, + _newlines: $ => repeat1($._newline), + _scope_separator: $ => choice($._newlines, ";"), + }, +}); + +function scopeBody($, rule) { + return seq( + repeat($._newline), + optional(seq( + rule, + repeat(seq($._scope_separator, rule)), + repeat($._newline), + )), + ); +} + +function listBody($, rule) { + return seq( + repeat($._newline), + optional(seq( + rule, + repeat(seq(choice(seq(",", repeat($._newline)), $._newlines), rule)), + optional(","), + repeat($._newline), + )), + ); +} + +function listBodyOneOrMore($, rule) { + return seq( + repeat($._newline), + rule, + repeat(seq(choice(seq(",", repeat($._newline)), $._newlines), rule)), + optional(","), + repeat($._newline), + ); +} + +function listBodyAtLeastTwo($, rule) { + return seq( + repeat($._newline), + rule, + choice(seq(",", repeat($._newline)), $._newlines), + rule, + repeat(seq(choice(seq(",", repeat($._newline)), $._newlines), rule)), + optional(","), + repeat($._newline), + ); +} + +function binaryExpression($, operator, precedence, continuationOperator = operator, continuationIsToken = false) { + const operatorRule = continuationOperator === null + ? seq(operator, optional($._newline)) + : choice( + seq(operator, optional($._newline)), + continuationIsToken + ? continuationOperator + : token(seq(/\r?\n[ \t]*/, continuationOperator)), + ); + + return prec.left(precedence, seq( + field("left", $._binary_expression), + field("operator", operatorRule), + field("right", $._binary_expression), + )); +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..392d4d2 --- /dev/null +++ b/package.json @@ -0,0 +1,31 @@ +{ + "name": "tree-sitter-lscript", + "version": "0.1.0", + "description": "LScript grammar for Tree-sitter", + "private": true, + "license": "UNLICENSED", + "keywords": [ + "incremental", + "parsing", + "tree-sitter", + "lscript" + ], + "files": [ + "grammar.js", + "tree-sitter.json", + "docs/*", + "queries/*", + "scripts/*", + "test/**", + "src/**" + ], + "devDependencies": { + "tree-sitter-cli": "0.27.0" + }, + "scripts": { + "generate": "tree-sitter generate", + "test": "tree-sitter test", + "test:fixtures": "sh ./scripts/check-fixtures.sh", + "test:queries": "tree-sitter query -p . --quiet queries/highlights.scm test/fixtures/valid/*.ls" + } +} diff --git a/queries/highlights.scm b/queries/highlights.scm new file mode 100644 index 0000000..052e82b --- /dev/null +++ b/queries/highlights.scm @@ -0,0 +1,46 @@ +[ + "and" + "as" + "bits" + "break" + "continue" + "distinct" + "else" + "for" + "if" + "in" + "loop" + "match" + "not" + "or" + "pub" + "return" + "use" +] @keyword + +(primitive_type) @type.builtin +(identifier) @variable +(comment) @comment +(default_expression) @keyword +(boolean_literal) @constant.builtin +(nil_literal) @constant.builtin +(string_literal) @string +(character_literal) @character +(integer_literal) @number +(float_literal) @number.float +(label (identifier) @label) + +(declaration name: (identifier) @variable.definition) +(typed_parameter pattern: (identifier) @variable.parameter) +(typed_tuple_component pattern: (identifier) @variable.parameter) +(product_field name: (identifier) @property) +(product_entry (identifier) @property) +(sum_variant name: (identifier) @constructor) +(bits_member (identifier) @constant) + +[ + "=" "+=" "-=" "*=" "/=" "%=" "&=" "^=" "|=" + "==" "<" "<=" ">" ">=" + "+" "-" "*" "/" "%" "&" "|" "^" "~" "!" + "->" "=>" "|>" "..<" "..=" "@" +] @operator diff --git a/scripts/check-fixtures.sh b/scripts/check-fixtures.sh new file mode 100644 index 0000000..9ee71ec --- /dev/null +++ b/scripts/check-fixtures.sh @@ -0,0 +1,32 @@ +#!/bin/sh +set -eu + +tool_directory=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd) +tree_sitter=${TREE_SITTER:-"$tool_directory/node_modules/.bin/tree-sitter"} +cache_directory=${TMPDIR:-/tmp}/tree-sitter-lscript-cache + +cd "$tool_directory" + +XDG_CACHE_HOME="$cache_directory" "$tree_sitter" parse \ + -p . --quiet --stat "$tool_directory"/test/fixtures/valid/*.ls + +unexpected_success=0 +for fixture in "$tool_directory"/test/fixtures/invalid/*.ls; do + if XDG_CACHE_HOME="$cache_directory" "$tree_sitter" parse \ + -p . --quiet "$fixture" >/dev/null 2>&1; then + case "$(basename -- "$fixture")" in + adjacent_equal_minus.ls|bang_inequality.ls|repeated_result.ls) + ;; + *) + echo "invalid fixture parsed without recovery errors: $fixture" >&2 + unexpected_success=1 + ;; + esac + fi +done + +if [ "$unexpected_success" -ne 0 ]; then + exit 1 +fi + +echo "Known recovery exceptions: adjacent_equal_minus, bang_inequality, repeated_result" diff --git a/src/grammar.json b/src/grammar.json new file mode 100644 index 0000000..8e5ba40 --- /dev/null +++ b/src/grammar.json @@ -0,0 +1,5632 @@ +{ + "$schema": "https://tree-sitter.github.io/tree-sitter/assets/schemas/grammar.schema.json", + "name": "lscript", + "word": "identifier", + "rules": { + "source_file": { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "module_item" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_scope_separator" + }, + { + "type": "SYMBOL", + "name": "module_item" + } + ] + } + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "module_item": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "use_declaration" + }, + { + "type": "SYMBOL", + "name": "pub_declaration" + }, + { + "type": "SYMBOL", + "name": "expression" + } + ] + }, + "use_declaration": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "use" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "module_path" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "as" + }, + { + "type": "FIELD", + "name": "alias", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "module_path" + }, + { + "type": "STRING", + "value": "." + }, + { + "type": "STRING", + "value": "{" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "import_member" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "import_member" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + } + ] + } + ] + }, + "import_member": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "as" + }, + { + "type": "FIELD", + "name": "alias", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "module_path": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_name" + }, + { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "." + }, + { + "type": "STRING", + "value": ".." + } + ] + }, + { + "type": "SYMBOL", + "name": "type_name" + } + ] + } + ] + }, + "pub_declaration": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "pub" + }, + { + "type": "STRING", + "value": "{" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_scope_separator" + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + } + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "expression": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "declaration" + }, + { + "type": "SYMBOL", + "name": "value_expression" + } + ] + }, + "value_expression": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "function_literal" + }, + { + "type": "SYMBOL", + "name": "return_expression" + }, + { + "type": "SYMBOL", + "name": "break_expression" + }, + { + "type": "SYMBOL", + "name": "continue_expression" + }, + { + "type": "SYMBOL", + "name": "pipeline_expression" + }, + { + "type": "SYMBOL", + "name": "_ordinary_expression" + } + ] + }, + "declaration": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, + { + "type": "STRING", + "value": "::" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_definition" + }, + { + "type": "PREC", + "value": 1, + "content": { + "type": "SYMBOL", + "name": "value_expression" + } + } + ] + } + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, + { + "type": "STRING", + "value": ":=" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "value_expression" + } + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, + { + "type": "STRING", + "value": ":" + }, + { + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "type_expression" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": ":" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "value_expression" + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "=" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "value_expression" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "pattern", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "tuple_pattern" + }, + { + "type": "SYMBOL", + "name": "product_pattern" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "::" + }, + { + "type": "STRING", + "value": ":=" + } + ] + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "value_expression" + } + } + ] + } + ] + }, + "type_definition": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "distinct" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "SYMBOL", + "name": "type_expression" + } + ] + }, + "type_expression": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "function_type" + }, + { + "type": "SYMBOL", + "name": "_result_type" + } + ] + }, + "function_type": { + "type": "PREC_RIGHT", + "value": 0, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "input", + "content": { + "type": "SYMBOL", + "name": "_result_type" + } + }, + { + "type": "FIELD", + "name": "effect", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "->" + }, + { + "type": "STRING", + "value": "=>" + } + ] + } + }, + { + "type": "FIELD", + "name": "result", + "content": { + "type": "SYMBOL", + "name": "type_expression" + } + } + ] + } + }, + "_result_type": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "result_type" + }, + { + "type": "SYMBOL", + "name": "optional_type" + }, + { + "type": "SYMBOL", + "name": "_container_type" + } + ] + }, + "result_type": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "_container_type" + } + }, + { + "type": "STRING", + "value": "!" + }, + { + "type": "FIELD", + "name": "error", + "content": { + "type": "SYMBOL", + "name": "_container_type" + } + } + ] + }, + "optional_type": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "_container_type" + } + }, + { + "type": "REPEAT1", + "content": { + "type": "STRING", + "value": "?" + } + } + ] + }, + "_container_type": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "array_type" + }, + { + "type": "SYMBOL", + "name": "map_type" + }, + { + "type": "SYMBOL", + "name": "_primary_type" + } + ] + }, + "array_type": { + "type": "PREC_RIGHT", + "value": 0, + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "[" + }, + { + "type": "STRING", + "value": "]" + }, + { + "type": "FIELD", + "name": "element", + "content": { + "type": "SYMBOL", + "name": "_container_type" + } + } + ] + } + }, + "map_type": { + "type": "PREC_RIGHT", + "value": 0, + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "[" + }, + { + "type": "FIELD", + "name": "key", + "content": { + "type": "SYMBOL", + "name": "type_expression" + } + }, + { + "type": "STRING", + "value": "]" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "_container_type" + } + } + ] + } + }, + "_primary_type": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "primitive_type" + }, + { + "type": "SYMBOL", + "name": "type_name" + }, + { + "type": "SYMBOL", + "name": "unit_type" + }, + { + "type": "SYMBOL", + "name": "tuple_type" + }, + { + "type": "SYMBOL", + "name": "product_type" + }, + { + "type": "SYMBOL", + "name": "sum_type" + }, + { + "type": "SYMBOL", + "name": "bits_type" + }, + { + "type": "SYMBOL", + "name": "type_application" + }, + { + "type": "SYMBOL", + "name": "grouped_type" + } + ] + }, + "grouped_type": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "{" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "type_expression" + } + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "unit_type": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "tuple_type": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "SYMBOL", + "name": "type_expression" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "type_expression" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "type_expression" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "type_application": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "constructor", + "content": { + "type": "SYMBOL", + "name": "type_name" + } + }, + { + "type": "STRING", + "value": "<" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "type_expression" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "type_expression" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": ">" + } + ] + }, + "product_type": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "&" + }, + { + "type": "STRING", + "value": "{" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "product_field" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_scope_separator" + }, + { + "type": "SYMBOL", + "name": "product_field" + } + ] + } + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "product_field": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, + { + "type": "STRING", + "value": ":" + }, + { + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "type_expression" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": ":" + }, + { + "type": "STRING", + "value": "=" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "FIELD", + "name": "default", + "content": { + "type": "SYMBOL", + "name": "expression" + } + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "sum_type": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "|" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "integer_type" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "{" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "sum_variant" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_scope_separator" + }, + { + "type": "SYMBOL", + "name": "sum_variant" + } + ] + } + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "sum_variant": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": ":" + }, + { + "type": "FIELD", + "name": "payload", + "content": { + "type": "SYMBOL", + "name": "type_expression" + } + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "::" + }, + { + "type": "FIELD", + "name": "discriminant", + "content": { + "type": "SYMBOL", + "name": "signed_integer_literal" + } + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "bits_type": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "bits" + }, + { + "type": "STRING", + "value": "|" + }, + { + "type": "SYMBOL", + "name": "unsigned_integer_type" + }, + { + "type": "STRING", + "value": "{" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "bits_member" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_scope_separator" + }, + { + "type": "SYMBOL", + "name": "bits_member" + } + ] + } + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "bits_member": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "STRING", + "value": "::" + }, + { + "type": "SYMBOL", + "name": "integer_literal" + } + ] + }, + "primitive_type": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "f32" + }, + { + "type": "STRING", + "value": "f64" + }, + { + "type": "STRING", + "value": "bit" + }, + { + "type": "STRING", + "value": "chr" + }, + { + "type": "STRING", + "value": "str" + }, + { + "type": "STRING", + "value": "nvr" + }, + { + "type": "STRING", + "value": "i8" + }, + { + "type": "STRING", + "value": "i16" + }, + { + "type": "STRING", + "value": "i32" + }, + { + "type": "STRING", + "value": "i64" + }, + { + "type": "STRING", + "value": "u8" + }, + { + "type": "STRING", + "value": "u16" + }, + { + "type": "STRING", + "value": "u32" + }, + { + "type": "STRING", + "value": "u64" + } + ] + }, + "integer_type": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "i8" + }, + { + "type": "STRING", + "value": "i16" + }, + { + "type": "STRING", + "value": "i32" + }, + { + "type": "STRING", + "value": "i64" + }, + { + "type": "STRING", + "value": "u8" + }, + { + "type": "STRING", + "value": "u16" + }, + { + "type": "STRING", + "value": "u32" + }, + { + "type": "STRING", + "value": "u64" + } + ] + }, + "unsigned_integer_type": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "u8" + }, + { + "type": "STRING", + "value": "u16" + }, + { + "type": "STRING", + "value": "u32" + }, + { + "type": "STRING", + "value": "u64" + } + ] + }, + "function_literal": { + "type": "CHOICE", + "members": [ + { + "type": "PREC", + "value": 1, + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" + }, + { + "type": "FIELD", + "name": "parameter", + "content": { + "type": "SYMBOL", + "name": "typed_parameter" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "effect", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "->" + }, + { + "type": "STRING", + "value": "=>" + } + ] + } + }, + { + "type": "FIELD", + "name": "result", + "content": { + "type": "SYMBOL", + "name": "type_expression" + } + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "FIELD", + "name": "body", + "content": { + "type": "SYMBOL", + "name": "block" + } + } + ] + } + }, + { + "type": "PREC", + "value": 1, + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" + }, + { + "type": "FIELD", + "name": "parameter", + "content": { + "type": "SYMBOL", + "name": "typed_tuple_pattern" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "effect", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "->" + }, + { + "type": "STRING", + "value": "=>" + } + ] + } + }, + { + "type": "FIELD", + "name": "result", + "content": { + "type": "SYMBOL", + "name": "type_expression" + } + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "FIELD", + "name": "body", + "content": { + "type": "SYMBOL", + "name": "block" + } + } + ] + } + }, + { + "type": "PREC", + "value": 1, + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" + }, + { + "type": "FIELD", + "name": "body", + "content": { + "type": "SYMBOL", + "name": "block" + } + } + ] + } + } + ] + }, + "typed_tuple_pattern": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "SYMBOL", + "name": "typed_tuple_component" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "typed_tuple_component" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "typed_tuple_component" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "typed_parameter": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "pattern", + "content": { + "type": "SYMBOL", + "name": "binding_pattern" + } + }, + { + "type": "STRING", + "value": ":" + }, + { + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "_result_type" + } + } + ] + }, + "typed_tuple_component": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "pattern", + "content": { + "type": "SYMBOL", + "name": "binding_pattern" + } + }, + { + "type": "STRING", + "value": ":" + }, + { + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "type_expression" + } + } + ] + }, + "return_expression": { + "type": "PREC_RIGHT", + "value": 0, + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "return" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "BLANK" + } + ] + } + ] + } + }, + "break_expression": { + "type": "PREC_RIGHT", + "value": 0, + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "break" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "label" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "BLANK" + } + ] + } + ] + } + }, + "continue_expression": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "continue" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "label" + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "label": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "`" + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + }, + "if_expression": { + "type": "PREC_RIGHT", + "value": 0, + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "if" + }, + { + "type": "FIELD", + "name": "condition", + "content": { + "type": "SYMBOL", + "name": "expression" + } + }, + { + "type": "FIELD", + "name": "consequence", + "content": { + "type": "SYMBOL", + "name": "block" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "else" + }, + { + "type": "FIELD", + "name": "alternative", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "block" + }, + { + "type": "SYMBOL", + "name": "if_expression" + } + ] + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + } + }, + "match_expression": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "match" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "expression" + } + }, + { + "type": "STRING", + "value": "{" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "match_arm" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_scope_separator" + }, + { + "type": "SYMBOL", + "name": "match_arm" + } + ] + } + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "match_arm": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "pattern", + "content": { + "type": "SYMBOL", + "name": "pattern" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "if" + }, + { + "type": "FIELD", + "name": "guard", + "content": { + "type": "SYMBOL", + "name": "expression" + } + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "=>" + }, + { + "type": "FIELD", + "name": "body", + "content": { + "type": "SYMBOL", + "name": "expression" + } + } + ] + }, + "loop_expression": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "loop" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "label" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "SYMBOL", + "name": "block" + } + ] + }, + "for_expression": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "for" + }, + { + "type": "FIELD", + "name": "pattern", + "content": { + "type": "SYMBOL", + "name": "binding_pattern" + } + }, + { + "type": "STRING", + "value": "in" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "expression" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "label" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "FIELD", + "name": "body", + "content": { + "type": "SYMBOL", + "name": "block" + } + } + ] + }, + "block": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "{" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_scope_separator" + }, + { + "type": "SYMBOL", + "name": "expression" + } + ] + } + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "pattern": { + "type": "PREC_LEFT", + "value": 0, + "content": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "pattern_atom" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "or" + }, + { + "type": "SYMBOL", + "name": "pattern_atom" + } + ] + } + } + ] + } + }, + "binding_pattern": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "_" + }, + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "SYMBOL", + "name": "unit_pattern" + }, + { + "type": "SYMBOL", + "name": "tuple_pattern" + }, + { + "type": "SYMBOL", + "name": "product_pattern" + } + ] + }, + "pattern_atom": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "_" + }, + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "SYMBOL", + "name": "signed_numeric_literal" + }, + { + "type": "SYMBOL", + "name": "string_literal" + }, + { + "type": "SYMBOL", + "name": "character_literal" + }, + { + "type": "SYMBOL", + "name": "boolean_literal" + }, + { + "type": "SYMBOL", + "name": "nil_literal" + }, + { + "type": "SYMBOL", + "name": "sum_pattern" + }, + { + "type": "SYMBOL", + "name": "bits_pattern" + }, + { + "type": "SYMBOL", + "name": "unit_pattern" + }, + { + "type": "SYMBOL", + "name": "tuple_pattern" + }, + { + "type": "SYMBOL", + "name": "product_pattern" + }, + { + "type": "SYMBOL", + "name": "array_pattern" + } + ] + }, + "unit_pattern": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "tuple_pattern": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "SYMBOL", + "name": "pattern" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "pattern" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "pattern" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "product_pattern": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "{" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "product_pattern_field" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "product_pattern_field" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "product_pattern_field": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "as" + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "sum_pattern": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "|" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_name" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "." + }, + { + "type": "FIELD", + "name": "variant", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "pattern_atom" + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "bits_pattern": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "|" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_name" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "." + }, + { + "type": "STRING", + "value": "{" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "array_pattern": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "[" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "array_pattern_entry" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "array_pattern_entry" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": "]" + } + ] + }, + "array_pattern_entry": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "pattern" + }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "..." + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "STRING", + "value": "_" + } + ] + } + ] + } + ] + }, + "pipeline_expression": { + "type": "PREC_DYNAMIC", + "value": 1, + "content": { + "type": "PREC_LEFT", + "value": 0, + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "input", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_prefix_expression" + }, + { + "type": "SYMBOL", + "name": "function_literal" + } + ] + } + }, + { + "type": "SYMBOL", + "name": "inline_pipeline_stage" + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "pipeline_stage" + } + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "input", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_non_assignment_expression" + }, + { + "type": "SYMBOL", + "name": "function_literal" + } + ] + } + }, + { + "type": "SYMBOL", + "name": "continuation_pipeline_stage" + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "pipeline_stage" + } + } + ] + } + ] + } + } + }, + "pipeline_stage": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "inline_pipeline_stage" + }, + { + "type": "SYMBOL", + "name": "continuation_pipeline_stage" + } + ] + }, + "inline_pipeline_stage": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "direct_pipeline_stage" + }, + { + "type": "SYMBOL", + "name": "aggregate_pipeline_stage" + } + ] + }, + "continuation_pipeline_stage": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_direct_pipeline_continuation" + }, + { + "type": "FIELD", + "name": "callable", + "content": { + "type": "SYMBOL", + "name": "pipeline_callable" + } + }, + { + "type": "REPEAT", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "?" + }, + { + "type": "STRING", + "value": "!" + } + ] + } + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_aggregate_pipeline_continuation" + }, + { + "type": "FIELD", + "name": "callable", + "content": { + "type": "SYMBOL", + "name": "aggregate_pipeline_callable" + } + }, + { + "type": "FIELD", + "name": "arguments", + "content": { + "type": "SYMBOL", + "name": "aggregate_tail" + } + }, + { + "type": "REPEAT", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "?" + }, + { + "type": "STRING", + "value": "!" + } + ] + } + } + ] + } + ] + }, + "direct_pipeline_stage": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "->" + }, + { + "type": "FIELD", + "name": "callable", + "content": { + "type": "SYMBOL", + "name": "pipeline_callable" + } + }, + { + "type": "REPEAT", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "?" + }, + { + "type": "STRING", + "value": "!" + } + ] + } + } + ] + }, + "aggregate_pipeline_stage": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "|>" + }, + { + "type": "FIELD", + "name": "callable", + "content": { + "type": "SYMBOL", + "name": "aggregate_pipeline_callable" + } + }, + { + "type": "FIELD", + "name": "arguments", + "content": { + "type": "SYMBOL", + "name": "aggregate_tail" + } + }, + { + "type": "REPEAT", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "?" + }, + { + "type": "STRING", + "value": "!" + } + ] + } + } + ] + }, + "aggregate_tail": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "expression" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "[" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "array_tail_entry" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "array_tail_entry" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "]" + } + ] + } + ] + }, + "array_tail_entry": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "..." + }, + { + "type": "SYMBOL", + "name": "expression" + } + ] + } + ] + }, + "pipeline_callable": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "primary_expression" + }, + { + "type": "REPEAT", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "." + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "[" + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "STRING", + "value": "]" + } + ] + } + ] + } + } + ] + }, + "aggregate_pipeline_callable": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "primary_expression" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "." + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + } + } + ] + }, + "_ordinary_expression": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "assignment_expression" + }, + { + "type": "SYMBOL", + "name": "_non_assignment_expression" + } + ] + }, + "_non_assignment_expression": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "range_expression" + }, + { + "type": "SYMBOL", + "name": "_binary_expression" + } + ] + }, + "_binary_expression": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "binary_expression" + }, + { + "type": "SYMBOL", + "name": "_prefix_expression" + } + ] + }, + "_prefix_expression": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "unary_expression" + }, + { + "type": "SYMBOL", + "name": "postfix_expression" + }, + { + "type": "SYMBOL", + "name": "primary_expression" + } + ] + }, + "assignment_expression": { + "type": "PREC_RIGHT", + "value": 1, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_non_assignment_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "=" + }, + { + "type": "STRING", + "value": "+=" + }, + { + "type": "STRING", + "value": "-=" + }, + { + "type": "STRING", + "value": "*=" + }, + { + "type": "STRING", + "value": "/=" + }, + { + "type": "STRING", + "value": "%=" + }, + { + "type": "STRING", + "value": "&=" + }, + { + "type": "STRING", + "value": "^=" + }, + { + "type": "STRING", + "value": "|=" + } + ] + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "function_literal" + }, + { + "type": "SYMBOL", + "name": "return_expression" + }, + { + "type": "SYMBOL", + "name": "break_expression" + }, + { + "type": "SYMBOL", + "name": "pipeline_expression" + }, + { + "type": "SYMBOL", + "name": "_non_assignment_expression" + } + ] + } + } + ] + } + }, + "range_expression": { + "type": "PREC_LEFT", + "value": 2, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "..<" + }, + { + "type": "STRING", + "value": "..=" + } + ] + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + } + ] + } + }, + "binary_expression": { + "type": "CHOICE", + "members": [ + { + "type": "PREC_LEFT", + "value": 3, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "or" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_newline" + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "SYMBOL", + "name": "_or_continuation" + } + ] + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + } + ] + } + }, + { + "type": "PREC_LEFT", + "value": 4, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "and" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_newline" + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "SYMBOL", + "name": "_and_continuation" + } + ] + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + } + ] + } + }, + { + "type": "PREC_LEFT", + "value": 6, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "<" + }, + { + "type": "STRING", + "value": "<=" + }, + { + "type": "STRING", + "value": ">" + }, + { + "type": "STRING", + "value": ">=" + }, + { + "type": "STRING", + "value": "==" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_newline" + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "SYMBOL", + "name": "_comparison_continuation" + } + ] + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + } + ] + } + }, + { + "type": "PREC_LEFT", + "value": 7, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "|" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_newline" + }, + { + "type": "BLANK" + } + ] + } + ] + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + } + ] + } + }, + { + "type": "PREC_LEFT", + "value": 8, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "^" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_newline" + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "TOKEN", + "content": { + "type": "SEQ", + "members": [ + { + "type": "PATTERN", + "value": "\\r?\\n[ \\t]*" + }, + { + "type": "STRING", + "value": "^" + } + ] + } + } + ] + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + } + ] + } + }, + { + "type": "PREC_LEFT", + "value": 9, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "&" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_newline" + }, + { + "type": "BLANK" + } + ] + } + ] + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + } + ] + } + }, + { + "type": "PREC_LEFT", + "value": 10, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "+" + }, + { + "type": "STRING", + "value": "-" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_newline" + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "TOKEN", + "content": { + "type": "SEQ", + "members": [ + { + "type": "PATTERN", + "value": "\\r?\\n[ \\t]*" + }, + { + "type": "STRING", + "value": "+" + } + ] + } + } + ] + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + } + ] + } + }, + { + "type": "PREC_LEFT", + "value": 11, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "*" + }, + { + "type": "STRING", + "value": "/" + }, + { + "type": "STRING", + "value": "%" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_newline" + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "TOKEN", + "content": { + "type": "SEQ", + "members": [ + { + "type": "PATTERN", + "value": "\\r?\\n[ \\t]*" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "*" + }, + { + "type": "STRING", + "value": "/" + }, + { + "type": "STRING", + "value": "%" + } + ] + } + ] + } + } + ] + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_binary_expression" + } + } + ] + } + } + ] + }, + "unary_expression": { + "type": "PREC_RIGHT", + "value": 12, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "not" + }, + { + "type": "STRING", + "value": "!" + }, + { + "type": "STRING", + "value": "-" + }, + { + "type": "STRING", + "value": "~" + } + ] + } + }, + { + "type": "FIELD", + "name": "operand", + "content": { + "type": "SYMBOL", + "name": "_prefix_expression" + } + } + ] + } + }, + "postfix_expression": { + "type": "PREC_LEFT", + "value": 13, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "primary_expression" + } + }, + { + "type": "REPEAT1", + "content": { + "type": "FIELD", + "name": "operator", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "." + }, + { + "type": "FIELD", + "name": "member", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "[" + }, + { + "type": "FIELD", + "name": "index", + "content": { + "type": "SYMBOL", + "name": "expression" + } + }, + { + "type": "STRING", + "value": "]" + } + ] + }, + { + "type": "STRING", + "value": "?" + }, + { + "type": "STRING", + "value": "!" + } + ] + } + } + } + ] + } + }, + "primary_expression": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "literal" + }, + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "SYMBOL", + "name": "block" + }, + { + "type": "SYMBOL", + "name": "if_expression" + }, + { + "type": "SYMBOL", + "name": "match_expression" + }, + { + "type": "SYMBOL", + "name": "loop_expression" + }, + { + "type": "SYMBOL", + "name": "for_expression" + }, + { + "type": "SYMBOL", + "name": "tuple_value" + }, + { + "type": "SYMBOL", + "name": "collection_literal" + }, + { + "type": "SYMBOL", + "name": "product_constructor" + }, + { + "type": "SYMBOL", + "name": "sum_constructor" + }, + { + "type": "SYMBOL", + "name": "bits_constructor" + }, + { + "type": "SYMBOL", + "name": "default_expression" + } + ] + }, + "tuple_value": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "expression" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "collection_literal": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "[" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "collection_entry" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "collection_entry" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": "]" + } + ] + }, + "collection_entry": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "=>" + }, + { + "type": "SYMBOL", + "name": "expression" + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "..." + }, + { + "type": "SYMBOL", + "name": "expression" + } + ] + } + ] + }, + "product_constructor": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "&" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_name" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "." + }, + { + "type": "STRING", + "value": "{" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "product_entry" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_scope_separator" + }, + { + "type": "SYMBOL", + "name": "product_entry" + } + ] + } + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "product_entry": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": ":" + }, + { + "type": "STRING", + "value": "=" + } + ] + }, + { + "type": "SYMBOL", + "name": "expression" + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "..." + }, + { + "type": "SYMBOL", + "name": "expression" + } + ] + } + ] + }, + "sum_constructor": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "|" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_name" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "." + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + }, + "bits_constructor": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "|" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_name" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "." + }, + { + "type": "STRING", + "value": "{" + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "SYMBOL", + "name": "_newlines" + } + ] + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "literal": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "signed_numeric_literal" + }, + { + "type": "SYMBOL", + "name": "string_literal" + }, + { + "type": "SYMBOL", + "name": "character_literal" + }, + { + "type": "SYMBOL", + "name": "boolean_literal" + }, + { + "type": "SYMBOL", + "name": "nil_literal" + }, + { + "type": "SYMBOL", + "name": "unit_literal" + } + ] + }, + "boolean_literal": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "true" + }, + { + "type": "STRING", + "value": "false" + } + ] + }, + "nil_literal": { + "type": "STRING", + "value": "nil" + }, + "default_expression": { + "type": "STRING", + "value": "default" + }, + "unit_literal": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "signed_numeric_literal": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "-" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "integer_literal" + }, + { + "type": "SYMBOL", + "name": "float_literal" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_trailing_dot_float" + }, + "named": true, + "value": "float_literal" + } + ] + } + ] + }, + "signed_integer_literal": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "-" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "SYMBOL", + "name": "integer_literal" + } + ] + }, + "integer_literal": { + "type": "TOKEN", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "PATTERN", + "value": "0[bB][01](?:_?[01])*" + }, + { + "type": "PATTERN", + "value": "0[oO][0-7](?:_?[0-7])*" + }, + { + "type": "PATTERN", + "value": "0[xX][0-9a-fA-F](?:_?[0-9a-fA-F])*" + }, + { + "type": "PATTERN", + "value": "[0-9](?:_?[0-9])*" + } + ] + } + }, + "float_literal": { + "type": "TOKEN", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "PATTERN", + "value": "[0-9](?:_?[0-9])*\\.[0-9](?:_?[0-9])*(?:[eE][+-]?[0-9](?:_?[0-9])*)?" + }, + { + "type": "PATTERN", + "value": "\\.[0-9](?:_?[0-9])*(?:[eE][+-]?[0-9](?:_?[0-9])*)?" + }, + { + "type": "PATTERN", + "value": "[0-9](?:_?[0-9])*[eE][+-]?[0-9](?:_?[0-9])*" + } + ] + } + }, + "string_literal": { + "type": "TOKEN", + "content": { + "type": "PATTERN", + "value": "'(?:[^'\\\\\\r\\n]|\\\\(?:[\\\\'nrt0]|u\\{[0-9a-fA-F]{1,6}\\}))*'" + } + }, + "character_literal": { + "type": "TOKEN", + "content": { + "type": "PATTERN", + "value": "c'(?:[^'\\\\\\r\\n]|\\\\(?:[\\\\'nrt0]|u\\{[0-9a-fA-F]{1,6}\\}))'" + } + }, + "type_name": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "SYMBOL", + "name": "qualified_name" + } + ] + }, + "qualified_name": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "REPEAT1", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "." + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + } + } + ] + }, + "identifier": { + "type": "PATTERN", + "value": "[A-Za-z_][A-Za-z0-9_]*" + }, + "comment": { + "type": "TOKEN", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "#" + }, + { + "type": "PATTERN", + "value": "[^\\r\\n]*" + } + ] + } + }, + "_direct_pipeline_continuation": { + "type": "TOKEN", + "content": { + "type": "SEQ", + "members": [ + { + "type": "PATTERN", + "value": "\\r?\\n[ \\t]*" + }, + { + "type": "STRING", + "value": "->" + } + ] + } + }, + "_aggregate_pipeline_continuation": { + "type": "TOKEN", + "content": { + "type": "SEQ", + "members": [ + { + "type": "PATTERN", + "value": "\\r?\\n[ \\t]*" + }, + { + "type": "STRING", + "value": "|>" + } + ] + } + }, + "_comparison_continuation": { + "type": "TOKEN", + "content": { + "type": "SEQ", + "members": [ + { + "type": "PATTERN", + "value": "\\r?\\n[ \\t]*" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "<=" + }, + { + "type": "STRING", + "value": ">=" + }, + { + "type": "STRING", + "value": "==" + }, + { + "type": "STRING", + "value": "<" + }, + { + "type": "STRING", + "value": ">" + } + ] + } + ] + } + }, + "_newline": { + "type": "PATTERN", + "value": "\\r?\\n" + }, + "_newlines": { + "type": "REPEAT1", + "content": { + "type": "SYMBOL", + "name": "_newline" + } + }, + "_scope_separator": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_newlines" + }, + { + "type": "STRING", + "value": ";" + } + ] + } + }, + "extras": [ + { + "type": "PATTERN", + "value": "[ \\t]" + }, + { + "type": "SYMBOL", + "name": "comment" + } + ], + "conflicts": [ + [ + "product_pattern_field", + "primary_expression" + ], + [ + "pattern_atom", + "literal" + ], + [ + "pattern_atom", + "primary_expression" + ], + [ + "signed_numeric_literal" + ], + [ + "source_file", + "_scope_separator" + ], + [ + "qualified_name" + ], + [ + "block", + "_scope_separator" + ], + [ + "match_expression", + "_scope_separator" + ], + [ + "product_constructor", + "_scope_separator" + ], + [ + "tuple_type" + ], + [ + "type_application" + ], + [ + "tuple_pattern" + ], + [ + "product_pattern" + ], + [ + "array_pattern" + ], + [ + "tuple_value" + ], + [ + "collection_literal" + ], + [ + "block", + "product_pattern" + ], + [ + "array_pattern", + "collection_literal" + ], + [ + "typed_tuple_pattern" + ], + [ + "unit_pattern", + "unit_literal" + ], + [ + "sum_pattern", + "sum_constructor" + ], + [ + "bits_pattern", + "bits_constructor" + ], + [ + "primary_expression", + "qualified_name" + ], + [ + "array_pattern_entry", + "primary_expression" + ], + [ + "continue_expression" + ], + [ + "unit_type", + "unit_literal" + ], + [ + "unit_type", + "unit_pattern", + "unit_literal" + ], + [ + "product_pattern_field", + "primary_expression", + "type_name" + ], + [ + "pattern_atom", + "primary_expression", + "type_name" + ], + [ + "type_name", + "qualified_name" + ], + [ + "primary_expression", + "type_name" + ], + [ + "type_expression", + "function_type" + ], + [ + "array_type", + "collection_literal" + ] + ], + "precedences": [], + "externals": [ + { + "type": "SYMBOL", + "name": "_and_continuation" + }, + { + "type": "SYMBOL", + "name": "_or_continuation" + }, + { + "type": "SYMBOL", + "name": "_trailing_dot_float" + } + ], + "inline": [], + "supertypes": [ + "module_item", + "expression", + "value_expression", + "type_expression", + "primary_expression", + "literal", + "type_name", + "binding_pattern", + "pattern_atom", + "pipeline_stage", + "inline_pipeline_stage" + ], + "reserved": { + "global": [ + { + "type": "STRING", + "value": "and" + }, + { + "type": "STRING", + "value": "as" + }, + { + "type": "STRING", + "value": "bits" + }, + { + "type": "STRING", + "value": "break" + }, + { + "type": "STRING", + "value": "continue" + }, + { + "type": "STRING", + "value": "default" + }, + { + "type": "STRING", + "value": "distinct" + }, + { + "type": "STRING", + "value": "else" + }, + { + "type": "STRING", + "value": "false" + }, + { + "type": "STRING", + "value": "for" + }, + { + "type": "STRING", + "value": "if" + }, + { + "type": "STRING", + "value": "in" + }, + { + "type": "STRING", + "value": "loop" + }, + { + "type": "STRING", + "value": "match" + }, + { + "type": "STRING", + "value": "nil" + }, + { + "type": "STRING", + "value": "not" + }, + { + "type": "STRING", + "value": "or" + }, + { + "type": "STRING", + "value": "pub" + }, + { + "type": "STRING", + "value": "return" + }, + { + "type": "STRING", + "value": "true" + }, + { + "type": "STRING", + "value": "use" + }, + { + "type": "STRING", + "value": "bit" + }, + { + "type": "STRING", + "value": "chr" + }, + { + "type": "STRING", + "value": "f32" + }, + { + "type": "STRING", + "value": "f64" + }, + { + "type": "STRING", + "value": "i8" + }, + { + "type": "STRING", + "value": "i16" + }, + { + "type": "STRING", + "value": "i32" + }, + { + "type": "STRING", + "value": "i64" + }, + { + "type": "STRING", + "value": "nvr" + }, + { + "type": "STRING", + "value": "str" + }, + { + "type": "STRING", + "value": "u8" + }, + { + "type": "STRING", + "value": "u16" + }, + { + "type": "STRING", + "value": "u32" + }, + { + "type": "STRING", + "value": "u64" + } + ] + } +} \ No newline at end of file diff --git a/src/node-types.json b/src/node-types.json new file mode 100644 index 0000000..4858df7 --- /dev/null +++ b/src/node-types.json @@ -0,0 +1,2798 @@ +[ + { + "type": "binding_pattern", + "named": true, + "subtypes": [ + { + "type": "_", + "named": false + }, + { + "type": "identifier", + "named": true + }, + { + "type": "product_pattern", + "named": true + }, + { + "type": "tuple_pattern", + "named": true + }, + { + "type": "unit_pattern", + "named": true + } + ] + }, + { + "type": "expression", + "named": true, + "subtypes": [ + { + "type": "declaration", + "named": true + }, + { + "type": "value_expression", + "named": true + } + ] + }, + { + "type": "inline_pipeline_stage", + "named": true, + "subtypes": [ + { + "type": "aggregate_pipeline_stage", + "named": true + }, + { + "type": "direct_pipeline_stage", + "named": true + } + ] + }, + { + "type": "literal", + "named": true, + "subtypes": [ + { + "type": "boolean_literal", + "named": true + }, + { + "type": "character_literal", + "named": true + }, + { + "type": "nil_literal", + "named": true + }, + { + "type": "signed_numeric_literal", + "named": true + }, + { + "type": "string_literal", + "named": true + }, + { + "type": "unit_literal", + "named": true + } + ] + }, + { + "type": "module_item", + "named": true, + "subtypes": [ + { + "type": "expression", + "named": true + }, + { + "type": "pub_declaration", + "named": true + }, + { + "type": "use_declaration", + "named": true + } + ] + }, + { + "type": "pattern_atom", + "named": true, + "subtypes": [ + { + "type": "_", + "named": false + }, + { + "type": "array_pattern", + "named": true + }, + { + "type": "bits_pattern", + "named": true + }, + { + "type": "boolean_literal", + "named": true + }, + { + "type": "character_literal", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "nil_literal", + "named": true + }, + { + "type": "product_pattern", + "named": true + }, + { + "type": "signed_numeric_literal", + "named": true + }, + { + "type": "string_literal", + "named": true + }, + { + "type": "sum_pattern", + "named": true + }, + { + "type": "tuple_pattern", + "named": true + }, + { + "type": "unit_pattern", + "named": true + } + ] + }, + { + "type": "pipeline_stage", + "named": true, + "subtypes": [ + { + "type": "continuation_pipeline_stage", + "named": true + }, + { + "type": "inline_pipeline_stage", + "named": true + } + ] + }, + { + "type": "primary_expression", + "named": true, + "subtypes": [ + { + "type": "bits_constructor", + "named": true + }, + { + "type": "block", + "named": true + }, + { + "type": "collection_literal", + "named": true + }, + { + "type": "default_expression", + "named": true + }, + { + "type": "for_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "if_expression", + "named": true + }, + { + "type": "literal", + "named": true + }, + { + "type": "loop_expression", + "named": true + }, + { + "type": "match_expression", + "named": true + }, + { + "type": "product_constructor", + "named": true + }, + { + "type": "sum_constructor", + "named": true + }, + { + "type": "tuple_value", + "named": true + } + ] + }, + { + "type": "type_expression", + "named": true, + "subtypes": [ + { + "type": "array_type", + "named": true + }, + { + "type": "bits_type", + "named": true + }, + { + "type": "function_type", + "named": true + }, + { + "type": "grouped_type", + "named": true + }, + { + "type": "map_type", + "named": true + }, + { + "type": "optional_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "product_type", + "named": true + }, + { + "type": "result_type", + "named": true + }, + { + "type": "sum_type", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_application", + "named": true + }, + { + "type": "type_name", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + }, + { + "type": "type_name", + "named": true, + "subtypes": [ + { + "type": "identifier", + "named": true + }, + { + "type": "qualified_name", + "named": true + } + ] + }, + { + "type": "value_expression", + "named": true, + "subtypes": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "break_expression", + "named": true + }, + { + "type": "continue_expression", + "named": true + }, + { + "type": "function_literal", + "named": true + }, + { + "type": "pipeline_expression", + "named": true + }, + { + "type": "postfix_expression", + "named": true + }, + { + "type": "primary_expression", + "named": true + }, + { + "type": "range_expression", + "named": true + }, + { + "type": "return_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + }, + { + "type": "aggregate_pipeline_callable", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "primary_expression", + "named": true + } + ] + } + }, + { + "type": "aggregate_pipeline_stage", + "named": true, + "fields": { + "arguments": { + "multiple": false, + "required": true, + "types": [ + { + "type": "aggregate_tail", + "named": true + } + ] + }, + "callable": { + "multiple": false, + "required": true, + "types": [ + { + "type": "aggregate_pipeline_callable", + "named": true + } + ] + } + } + }, + { + "type": "aggregate_tail", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "array_tail_entry", + "named": true + }, + { + "type": "expression", + "named": true + } + ] + } + }, + { + "type": "array_pattern", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "array_pattern_entry", + "named": true + } + ] + } + }, + { + "type": "array_pattern_entry", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": false, + "types": [ + { + "type": "identifier", + "named": true + }, + { + "type": "pattern", + "named": true + } + ] + } + }, + { + "type": "array_tail_entry", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + }, + { + "type": "array_type", + "named": true, + "fields": { + "element": { + "multiple": false, + "required": true, + "types": [ + { + "type": "array_type", + "named": true + }, + { + "type": "bits_type", + "named": true + }, + { + "type": "grouped_type", + "named": true + }, + { + "type": "map_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "product_type", + "named": true + }, + { + "type": "sum_type", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_application", + "named": true + }, + { + "type": "type_name", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + } + } + }, + { + "type": "assignment_expression", + "named": true, + "fields": { + "left": { + "multiple": false, + "required": true, + "types": [ + { + "type": "binary_expression", + "named": true + }, + { + "type": "postfix_expression", + "named": true + }, + { + "type": "primary_expression", + "named": true + }, + { + "type": "range_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + }, + "operator": { + "multiple": false, + "required": true, + "types": [ + { + "type": "%=", + "named": false + }, + { + "type": "&=", + "named": false + }, + { + "type": "*=", + "named": false + }, + { + "type": "+=", + "named": false + }, + { + "type": "-=", + "named": false + }, + { + "type": "/=", + "named": false + }, + { + "type": "=", + "named": false + }, + { + "type": "^=", + "named": false + }, + { + "type": "|=", + "named": false + } + ] + }, + "right": { + "multiple": false, + "required": true, + "types": [ + { + "type": "binary_expression", + "named": true + }, + { + "type": "break_expression", + "named": true + }, + { + "type": "function_literal", + "named": true + }, + { + "type": "pipeline_expression", + "named": true + }, + { + "type": "postfix_expression", + "named": true + }, + { + "type": "primary_expression", + "named": true + }, + { + "type": "range_expression", + "named": true + }, + { + "type": "return_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + } + }, + { + "type": "binary_expression", + "named": true, + "fields": { + "left": { + "multiple": false, + "required": true, + "types": [ + { + "type": "binary_expression", + "named": true + }, + { + "type": "postfix_expression", + "named": true + }, + { + "type": "primary_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + }, + "operator": { + "multiple": true, + "required": true, + "types": [ + { + "type": "%", + "named": false + }, + { + "type": "&", + "named": false + }, + { + "type": "*", + "named": false + }, + { + "type": "+", + "named": false + }, + { + "type": "-", + "named": false + }, + { + "type": "/", + "named": false + }, + { + "type": "<", + "named": false + }, + { + "type": "<=", + "named": false + }, + { + "type": "==", + "named": false + }, + { + "type": ">", + "named": false + }, + { + "type": ">=", + "named": false + }, + { + "type": "^", + "named": false + }, + { + "type": "and", + "named": false + }, + { + "type": "or", + "named": false + }, + { + "type": "|", + "named": false + } + ] + }, + "right": { + "multiple": false, + "required": true, + "types": [ + { + "type": "binary_expression", + "named": true + }, + { + "type": "postfix_expression", + "named": true + }, + { + "type": "primary_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + } + }, + { + "type": "bits_constructor", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "type_name", + "named": true + } + ] + } + }, + { + "type": "bits_member", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + }, + { + "type": "integer_literal", + "named": true + } + ] + } + }, + { + "type": "bits_pattern", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "type_name", + "named": true + } + ] + } + }, + { + "type": "bits_type", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "bits_member", + "named": true + }, + { + "type": "unsigned_integer_type", + "named": true + } + ] + } + }, + { + "type": "block", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + }, + { + "type": "boolean_literal", + "named": true, + "fields": {} + }, + { + "type": "break_expression", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "expression", + "named": true + }, + { + "type": "label", + "named": true + } + ] + } + }, + { + "type": "collection_entry", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + }, + { + "type": "collection_literal", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "collection_entry", + "named": true + } + ] + } + }, + { + "type": "continuation_pipeline_stage", + "named": true, + "fields": { + "arguments": { + "multiple": false, + "required": false, + "types": [ + { + "type": "aggregate_tail", + "named": true + } + ] + }, + "callable": { + "multiple": false, + "required": true, + "types": [ + { + "type": "aggregate_pipeline_callable", + "named": true + }, + { + "type": "pipeline_callable", + "named": true + } + ] + } + } + }, + { + "type": "continue_expression", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": false, + "types": [ + { + "type": "label", + "named": true + } + ] + } + }, + { + "type": "declaration", + "named": true, + "fields": { + "name": { + "multiple": false, + "required": false, + "types": [ + { + "type": "identifier", + "named": true + } + ] + }, + "pattern": { + "multiple": false, + "required": false, + "types": [ + { + "type": "product_pattern", + "named": true + }, + { + "type": "tuple_pattern", + "named": true + } + ] + }, + "type": { + "multiple": false, + "required": false, + "types": [ + { + "type": "type_expression", + "named": true + } + ] + }, + "value": { + "multiple": false, + "required": false, + "types": [ + { + "type": "type_definition", + "named": true + }, + { + "type": "value_expression", + "named": true + } + ] + } + } + }, + { + "type": "direct_pipeline_stage", + "named": true, + "fields": { + "callable": { + "multiple": false, + "required": true, + "types": [ + { + "type": "pipeline_callable", + "named": true + } + ] + } + } + }, + { + "type": "for_expression", + "named": true, + "fields": { + "body": { + "multiple": false, + "required": true, + "types": [ + { + "type": "block", + "named": true + } + ] + }, + "pattern": { + "multiple": false, + "required": true, + "types": [ + { + "type": "binding_pattern", + "named": true + } + ] + }, + "value": { + "multiple": false, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + }, + "children": { + "multiple": false, + "required": false, + "types": [ + { + "type": "label", + "named": true + } + ] + } + }, + { + "type": "function_literal", + "named": true, + "fields": { + "body": { + "multiple": false, + "required": true, + "types": [ + { + "type": "block", + "named": true + } + ] + }, + "effect": { + "multiple": false, + "required": false, + "types": [ + { + "type": "->", + "named": false + }, + { + "type": "=>", + "named": false + } + ] + }, + "parameter": { + "multiple": false, + "required": false, + "types": [ + { + "type": "typed_parameter", + "named": true + }, + { + "type": "typed_tuple_pattern", + "named": true + } + ] + }, + "result": { + "multiple": false, + "required": false, + "types": [ + { + "type": "type_expression", + "named": true + } + ] + } + } + }, + { + "type": "function_type", + "named": true, + "fields": { + "effect": { + "multiple": false, + "required": true, + "types": [ + { + "type": "->", + "named": false + }, + { + "type": "=>", + "named": false + } + ] + }, + "input": { + "multiple": false, + "required": true, + "types": [ + { + "type": "array_type", + "named": true + }, + { + "type": "bits_type", + "named": true + }, + { + "type": "grouped_type", + "named": true + }, + { + "type": "map_type", + "named": true + }, + { + "type": "optional_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "product_type", + "named": true + }, + { + "type": "result_type", + "named": true + }, + { + "type": "sum_type", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_application", + "named": true + }, + { + "type": "type_name", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + }, + "result": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_expression", + "named": true + } + ] + } + } + }, + { + "type": "grouped_type", + "named": true, + "fields": { + "value": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_expression", + "named": true + } + ] + } + } + }, + { + "type": "if_expression", + "named": true, + "fields": { + "alternative": { + "multiple": false, + "required": false, + "types": [ + { + "type": "block", + "named": true + }, + { + "type": "if_expression", + "named": true + } + ] + }, + "condition": { + "multiple": false, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + }, + "consequence": { + "multiple": false, + "required": true, + "types": [ + { + "type": "block", + "named": true + } + ] + } + } + }, + { + "type": "import_member", + "named": true, + "fields": { + "alias": { + "multiple": false, + "required": false, + "types": [ + { + "type": "identifier", + "named": true + } + ] + }, + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + } + }, + { + "type": "integer_type", + "named": true, + "fields": {} + }, + { + "type": "label", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + }, + { + "type": "loop_expression", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "block", + "named": true + }, + { + "type": "label", + "named": true + } + ] + } + }, + { + "type": "map_type", + "named": true, + "fields": { + "key": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_expression", + "named": true + } + ] + }, + "value": { + "multiple": false, + "required": true, + "types": [ + { + "type": "array_type", + "named": true + }, + { + "type": "bits_type", + "named": true + }, + { + "type": "grouped_type", + "named": true + }, + { + "type": "map_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "product_type", + "named": true + }, + { + "type": "sum_type", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_application", + "named": true + }, + { + "type": "type_name", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + } + } + }, + { + "type": "match_arm", + "named": true, + "fields": { + "body": { + "multiple": false, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + }, + "guard": { + "multiple": false, + "required": false, + "types": [ + { + "type": "expression", + "named": true + } + ] + }, + "pattern": { + "multiple": false, + "required": true, + "types": [ + { + "type": "pattern", + "named": true + } + ] + } + } + }, + { + "type": "match_expression", + "named": true, + "fields": { + "value": { + "multiple": false, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + }, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "match_arm", + "named": true + } + ] + } + }, + { + "type": "module_path", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_name", + "named": true + } + ] + } + }, + { + "type": "optional_type", + "named": true, + "fields": { + "value": { + "multiple": false, + "required": true, + "types": [ + { + "type": "array_type", + "named": true + }, + { + "type": "bits_type", + "named": true + }, + { + "type": "grouped_type", + "named": true + }, + { + "type": "map_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "product_type", + "named": true + }, + { + "type": "sum_type", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_application", + "named": true + }, + { + "type": "type_name", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + } + } + }, + { + "type": "pattern", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "pattern_atom", + "named": true + } + ] + } + }, + { + "type": "pipeline_callable", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "expression", + "named": true + }, + { + "type": "primary_expression", + "named": true + } + ] + } + }, + { + "type": "pipeline_expression", + "named": true, + "fields": { + "input": { + "multiple": false, + "required": true, + "types": [ + { + "type": "binary_expression", + "named": true + }, + { + "type": "function_literal", + "named": true + }, + { + "type": "postfix_expression", + "named": true + }, + { + "type": "primary_expression", + "named": true + }, + { + "type": "range_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "pipeline_stage", + "named": true + } + ] + } + }, + { + "type": "postfix_expression", + "named": true, + "fields": { + "index": { + "multiple": true, + "required": false, + "types": [ + { + "type": "expression", + "named": true + } + ] + }, + "member": { + "multiple": true, + "required": false, + "types": [ + { + "type": "identifier", + "named": true + } + ] + }, + "operator": { + "multiple": true, + "required": true, + "types": [ + { + "type": "!", + "named": false + }, + { + "type": ".", + "named": false + }, + { + "type": "?", + "named": false + }, + { + "type": "[", + "named": false + }, + { + "type": "]", + "named": false + } + ] + }, + "value": { + "multiple": false, + "required": true, + "types": [ + { + "type": "primary_expression", + "named": true + } + ] + } + } + }, + { + "type": "primitive_type", + "named": true, + "fields": {} + }, + { + "type": "product_constructor", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "product_entry", + "named": true + }, + { + "type": "type_name", + "named": true + } + ] + } + }, + { + "type": "product_entry", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "expression", + "named": true + }, + { + "type": "identifier", + "named": true + } + ] + } + }, + { + "type": "product_field", + "named": true, + "fields": { + "default": { + "multiple": false, + "required": false, + "types": [ + { + "type": "expression", + "named": true + } + ] + }, + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + }, + "type": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_expression", + "named": true + } + ] + } + } + }, + { + "type": "product_pattern", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "product_pattern_field", + "named": true + } + ] + } + }, + { + "type": "product_pattern_field", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + }, + { + "type": "product_type", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "product_field", + "named": true + } + ] + } + }, + { + "type": "pub_declaration", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + }, + { + "type": "qualified_name", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + }, + { + "type": "range_expression", + "named": true, + "fields": { + "left": { + "multiple": false, + "required": true, + "types": [ + { + "type": "binary_expression", + "named": true + }, + { + "type": "postfix_expression", + "named": true + }, + { + "type": "primary_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + }, + "operator": { + "multiple": false, + "required": true, + "types": [ + { + "type": "..<", + "named": false + }, + { + "type": "..=", + "named": false + } + ] + }, + "right": { + "multiple": false, + "required": true, + "types": [ + { + "type": "binary_expression", + "named": true + }, + { + "type": "postfix_expression", + "named": true + }, + { + "type": "primary_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + } + }, + { + "type": "result_type", + "named": true, + "fields": { + "error": { + "multiple": false, + "required": true, + "types": [ + { + "type": "array_type", + "named": true + }, + { + "type": "bits_type", + "named": true + }, + { + "type": "grouped_type", + "named": true + }, + { + "type": "map_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "product_type", + "named": true + }, + { + "type": "sum_type", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_application", + "named": true + }, + { + "type": "type_name", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + }, + "value": { + "multiple": false, + "required": true, + "types": [ + { + "type": "array_type", + "named": true + }, + { + "type": "bits_type", + "named": true + }, + { + "type": "grouped_type", + "named": true + }, + { + "type": "map_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "product_type", + "named": true + }, + { + "type": "sum_type", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_application", + "named": true + }, + { + "type": "type_name", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + } + } + }, + { + "type": "return_expression", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": false, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + }, + { + "type": "signed_integer_literal", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "integer_literal", + "named": true + } + ] + } + }, + { + "type": "signed_numeric_literal", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "float_literal", + "named": true + }, + { + "type": "integer_literal", + "named": true + } + ] + } + }, + { + "type": "source_file", + "named": true, + "root": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "module_item", + "named": true + } + ] + } + }, + { + "type": "sum_constructor", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "type_name", + "named": true + } + ] + } + }, + { + "type": "sum_pattern", + "named": true, + "fields": { + "variant": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + }, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "pattern_atom", + "named": true + }, + { + "type": "type_name", + "named": true + } + ] + } + }, + { + "type": "sum_type", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "integer_type", + "named": true + }, + { + "type": "sum_variant", + "named": true + } + ] + } + }, + { + "type": "sum_variant", + "named": true, + "fields": { + "discriminant": { + "multiple": false, + "required": false, + "types": [ + { + "type": "signed_integer_literal", + "named": true + } + ] + }, + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + }, + "payload": { + "multiple": false, + "required": false, + "types": [ + { + "type": "type_expression", + "named": true + } + ] + } + } + }, + { + "type": "tuple_pattern", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "pattern", + "named": true + } + ] + } + }, + { + "type": "tuple_type", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "type_expression", + "named": true + } + ] + } + }, + { + "type": "tuple_value", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + }, + { + "type": "type_application", + "named": true, + "fields": { + "constructor": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_name", + "named": true + } + ] + } + }, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "type_expression", + "named": true + } + ] + } + }, + { + "type": "type_definition", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_expression", + "named": true + } + ] + } + }, + { + "type": "typed_parameter", + "named": true, + "fields": { + "pattern": { + "multiple": false, + "required": true, + "types": [ + { + "type": "binding_pattern", + "named": true + } + ] + }, + "type": { + "multiple": false, + "required": true, + "types": [ + { + "type": "array_type", + "named": true + }, + { + "type": "bits_type", + "named": true + }, + { + "type": "grouped_type", + "named": true + }, + { + "type": "map_type", + "named": true + }, + { + "type": "optional_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "product_type", + "named": true + }, + { + "type": "result_type", + "named": true + }, + { + "type": "sum_type", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_application", + "named": true + }, + { + "type": "type_name", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + } + } + }, + { + "type": "typed_tuple_component", + "named": true, + "fields": { + "pattern": { + "multiple": false, + "required": true, + "types": [ + { + "type": "binding_pattern", + "named": true + } + ] + }, + "type": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_expression", + "named": true + } + ] + } + } + }, + { + "type": "typed_tuple_pattern", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "typed_tuple_component", + "named": true + } + ] + } + }, + { + "type": "unary_expression", + "named": true, + "fields": { + "operand": { + "multiple": false, + "required": true, + "types": [ + { + "type": "postfix_expression", + "named": true + }, + { + "type": "primary_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + }, + "operator": { + "multiple": false, + "required": true, + "types": [ + { + "type": "!", + "named": false + }, + { + "type": "-", + "named": false + }, + { + "type": "not", + "named": false + }, + { + "type": "~", + "named": false + } + ] + } + } + }, + { + "type": "unit_literal", + "named": true, + "fields": {} + }, + { + "type": "unit_pattern", + "named": true, + "fields": {} + }, + { + "type": "unit_type", + "named": true, + "fields": {} + }, + { + "type": "unsigned_integer_type", + "named": true, + "fields": {} + }, + { + "type": "use_declaration", + "named": true, + "fields": { + "alias": { + "multiple": false, + "required": false, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + }, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "import_member", + "named": true + }, + { + "type": "module_path", + "named": true + } + ] + } + }, + { + "type": "!", + "named": false + }, + { + "type": "%", + "named": false + }, + { + "type": "%=", + "named": false + }, + { + "type": "&", + "named": false + }, + { + "type": "&=", + "named": false + }, + { + "type": "(", + "named": false + }, + { + "type": ")", + "named": false + }, + { + "type": "*", + "named": false + }, + { + "type": "*=", + "named": false + }, + { + "type": "+", + "named": false + }, + { + "type": "+=", + "named": false + }, + { + "type": ",", + "named": false + }, + { + "type": "-", + "named": false + }, + { + "type": "-=", + "named": false + }, + { + "type": "->", + "named": false + }, + { + "type": ".", + "named": false + }, + { + "type": "..", + "named": false + }, + { + "type": "...", + "named": false + }, + { + "type": "..<", + "named": false + }, + { + "type": "..=", + "named": false + }, + { + "type": "/", + "named": false + }, + { + "type": "/=", + "named": false + }, + { + "type": ":", + "named": false + }, + { + "type": "::", + "named": false + }, + { + "type": ":=", + "named": false + }, + { + "type": ";", + "named": false + }, + { + "type": "<", + "named": false + }, + { + "type": "<=", + "named": false + }, + { + "type": "=", + "named": false + }, + { + "type": "==", + "named": false + }, + { + "type": "=>", + "named": false + }, + { + "type": ">", + "named": false + }, + { + "type": ">=", + "named": false + }, + { + "type": "?", + "named": false + }, + { + "type": "@", + "named": false + }, + { + "type": "[", + "named": false + }, + { + "type": "]", + "named": false + }, + { + "type": "^", + "named": false + }, + { + "type": "^=", + "named": false + }, + { + "type": "_", + "named": false + }, + { + "type": "`", + "named": false + }, + { + "type": "and", + "named": false + }, + { + "type": "as", + "named": false + }, + { + "type": "bit", + "named": false + }, + { + "type": "bits", + "named": false + }, + { + "type": "break", + "named": false + }, + { + "type": "character_literal", + "named": true + }, + { + "type": "chr", + "named": false + }, + { + "type": "comment", + "named": true, + "extra": true + }, + { + "type": "continue", + "named": false + }, + { + "type": "default_expression", + "named": true + }, + { + "type": "distinct", + "named": false + }, + { + "type": "else", + "named": false + }, + { + "type": "f32", + "named": false + }, + { + "type": "f64", + "named": false + }, + { + "type": "false", + "named": false + }, + { + "type": "float_literal", + "named": true + }, + { + "type": "for", + "named": false + }, + { + "type": "i16", + "named": false + }, + { + "type": "i32", + "named": false + }, + { + "type": "i64", + "named": false + }, + { + "type": "i8", + "named": false + }, + { + "type": "identifier", + "named": true + }, + { + "type": "if", + "named": false + }, + { + "type": "in", + "named": false + }, + { + "type": "integer_literal", + "named": true + }, + { + "type": "loop", + "named": false + }, + { + "type": "match", + "named": false + }, + { + "type": "nil_literal", + "named": true + }, + { + "type": "not", + "named": false + }, + { + "type": "nvr", + "named": false + }, + { + "type": "or", + "named": false + }, + { + "type": "pub", + "named": false + }, + { + "type": "return", + "named": false + }, + { + "type": "str", + "named": false + }, + { + "type": "string_literal", + "named": true + }, + { + "type": "true", + "named": false + }, + { + "type": "u16", + "named": false + }, + { + "type": "u32", + "named": false + }, + { + "type": "u64", + "named": false + }, + { + "type": "u8", + "named": false + }, + { + "type": "use", + "named": false + }, + { + "type": "{", + "named": false + }, + { + "type": "|", + "named": false + }, + { + "type": "|=", + "named": false + }, + { + "type": "|>", + "named": false + }, + { + "type": "}", + "named": false + }, + { + "type": "~", + "named": false + } +] \ No newline at end of file diff --git a/src/parser.c b/src/parser.c new file mode 100644 index 0000000..8823984 --- /dev/null +++ b/src/parser.c @@ -0,0 +1,45982 @@ +/* Automatically @generated by tree-sitter */ + +#include "tree_sitter/parser.h" + +#if defined(__GNUC__) || defined(__clang__) +#pragma GCC diagnostic ignored "-Wmissing-field-initializers" +#endif + +#define LANGUAGE_VERSION 15 +#define STATE_COUNT 1156 +#define LARGE_STATE_COUNT 110 +#define SYMBOL_COUNT 218 +#define ALIAS_COUNT 0 +#define TOKEN_COUNT 99 +#define EXTERNAL_TOKEN_COUNT 3 +#define FIELD_COUNT 30 +#define MAX_ALIAS_SEQUENCE_LENGTH 10 +#define MAX_RESERVED_WORD_SET_SIZE 35 +#define PRODUCTION_ID_COUNT 41 +#define SUPERTYPE_COUNT 11 + +enum ts_symbol_identifiers { + sym_identifier = 1, + anon_sym_use = 2, + anon_sym_as = 3, + anon_sym_DOT = 4, + anon_sym_LBRACE = 5, + anon_sym_COMMA = 6, + anon_sym_RBRACE = 7, + anon_sym_DOT_DOT = 8, + anon_sym_pub = 9, + anon_sym_COLON_COLON = 10, + anon_sym_COLON_EQ = 11, + anon_sym_COLON = 12, + anon_sym_EQ = 13, + anon_sym_distinct = 14, + anon_sym_DASH_GT = 15, + anon_sym_EQ_GT = 16, + anon_sym_BANG = 17, + anon_sym_QMARK = 18, + anon_sym_LBRACK = 19, + anon_sym_RBRACK = 20, + anon_sym_LPAREN = 21, + anon_sym_RPAREN = 22, + anon_sym_LT = 23, + anon_sym_GT = 24, + anon_sym_AMP = 25, + anon_sym_PIPE = 26, + anon_sym_bits = 27, + anon_sym_f32 = 28, + anon_sym_f64 = 29, + anon_sym_bit = 30, + anon_sym_chr = 31, + anon_sym_str = 32, + anon_sym_nvr = 33, + anon_sym_i8 = 34, + anon_sym_i16 = 35, + anon_sym_i32 = 36, + anon_sym_i64 = 37, + anon_sym_u8 = 38, + anon_sym_u16 = 39, + anon_sym_u32 = 40, + anon_sym_u64 = 41, + anon_sym_AT = 42, + anon_sym_return = 43, + anon_sym_break = 44, + anon_sym_continue = 45, + anon_sym_BQUOTE = 46, + anon_sym_if = 47, + anon_sym_else = 48, + anon_sym_match = 49, + anon_sym_loop = 50, + anon_sym_for = 51, + anon_sym_in = 52, + anon_sym_or = 53, + anon_sym__ = 54, + anon_sym_DOT_DOT_DOT = 55, + anon_sym_PIPE_GT = 56, + anon_sym_PLUS_EQ = 57, + anon_sym_DASH_EQ = 58, + anon_sym_STAR_EQ = 59, + anon_sym_SLASH_EQ = 60, + anon_sym_PERCENT_EQ = 61, + anon_sym_AMP_EQ = 62, + anon_sym_CARET_EQ = 63, + anon_sym_PIPE_EQ = 64, + anon_sym_DOT_DOT_LT = 65, + anon_sym_DOT_DOT_EQ = 66, + anon_sym_and = 67, + anon_sym_LT_EQ = 68, + anon_sym_GT_EQ = 69, + anon_sym_EQ_EQ = 70, + anon_sym_CARET = 71, + aux_sym_binary_expression_token1 = 72, + anon_sym_PLUS = 73, + anon_sym_DASH = 74, + aux_sym_binary_expression_token2 = 75, + anon_sym_STAR = 76, + anon_sym_SLASH = 77, + anon_sym_PERCENT = 78, + aux_sym_binary_expression_token3 = 79, + anon_sym_not = 80, + anon_sym_TILDE = 81, + anon_sym_true = 82, + anon_sym_false = 83, + sym_nil_literal = 84, + sym_default_expression = 85, + sym_integer_literal = 86, + sym_float_literal = 87, + sym_string_literal = 88, + sym_character_literal = 89, + sym_comment = 90, + sym__direct_pipeline_continuation = 91, + sym__aggregate_pipeline_continuation = 92, + sym__comparison_continuation = 93, + sym__newline = 94, + anon_sym_SEMI = 95, + sym__and_continuation = 96, + sym__or_continuation = 97, + sym__trailing_dot_float = 98, + sym_source_file = 99, + sym_module_item = 100, + sym_use_declaration = 101, + sym_import_member = 102, + sym_module_path = 103, + sym_pub_declaration = 104, + sym_expression = 105, + sym_value_expression = 106, + sym_declaration = 107, + sym_type_definition = 108, + sym_type_expression = 109, + sym_function_type = 110, + sym__result_type = 111, + sym_result_type = 112, + sym_optional_type = 113, + sym__container_type = 114, + sym_array_type = 115, + sym_map_type = 116, + sym__primary_type = 117, + sym_grouped_type = 118, + sym_unit_type = 119, + sym_tuple_type = 120, + sym_type_application = 121, + sym_product_type = 122, + sym_product_field = 123, + sym_sum_type = 124, + sym_sum_variant = 125, + sym_bits_type = 126, + sym_bits_member = 127, + sym_primitive_type = 128, + sym_integer_type = 129, + sym_unsigned_integer_type = 130, + sym_function_literal = 131, + sym_typed_tuple_pattern = 132, + sym_typed_parameter = 133, + sym_typed_tuple_component = 134, + sym_return_expression = 135, + sym_break_expression = 136, + sym_continue_expression = 137, + sym_label = 138, + sym_if_expression = 139, + sym_match_expression = 140, + sym_match_arm = 141, + sym_loop_expression = 142, + sym_for_expression = 143, + sym_block = 144, + sym_pattern = 145, + sym_binding_pattern = 146, + sym_pattern_atom = 147, + sym_unit_pattern = 148, + sym_tuple_pattern = 149, + sym_product_pattern = 150, + sym_product_pattern_field = 151, + sym_sum_pattern = 152, + sym_bits_pattern = 153, + sym_array_pattern = 154, + sym_array_pattern_entry = 155, + sym_pipeline_expression = 156, + sym_pipeline_stage = 157, + sym_inline_pipeline_stage = 158, + sym_continuation_pipeline_stage = 159, + sym_direct_pipeline_stage = 160, + sym_aggregate_pipeline_stage = 161, + sym_aggregate_tail = 162, + sym_array_tail_entry = 163, + sym_pipeline_callable = 164, + sym_aggregate_pipeline_callable = 165, + sym__ordinary_expression = 166, + sym__non_assignment_expression = 167, + sym__binary_expression = 168, + sym__prefix_expression = 169, + sym_assignment_expression = 170, + sym_range_expression = 171, + sym_binary_expression = 172, + sym_unary_expression = 173, + sym_postfix_expression = 174, + sym_primary_expression = 175, + sym_tuple_value = 176, + sym_collection_literal = 177, + sym_collection_entry = 178, + sym_product_constructor = 179, + sym_product_entry = 180, + sym_sum_constructor = 181, + sym_bits_constructor = 182, + sym_literal = 183, + sym_boolean_literal = 184, + sym_unit_literal = 185, + sym_signed_numeric_literal = 186, + sym_signed_integer_literal = 187, + sym_type_name = 188, + sym_qualified_name = 189, + aux_sym__newlines = 190, + sym__scope_separator = 191, + aux_sym_source_file_repeat1 = 192, + aux_sym_source_file_repeat2 = 193, + aux_sym_use_declaration_repeat1 = 194, + aux_sym_pub_declaration_repeat1 = 195, + aux_sym_optional_type_repeat1 = 196, + aux_sym_tuple_type_repeat1 = 197, + aux_sym_product_type_repeat1 = 198, + aux_sym_sum_type_repeat1 = 199, + aux_sym_bits_type_repeat1 = 200, + aux_sym_typed_tuple_pattern_repeat1 = 201, + aux_sym_match_expression_repeat1 = 202, + aux_sym_block_repeat1 = 203, + aux_sym_pattern_repeat1 = 204, + aux_sym_tuple_pattern_repeat1 = 205, + aux_sym_product_pattern_repeat1 = 206, + aux_sym_bits_pattern_repeat1 = 207, + aux_sym_array_pattern_repeat1 = 208, + aux_sym_pipeline_expression_repeat1 = 209, + aux_sym_continuation_pipeline_stage_repeat1 = 210, + aux_sym_aggregate_tail_repeat1 = 211, + aux_sym_aggregate_tail_repeat2 = 212, + aux_sym_pipeline_callable_repeat1 = 213, + aux_sym_aggregate_pipeline_callable_repeat1 = 214, + aux_sym_postfix_expression_repeat1 = 215, + aux_sym_collection_literal_repeat1 = 216, + aux_sym_product_constructor_repeat1 = 217, +}; + +static const char * const ts_symbol_names[] = { + [ts_builtin_sym_end] = "end", + [sym_identifier] = "identifier", + [anon_sym_use] = "use", + [anon_sym_as] = "as", + [anon_sym_DOT] = ".", + [anon_sym_LBRACE] = "{", + [anon_sym_COMMA] = ",", + [anon_sym_RBRACE] = "}", + [anon_sym_DOT_DOT] = "..", + [anon_sym_pub] = "pub", + [anon_sym_COLON_COLON] = "::", + [anon_sym_COLON_EQ] = ":=", + [anon_sym_COLON] = ":", + [anon_sym_EQ] = "=", + [anon_sym_distinct] = "distinct", + [anon_sym_DASH_GT] = "->", + [anon_sym_EQ_GT] = "=>", + [anon_sym_BANG] = "!", + [anon_sym_QMARK] = "\?", + [anon_sym_LBRACK] = "[", + [anon_sym_RBRACK] = "]", + [anon_sym_LPAREN] = "(", + [anon_sym_RPAREN] = ")", + [anon_sym_LT] = "<", + [anon_sym_GT] = ">", + [anon_sym_AMP] = "&", + [anon_sym_PIPE] = "|", + [anon_sym_bits] = "bits", + [anon_sym_f32] = "f32", + [anon_sym_f64] = "f64", + [anon_sym_bit] = "bit", + [anon_sym_chr] = "chr", + [anon_sym_str] = "str", + [anon_sym_nvr] = "nvr", + [anon_sym_i8] = "i8", + [anon_sym_i16] = "i16", + [anon_sym_i32] = "i32", + [anon_sym_i64] = "i64", + [anon_sym_u8] = "u8", + [anon_sym_u16] = "u16", + [anon_sym_u32] = "u32", + [anon_sym_u64] = "u64", + [anon_sym_AT] = "@", + [anon_sym_return] = "return", + [anon_sym_break] = "break", + [anon_sym_continue] = "continue", + [anon_sym_BQUOTE] = "`", + [anon_sym_if] = "if", + [anon_sym_else] = "else", + [anon_sym_match] = "match", + [anon_sym_loop] = "loop", + [anon_sym_for] = "for", + [anon_sym_in] = "in", + [anon_sym_or] = "or", + [anon_sym__] = "_", + [anon_sym_DOT_DOT_DOT] = "...", + [anon_sym_PIPE_GT] = "|>", + [anon_sym_PLUS_EQ] = "+=", + [anon_sym_DASH_EQ] = "-=", + [anon_sym_STAR_EQ] = "*=", + [anon_sym_SLASH_EQ] = "/=", + [anon_sym_PERCENT_EQ] = "%=", + [anon_sym_AMP_EQ] = "&=", + [anon_sym_CARET_EQ] = "^=", + [anon_sym_PIPE_EQ] = "|=", + [anon_sym_DOT_DOT_LT] = "..<", + [anon_sym_DOT_DOT_EQ] = "..=", + [anon_sym_and] = "and", + [anon_sym_LT_EQ] = "<=", + [anon_sym_GT_EQ] = ">=", + [anon_sym_EQ_EQ] = "==", + [anon_sym_CARET] = "^", + [aux_sym_binary_expression_token1] = "binary_expression_token1", + [anon_sym_PLUS] = "+", + [anon_sym_DASH] = "-", + [aux_sym_binary_expression_token2] = "binary_expression_token2", + [anon_sym_STAR] = "*", + [anon_sym_SLASH] = "/", + [anon_sym_PERCENT] = "%", + [aux_sym_binary_expression_token3] = "binary_expression_token3", + [anon_sym_not] = "not", + [anon_sym_TILDE] = "~", + [anon_sym_true] = "true", + [anon_sym_false] = "false", + [sym_nil_literal] = "nil_literal", + [sym_default_expression] = "default_expression", + [sym_integer_literal] = "integer_literal", + [sym_float_literal] = "float_literal", + [sym_string_literal] = "string_literal", + [sym_character_literal] = "character_literal", + [sym_comment] = "comment", + [sym__direct_pipeline_continuation] = "_direct_pipeline_continuation", + [sym__aggregate_pipeline_continuation] = "_aggregate_pipeline_continuation", + [sym__comparison_continuation] = "_comparison_continuation", + [sym__newline] = "_newline", + [anon_sym_SEMI] = ";", + [sym__and_continuation] = "_and_continuation", + [sym__or_continuation] = "_or_continuation", + [sym__trailing_dot_float] = "float_literal", + [sym_source_file] = "source_file", + [sym_module_item] = "module_item", + [sym_use_declaration] = "use_declaration", + [sym_import_member] = "import_member", + [sym_module_path] = "module_path", + [sym_pub_declaration] = "pub_declaration", + [sym_expression] = "expression", + [sym_value_expression] = "value_expression", + [sym_declaration] = "declaration", + [sym_type_definition] = "type_definition", + [sym_type_expression] = "type_expression", + [sym_function_type] = "function_type", + [sym__result_type] = "_result_type", + [sym_result_type] = "result_type", + [sym_optional_type] = "optional_type", + [sym__container_type] = "_container_type", + [sym_array_type] = "array_type", + [sym_map_type] = "map_type", + [sym__primary_type] = "_primary_type", + [sym_grouped_type] = "grouped_type", + [sym_unit_type] = "unit_type", + [sym_tuple_type] = "tuple_type", + [sym_type_application] = "type_application", + [sym_product_type] = "product_type", + [sym_product_field] = "product_field", + [sym_sum_type] = "sum_type", + [sym_sum_variant] = "sum_variant", + [sym_bits_type] = "bits_type", + [sym_bits_member] = "bits_member", + [sym_primitive_type] = "primitive_type", + [sym_integer_type] = "integer_type", + [sym_unsigned_integer_type] = "unsigned_integer_type", + [sym_function_literal] = "function_literal", + [sym_typed_tuple_pattern] = "typed_tuple_pattern", + [sym_typed_parameter] = "typed_parameter", + [sym_typed_tuple_component] = "typed_tuple_component", + [sym_return_expression] = "return_expression", + [sym_break_expression] = "break_expression", + [sym_continue_expression] = "continue_expression", + [sym_label] = "label", + [sym_if_expression] = "if_expression", + [sym_match_expression] = "match_expression", + [sym_match_arm] = "match_arm", + [sym_loop_expression] = "loop_expression", + [sym_for_expression] = "for_expression", + [sym_block] = "block", + [sym_pattern] = "pattern", + [sym_binding_pattern] = "binding_pattern", + [sym_pattern_atom] = "pattern_atom", + [sym_unit_pattern] = "unit_pattern", + [sym_tuple_pattern] = "tuple_pattern", + [sym_product_pattern] = "product_pattern", + [sym_product_pattern_field] = "product_pattern_field", + [sym_sum_pattern] = "sum_pattern", + [sym_bits_pattern] = "bits_pattern", + [sym_array_pattern] = "array_pattern", + [sym_array_pattern_entry] = "array_pattern_entry", + [sym_pipeline_expression] = "pipeline_expression", + [sym_pipeline_stage] = "pipeline_stage", + [sym_inline_pipeline_stage] = "inline_pipeline_stage", + [sym_continuation_pipeline_stage] = "continuation_pipeline_stage", + [sym_direct_pipeline_stage] = "direct_pipeline_stage", + [sym_aggregate_pipeline_stage] = "aggregate_pipeline_stage", + [sym_aggregate_tail] = "aggregate_tail", + [sym_array_tail_entry] = "array_tail_entry", + [sym_pipeline_callable] = "pipeline_callable", + [sym_aggregate_pipeline_callable] = "aggregate_pipeline_callable", + [sym__ordinary_expression] = "_ordinary_expression", + [sym__non_assignment_expression] = "_non_assignment_expression", + [sym__binary_expression] = "_binary_expression", + [sym__prefix_expression] = "_prefix_expression", + [sym_assignment_expression] = "assignment_expression", + [sym_range_expression] = "range_expression", + [sym_binary_expression] = "binary_expression", + [sym_unary_expression] = "unary_expression", + [sym_postfix_expression] = "postfix_expression", + [sym_primary_expression] = "primary_expression", + [sym_tuple_value] = "tuple_value", + [sym_collection_literal] = "collection_literal", + [sym_collection_entry] = "collection_entry", + [sym_product_constructor] = "product_constructor", + [sym_product_entry] = "product_entry", + [sym_sum_constructor] = "sum_constructor", + [sym_bits_constructor] = "bits_constructor", + [sym_literal] = "literal", + [sym_boolean_literal] = "boolean_literal", + [sym_unit_literal] = "unit_literal", + [sym_signed_numeric_literal] = "signed_numeric_literal", + [sym_signed_integer_literal] = "signed_integer_literal", + [sym_type_name] = "type_name", + [sym_qualified_name] = "qualified_name", + [aux_sym__newlines] = "_newlines", + [sym__scope_separator] = "_scope_separator", + [aux_sym_source_file_repeat1] = "source_file_repeat1", + [aux_sym_source_file_repeat2] = "source_file_repeat2", + [aux_sym_use_declaration_repeat1] = "use_declaration_repeat1", + [aux_sym_pub_declaration_repeat1] = "pub_declaration_repeat1", + [aux_sym_optional_type_repeat1] = "optional_type_repeat1", + [aux_sym_tuple_type_repeat1] = "tuple_type_repeat1", + [aux_sym_product_type_repeat1] = "product_type_repeat1", + [aux_sym_sum_type_repeat1] = "sum_type_repeat1", + [aux_sym_bits_type_repeat1] = "bits_type_repeat1", + [aux_sym_typed_tuple_pattern_repeat1] = "typed_tuple_pattern_repeat1", + [aux_sym_match_expression_repeat1] = "match_expression_repeat1", + [aux_sym_block_repeat1] = "block_repeat1", + [aux_sym_pattern_repeat1] = "pattern_repeat1", + [aux_sym_tuple_pattern_repeat1] = "tuple_pattern_repeat1", + [aux_sym_product_pattern_repeat1] = "product_pattern_repeat1", + [aux_sym_bits_pattern_repeat1] = "bits_pattern_repeat1", + [aux_sym_array_pattern_repeat1] = "array_pattern_repeat1", + [aux_sym_pipeline_expression_repeat1] = "pipeline_expression_repeat1", + [aux_sym_continuation_pipeline_stage_repeat1] = "continuation_pipeline_stage_repeat1", + [aux_sym_aggregate_tail_repeat1] = "aggregate_tail_repeat1", + [aux_sym_aggregate_tail_repeat2] = "aggregate_tail_repeat2", + [aux_sym_pipeline_callable_repeat1] = "pipeline_callable_repeat1", + [aux_sym_aggregate_pipeline_callable_repeat1] = "aggregate_pipeline_callable_repeat1", + [aux_sym_postfix_expression_repeat1] = "postfix_expression_repeat1", + [aux_sym_collection_literal_repeat1] = "collection_literal_repeat1", + [aux_sym_product_constructor_repeat1] = "product_constructor_repeat1", +}; + +static const TSSymbol ts_symbol_map[] = { + [ts_builtin_sym_end] = ts_builtin_sym_end, + [sym_identifier] = sym_identifier, + [anon_sym_use] = anon_sym_use, + [anon_sym_as] = anon_sym_as, + [anon_sym_DOT] = anon_sym_DOT, + [anon_sym_LBRACE] = anon_sym_LBRACE, + [anon_sym_COMMA] = anon_sym_COMMA, + [anon_sym_RBRACE] = anon_sym_RBRACE, + [anon_sym_DOT_DOT] = anon_sym_DOT_DOT, + [anon_sym_pub] = anon_sym_pub, + [anon_sym_COLON_COLON] = anon_sym_COLON_COLON, + [anon_sym_COLON_EQ] = anon_sym_COLON_EQ, + [anon_sym_COLON] = anon_sym_COLON, + [anon_sym_EQ] = anon_sym_EQ, + [anon_sym_distinct] = anon_sym_distinct, + [anon_sym_DASH_GT] = anon_sym_DASH_GT, + [anon_sym_EQ_GT] = anon_sym_EQ_GT, + [anon_sym_BANG] = anon_sym_BANG, + [anon_sym_QMARK] = anon_sym_QMARK, + [anon_sym_LBRACK] = anon_sym_LBRACK, + [anon_sym_RBRACK] = anon_sym_RBRACK, + [anon_sym_LPAREN] = anon_sym_LPAREN, + [anon_sym_RPAREN] = anon_sym_RPAREN, + [anon_sym_LT] = anon_sym_LT, + [anon_sym_GT] = anon_sym_GT, + [anon_sym_AMP] = anon_sym_AMP, + [anon_sym_PIPE] = anon_sym_PIPE, + [anon_sym_bits] = anon_sym_bits, + [anon_sym_f32] = anon_sym_f32, + [anon_sym_f64] = anon_sym_f64, + [anon_sym_bit] = anon_sym_bit, + [anon_sym_chr] = anon_sym_chr, + [anon_sym_str] = anon_sym_str, + [anon_sym_nvr] = anon_sym_nvr, + [anon_sym_i8] = anon_sym_i8, + [anon_sym_i16] = anon_sym_i16, + [anon_sym_i32] = anon_sym_i32, + [anon_sym_i64] = anon_sym_i64, + [anon_sym_u8] = anon_sym_u8, + [anon_sym_u16] = anon_sym_u16, + [anon_sym_u32] = anon_sym_u32, + [anon_sym_u64] = anon_sym_u64, + [anon_sym_AT] = anon_sym_AT, + [anon_sym_return] = anon_sym_return, + [anon_sym_break] = anon_sym_break, + [anon_sym_continue] = anon_sym_continue, + [anon_sym_BQUOTE] = anon_sym_BQUOTE, + [anon_sym_if] = anon_sym_if, + [anon_sym_else] = anon_sym_else, + [anon_sym_match] = anon_sym_match, + [anon_sym_loop] = anon_sym_loop, + [anon_sym_for] = anon_sym_for, + [anon_sym_in] = anon_sym_in, + [anon_sym_or] = anon_sym_or, + [anon_sym__] = anon_sym__, + [anon_sym_DOT_DOT_DOT] = anon_sym_DOT_DOT_DOT, + [anon_sym_PIPE_GT] = anon_sym_PIPE_GT, + [anon_sym_PLUS_EQ] = anon_sym_PLUS_EQ, + [anon_sym_DASH_EQ] = anon_sym_DASH_EQ, + [anon_sym_STAR_EQ] = anon_sym_STAR_EQ, + [anon_sym_SLASH_EQ] = anon_sym_SLASH_EQ, + [anon_sym_PERCENT_EQ] = anon_sym_PERCENT_EQ, + [anon_sym_AMP_EQ] = anon_sym_AMP_EQ, + [anon_sym_CARET_EQ] = anon_sym_CARET_EQ, + [anon_sym_PIPE_EQ] = anon_sym_PIPE_EQ, + [anon_sym_DOT_DOT_LT] = anon_sym_DOT_DOT_LT, + [anon_sym_DOT_DOT_EQ] = anon_sym_DOT_DOT_EQ, + [anon_sym_and] = anon_sym_and, + [anon_sym_LT_EQ] = anon_sym_LT_EQ, + [anon_sym_GT_EQ] = anon_sym_GT_EQ, + [anon_sym_EQ_EQ] = anon_sym_EQ_EQ, + [anon_sym_CARET] = anon_sym_CARET, + [aux_sym_binary_expression_token1] = aux_sym_binary_expression_token1, + [anon_sym_PLUS] = anon_sym_PLUS, + [anon_sym_DASH] = anon_sym_DASH, + [aux_sym_binary_expression_token2] = aux_sym_binary_expression_token2, + [anon_sym_STAR] = anon_sym_STAR, + [anon_sym_SLASH] = anon_sym_SLASH, + [anon_sym_PERCENT] = anon_sym_PERCENT, + [aux_sym_binary_expression_token3] = aux_sym_binary_expression_token3, + [anon_sym_not] = anon_sym_not, + [anon_sym_TILDE] = anon_sym_TILDE, + [anon_sym_true] = anon_sym_true, + [anon_sym_false] = anon_sym_false, + [sym_nil_literal] = sym_nil_literal, + [sym_default_expression] = sym_default_expression, + [sym_integer_literal] = sym_integer_literal, + [sym_float_literal] = sym_float_literal, + [sym_string_literal] = sym_string_literal, + [sym_character_literal] = sym_character_literal, + [sym_comment] = sym_comment, + [sym__direct_pipeline_continuation] = sym__direct_pipeline_continuation, + [sym__aggregate_pipeline_continuation] = sym__aggregate_pipeline_continuation, + [sym__comparison_continuation] = sym__comparison_continuation, + [sym__newline] = sym__newline, + [anon_sym_SEMI] = anon_sym_SEMI, + [sym__and_continuation] = sym__and_continuation, + [sym__or_continuation] = sym__or_continuation, + [sym__trailing_dot_float] = sym_float_literal, + [sym_source_file] = sym_source_file, + [sym_module_item] = sym_module_item, + [sym_use_declaration] = sym_use_declaration, + [sym_import_member] = sym_import_member, + [sym_module_path] = sym_module_path, + [sym_pub_declaration] = sym_pub_declaration, + [sym_expression] = sym_expression, + [sym_value_expression] = sym_value_expression, + [sym_declaration] = sym_declaration, + [sym_type_definition] = sym_type_definition, + [sym_type_expression] = sym_type_expression, + [sym_function_type] = sym_function_type, + [sym__result_type] = sym__result_type, + [sym_result_type] = sym_result_type, + [sym_optional_type] = sym_optional_type, + [sym__container_type] = sym__container_type, + [sym_array_type] = sym_array_type, + [sym_map_type] = sym_map_type, + [sym__primary_type] = sym__primary_type, + [sym_grouped_type] = sym_grouped_type, + [sym_unit_type] = sym_unit_type, + [sym_tuple_type] = sym_tuple_type, + [sym_type_application] = sym_type_application, + [sym_product_type] = sym_product_type, + [sym_product_field] = sym_product_field, + [sym_sum_type] = sym_sum_type, + [sym_sum_variant] = sym_sum_variant, + [sym_bits_type] = sym_bits_type, + [sym_bits_member] = sym_bits_member, + [sym_primitive_type] = sym_primitive_type, + [sym_integer_type] = sym_integer_type, + [sym_unsigned_integer_type] = sym_unsigned_integer_type, + [sym_function_literal] = sym_function_literal, + [sym_typed_tuple_pattern] = sym_typed_tuple_pattern, + [sym_typed_parameter] = sym_typed_parameter, + [sym_typed_tuple_component] = sym_typed_tuple_component, + [sym_return_expression] = sym_return_expression, + [sym_break_expression] = sym_break_expression, + [sym_continue_expression] = sym_continue_expression, + [sym_label] = sym_label, + [sym_if_expression] = sym_if_expression, + [sym_match_expression] = sym_match_expression, + [sym_match_arm] = sym_match_arm, + [sym_loop_expression] = sym_loop_expression, + [sym_for_expression] = sym_for_expression, + [sym_block] = sym_block, + [sym_pattern] = sym_pattern, + [sym_binding_pattern] = sym_binding_pattern, + [sym_pattern_atom] = sym_pattern_atom, + [sym_unit_pattern] = sym_unit_pattern, + [sym_tuple_pattern] = sym_tuple_pattern, + [sym_product_pattern] = sym_product_pattern, + [sym_product_pattern_field] = sym_product_pattern_field, + [sym_sum_pattern] = sym_sum_pattern, + [sym_bits_pattern] = sym_bits_pattern, + [sym_array_pattern] = sym_array_pattern, + [sym_array_pattern_entry] = sym_array_pattern_entry, + [sym_pipeline_expression] = sym_pipeline_expression, + [sym_pipeline_stage] = sym_pipeline_stage, + [sym_inline_pipeline_stage] = sym_inline_pipeline_stage, + [sym_continuation_pipeline_stage] = sym_continuation_pipeline_stage, + [sym_direct_pipeline_stage] = sym_direct_pipeline_stage, + [sym_aggregate_pipeline_stage] = sym_aggregate_pipeline_stage, + [sym_aggregate_tail] = sym_aggregate_tail, + [sym_array_tail_entry] = sym_array_tail_entry, + [sym_pipeline_callable] = sym_pipeline_callable, + [sym_aggregate_pipeline_callable] = sym_aggregate_pipeline_callable, + [sym__ordinary_expression] = sym__ordinary_expression, + [sym__non_assignment_expression] = sym__non_assignment_expression, + [sym__binary_expression] = sym__binary_expression, + [sym__prefix_expression] = sym__prefix_expression, + [sym_assignment_expression] = sym_assignment_expression, + [sym_range_expression] = sym_range_expression, + [sym_binary_expression] = sym_binary_expression, + [sym_unary_expression] = sym_unary_expression, + [sym_postfix_expression] = sym_postfix_expression, + [sym_primary_expression] = sym_primary_expression, + [sym_tuple_value] = sym_tuple_value, + [sym_collection_literal] = sym_collection_literal, + [sym_collection_entry] = sym_collection_entry, + [sym_product_constructor] = sym_product_constructor, + [sym_product_entry] = sym_product_entry, + [sym_sum_constructor] = sym_sum_constructor, + [sym_bits_constructor] = sym_bits_constructor, + [sym_literal] = sym_literal, + [sym_boolean_literal] = sym_boolean_literal, + [sym_unit_literal] = sym_unit_literal, + [sym_signed_numeric_literal] = sym_signed_numeric_literal, + [sym_signed_integer_literal] = sym_signed_integer_literal, + [sym_type_name] = sym_type_name, + [sym_qualified_name] = sym_qualified_name, + [aux_sym__newlines] = aux_sym__newlines, + [sym__scope_separator] = sym__scope_separator, + [aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1, + [aux_sym_source_file_repeat2] = aux_sym_source_file_repeat2, + [aux_sym_use_declaration_repeat1] = aux_sym_use_declaration_repeat1, + [aux_sym_pub_declaration_repeat1] = aux_sym_pub_declaration_repeat1, + [aux_sym_optional_type_repeat1] = aux_sym_optional_type_repeat1, + [aux_sym_tuple_type_repeat1] = aux_sym_tuple_type_repeat1, + [aux_sym_product_type_repeat1] = aux_sym_product_type_repeat1, + [aux_sym_sum_type_repeat1] = aux_sym_sum_type_repeat1, + [aux_sym_bits_type_repeat1] = aux_sym_bits_type_repeat1, + [aux_sym_typed_tuple_pattern_repeat1] = aux_sym_typed_tuple_pattern_repeat1, + [aux_sym_match_expression_repeat1] = aux_sym_match_expression_repeat1, + [aux_sym_block_repeat1] = aux_sym_block_repeat1, + [aux_sym_pattern_repeat1] = aux_sym_pattern_repeat1, + [aux_sym_tuple_pattern_repeat1] = aux_sym_tuple_pattern_repeat1, + [aux_sym_product_pattern_repeat1] = aux_sym_product_pattern_repeat1, + [aux_sym_bits_pattern_repeat1] = aux_sym_bits_pattern_repeat1, + [aux_sym_array_pattern_repeat1] = aux_sym_array_pattern_repeat1, + [aux_sym_pipeline_expression_repeat1] = aux_sym_pipeline_expression_repeat1, + [aux_sym_continuation_pipeline_stage_repeat1] = aux_sym_continuation_pipeline_stage_repeat1, + [aux_sym_aggregate_tail_repeat1] = aux_sym_aggregate_tail_repeat1, + [aux_sym_aggregate_tail_repeat2] = aux_sym_aggregate_tail_repeat2, + [aux_sym_pipeline_callable_repeat1] = aux_sym_pipeline_callable_repeat1, + [aux_sym_aggregate_pipeline_callable_repeat1] = aux_sym_aggregate_pipeline_callable_repeat1, + [aux_sym_postfix_expression_repeat1] = aux_sym_postfix_expression_repeat1, + [aux_sym_collection_literal_repeat1] = aux_sym_collection_literal_repeat1, + [aux_sym_product_constructor_repeat1] = aux_sym_product_constructor_repeat1, +}; + +static const TSSymbolMetadata ts_symbol_metadata[] = { + [ts_builtin_sym_end] = { + .visible = false, + .named = true, + }, + [sym_identifier] = { + .visible = true, + .named = true, + }, + [anon_sym_use] = { + .visible = true, + .named = false, + }, + [anon_sym_as] = { + .visible = true, + .named = false, + }, + [anon_sym_DOT] = { + .visible = true, + .named = false, + }, + [anon_sym_LBRACE] = { + .visible = true, + .named = false, + }, + [anon_sym_COMMA] = { + .visible = true, + .named = false, + }, + [anon_sym_RBRACE] = { + .visible = true, + .named = false, + }, + [anon_sym_DOT_DOT] = { + .visible = true, + .named = false, + }, + [anon_sym_pub] = { + .visible = true, + .named = false, + }, + [anon_sym_COLON_COLON] = { + .visible = true, + .named = false, + }, + [anon_sym_COLON_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_COLON] = { + .visible = true, + .named = false, + }, + [anon_sym_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_distinct] = { + .visible = true, + .named = false, + }, + [anon_sym_DASH_GT] = { + .visible = true, + .named = false, + }, + [anon_sym_EQ_GT] = { + .visible = true, + .named = false, + }, + [anon_sym_BANG] = { + .visible = true, + .named = false, + }, + [anon_sym_QMARK] = { + .visible = true, + .named = false, + }, + [anon_sym_LBRACK] = { + .visible = true, + .named = false, + }, + [anon_sym_RBRACK] = { + .visible = true, + .named = false, + }, + [anon_sym_LPAREN] = { + .visible = true, + .named = false, + }, + [anon_sym_RPAREN] = { + .visible = true, + .named = false, + }, + [anon_sym_LT] = { + .visible = true, + .named = false, + }, + [anon_sym_GT] = { + .visible = true, + .named = false, + }, + [anon_sym_AMP] = { + .visible = true, + .named = false, + }, + [anon_sym_PIPE] = { + .visible = true, + .named = false, + }, + [anon_sym_bits] = { + .visible = true, + .named = false, + }, + [anon_sym_f32] = { + .visible = true, + .named = false, + }, + [anon_sym_f64] = { + .visible = true, + .named = false, + }, + [anon_sym_bit] = { + .visible = true, + .named = false, + }, + [anon_sym_chr] = { + .visible = true, + .named = false, + }, + [anon_sym_str] = { + .visible = true, + .named = false, + }, + [anon_sym_nvr] = { + .visible = true, + .named = false, + }, + [anon_sym_i8] = { + .visible = true, + .named = false, + }, + [anon_sym_i16] = { + .visible = true, + .named = false, + }, + [anon_sym_i32] = { + .visible = true, + .named = false, + }, + [anon_sym_i64] = { + .visible = true, + .named = false, + }, + [anon_sym_u8] = { + .visible = true, + .named = false, + }, + [anon_sym_u16] = { + .visible = true, + .named = false, + }, + [anon_sym_u32] = { + .visible = true, + .named = false, + }, + [anon_sym_u64] = { + .visible = true, + .named = false, + }, + [anon_sym_AT] = { + .visible = true, + .named = false, + }, + [anon_sym_return] = { + .visible = true, + .named = false, + }, + [anon_sym_break] = { + .visible = true, + .named = false, + }, + [anon_sym_continue] = { + .visible = true, + .named = false, + }, + [anon_sym_BQUOTE] = { + .visible = true, + .named = false, + }, + [anon_sym_if] = { + .visible = true, + .named = false, + }, + [anon_sym_else] = { + .visible = true, + .named = false, + }, + [anon_sym_match] = { + .visible = true, + .named = false, + }, + [anon_sym_loop] = { + .visible = true, + .named = false, + }, + [anon_sym_for] = { + .visible = true, + .named = false, + }, + [anon_sym_in] = { + .visible = true, + .named = false, + }, + [anon_sym_or] = { + .visible = true, + .named = false, + }, + [anon_sym__] = { + .visible = true, + .named = false, + }, + [anon_sym_DOT_DOT_DOT] = { + .visible = true, + .named = false, + }, + [anon_sym_PIPE_GT] = { + .visible = true, + .named = false, + }, + [anon_sym_PLUS_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_DASH_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_STAR_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_SLASH_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_PERCENT_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_AMP_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_CARET_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_PIPE_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_DOT_DOT_LT] = { + .visible = true, + .named = false, + }, + [anon_sym_DOT_DOT_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_and] = { + .visible = true, + .named = false, + }, + [anon_sym_LT_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_GT_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_EQ_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_CARET] = { + .visible = true, + .named = false, + }, + [aux_sym_binary_expression_token1] = { + .visible = false, + .named = false, + }, + [anon_sym_PLUS] = { + .visible = true, + .named = false, + }, + [anon_sym_DASH] = { + .visible = true, + .named = false, + }, + [aux_sym_binary_expression_token2] = { + .visible = false, + .named = false, + }, + [anon_sym_STAR] = { + .visible = true, + .named = false, + }, + [anon_sym_SLASH] = { + .visible = true, + .named = false, + }, + [anon_sym_PERCENT] = { + .visible = true, + .named = false, + }, + [aux_sym_binary_expression_token3] = { + .visible = false, + .named = false, + }, + [anon_sym_not] = { + .visible = true, + .named = false, + }, + [anon_sym_TILDE] = { + .visible = true, + .named = false, + }, + [anon_sym_true] = { + .visible = true, + .named = false, + }, + [anon_sym_false] = { + .visible = true, + .named = false, + }, + [sym_nil_literal] = { + .visible = true, + .named = true, + }, + [sym_default_expression] = { + .visible = true, + .named = true, + }, + [sym_integer_literal] = { + .visible = true, + .named = true, + }, + [sym_float_literal] = { + .visible = true, + .named = true, + }, + [sym_string_literal] = { + .visible = true, + .named = true, + }, + [sym_character_literal] = { + .visible = true, + .named = true, + }, + [sym_comment] = { + .visible = true, + .named = true, + }, + [sym__direct_pipeline_continuation] = { + .visible = false, + .named = true, + }, + [sym__aggregate_pipeline_continuation] = { + .visible = false, + .named = true, + }, + [sym__comparison_continuation] = { + .visible = false, + .named = true, + }, + [sym__newline] = { + .visible = false, + .named = true, + }, + [anon_sym_SEMI] = { + .visible = true, + .named = false, + }, + [sym__and_continuation] = { + .visible = false, + .named = true, + }, + [sym__or_continuation] = { + .visible = false, + .named = true, + }, + [sym__trailing_dot_float] = { + .visible = true, + .named = true, + }, + [sym_source_file] = { + .visible = true, + .named = true, + }, + [sym_module_item] = { + .visible = false, + .named = true, + .supertype = true, + }, + [sym_use_declaration] = { + .visible = true, + .named = true, + }, + [sym_import_member] = { + .visible = true, + .named = true, + }, + [sym_module_path] = { + .visible = true, + .named = true, + }, + [sym_pub_declaration] = { + .visible = true, + .named = true, + }, + [sym_expression] = { + .visible = false, + .named = true, + .supertype = true, + }, + [sym_value_expression] = { + .visible = false, + .named = true, + .supertype = true, + }, + [sym_declaration] = { + .visible = true, + .named = true, + }, + [sym_type_definition] = { + .visible = true, + .named = true, + }, + [sym_type_expression] = { + .visible = false, + .named = true, + .supertype = true, + }, + [sym_function_type] = { + .visible = true, + .named = true, + }, + [sym__result_type] = { + .visible = false, + .named = true, + }, + [sym_result_type] = { + .visible = true, + .named = true, + }, + [sym_optional_type] = { + .visible = true, + .named = true, + }, + [sym__container_type] = { + .visible = false, + .named = true, + }, + [sym_array_type] = { + .visible = true, + .named = true, + }, + [sym_map_type] = { + .visible = true, + .named = true, + }, + [sym__primary_type] = { + .visible = false, + .named = true, + }, + [sym_grouped_type] = { + .visible = true, + .named = true, + }, + [sym_unit_type] = { + .visible = true, + .named = true, + }, + [sym_tuple_type] = { + .visible = true, + .named = true, + }, + [sym_type_application] = { + .visible = true, + .named = true, + }, + [sym_product_type] = { + .visible = true, + .named = true, + }, + [sym_product_field] = { + .visible = true, + .named = true, + }, + [sym_sum_type] = { + .visible = true, + .named = true, + }, + [sym_sum_variant] = { + .visible = true, + .named = true, + }, + [sym_bits_type] = { + .visible = true, + .named = true, + }, + [sym_bits_member] = { + .visible = true, + .named = true, + }, + [sym_primitive_type] = { + .visible = true, + .named = true, + }, + [sym_integer_type] = { + .visible = true, + .named = true, + }, + [sym_unsigned_integer_type] = { + .visible = true, + .named = true, + }, + [sym_function_literal] = { + .visible = true, + .named = true, + }, + [sym_typed_tuple_pattern] = { + .visible = true, + .named = true, + }, + [sym_typed_parameter] = { + .visible = true, + .named = true, + }, + [sym_typed_tuple_component] = { + .visible = true, + .named = true, + }, + [sym_return_expression] = { + .visible = true, + .named = true, + }, + [sym_break_expression] = { + .visible = true, + .named = true, + }, + [sym_continue_expression] = { + .visible = true, + .named = true, + }, + [sym_label] = { + .visible = true, + .named = true, + }, + [sym_if_expression] = { + .visible = true, + .named = true, + }, + [sym_match_expression] = { + .visible = true, + .named = true, + }, + [sym_match_arm] = { + .visible = true, + .named = true, + }, + [sym_loop_expression] = { + .visible = true, + .named = true, + }, + [sym_for_expression] = { + .visible = true, + .named = true, + }, + [sym_block] = { + .visible = true, + .named = true, + }, + [sym_pattern] = { + .visible = true, + .named = true, + }, + [sym_binding_pattern] = { + .visible = false, + .named = true, + .supertype = true, + }, + [sym_pattern_atom] = { + .visible = false, + .named = true, + .supertype = true, + }, + [sym_unit_pattern] = { + .visible = true, + .named = true, + }, + [sym_tuple_pattern] = { + .visible = true, + .named = true, + }, + [sym_product_pattern] = { + .visible = true, + .named = true, + }, + [sym_product_pattern_field] = { + .visible = true, + .named = true, + }, + [sym_sum_pattern] = { + .visible = true, + .named = true, + }, + [sym_bits_pattern] = { + .visible = true, + .named = true, + }, + [sym_array_pattern] = { + .visible = true, + .named = true, + }, + [sym_array_pattern_entry] = { + .visible = true, + .named = true, + }, + [sym_pipeline_expression] = { + .visible = true, + .named = true, + }, + [sym_pipeline_stage] = { + .visible = false, + .named = true, + .supertype = true, + }, + [sym_inline_pipeline_stage] = { + .visible = false, + .named = true, + .supertype = true, + }, + [sym_continuation_pipeline_stage] = { + .visible = true, + .named = true, + }, + [sym_direct_pipeline_stage] = { + .visible = true, + .named = true, + }, + [sym_aggregate_pipeline_stage] = { + .visible = true, + .named = true, + }, + [sym_aggregate_tail] = { + .visible = true, + .named = true, + }, + [sym_array_tail_entry] = { + .visible = true, + .named = true, + }, + [sym_pipeline_callable] = { + .visible = true, + .named = true, + }, + [sym_aggregate_pipeline_callable] = { + .visible = true, + .named = true, + }, + [sym__ordinary_expression] = { + .visible = false, + .named = true, + }, + [sym__non_assignment_expression] = { + .visible = false, + .named = true, + }, + [sym__binary_expression] = { + .visible = false, + .named = true, + }, + [sym__prefix_expression] = { + .visible = false, + .named = true, + }, + [sym_assignment_expression] = { + .visible = true, + .named = true, + }, + [sym_range_expression] = { + .visible = true, + .named = true, + }, + [sym_binary_expression] = { + .visible = true, + .named = true, + }, + [sym_unary_expression] = { + .visible = true, + .named = true, + }, + [sym_postfix_expression] = { + .visible = true, + .named = true, + }, + [sym_primary_expression] = { + .visible = false, + .named = true, + .supertype = true, + }, + [sym_tuple_value] = { + .visible = true, + .named = true, + }, + [sym_collection_literal] = { + .visible = true, + .named = true, + }, + [sym_collection_entry] = { + .visible = true, + .named = true, + }, + [sym_product_constructor] = { + .visible = true, + .named = true, + }, + [sym_product_entry] = { + .visible = true, + .named = true, + }, + [sym_sum_constructor] = { + .visible = true, + .named = true, + }, + [sym_bits_constructor] = { + .visible = true, + .named = true, + }, + [sym_literal] = { + .visible = false, + .named = true, + .supertype = true, + }, + [sym_boolean_literal] = { + .visible = true, + .named = true, + }, + [sym_unit_literal] = { + .visible = true, + .named = true, + }, + [sym_signed_numeric_literal] = { + .visible = true, + .named = true, + }, + [sym_signed_integer_literal] = { + .visible = true, + .named = true, + }, + [sym_type_name] = { + .visible = false, + .named = true, + .supertype = true, + }, + [sym_qualified_name] = { + .visible = true, + .named = true, + }, + [aux_sym__newlines] = { + .visible = false, + .named = false, + }, + [sym__scope_separator] = { + .visible = false, + .named = true, + }, + [aux_sym_source_file_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_source_file_repeat2] = { + .visible = false, + .named = false, + }, + [aux_sym_use_declaration_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_pub_declaration_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_optional_type_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_tuple_type_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_product_type_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_sum_type_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_bits_type_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_typed_tuple_pattern_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_match_expression_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_block_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_pattern_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_tuple_pattern_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_product_pattern_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_bits_pattern_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_array_pattern_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_pipeline_expression_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_continuation_pipeline_stage_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_aggregate_tail_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_aggregate_tail_repeat2] = { + .visible = false, + .named = false, + }, + [aux_sym_pipeline_callable_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_aggregate_pipeline_callable_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_postfix_expression_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_collection_literal_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_product_constructor_repeat1] = { + .visible = false, + .named = false, + }, +}; + +enum ts_field_identifiers { + field_alias = 1, + field_alternative = 2, + field_arguments = 3, + field_body = 4, + field_callable = 5, + field_condition = 6, + field_consequence = 7, + field_constructor = 8, + field_default = 9, + field_discriminant = 10, + field_effect = 11, + field_element = 12, + field_error = 13, + field_guard = 14, + field_index = 15, + field_input = 16, + field_key = 17, + field_left = 18, + field_member = 19, + field_name = 20, + field_operand = 21, + field_operator = 22, + field_parameter = 23, + field_pattern = 24, + field_payload = 25, + field_result = 26, + field_right = 27, + field_type = 28, + field_value = 29, + field_variant = 30, +}; + +static const char * const ts_field_names[] = { + [0] = NULL, + [field_alias] = "alias", + [field_alternative] = "alternative", + [field_arguments] = "arguments", + [field_body] = "body", + [field_callable] = "callable", + [field_condition] = "condition", + [field_consequence] = "consequence", + [field_constructor] = "constructor", + [field_default] = "default", + [field_discriminant] = "discriminant", + [field_effect] = "effect", + [field_element] = "element", + [field_error] = "error", + [field_guard] = "guard", + [field_index] = "index", + [field_input] = "input", + [field_key] = "key", + [field_left] = "left", + [field_member] = "member", + [field_name] = "name", + [field_operand] = "operand", + [field_operator] = "operator", + [field_parameter] = "parameter", + [field_pattern] = "pattern", + [field_payload] = "payload", + [field_result] = "result", + [field_right] = "right", + [field_type] = "type", + [field_value] = "value", + [field_variant] = "variant", +}; + +static const TSMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { + [1] = {.index = 0, .length = 2}, + [2] = {.index = 2, .length = 1}, + [3] = {.index = 3, .length = 1}, + [4] = {.index = 4, .length = 1}, + [5] = {.index = 5, .length = 4}, + [6] = {.index = 9, .length = 2}, + [7] = {.index = 11, .length = 2}, + [8] = {.index = 13, .length = 2}, + [9] = {.index = 15, .length = 2}, + [10] = {.index = 17, .length = 1}, + [11] = {.index = 18, .length = 2}, + [12] = {.index = 20, .length = 3}, + [13] = {.index = 23, .length = 2}, + [14] = {.index = 25, .length = 6}, + [15] = {.index = 31, .length = 1}, + [16] = {.index = 32, .length = 1}, + [17] = {.index = 33, .length = 2}, + [18] = {.index = 35, .length = 1}, + [19] = {.index = 36, .length = 1}, + [20] = {.index = 37, .length = 2}, + [21] = {.index = 39, .length = 4}, + [22] = {.index = 43, .length = 3}, + [23] = {.index = 46, .length = 1}, + [24] = {.index = 47, .length = 1}, + [25] = {.index = 48, .length = 4}, + [26] = {.index = 52, .length = 3}, + [27] = {.index = 55, .length = 3}, + [28] = {.index = 58, .length = 1}, + [29] = {.index = 59, .length = 3}, + [30] = {.index = 62, .length = 2}, + [31] = {.index = 64, .length = 1}, + [32] = {.index = 65, .length = 3}, + [33] = {.index = 68, .length = 2}, + [34] = {.index = 70, .length = 3}, + [35] = {.index = 73, .length = 2}, + [36] = {.index = 75, .length = 2}, + [37] = {.index = 77, .length = 2}, + [38] = {.index = 79, .length = 2}, + [39] = {.index = 81, .length = 3}, + [40] = {.index = 84, .length = 3}, +}; + +static const TSFieldMapEntry ts_field_map_entries[] = { + [0] = + {field_operand, 1}, + {field_operator, 0}, + [2] = + {field_body, 1}, + [3] = + {field_input, 0}, + [4] = + {field_operator, 0}, + [5] = + {field_index, 1, .inherited = true}, + {field_member, 1, .inherited = true}, + {field_operator, 1, .inherited = true}, + {field_value, 0}, + [9] = + {field_body, 2}, + {field_parameter, 1}, + [11] = + {field_condition, 1}, + {field_consequence, 2}, + [13] = + {field_name, 0}, + {field_value, 2}, + [15] = + {field_name, 0}, + {field_type, 2}, + [17] = + {field_callable, 1}, + [18] = + {field_pattern, 0}, + {field_value, 2}, + [20] = + {field_left, 0}, + {field_operator, 1}, + {field_right, 2}, + [23] = + {field_member, 1}, + {field_operator, 0}, + [25] = + {field_index, 0, .inherited = true}, + {field_index, 1, .inherited = true}, + {field_member, 0, .inherited = true}, + {field_member, 1, .inherited = true}, + {field_operator, 0, .inherited = true}, + {field_operator, 1, .inherited = true}, + [31] = + {field_alias, 3}, + [32] = + {field_variant, 2}, + [33] = + {field_pattern, 0}, + {field_type, 2}, + [35] = + {field_value, 1}, + [36] = + {field_value, 0}, + [37] = + {field_arguments, 2}, + {field_callable, 1}, + [39] = + {field_left, 0}, + {field_operator, 1}, + {field_operator, 2}, + {field_right, 3}, + [43] = + {field_index, 1}, + {field_operator, 0}, + {field_operator, 2}, + [46] = + {field_name, 0}, + [47] = + {field_variant, 3}, + [48] = + {field_body, 4}, + {field_effect, 2}, + {field_parameter, 1}, + {field_result, 3}, + [52] = + {field_alternative, 4}, + {field_condition, 1}, + {field_consequence, 2}, + [55] = + {field_body, 4}, + {field_pattern, 1}, + {field_value, 3}, + [58] = + {field_element, 2}, + [59] = + {field_effect, 1}, + {field_input, 0}, + {field_result, 2}, + [62] = + {field_error, 2}, + {field_value, 0}, + [64] = + {field_constructor, 0}, + [65] = + {field_name, 0}, + {field_type, 2}, + {field_value, 4}, + [68] = + {field_body, 2}, + {field_pattern, 0}, + [70] = + {field_body, 5}, + {field_pattern, 1}, + {field_value, 3}, + [73] = + {field_key, 1}, + {field_value, 3}, + [75] = + {field_alias, 2}, + {field_name, 0}, + [77] = + {field_discriminant, 2}, + {field_name, 0}, + [79] = + {field_name, 0}, + {field_payload, 2}, + [81] = + {field_body, 4}, + {field_guard, 2}, + {field_pattern, 0}, + [84] = + {field_default, 4}, + {field_name, 0}, + {field_type, 2}, +}; + +static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { + [0] = {0}, +}; + +static const uint16_t ts_non_terminal_alias_map[] = { + 0, +}; + +static const TSStateId ts_primary_state_ids[STATE_COUNT] = { + [0] = 0, + [1] = 1, + [2] = 2, + [3] = 3, + [4] = 3, + [5] = 5, + [6] = 5, + [7] = 3, + [8] = 8, + [9] = 9, + [10] = 9, + [11] = 9, + [12] = 12, + [13] = 12, + [14] = 14, + [15] = 15, + [16] = 14, + [17] = 17, + [18] = 18, + [19] = 18, + [20] = 18, + [21] = 18, + [22] = 18, + [23] = 23, + [24] = 24, + [25] = 23, + [26] = 26, + [27] = 27, + [28] = 23, + [29] = 29, + [30] = 30, + [31] = 31, + [32] = 32, + [33] = 33, + [34] = 34, + [35] = 35, + [36] = 33, + [37] = 37, + [38] = 38, + [39] = 39, + [40] = 40, + [41] = 41, + [42] = 42, + [43] = 33, + [44] = 44, + [45] = 45, + [46] = 46, + [47] = 45, + [48] = 46, + [49] = 49, + [50] = 50, + [51] = 49, + [52] = 41, + [53] = 42, + [54] = 54, + [55] = 39, + [56] = 40, + [57] = 57, + [58] = 37, + [59] = 59, + [60] = 60, + [61] = 61, + [62] = 62, + [63] = 63, + [64] = 35, + [65] = 65, + [66] = 66, + [67] = 67, + [68] = 68, + [69] = 69, + [70] = 63, + [71] = 69, + [72] = 72, + [73] = 73, + [74] = 74, + [75] = 63, + [76] = 69, + [77] = 77, + [78] = 34, + [79] = 79, + [80] = 80, + [81] = 81, + [82] = 34, + [83] = 83, + [84] = 84, + [85] = 85, + [86] = 86, + [87] = 87, + [88] = 83, + [89] = 89, + [90] = 90, + [91] = 91, + [92] = 92, + [93] = 81, + [94] = 87, + [95] = 95, + [96] = 91, + [97] = 92, + [98] = 98, + [99] = 79, + [100] = 95, + [101] = 101, + [102] = 90, + [103] = 103, + [104] = 101, + [105] = 105, + [106] = 98, + [107] = 35, + [108] = 108, + [109] = 85, + [110] = 110, + [111] = 111, + [112] = 33, + [113] = 113, + [114] = 114, + [115] = 115, + [116] = 116, + [117] = 117, + [118] = 118, + [119] = 110, + [120] = 113, + [121] = 121, + [122] = 122, + [123] = 114, + [124] = 118, + [125] = 122, + [126] = 116, + [127] = 121, + [128] = 128, + [129] = 129, + [130] = 33, + [131] = 131, + [132] = 35, + [133] = 34, + [134] = 134, + [135] = 35, + [136] = 136, + [137] = 137, + [138] = 138, + [139] = 139, + [140] = 140, + [141] = 134, + [142] = 142, + [143] = 143, + [144] = 144, + [145] = 145, + [146] = 146, + [147] = 147, + [148] = 148, + [149] = 147, + [150] = 145, + [151] = 34, + [152] = 152, + [153] = 153, + [154] = 154, + [155] = 155, + [156] = 154, + [157] = 153, + [158] = 155, + [159] = 155, + [160] = 154, + [161] = 153, + [162] = 153, + [163] = 154, + [164] = 154, + [165] = 155, + [166] = 155, + [167] = 153, + [168] = 168, + [169] = 168, + [170] = 168, + [171] = 171, + [172] = 172, + [173] = 168, + [174] = 168, + [175] = 175, + [176] = 176, + [177] = 177, + [178] = 178, + [179] = 179, + [180] = 180, + [181] = 181, + [182] = 182, + [183] = 183, + [184] = 184, + [185] = 185, + [186] = 186, + [187] = 187, + [188] = 188, + [189] = 189, + [190] = 190, + [191] = 191, + [192] = 192, + [193] = 193, + [194] = 194, + [195] = 195, + [196] = 196, + [197] = 197, + [198] = 198, + [199] = 199, + [200] = 200, + [201] = 201, + [202] = 202, + [203] = 203, + [204] = 204, + [205] = 205, + [206] = 206, + [207] = 207, + [208] = 208, + [209] = 209, + [210] = 210, + [211] = 211, + [212] = 212, + [213] = 213, + [214] = 214, + [215] = 215, + [216] = 216, + [217] = 217, + [218] = 218, + [219] = 219, + [220] = 220, + [221] = 221, + [222] = 222, + [223] = 223, + [224] = 224, + [225] = 225, + [226] = 226, + [227] = 227, + [228] = 228, + [229] = 229, + [230] = 230, + [231] = 231, + [232] = 232, + [233] = 233, + [234] = 234, + [235] = 235, + [236] = 236, + [237] = 237, + [238] = 238, + [239] = 238, + [240] = 237, + [241] = 238, + [242] = 234, + [243] = 243, + [244] = 244, + [245] = 245, + [246] = 171, + [247] = 172, + [248] = 234, + [249] = 243, + [250] = 182, + [251] = 234, + [252] = 252, + [253] = 253, + [254] = 254, + [255] = 255, + [256] = 256, + [257] = 257, + [258] = 258, + [259] = 259, + [260] = 260, + [261] = 261, + [262] = 262, + [263] = 263, + [264] = 264, + [265] = 189, + [266] = 266, + [267] = 267, + [268] = 268, + [269] = 189, + [270] = 189, + [271] = 271, + [272] = 272, + [273] = 273, + [274] = 274, + [275] = 275, + [276] = 276, + [277] = 277, + [278] = 234, + [279] = 279, + [280] = 280, + [281] = 281, + [282] = 282, + [283] = 283, + [284] = 284, + [285] = 285, + [286] = 286, + [287] = 287, + [288] = 288, + [289] = 289, + [290] = 290, + [291] = 291, + [292] = 292, + [293] = 293, + [294] = 294, + [295] = 267, + [296] = 296, + [297] = 297, + [298] = 298, + [299] = 299, + [300] = 300, + [301] = 301, + [302] = 302, + [303] = 303, + [304] = 304, + [305] = 305, + [306] = 306, + [307] = 307, + [308] = 308, + [309] = 309, + [310] = 310, + [311] = 311, + [312] = 312, + [313] = 313, + [314] = 314, + [315] = 315, + [316] = 316, + [317] = 317, + [318] = 318, + [319] = 319, + [320] = 320, + [321] = 321, + [322] = 322, + [323] = 323, + [324] = 324, + [325] = 325, + [326] = 326, + [327] = 327, + [328] = 328, + [329] = 329, + [330] = 330, + [331] = 331, + [332] = 332, + [333] = 333, + [334] = 334, + [335] = 335, + [336] = 336, + [337] = 337, + [338] = 338, + [339] = 339, + [340] = 340, + [341] = 340, + [342] = 342, + [343] = 343, + [344] = 344, + [345] = 345, + [346] = 344, + [347] = 347, + [348] = 344, + [349] = 345, + [350] = 350, + [351] = 351, + [352] = 344, + [353] = 344, + [354] = 354, + [355] = 355, + [356] = 356, + [357] = 357, + [358] = 358, + [359] = 359, + [360] = 360, + [361] = 361, + [362] = 362, + [363] = 363, + [364] = 364, + [365] = 365, + [366] = 235, + [367] = 364, + [368] = 368, + [369] = 369, + [370] = 370, + [371] = 371, + [372] = 372, + [373] = 373, + [374] = 374, + [375] = 375, + [376] = 376, + [377] = 362, + [378] = 378, + [379] = 379, + [380] = 380, + [381] = 381, + [382] = 235, + [383] = 380, + [384] = 381, + [385] = 385, + [386] = 386, + [387] = 387, + [388] = 388, + [389] = 389, + [390] = 390, + [391] = 391, + [392] = 392, + [393] = 393, + [394] = 394, + [395] = 395, + [396] = 396, + [397] = 397, + [398] = 398, + [399] = 399, + [400] = 400, + [401] = 364, + [402] = 402, + [403] = 403, + [404] = 404, + [405] = 405, + [406] = 406, + [407] = 407, + [408] = 408, + [409] = 409, + [410] = 363, + [411] = 411, + [412] = 412, + [413] = 413, + [414] = 414, + [415] = 180, + [416] = 178, + [417] = 176, + [418] = 184, + [419] = 419, + [420] = 181, + [421] = 421, + [422] = 179, + [423] = 219, + [424] = 217, + [425] = 218, + [426] = 220, + [427] = 221, + [428] = 222, + [429] = 223, + [430] = 224, + [431] = 225, + [432] = 206, + [433] = 226, + [434] = 215, + [435] = 435, + [436] = 229, + [437] = 188, + [438] = 205, + [439] = 186, + [440] = 187, + [441] = 441, + [442] = 442, + [443] = 230, + [444] = 444, + [445] = 191, + [446] = 192, + [447] = 210, + [448] = 194, + [449] = 195, + [450] = 196, + [451] = 197, + [452] = 211, + [453] = 453, + [454] = 200, + [455] = 185, + [456] = 201, + [457] = 202, + [458] = 203, + [459] = 204, + [460] = 207, + [461] = 461, + [462] = 208, + [463] = 212, + [464] = 213, + [465] = 214, + [466] = 216, + [467] = 209, + [468] = 193, + [469] = 469, + [470] = 470, + [471] = 471, + [472] = 232, + [473] = 227, + [474] = 474, + [475] = 475, + [476] = 476, + [477] = 477, + [478] = 478, + [479] = 479, + [480] = 480, + [481] = 481, + [482] = 482, + [483] = 483, + [484] = 484, + [485] = 485, + [486] = 486, + [487] = 487, + [488] = 470, + [489] = 489, + [490] = 490, + [491] = 491, + [492] = 492, + [493] = 493, + [494] = 494, + [495] = 495, + [496] = 496, + [497] = 497, + [498] = 498, + [499] = 499, + [500] = 500, + [501] = 501, + [502] = 502, + [503] = 503, + [504] = 504, + [505] = 505, + [506] = 506, + [507] = 507, + [508] = 508, + [509] = 509, + [510] = 510, + [511] = 511, + [512] = 512, + [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] = 470, + [531] = 171, + [532] = 172, + [533] = 533, + [534] = 534, + [535] = 535, + [536] = 536, + [537] = 537, + [538] = 538, + [539] = 539, + [540] = 470, + [541] = 541, + [542] = 542, + [543] = 543, + [544] = 544, + [545] = 545, + [546] = 470, + [547] = 547, + [548] = 548, + [549] = 549, + [550] = 550, + [551] = 551, + [552] = 552, + [553] = 553, + [554] = 554, + [555] = 555, + [556] = 556, + [557] = 557, + [558] = 558, + [559] = 559, + [560] = 560, + [561] = 561, + [562] = 562, + [563] = 563, + [564] = 564, + [565] = 565, + [566] = 566, + [567] = 567, + [568] = 568, + [569] = 569, + [570] = 570, + [571] = 571, + [572] = 572, + [573] = 573, + [574] = 574, + [575] = 575, + [576] = 576, + [577] = 577, + [578] = 362, + [579] = 579, + [580] = 580, + [581] = 227, + [582] = 582, + [583] = 583, + [584] = 475, + [585] = 585, + [586] = 586, + [587] = 587, + [588] = 588, + [589] = 589, + [590] = 590, + [591] = 591, + [592] = 592, + [593] = 232, + [594] = 594, + [595] = 595, + [596] = 596, + [597] = 597, + [598] = 598, + [599] = 599, + [600] = 600, + [601] = 601, + [602] = 597, + [603] = 603, + [604] = 604, + [605] = 605, + [606] = 606, + [607] = 607, + [608] = 608, + [609] = 609, + [610] = 610, + [611] = 611, + [612] = 612, + [613] = 613, + [614] = 614, + [615] = 615, + [616] = 616, + [617] = 617, + [618] = 618, + [619] = 619, + [620] = 620, + [621] = 621, + [622] = 622, + [623] = 623, + [624] = 624, + [625] = 625, + [626] = 626, + [627] = 627, + [628] = 628, + [629] = 629, + [630] = 630, + [631] = 631, + [632] = 632, + [633] = 633, + [634] = 634, + [635] = 635, + [636] = 636, + [637] = 637, + [638] = 638, + [639] = 639, + [640] = 640, + [641] = 536, + [642] = 642, + [643] = 643, + [644] = 644, + [645] = 645, + [646] = 646, + [647] = 647, + [648] = 648, + [649] = 638, + [650] = 650, + [651] = 618, + [652] = 620, + [653] = 642, + [654] = 654, + [655] = 608, + [656] = 656, + [657] = 635, + [658] = 636, + [659] = 639, + [660] = 660, + [661] = 661, + [662] = 662, + [663] = 603, + [664] = 611, + [665] = 661, + [666] = 662, + [667] = 667, + [668] = 654, + [669] = 669, + [670] = 660, + [671] = 671, + [672] = 672, + [673] = 673, + [674] = 674, + [675] = 675, + [676] = 676, + [677] = 677, + [678] = 678, + [679] = 679, + [680] = 680, + [681] = 681, + [682] = 682, + [683] = 683, + [684] = 684, + [685] = 685, + [686] = 686, + [687] = 687, + [688] = 688, + [689] = 689, + [690] = 690, + [691] = 691, + [692] = 435, + [693] = 693, + [694] = 694, + [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] = 718, + [720] = 720, + [721] = 721, + [722] = 677, + [723] = 678, + [724] = 705, + [725] = 725, + [726] = 726, + [727] = 727, + [728] = 728, + [729] = 708, + [730] = 725, + [731] = 731, + [732] = 732, + [733] = 733, + [734] = 734, + [735] = 735, + [736] = 736, + [737] = 737, + [738] = 738, + [739] = 674, + [740] = 676, + [741] = 741, + [742] = 742, + [743] = 687, + [744] = 688, + [745] = 689, + [746] = 746, + [747] = 747, + [748] = 748, + [749] = 671, + [750] = 738, + [751] = 751, + [752] = 752, + [753] = 753, + [754] = 754, + [755] = 755, + [756] = 756, + [757] = 720, + [758] = 758, + [759] = 746, + [760] = 441, + [761] = 761, + [762] = 753, + [763] = 754, + [764] = 764, + [765] = 765, + [766] = 766, + [767] = 767, + [768] = 768, + [769] = 769, + [770] = 600, + [771] = 771, + [772] = 732, + [773] = 773, + [774] = 733, + [775] = 775, + [776] = 734, + [777] = 777, + [778] = 778, + [779] = 779, + [780] = 780, + [781] = 781, + [782] = 782, + [783] = 783, + [784] = 784, + [785] = 785, + [786] = 786, + [787] = 787, + [788] = 788, + [789] = 789, + [790] = 790, + [791] = 791, + [792] = 792, + [793] = 773, + [794] = 794, + [795] = 795, + [796] = 796, + [797] = 797, + [798] = 798, + [799] = 799, + [800] = 800, + [801] = 801, + [802] = 802, + [803] = 803, + [804] = 804, + [805] = 805, + [806] = 806, + [807] = 807, + [808] = 808, + [809] = 809, + [810] = 810, + [811] = 811, + [812] = 812, + [813] = 813, + [814] = 814, + [815] = 815, + [816] = 816, + [817] = 817, + [818] = 600, + [819] = 819, + [820] = 820, + [821] = 821, + [822] = 822, + [823] = 823, + [824] = 824, + [825] = 825, + [826] = 826, + [827] = 827, + [828] = 828, + [829] = 829, + [830] = 830, + [831] = 831, + [832] = 832, + [833] = 833, + [834] = 834, + [835] = 835, + [836] = 836, + [837] = 837, + [838] = 838, + [839] = 839, + [840] = 840, + [841] = 841, + [842] = 842, + [843] = 843, + [844] = 844, + [845] = 845, + [846] = 846, + [847] = 847, + [848] = 834, + [849] = 849, + [850] = 850, + [851] = 851, + [852] = 852, + [853] = 841, + [854] = 854, + [855] = 855, + [856] = 852, + [857] = 857, + [858] = 858, + [859] = 859, + [860] = 860, + [861] = 861, + [862] = 862, + [863] = 863, + [864] = 864, + [865] = 865, + [866] = 866, + [867] = 867, + [868] = 867, + [869] = 869, + [870] = 870, + [871] = 871, + [872] = 872, + [873] = 873, + [874] = 874, + [875] = 875, + [876] = 826, + [877] = 828, + [878] = 878, + [879] = 878, + [880] = 880, + [881] = 862, + [882] = 872, + [883] = 873, + [884] = 365, + [885] = 600, + [886] = 880, + [887] = 844, + [888] = 888, + [889] = 889, + [890] = 890, + [891] = 891, + [892] = 892, + [893] = 893, + [894] = 827, + [895] = 858, + [896] = 854, + [897] = 855, + [898] = 898, + [899] = 865, + [900] = 900, + [901] = 901, + [902] = 902, + [903] = 903, + [904] = 904, + [905] = 905, + [906] = 906, + [907] = 907, + [908] = 908, + [909] = 909, + [910] = 910, + [911] = 911, + [912] = 912, + [913] = 913, + [914] = 914, + [915] = 915, + [916] = 916, + [917] = 917, + [918] = 918, + [919] = 919, + [920] = 920, + [921] = 921, + [922] = 922, + [923] = 923, + [924] = 924, + [925] = 925, + [926] = 926, + [927] = 927, + [928] = 928, + [929] = 929, + [930] = 930, + [931] = 931, + [932] = 932, + [933] = 933, + [934] = 934, + [935] = 935, + [936] = 936, + [937] = 937, + [938] = 938, + [939] = 939, + [940] = 940, + [941] = 941, + [942] = 942, + [943] = 943, + [944] = 944, + [945] = 945, + [946] = 946, + [947] = 947, + [948] = 948, + [949] = 949, + [950] = 235, + [951] = 951, + [952] = 952, + [953] = 953, + [954] = 954, + [955] = 955, + [956] = 956, + [957] = 957, + [958] = 958, + [959] = 959, + [960] = 960, + [961] = 961, + [962] = 962, + [963] = 963, + [964] = 964, + [965] = 965, + [966] = 966, + [967] = 967, + [968] = 968, + [969] = 969, + [970] = 970, + [971] = 971, + [972] = 972, + [973] = 973, + [974] = 974, + [975] = 975, + [976] = 976, + [977] = 977, + [978] = 915, + [979] = 979, + [980] = 980, + [981] = 936, + [982] = 982, + [983] = 983, + [984] = 966, + [985] = 985, + [986] = 986, + [987] = 987, + [988] = 988, + [989] = 989, + [990] = 990, + [991] = 991, + [992] = 992, + [993] = 993, + [994] = 994, + [995] = 995, + [996] = 996, + [997] = 997, + [998] = 942, + [999] = 999, + [1000] = 1000, + [1001] = 969, + [1002] = 1002, + [1003] = 1003, + [1004] = 1000, + [1005] = 1005, + [1006] = 995, + [1007] = 1007, + [1008] = 1008, + [1009] = 1009, + [1010] = 908, + [1011] = 1011, + [1012] = 1012, + [1013] = 1013, + [1014] = 1014, + [1015] = 973, + [1016] = 976, + [1017] = 1017, + [1018] = 1018, + [1019] = 1019, + [1020] = 1020, + [1021] = 1021, + [1022] = 1022, + [1023] = 1023, + [1024] = 1024, + [1025] = 1025, + [1026] = 1018, + [1027] = 1027, + [1028] = 987, + [1029] = 1029, + [1030] = 939, + [1031] = 1031, + [1032] = 1032, + [1033] = 1033, + [1034] = 988, + [1035] = 1035, + [1036] = 903, + [1037] = 1037, + [1038] = 1038, + [1039] = 1023, + [1040] = 1031, + [1041] = 1041, + [1042] = 1042, + [1043] = 1043, + [1044] = 1044, + [1045] = 1045, + [1046] = 1046, + [1047] = 1047, + [1048] = 1048, + [1049] = 1021, + [1050] = 1050, + [1051] = 1051, + [1052] = 1043, + [1053] = 1053, + [1054] = 1054, + [1055] = 1003, + [1056] = 1056, + [1057] = 1057, + [1058] = 559, + [1059] = 1059, + [1060] = 1060, + [1061] = 1061, + [1062] = 1062, + [1063] = 1063, + [1064] = 1064, + [1065] = 1024, + [1066] = 1066, + [1067] = 1067, + [1068] = 1068, + [1069] = 1069, + [1070] = 1070, + [1071] = 1071, + [1072] = 916, + [1073] = 1073, + [1074] = 1074, + [1075] = 1071, + [1076] = 1076, + [1077] = 1007, + [1078] = 1078, + [1079] = 1079, + [1080] = 600, + [1081] = 1081, + [1082] = 1082, + [1083] = 1083, + [1084] = 1084, + [1085] = 1085, + [1086] = 1086, + [1087] = 1087, + [1088] = 1088, + [1089] = 1089, + [1090] = 1086, + [1091] = 1084, + [1092] = 1092, + [1093] = 1093, + [1094] = 1094, + [1095] = 1095, + [1096] = 1096, + [1097] = 1097, + [1098] = 1098, + [1099] = 1088, + [1100] = 1086, + [1101] = 1101, + [1102] = 1102, + [1103] = 1086, + [1104] = 1104, + [1105] = 1105, + [1106] = 1106, + [1107] = 1089, + [1108] = 1098, + [1109] = 1097, + [1110] = 1086, + [1111] = 1111, + [1112] = 1112, + [1113] = 1113, + [1114] = 1114, + [1115] = 1115, + [1116] = 1116, + [1117] = 1117, + [1118] = 1118, + [1119] = 1119, + [1120] = 1120, + [1121] = 1121, + [1122] = 1122, + [1123] = 1123, + [1124] = 1124, + [1125] = 1125, + [1126] = 1126, + [1127] = 1127, + [1128] = 1128, + [1129] = 1129, + [1130] = 1124, + [1131] = 1131, + [1132] = 1132, + [1133] = 1133, + [1134] = 1134, + [1135] = 1135, + [1136] = 1132, + [1137] = 1137, + [1138] = 1138, + [1139] = 1128, + [1140] = 1140, + [1141] = 1141, + [1142] = 1142, + [1143] = 1143, + [1144] = 1140, + [1145] = 1145, + [1146] = 1116, + [1147] = 1147, + [1148] = 1148, + [1149] = 1112, + [1150] = 1150, + [1151] = 1151, + [1152] = 1152, + [1153] = 1153, + [1154] = 1152, + [1155] = 1124, +}; + +static const TSSymbol ts_supertype_symbols[SUPERTYPE_COUNT] = { + sym_binding_pattern, + sym_expression, + sym_inline_pipeline_stage, + sym_literal, + sym_module_item, + sym_pattern_atom, + sym_pipeline_stage, + sym_primary_expression, + sym_type_expression, + sym_type_name, + sym_value_expression, +}; + +static const TSMapSlice ts_supertype_map_slices[] = { + [sym_binding_pattern] = {.index = 0, .length = 5}, + [sym_expression] = {.index = 5, .length = 2}, + [sym_inline_pipeline_stage] = {.index = 7, .length = 2}, + [sym_literal] = {.index = 9, .length = 6}, + [sym_module_item] = {.index = 15, .length = 3}, + [sym_pattern_atom] = {.index = 18, .length = 13}, + [sym_pipeline_stage] = {.index = 31, .length = 2}, + [sym_primary_expression] = {.index = 33, .length = 13}, + [sym_type_expression] = {.index = 46, .length = 14}, + [sym_type_name] = {.index = 60, .length = 2}, + [sym_value_expression] = {.index = 62, .length = 11}, +}; + +static const TSSymbol ts_supertype_map_entries[] = { + [0] = + anon_sym__, + sym_identifier, + sym_product_pattern, + sym_tuple_pattern, + sym_unit_pattern, + [5] = + sym_declaration, + sym_value_expression, + [7] = + sym_aggregate_pipeline_stage, + sym_direct_pipeline_stage, + [9] = + sym_boolean_literal, + sym_character_literal, + sym_nil_literal, + sym_signed_numeric_literal, + sym_string_literal, + sym_unit_literal, + [15] = + sym_expression, + sym_pub_declaration, + sym_use_declaration, + [18] = + anon_sym__, + sym_array_pattern, + sym_bits_pattern, + sym_boolean_literal, + sym_character_literal, + sym_identifier, + sym_nil_literal, + sym_product_pattern, + sym_signed_numeric_literal, + sym_string_literal, + sym_sum_pattern, + sym_tuple_pattern, + sym_unit_pattern, + [31] = + sym_continuation_pipeline_stage, + sym_inline_pipeline_stage, + [33] = + sym_bits_constructor, + sym_block, + sym_collection_literal, + sym_default_expression, + sym_for_expression, + sym_identifier, + sym_if_expression, + sym_literal, + sym_loop_expression, + sym_match_expression, + sym_product_constructor, + sym_sum_constructor, + sym_tuple_value, + [46] = + sym_array_type, + sym_bits_type, + sym_function_type, + sym_grouped_type, + sym_map_type, + sym_optional_type, + sym_primitive_type, + sym_product_type, + sym_result_type, + sym_sum_type, + sym_tuple_type, + sym_type_application, + sym_type_name, + sym_unit_type, + [60] = + sym_identifier, + sym_qualified_name, + [62] = + sym_assignment_expression, + sym_binary_expression, + sym_break_expression, + sym_continue_expression, + sym_function_literal, + sym_pipeline_expression, + sym_postfix_expression, + sym_primary_expression, + sym_range_expression, + sym_return_expression, + sym_unary_expression, +}; + +static bool ts_lex(TSLexer *lexer, TSStateId state) { + START_LEXER(); + eof = lexer->eof(lexer); + switch (state) { + case 0: + if (eof) ADVANCE(58); + ADVANCE_MAP( + '\n', 139, + '\r', 1, + '!', 78, + '#', 133, + '%', 117, + '&', 89, + '\'', 6, + '(', 82, + ')', 83, + '*', 115, + '+', 111, + ',', 65, + '-', 112, + '.', 60, + '/', 116, + '0', 120, + ':', 73, + ';', 141, + '<', 85, + '=', 74, + '>', 87, + '?', 79, + '@', 92, + '[', 80, + ']', 81, + '^', 109, + '`', 93, + 'c', 131, + '{', 64, + '|', 91, + '}', 66, + '~', 119, + ); + if (lookahead == '\t' || + lookahead == ' ') SKIP(0); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(121); + if (('A' <= lookahead && lookahead <= 'Z') || + ('_' <= lookahead && lookahead <= 'z')) ADVANCE(132); + END_STATE(); + case 1: + if (lookahead == '\n') ADVANCE(139); + END_STATE(); + case 2: + ADVANCE_MAP( + '\n', 139, + '\r', 1, + '!', 78, + '#', 133, + '%', 117, + '&', 89, + '\'', 6, + '(', 82, + '*', 115, + '+', 111, + ',', 65, + '-', 112, + '.', 62, + '/', 116, + '0', 120, + '<', 85, + '=', 74, + '>', 87, + '?', 79, + '[', 80, + ']', 81, + '^', 109, + 'c', 131, + '{', 64, + '|', 91, + ); + if (lookahead == '\t' || + lookahead == ' ') SKIP(2); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(121); + if (('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(132); + END_STATE(); + case 3: + if (lookahead == '\n') ADVANCE(138); + END_STATE(); + case 4: + ADVANCE_MAP( + '\n', 138, + '\r', 3, + '#', 133, + '&', 88, + '(', 82, + ')', 83, + ',', 65, + '.', 11, + ':', 73, + '=', 24, + '>', 86, + '[', 80, + ']', 81, + '{', 64, + '|', 90, + '}', 66, + ); + if (lookahead == '\t' || + lookahead == ' ') SKIP(4); + if (('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(132); + END_STATE(); + case 5: + if (lookahead == '\n') ADVANCE(140); + END_STATE(); + case 6: + if (lookahead == '\'') ADVANCE(129); + if (lookahead == '\\') ADVANCE(28); + if (lookahead != 0 && + lookahead != '\n' && + lookahead != '\r') ADVANCE(6); + END_STATE(); + case 7: + if (lookahead == '\'') ADVANCE(130); + END_STATE(); + case 8: + ADVANCE_MAP( + '+', 114, + '-', 25, + '<', 137, + '=', 22, + '>', 137, + '^', 110, + '|', 26, + '\t', 8, + ' ', 8, + '%', 118, + '*', 118, + '/', 118, + ); + END_STATE(); + case 9: + if (lookahead == '-') ADVANCE(25); + if (lookahead == '|') ADVANCE(26); + if (lookahead == '\t' || + lookahead == ' ') ADVANCE(9); + END_STATE(); + case 10: + if (lookahead == '.') ADVANCE(94); + END_STATE(); + case 11: + if (lookahead == '.') ADVANCE(10); + END_STATE(); + case 12: + if (lookahead == '.') ADVANCE(10); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(127); + END_STATE(); + case 13: + if (lookahead == '<') ADVANCE(104); + if (lookahead == '=') ADVANCE(105); + END_STATE(); + case 14: + if (lookahead == '=') ADVANCE(100); + END_STATE(); + case 15: + if (lookahead == '=') ADVANCE(101); + END_STATE(); + case 16: + if (lookahead == '=') ADVANCE(98); + END_STATE(); + case 17: + if (lookahead == '=') ADVANCE(96); + END_STATE(); + case 18: + if (lookahead == '=') ADVANCE(97); + if (lookahead == '>') ADVANCE(76); + END_STATE(); + case 19: + if (lookahead == '=') ADVANCE(99); + END_STATE(); + case 20: + if (lookahead == '=') ADVANCE(102); + END_STATE(); + case 21: + if (lookahead == '=') ADVANCE(103); + if (lookahead == '>') ADVANCE(95); + END_STATE(); + case 22: + if (lookahead == '=') ADVANCE(136); + END_STATE(); + case 23: + if (lookahead == '>') ADVANCE(76); + END_STATE(); + case 24: + if (lookahead == '>') ADVANCE(77); + END_STATE(); + case 25: + if (lookahead == '>') ADVANCE(134); + END_STATE(); + case 26: + if (lookahead == '>') ADVANCE(135); + END_STATE(); + case 27: + if (lookahead == '\\') ADVANCE(29); + if (lookahead != 0 && + lookahead != '\n' && + lookahead != '\r' && + lookahead != '\'') ADVANCE(7); + END_STATE(); + case 28: + if (lookahead == 'u') ADVANCE(30); + if (lookahead == '\'' || + lookahead == '0' || + lookahead == '\\' || + lookahead == 'n' || + lookahead == 'r' || + lookahead == 't') ADVANCE(6); + END_STATE(); + case 29: + if (lookahead == 'u') ADVANCE(31); + if (lookahead == '\'' || + lookahead == '0' || + lookahead == '\\' || + lookahead == 'n' || + lookahead == 'r' || + lookahead == 't') ADVANCE(7); + END_STATE(); + case 30: + if (lookahead == '{') ADVANCE(52); + END_STATE(); + case 31: + if (lookahead == '{') ADVANCE(53); + END_STATE(); + case 32: + if (lookahead == '}') ADVANCE(6); + END_STATE(); + case 33: + if (lookahead == '}') ADVANCE(6); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(32); + END_STATE(); + case 34: + if (lookahead == '}') ADVANCE(6); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(33); + END_STATE(); + case 35: + if (lookahead == '}') ADVANCE(6); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(34); + END_STATE(); + case 36: + if (lookahead == '}') ADVANCE(6); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(35); + END_STATE(); + case 37: + if (lookahead == '}') ADVANCE(6); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(36); + END_STATE(); + case 38: + if (lookahead == '}') ADVANCE(7); + END_STATE(); + case 39: + if (lookahead == '}') ADVANCE(7); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(38); + END_STATE(); + case 40: + if (lookahead == '}') ADVANCE(7); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(39); + END_STATE(); + case 41: + if (lookahead == '}') ADVANCE(7); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(40); + END_STATE(); + case 42: + if (lookahead == '}') ADVANCE(7); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(41); + END_STATE(); + case 43: + if (lookahead == '}') ADVANCE(7); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(42); + END_STATE(); + case 44: + if (lookahead == '+' || + lookahead == '-') ADVANCE(49); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(128); + END_STATE(); + case 45: + if (lookahead == '0' || + lookahead == '1') ADVANCE(122); + END_STATE(); + case 46: + if (('0' <= lookahead && lookahead <= '7')) ADVANCE(123); + END_STATE(); + case 47: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(121); + END_STATE(); + case 48: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(127); + END_STATE(); + case 49: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(128); + END_STATE(); + case 50: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(126); + END_STATE(); + case 51: + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(124); + END_STATE(); + case 52: + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(37); + END_STATE(); + case 53: + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(43); + END_STATE(); + case 54: + if (eof) ADVANCE(58); + ADVANCE_MAP( + '\n', 139, + '\r', 1, + '!', 78, + '#', 133, + '%', 117, + '&', 89, + '(', 82, + ')', 83, + '*', 115, + '+', 111, + ',', 65, + '-', 112, + '.', 61, + '/', 116, + '0', 125, + ':', 73, + ';', 141, + '<', 85, + '=', 74, + '>', 87, + '?', 79, + '[', 80, + ']', 81, + '^', 109, + '`', 93, + '{', 64, + '|', 91, + '}', 66, + ); + if (lookahead == '\t' || + lookahead == ' ') SKIP(54); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(126); + if (('A' <= lookahead && lookahead <= 'Z') || + ('_' <= lookahead && lookahead <= 'z')) ADVANCE(132); + END_STATE(); + case 55: + if (eof) ADVANCE(58); + ADVANCE_MAP( + '\n', 138, + '\r', 3, + '!', 78, + '#', 133, + '&', 88, + '\'', 6, + '(', 82, + ')', 83, + ',', 65, + '-', 113, + '.', 12, + '0', 120, + ':', 72, + ';', 141, + '<', 84, + '=', 75, + '>', 86, + '?', 79, + '@', 92, + '[', 80, + ']', 81, + '`', 93, + 'c', 131, + '{', 64, + '|', 90, + '}', 66, + '~', 119, + ); + if (lookahead == '\t' || + lookahead == ' ') SKIP(55); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(121); + if (('A' <= lookahead && lookahead <= 'Z') || + ('_' <= lookahead && lookahead <= 'z')) ADVANCE(132); + END_STATE(); + case 56: + if (eof) ADVANCE(58); + ADVANCE_MAP( + '\n', 138, + '\r', 3, + '!', 78, + '#', 133, + '(', 82, + ')', 83, + ',', 65, + '-', 23, + '.', 63, + ':', 71, + ';', 141, + '<', 84, + '=', 75, + '>', 86, + '?', 79, + '[', 80, + ']', 81, + '`', 93, + '{', 64, + '}', 66, + ); + if (lookahead == '\t' || + lookahead == ' ') SKIP(56); + if (('A' <= lookahead && lookahead <= 'Z') || + ('_' <= lookahead && lookahead <= 'z')) ADVANCE(132); + END_STATE(); + case 57: + if (eof) ADVANCE(58); + ADVANCE_MAP( + '\n', 140, + '\r', 5, + '!', 78, + '#', 133, + '%', 14, + '&', 15, + '(', 82, + ')', 83, + '*', 16, + '+', 17, + ',', 65, + '-', 18, + '.', 59, + '/', 19, + ':', 71, + ';', 141, + '=', 75, + '?', 79, + '[', 80, + ']', 81, + '^', 20, + '`', 93, + '{', 64, + '|', 21, + '}', 66, + ); + if (lookahead == '\t' || + lookahead == ' ') SKIP(57); + if (('A' <= lookahead && lookahead <= 'Z') || + ('_' <= lookahead && lookahead <= 'z')) ADVANCE(132); + END_STATE(); + case 58: + ACCEPT_TOKEN(ts_builtin_sym_end); + END_STATE(); + case 59: + ACCEPT_TOKEN(anon_sym_DOT); + END_STATE(); + case 60: + ACCEPT_TOKEN(anon_sym_DOT); + if (lookahead == '.') ADVANCE(68); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(127); + END_STATE(); + case 61: + ACCEPT_TOKEN(anon_sym_DOT); + if (lookahead == '.') ADVANCE(13); + END_STATE(); + case 62: + ACCEPT_TOKEN(anon_sym_DOT); + if (lookahead == '.') ADVANCE(13); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(127); + END_STATE(); + case 63: + ACCEPT_TOKEN(anon_sym_DOT); + if (lookahead == '.') ADVANCE(67); + END_STATE(); + case 64: + ACCEPT_TOKEN(anon_sym_LBRACE); + END_STATE(); + case 65: + ACCEPT_TOKEN(anon_sym_COMMA); + END_STATE(); + case 66: + ACCEPT_TOKEN(anon_sym_RBRACE); + END_STATE(); + case 67: + ACCEPT_TOKEN(anon_sym_DOT_DOT); + END_STATE(); + case 68: + ACCEPT_TOKEN(anon_sym_DOT_DOT); + if (lookahead == '.') ADVANCE(94); + if (lookahead == '<') ADVANCE(104); + if (lookahead == '=') ADVANCE(105); + END_STATE(); + case 69: + ACCEPT_TOKEN(anon_sym_COLON_COLON); + END_STATE(); + case 70: + ACCEPT_TOKEN(anon_sym_COLON_EQ); + END_STATE(); + case 71: + ACCEPT_TOKEN(anon_sym_COLON); + END_STATE(); + case 72: + ACCEPT_TOKEN(anon_sym_COLON); + if (lookahead == ':') ADVANCE(69); + END_STATE(); + case 73: + ACCEPT_TOKEN(anon_sym_COLON); + if (lookahead == ':') ADVANCE(69); + if (lookahead == '=') ADVANCE(70); + END_STATE(); + case 74: + ACCEPT_TOKEN(anon_sym_EQ); + if (lookahead == '=') ADVANCE(108); + if (lookahead == '>') ADVANCE(77); + END_STATE(); + case 75: + ACCEPT_TOKEN(anon_sym_EQ); + if (lookahead == '>') ADVANCE(77); + END_STATE(); + case 76: + ACCEPT_TOKEN(anon_sym_DASH_GT); + END_STATE(); + case 77: + ACCEPT_TOKEN(anon_sym_EQ_GT); + END_STATE(); + case 78: + ACCEPT_TOKEN(anon_sym_BANG); + END_STATE(); + case 79: + ACCEPT_TOKEN(anon_sym_QMARK); + END_STATE(); + case 80: + ACCEPT_TOKEN(anon_sym_LBRACK); + END_STATE(); + case 81: + ACCEPT_TOKEN(anon_sym_RBRACK); + END_STATE(); + case 82: + ACCEPT_TOKEN(anon_sym_LPAREN); + END_STATE(); + case 83: + ACCEPT_TOKEN(anon_sym_RPAREN); + END_STATE(); + case 84: + ACCEPT_TOKEN(anon_sym_LT); + END_STATE(); + case 85: + ACCEPT_TOKEN(anon_sym_LT); + if (lookahead == '=') ADVANCE(106); + END_STATE(); + case 86: + ACCEPT_TOKEN(anon_sym_GT); + END_STATE(); + case 87: + ACCEPT_TOKEN(anon_sym_GT); + if (lookahead == '=') ADVANCE(107); + END_STATE(); + case 88: + ACCEPT_TOKEN(anon_sym_AMP); + END_STATE(); + case 89: + ACCEPT_TOKEN(anon_sym_AMP); + if (lookahead == '=') ADVANCE(101); + END_STATE(); + case 90: + ACCEPT_TOKEN(anon_sym_PIPE); + END_STATE(); + case 91: + ACCEPT_TOKEN(anon_sym_PIPE); + if (lookahead == '=') ADVANCE(103); + if (lookahead == '>') ADVANCE(95); + END_STATE(); + case 92: + ACCEPT_TOKEN(anon_sym_AT); + END_STATE(); + case 93: + ACCEPT_TOKEN(anon_sym_BQUOTE); + END_STATE(); + case 94: + ACCEPT_TOKEN(anon_sym_DOT_DOT_DOT); + END_STATE(); + case 95: + ACCEPT_TOKEN(anon_sym_PIPE_GT); + END_STATE(); + case 96: + ACCEPT_TOKEN(anon_sym_PLUS_EQ); + END_STATE(); + case 97: + ACCEPT_TOKEN(anon_sym_DASH_EQ); + END_STATE(); + case 98: + ACCEPT_TOKEN(anon_sym_STAR_EQ); + END_STATE(); + case 99: + ACCEPT_TOKEN(anon_sym_SLASH_EQ); + END_STATE(); + case 100: + ACCEPT_TOKEN(anon_sym_PERCENT_EQ); + END_STATE(); + case 101: + ACCEPT_TOKEN(anon_sym_AMP_EQ); + END_STATE(); + case 102: + ACCEPT_TOKEN(anon_sym_CARET_EQ); + END_STATE(); + case 103: + ACCEPT_TOKEN(anon_sym_PIPE_EQ); + END_STATE(); + case 104: + ACCEPT_TOKEN(anon_sym_DOT_DOT_LT); + END_STATE(); + case 105: + ACCEPT_TOKEN(anon_sym_DOT_DOT_EQ); + END_STATE(); + case 106: + ACCEPT_TOKEN(anon_sym_LT_EQ); + END_STATE(); + case 107: + ACCEPT_TOKEN(anon_sym_GT_EQ); + END_STATE(); + case 108: + ACCEPT_TOKEN(anon_sym_EQ_EQ); + END_STATE(); + case 109: + ACCEPT_TOKEN(anon_sym_CARET); + if (lookahead == '=') ADVANCE(102); + END_STATE(); + case 110: + ACCEPT_TOKEN(aux_sym_binary_expression_token1); + END_STATE(); + case 111: + ACCEPT_TOKEN(anon_sym_PLUS); + if (lookahead == '=') ADVANCE(96); + END_STATE(); + case 112: + ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '=') ADVANCE(97); + if (lookahead == '>') ADVANCE(76); + END_STATE(); + case 113: + ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '>') ADVANCE(76); + END_STATE(); + case 114: + ACCEPT_TOKEN(aux_sym_binary_expression_token2); + END_STATE(); + case 115: + ACCEPT_TOKEN(anon_sym_STAR); + if (lookahead == '=') ADVANCE(98); + END_STATE(); + case 116: + ACCEPT_TOKEN(anon_sym_SLASH); + if (lookahead == '=') ADVANCE(99); + END_STATE(); + case 117: + ACCEPT_TOKEN(anon_sym_PERCENT); + if (lookahead == '=') ADVANCE(100); + END_STATE(); + case 118: + ACCEPT_TOKEN(aux_sym_binary_expression_token3); + END_STATE(); + case 119: + ACCEPT_TOKEN(anon_sym_TILDE); + END_STATE(); + case 120: + ACCEPT_TOKEN(sym_integer_literal); + ADVANCE_MAP( + '.', 48, + '_', 47, + 'B', 45, + 'b', 45, + 'E', 44, + 'e', 44, + 'O', 46, + 'o', 46, + 'X', 51, + 'x', 51, + ); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(121); + END_STATE(); + case 121: + ACCEPT_TOKEN(sym_integer_literal); + if (lookahead == '.') ADVANCE(48); + if (lookahead == '_') ADVANCE(47); + if (lookahead == 'E' || + lookahead == 'e') ADVANCE(44); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(121); + END_STATE(); + case 122: + ACCEPT_TOKEN(sym_integer_literal); + if (lookahead == '_') ADVANCE(45); + if (lookahead == '0' || + lookahead == '1') ADVANCE(122); + END_STATE(); + case 123: + ACCEPT_TOKEN(sym_integer_literal); + if (lookahead == '_') ADVANCE(46); + if (('0' <= lookahead && lookahead <= '7')) ADVANCE(123); + END_STATE(); + case 124: + ACCEPT_TOKEN(sym_integer_literal); + if (lookahead == '_') ADVANCE(51); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(124); + END_STATE(); + case 125: + ACCEPT_TOKEN(sym_integer_literal); + if (lookahead == '_') ADVANCE(50); + if (lookahead == 'B' || + lookahead == 'b') ADVANCE(45); + if (lookahead == 'O' || + lookahead == 'o') ADVANCE(46); + if (lookahead == 'X' || + lookahead == 'x') ADVANCE(51); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(126); + END_STATE(); + case 126: + ACCEPT_TOKEN(sym_integer_literal); + if (lookahead == '_') ADVANCE(50); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(126); + END_STATE(); + case 127: + ACCEPT_TOKEN(sym_float_literal); + if (lookahead == '_') ADVANCE(48); + if (lookahead == 'E' || + lookahead == 'e') ADVANCE(44); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(127); + END_STATE(); + case 128: + ACCEPT_TOKEN(sym_float_literal); + if (lookahead == '_') ADVANCE(49); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(128); + END_STATE(); + case 129: + ACCEPT_TOKEN(sym_string_literal); + END_STATE(); + case 130: + ACCEPT_TOKEN(sym_character_literal); + END_STATE(); + case 131: + ACCEPT_TOKEN(sym_identifier); + if (lookahead == '\'') ADVANCE(27); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(132); + END_STATE(); + case 132: + ACCEPT_TOKEN(sym_identifier); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(132); + END_STATE(); + case 133: + ACCEPT_TOKEN(sym_comment); + if (lookahead != 0 && + lookahead != '\n' && + lookahead != '\r') ADVANCE(133); + END_STATE(); + case 134: + ACCEPT_TOKEN(sym__direct_pipeline_continuation); + END_STATE(); + case 135: + ACCEPT_TOKEN(sym__aggregate_pipeline_continuation); + END_STATE(); + case 136: + ACCEPT_TOKEN(sym__comparison_continuation); + END_STATE(); + case 137: + ACCEPT_TOKEN(sym__comparison_continuation); + if (lookahead == '=') ADVANCE(136); + END_STATE(); + case 138: + ACCEPT_TOKEN(sym__newline); + END_STATE(); + case 139: + ACCEPT_TOKEN(sym__newline); + ADVANCE_MAP( + '+', 114, + '-', 25, + '<', 137, + '=', 22, + '>', 137, + '^', 110, + '|', 26, + '\t', 8, + ' ', 8, + '%', 118, + '*', 118, + '/', 118, + ); + END_STATE(); + case 140: + ACCEPT_TOKEN(sym__newline); + if (lookahead == '-') ADVANCE(25); + if (lookahead == '|') ADVANCE(26); + if (lookahead == '\t' || + lookahead == ' ') ADVANCE(9); + END_STATE(); + case 141: + ACCEPT_TOKEN(anon_sym_SEMI); + END_STATE(); + default: + return false; + } +} + +static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { + START_LEXER(); + eof = lexer->eof(lexer); + switch (state) { + case 0: + ADVANCE_MAP( + '_', 1, + 'a', 2, + 'b', 3, + 'c', 4, + 'd', 5, + 'e', 6, + 'f', 7, + 'i', 8, + 'l', 9, + 'm', 10, + 'n', 11, + 'o', 12, + 'p', 13, + 'r', 14, + 's', 15, + 't', 16, + 'u', 17, + ); + if (lookahead == '\t' || + lookahead == ' ') SKIP(0); + END_STATE(); + case 1: + ACCEPT_TOKEN(anon_sym__); + END_STATE(); + case 2: + if (lookahead == 'n') ADVANCE(18); + if (lookahead == 's') ADVANCE(19); + END_STATE(); + case 3: + if (lookahead == 'i') ADVANCE(20); + if (lookahead == 'r') ADVANCE(21); + END_STATE(); + case 4: + if (lookahead == 'h') ADVANCE(22); + if (lookahead == 'o') ADVANCE(23); + END_STATE(); + case 5: + if (lookahead == 'e') ADVANCE(24); + if (lookahead == 'i') ADVANCE(25); + END_STATE(); + case 6: + if (lookahead == 'l') ADVANCE(26); + END_STATE(); + case 7: + if (lookahead == '3') ADVANCE(27); + if (lookahead == '6') ADVANCE(28); + if (lookahead == 'a') ADVANCE(29); + if (lookahead == 'o') ADVANCE(30); + END_STATE(); + case 8: + if (lookahead == '1') ADVANCE(31); + if (lookahead == '3') ADVANCE(32); + if (lookahead == '6') ADVANCE(33); + if (lookahead == '8') ADVANCE(34); + if (lookahead == 'f') ADVANCE(35); + if (lookahead == 'n') ADVANCE(36); + END_STATE(); + case 9: + if (lookahead == 'o') ADVANCE(37); + END_STATE(); + case 10: + if (lookahead == 'a') ADVANCE(38); + END_STATE(); + case 11: + if (lookahead == 'i') ADVANCE(39); + if (lookahead == 'o') ADVANCE(40); + if (lookahead == 'v') ADVANCE(41); + END_STATE(); + case 12: + if (lookahead == 'r') ADVANCE(42); + END_STATE(); + case 13: + if (lookahead == 'u') ADVANCE(43); + END_STATE(); + case 14: + if (lookahead == 'e') ADVANCE(44); + END_STATE(); + case 15: + if (lookahead == 't') ADVANCE(45); + END_STATE(); + case 16: + if (lookahead == 'r') ADVANCE(46); + END_STATE(); + case 17: + if (lookahead == '1') ADVANCE(47); + if (lookahead == '3') ADVANCE(48); + if (lookahead == '6') ADVANCE(49); + if (lookahead == '8') ADVANCE(50); + if (lookahead == 's') ADVANCE(51); + END_STATE(); + case 18: + if (lookahead == 'd') ADVANCE(52); + END_STATE(); + case 19: + ACCEPT_TOKEN(anon_sym_as); + END_STATE(); + case 20: + if (lookahead == 't') ADVANCE(53); + END_STATE(); + case 21: + if (lookahead == 'e') ADVANCE(54); + END_STATE(); + case 22: + if (lookahead == 'r') ADVANCE(55); + END_STATE(); + case 23: + if (lookahead == 'n') ADVANCE(56); + END_STATE(); + case 24: + if (lookahead == 'f') ADVANCE(57); + END_STATE(); + case 25: + if (lookahead == 's') ADVANCE(58); + END_STATE(); + case 26: + if (lookahead == 's') ADVANCE(59); + END_STATE(); + case 27: + if (lookahead == '2') ADVANCE(60); + END_STATE(); + case 28: + if (lookahead == '4') ADVANCE(61); + END_STATE(); + case 29: + if (lookahead == 'l') ADVANCE(62); + END_STATE(); + case 30: + if (lookahead == 'r') ADVANCE(63); + END_STATE(); + case 31: + if (lookahead == '6') ADVANCE(64); + END_STATE(); + case 32: + if (lookahead == '2') ADVANCE(65); + END_STATE(); + case 33: + if (lookahead == '4') ADVANCE(66); + END_STATE(); + case 34: + ACCEPT_TOKEN(anon_sym_i8); + END_STATE(); + case 35: + ACCEPT_TOKEN(anon_sym_if); + END_STATE(); + case 36: + ACCEPT_TOKEN(anon_sym_in); + END_STATE(); + case 37: + if (lookahead == 'o') ADVANCE(67); + END_STATE(); + case 38: + if (lookahead == 't') ADVANCE(68); + END_STATE(); + case 39: + if (lookahead == 'l') ADVANCE(69); + END_STATE(); + case 40: + if (lookahead == 't') ADVANCE(70); + END_STATE(); + case 41: + if (lookahead == 'r') ADVANCE(71); + END_STATE(); + case 42: + ACCEPT_TOKEN(anon_sym_or); + END_STATE(); + case 43: + if (lookahead == 'b') ADVANCE(72); + END_STATE(); + case 44: + if (lookahead == 't') ADVANCE(73); + END_STATE(); + case 45: + if (lookahead == 'r') ADVANCE(74); + END_STATE(); + case 46: + if (lookahead == 'u') ADVANCE(75); + END_STATE(); + case 47: + if (lookahead == '6') ADVANCE(76); + END_STATE(); + case 48: + if (lookahead == '2') ADVANCE(77); + END_STATE(); + case 49: + if (lookahead == '4') ADVANCE(78); + END_STATE(); + case 50: + ACCEPT_TOKEN(anon_sym_u8); + END_STATE(); + case 51: + if (lookahead == 'e') ADVANCE(79); + END_STATE(); + case 52: + ACCEPT_TOKEN(anon_sym_and); + END_STATE(); + case 53: + ACCEPT_TOKEN(anon_sym_bit); + if (lookahead == 's') ADVANCE(80); + END_STATE(); + case 54: + if (lookahead == 'a') ADVANCE(81); + END_STATE(); + case 55: + ACCEPT_TOKEN(anon_sym_chr); + END_STATE(); + case 56: + if (lookahead == 't') ADVANCE(82); + END_STATE(); + case 57: + if (lookahead == 'a') ADVANCE(83); + END_STATE(); + case 58: + if (lookahead == 't') ADVANCE(84); + END_STATE(); + case 59: + if (lookahead == 'e') ADVANCE(85); + END_STATE(); + case 60: + ACCEPT_TOKEN(anon_sym_f32); + END_STATE(); + case 61: + ACCEPT_TOKEN(anon_sym_f64); + END_STATE(); + case 62: + if (lookahead == 's') ADVANCE(86); + END_STATE(); + case 63: + ACCEPT_TOKEN(anon_sym_for); + END_STATE(); + case 64: + ACCEPT_TOKEN(anon_sym_i16); + END_STATE(); + case 65: + ACCEPT_TOKEN(anon_sym_i32); + END_STATE(); + case 66: + ACCEPT_TOKEN(anon_sym_i64); + END_STATE(); + case 67: + if (lookahead == 'p') ADVANCE(87); + END_STATE(); + case 68: + if (lookahead == 'c') ADVANCE(88); + END_STATE(); + case 69: + ACCEPT_TOKEN(sym_nil_literal); + END_STATE(); + case 70: + ACCEPT_TOKEN(anon_sym_not); + END_STATE(); + case 71: + ACCEPT_TOKEN(anon_sym_nvr); + END_STATE(); + case 72: + ACCEPT_TOKEN(anon_sym_pub); + END_STATE(); + case 73: + if (lookahead == 'u') ADVANCE(89); + END_STATE(); + case 74: + ACCEPT_TOKEN(anon_sym_str); + END_STATE(); + case 75: + if (lookahead == 'e') ADVANCE(90); + END_STATE(); + case 76: + ACCEPT_TOKEN(anon_sym_u16); + END_STATE(); + case 77: + ACCEPT_TOKEN(anon_sym_u32); + END_STATE(); + case 78: + ACCEPT_TOKEN(anon_sym_u64); + END_STATE(); + case 79: + ACCEPT_TOKEN(anon_sym_use); + END_STATE(); + case 80: + ACCEPT_TOKEN(anon_sym_bits); + END_STATE(); + case 81: + if (lookahead == 'k') ADVANCE(91); + END_STATE(); + case 82: + if (lookahead == 'i') ADVANCE(92); + END_STATE(); + case 83: + if (lookahead == 'u') ADVANCE(93); + END_STATE(); + case 84: + if (lookahead == 'i') ADVANCE(94); + END_STATE(); + case 85: + ACCEPT_TOKEN(anon_sym_else); + END_STATE(); + case 86: + if (lookahead == 'e') ADVANCE(95); + END_STATE(); + case 87: + ACCEPT_TOKEN(anon_sym_loop); + END_STATE(); + case 88: + if (lookahead == 'h') ADVANCE(96); + END_STATE(); + case 89: + if (lookahead == 'r') ADVANCE(97); + END_STATE(); + case 90: + ACCEPT_TOKEN(anon_sym_true); + END_STATE(); + case 91: + ACCEPT_TOKEN(anon_sym_break); + END_STATE(); + case 92: + if (lookahead == 'n') ADVANCE(98); + END_STATE(); + case 93: + if (lookahead == 'l') ADVANCE(99); + END_STATE(); + case 94: + if (lookahead == 'n') ADVANCE(100); + END_STATE(); + case 95: + ACCEPT_TOKEN(anon_sym_false); + END_STATE(); + case 96: + ACCEPT_TOKEN(anon_sym_match); + END_STATE(); + case 97: + if (lookahead == 'n') ADVANCE(101); + END_STATE(); + case 98: + if (lookahead == 'u') ADVANCE(102); + END_STATE(); + case 99: + if (lookahead == 't') ADVANCE(103); + END_STATE(); + case 100: + if (lookahead == 'c') ADVANCE(104); + END_STATE(); + case 101: + ACCEPT_TOKEN(anon_sym_return); + END_STATE(); + case 102: + if (lookahead == 'e') ADVANCE(105); + END_STATE(); + case 103: + ACCEPT_TOKEN(sym_default_expression); + END_STATE(); + case 104: + if (lookahead == 't') ADVANCE(106); + END_STATE(); + case 105: + ACCEPT_TOKEN(anon_sym_continue); + END_STATE(); + case 106: + ACCEPT_TOKEN(anon_sym_distinct); + END_STATE(); + default: + return false; + } +} + +static const TSLexerMode ts_lex_modes[STATE_COUNT] = { + [0] = {.lex_state = 0, .external_lex_state = 1}, + [1] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [2] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 2}, + [3] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [4] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [5] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [6] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [7] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [8] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 2}, + [9] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [10] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 2}, + [11] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 2}, + [12] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 2}, + [13] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 2}, + [14] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 2}, + [15] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 2}, + [16] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 2}, + [17] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 2}, + [18] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [19] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 3}, + [20] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 3}, + [21] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [22] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [23] = {.lex_state = 54, .external_lex_state = 3, .reserved_word_set_id = 4}, + [24] = {.lex_state = 54, .external_lex_state = 3, .reserved_word_set_id = 4}, + [25] = {.lex_state = 54, .external_lex_state = 3, .reserved_word_set_id = 1}, + [26] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [27] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [28] = {.lex_state = 54, .external_lex_state = 3, .reserved_word_set_id = 4}, + [29] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [30] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [31] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [32] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [33] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [34] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [35] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [36] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [37] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [38] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [39] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [40] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [41] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [42] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [43] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [44] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [45] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [46] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [47] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [48] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [49] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [50] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [51] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [52] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [53] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [54] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [55] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [56] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [57] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [58] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [59] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [60] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [61] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [62] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [63] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [64] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [65] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [66] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [67] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [68] = {.lex_state = 2, .external_lex_state = 1, .reserved_word_set_id = 6}, + [69] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [70] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [71] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [72] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [73] = {.lex_state = 2, .external_lex_state = 1, .reserved_word_set_id = 6}, + [74] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [75] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [76] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [77] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [78] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [79] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [80] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [81] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [82] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [83] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [84] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [85] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [86] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [87] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [88] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [89] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [90] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [91] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [92] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [93] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [94] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [95] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [96] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [97] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [98] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [99] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [100] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [101] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [102] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [103] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [104] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [105] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [106] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [107] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [108] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [109] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [110] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [111] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [112] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [113] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [114] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [115] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [116] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [117] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [118] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [119] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [120] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [121] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [122] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [123] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [124] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [125] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [126] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [127] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [128] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [129] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [130] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [131] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [132] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [133] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [134] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 5}, + [135] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [136] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [137] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [138] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [139] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [140] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [141] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 5}, + [142] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [143] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [144] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [145] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 5}, + [146] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 5}, + [147] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 5}, + [148] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [149] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 5}, + [150] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 5}, + [151] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [152] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 5}, + [153] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [154] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [155] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 5}, + [156] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [157] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 5}, + [158] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [159] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [160] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [161] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [162] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 5}, + [163] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 5}, + [164] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 5}, + [165] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 5}, + [166] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [167] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [168] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 7}, + [169] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [170] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [171] = {.lex_state = 54, .external_lex_state = 3}, + [172] = {.lex_state = 54, .external_lex_state = 3}, + [173] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 7}, + [174] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [175] = {.lex_state = 54, .external_lex_state = 3}, + [176] = {.lex_state = 54, .external_lex_state = 3}, + [177] = {.lex_state = 54, .external_lex_state = 3}, + [178] = {.lex_state = 54, .external_lex_state = 3}, + [179] = {.lex_state = 54, .external_lex_state = 3}, + [180] = {.lex_state = 54, .external_lex_state = 3}, + [181] = {.lex_state = 54, .external_lex_state = 3}, + [182] = {.lex_state = 54, .external_lex_state = 3}, + [183] = {.lex_state = 54, .external_lex_state = 3}, + [184] = {.lex_state = 54, .external_lex_state = 3}, + [185] = {.lex_state = 54, .external_lex_state = 3}, + [186] = {.lex_state = 54, .external_lex_state = 3}, + [187] = {.lex_state = 54, .external_lex_state = 3}, + [188] = {.lex_state = 54, .external_lex_state = 3}, + [189] = {.lex_state = 54, .external_lex_state = 3}, + [190] = {.lex_state = 54, .external_lex_state = 3}, + [191] = {.lex_state = 54, .external_lex_state = 3}, + [192] = {.lex_state = 54, .external_lex_state = 3}, + [193] = {.lex_state = 54, .external_lex_state = 3}, + [194] = {.lex_state = 54, .external_lex_state = 3}, + [195] = {.lex_state = 54, .external_lex_state = 3}, + [196] = {.lex_state = 54, .external_lex_state = 3}, + [197] = {.lex_state = 54, .external_lex_state = 3}, + [198] = {.lex_state = 54, .external_lex_state = 3}, + [199] = {.lex_state = 54, .external_lex_state = 3}, + [200] = {.lex_state = 54, .external_lex_state = 3}, + [201] = {.lex_state = 54, .external_lex_state = 3}, + [202] = {.lex_state = 54, .external_lex_state = 3}, + [203] = {.lex_state = 54, .external_lex_state = 3}, + [204] = {.lex_state = 54, .external_lex_state = 3}, + [205] = {.lex_state = 54, .external_lex_state = 3}, + [206] = {.lex_state = 54, .external_lex_state = 3}, + [207] = {.lex_state = 54, .external_lex_state = 3}, + [208] = {.lex_state = 54, .external_lex_state = 3}, + [209] = {.lex_state = 54, .external_lex_state = 3}, + [210] = {.lex_state = 54, .external_lex_state = 3}, + [211] = {.lex_state = 54, .external_lex_state = 3}, + [212] = {.lex_state = 54, .external_lex_state = 3}, + [213] = {.lex_state = 54, .external_lex_state = 3}, + [214] = {.lex_state = 54, .external_lex_state = 3}, + [215] = {.lex_state = 54, .external_lex_state = 3}, + [216] = {.lex_state = 54, .external_lex_state = 3}, + [217] = {.lex_state = 54, .external_lex_state = 3}, + [218] = {.lex_state = 54, .external_lex_state = 3}, + [219] = {.lex_state = 54, .external_lex_state = 3}, + [220] = {.lex_state = 54, .external_lex_state = 3}, + [221] = {.lex_state = 54, .external_lex_state = 3}, + [222] = {.lex_state = 54, .external_lex_state = 3}, + [223] = {.lex_state = 54, .external_lex_state = 3}, + [224] = {.lex_state = 54, .external_lex_state = 3}, + [225] = {.lex_state = 54, .external_lex_state = 3}, + [226] = {.lex_state = 54, .external_lex_state = 3}, + [227] = {.lex_state = 54, .external_lex_state = 3}, + [228] = {.lex_state = 54, .external_lex_state = 3}, + [229] = {.lex_state = 54, .external_lex_state = 3}, + [230] = {.lex_state = 54, .external_lex_state = 3}, + [231] = {.lex_state = 54, .external_lex_state = 3}, + [232] = {.lex_state = 54, .external_lex_state = 3}, + [233] = {.lex_state = 54, .external_lex_state = 3}, + [234] = {.lex_state = 54, .external_lex_state = 3}, + [235] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 2}, + [236] = {.lex_state = 54, .external_lex_state = 3}, + [237] = {.lex_state = 54, .external_lex_state = 3}, + [238] = {.lex_state = 54, .external_lex_state = 3}, + [239] = {.lex_state = 54, .external_lex_state = 3}, + [240] = {.lex_state = 54, .external_lex_state = 3}, + [241] = {.lex_state = 54, .external_lex_state = 3}, + [242] = {.lex_state = 54, .external_lex_state = 3}, + [243] = {.lex_state = 54, .external_lex_state = 3}, + [244] = {.lex_state = 54, .external_lex_state = 3}, + [245] = {.lex_state = 54, .external_lex_state = 3}, + [246] = {.lex_state = 54, .external_lex_state = 3}, + [247] = {.lex_state = 54, .external_lex_state = 3}, + [248] = {.lex_state = 54, .external_lex_state = 3}, + [249] = {.lex_state = 54, .external_lex_state = 3}, + [250] = {.lex_state = 54, .external_lex_state = 3}, + [251] = {.lex_state = 54, .external_lex_state = 3}, + [252] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 8}, + [253] = {.lex_state = 54, .external_lex_state = 3}, + [254] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 8}, + [255] = {.lex_state = 54, .external_lex_state = 3}, + [256] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 8}, + [257] = {.lex_state = 54, .external_lex_state = 3}, + [258] = {.lex_state = 54, .external_lex_state = 3}, + [259] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 8}, + [260] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 8}, + [261] = {.lex_state = 54, .external_lex_state = 3}, + [262] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 8}, + [263] = {.lex_state = 54, .external_lex_state = 3}, + [264] = {.lex_state = 54, .external_lex_state = 3}, + [265] = {.lex_state = 54, .external_lex_state = 3}, + [266] = {.lex_state = 54, .external_lex_state = 3}, + [267] = {.lex_state = 54, .external_lex_state = 3}, + [268] = {.lex_state = 54, .external_lex_state = 3}, + [269] = {.lex_state = 54, .external_lex_state = 3}, + [270] = {.lex_state = 54, .external_lex_state = 3}, + [271] = {.lex_state = 54, .external_lex_state = 3}, + [272] = {.lex_state = 54, .external_lex_state = 3}, + [273] = {.lex_state = 54, .external_lex_state = 3}, + [274] = {.lex_state = 54, .external_lex_state = 3}, + [275] = {.lex_state = 54, .external_lex_state = 3}, + [276] = {.lex_state = 54, .external_lex_state = 3}, + [277] = {.lex_state = 54, .external_lex_state = 3}, + [278] = {.lex_state = 54, .external_lex_state = 3}, + [279] = {.lex_state = 54, .external_lex_state = 3}, + [280] = {.lex_state = 54, .external_lex_state = 3}, + [281] = {.lex_state = 54, .external_lex_state = 3}, + [282] = {.lex_state = 54, .external_lex_state = 3}, + [283] = {.lex_state = 54, .external_lex_state = 3}, + [284] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 8}, + [285] = {.lex_state = 54, .external_lex_state = 3}, + [286] = {.lex_state = 54, .external_lex_state = 3}, + [287] = {.lex_state = 54, .external_lex_state = 3}, + [288] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 8}, + [289] = {.lex_state = 54, .external_lex_state = 3}, + [290] = {.lex_state = 54, .external_lex_state = 3}, + [291] = {.lex_state = 54, .external_lex_state = 3}, + [292] = {.lex_state = 54, .external_lex_state = 3}, + [293] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [294] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [295] = {.lex_state = 54, .external_lex_state = 3}, + [296] = {.lex_state = 4, .reserved_word_set_id = 9}, + [297] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [298] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [299] = {.lex_state = 4, .reserved_word_set_id = 9}, + [300] = {.lex_state = 4, .reserved_word_set_id = 9}, + [301] = {.lex_state = 4, .reserved_word_set_id = 9}, + [302] = {.lex_state = 4, .reserved_word_set_id = 9}, + [303] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [304] = {.lex_state = 4, .reserved_word_set_id = 9}, + [305] = {.lex_state = 4, .reserved_word_set_id = 9}, + [306] = {.lex_state = 4, .reserved_word_set_id = 9}, + [307] = {.lex_state = 4, .reserved_word_set_id = 9}, + [308] = {.lex_state = 4, .reserved_word_set_id = 9}, + [309] = {.lex_state = 4, .reserved_word_set_id = 9}, + [310] = {.lex_state = 4, .reserved_word_set_id = 9}, + [311] = {.lex_state = 4, .reserved_word_set_id = 9}, + [312] = {.lex_state = 4, .reserved_word_set_id = 9}, + [313] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [314] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [315] = {.lex_state = 4, .reserved_word_set_id = 9}, + [316] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [317] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [318] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [319] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [320] = {.lex_state = 4, .reserved_word_set_id = 9}, + [321] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [322] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [323] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [324] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [325] = {.lex_state = 4, .reserved_word_set_id = 9}, + [326] = {.lex_state = 4, .reserved_word_set_id = 9}, + [327] = {.lex_state = 4, .reserved_word_set_id = 9}, + [328] = {.lex_state = 4, .reserved_word_set_id = 9}, + [329] = {.lex_state = 4, .reserved_word_set_id = 9}, + [330] = {.lex_state = 4, .reserved_word_set_id = 9}, + [331] = {.lex_state = 4, .reserved_word_set_id = 9}, + [332] = {.lex_state = 4, .reserved_word_set_id = 9}, + [333] = {.lex_state = 4, .reserved_word_set_id = 9}, + [334] = {.lex_state = 54, .external_lex_state = 3}, + [335] = {.lex_state = 4, .reserved_word_set_id = 9}, + [336] = {.lex_state = 4, .reserved_word_set_id = 9}, + [337] = {.lex_state = 54, .reserved_word_set_id = 9}, + [338] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [339] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 8}, + [340] = {.lex_state = 54, .reserved_word_set_id = 9}, + [341] = {.lex_state = 54, .reserved_word_set_id = 9}, + [342] = {.lex_state = 54, .reserved_word_set_id = 9}, + [343] = {.lex_state = 54, .reserved_word_set_id = 9}, + [344] = {.lex_state = 54, .reserved_word_set_id = 9}, + [345] = {.lex_state = 54, .reserved_word_set_id = 9}, + [346] = {.lex_state = 54, .reserved_word_set_id = 1}, + [347] = {.lex_state = 54, .reserved_word_set_id = 9}, + [348] = {.lex_state = 54, .reserved_word_set_id = 9}, + [349] = {.lex_state = 54, .reserved_word_set_id = 9}, + [350] = {.lex_state = 54, .reserved_word_set_id = 1}, + [351] = {.lex_state = 54, .reserved_word_set_id = 1}, + [352] = {.lex_state = 54, .reserved_word_set_id = 1}, + [353] = {.lex_state = 54, .reserved_word_set_id = 1}, + [354] = {.lex_state = 54, .reserved_word_set_id = 1}, + [355] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 10}, + [356] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 10}, + [357] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 10}, + [358] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 10}, + [359] = {.lex_state = 54, .reserved_word_set_id = 9}, + [360] = {.lex_state = 54, .reserved_word_set_id = 9}, + [361] = {.lex_state = 54, .reserved_word_set_id = 9}, + [362] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [363] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 11}, + [364] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 5}, + [365] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 11}, + [366] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [367] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [368] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 12}, + [369] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 12}, + [370] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [371] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [372] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [373] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [374] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [375] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [376] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [377] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [378] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [379] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [380] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [381] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [382] = {.lex_state = 4, .reserved_word_set_id = 9}, + [383] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [384] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [385] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [386] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [387] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [388] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [389] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [390] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [391] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [392] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [393] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [394] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [395] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [396] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [397] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [398] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [399] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [400] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [401] = {.lex_state = 4, .reserved_word_set_id = 9}, + [402] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [403] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [404] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [405] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [406] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [407] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 1}, + [408] = {.lex_state = 55, .external_lex_state = 2, .reserved_word_set_id = 13}, + [409] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 1}, + [410] = {.lex_state = 4, .reserved_word_set_id = 9}, + [411] = {.lex_state = 0, .external_lex_state = 2, .reserved_word_set_id = 13}, + [412] = {.lex_state = 56}, + [413] = {.lex_state = 56}, + [414] = {.lex_state = 57}, + [415] = {.lex_state = 57}, + [416] = {.lex_state = 57}, + [417] = {.lex_state = 57}, + [418] = {.lex_state = 57}, + [419] = {.lex_state = 57}, + [420] = {.lex_state = 57}, + [421] = {.lex_state = 57}, + [422] = {.lex_state = 57}, + [423] = {.lex_state = 57}, + [424] = {.lex_state = 57}, + [425] = {.lex_state = 57}, + [426] = {.lex_state = 57}, + [427] = {.lex_state = 57}, + [428] = {.lex_state = 57}, + [429] = {.lex_state = 57}, + [430] = {.lex_state = 57}, + [431] = {.lex_state = 57}, + [432] = {.lex_state = 57}, + [433] = {.lex_state = 57}, + [434] = {.lex_state = 57}, + [435] = {.lex_state = 56}, + [436] = {.lex_state = 57}, + [437] = {.lex_state = 57}, + [438] = {.lex_state = 57}, + [439] = {.lex_state = 57}, + [440] = {.lex_state = 57}, + [441] = {.lex_state = 56}, + [442] = {.lex_state = 57}, + [443] = {.lex_state = 57}, + [444] = {.lex_state = 57}, + [445] = {.lex_state = 57}, + [446] = {.lex_state = 57}, + [447] = {.lex_state = 57}, + [448] = {.lex_state = 57}, + [449] = {.lex_state = 57}, + [450] = {.lex_state = 57}, + [451] = {.lex_state = 57}, + [452] = {.lex_state = 57}, + [453] = {.lex_state = 57}, + [454] = {.lex_state = 57}, + [455] = {.lex_state = 57}, + [456] = {.lex_state = 57}, + [457] = {.lex_state = 57}, + [458] = {.lex_state = 57}, + [459] = {.lex_state = 57}, + [460] = {.lex_state = 57}, + [461] = {.lex_state = 56}, + [462] = {.lex_state = 57}, + [463] = {.lex_state = 57}, + [464] = {.lex_state = 57}, + [465] = {.lex_state = 57}, + [466] = {.lex_state = 57}, + [467] = {.lex_state = 57}, + [468] = {.lex_state = 57}, + [469] = {.lex_state = 57}, + [470] = {.lex_state = 57}, + [471] = {.lex_state = 57}, + [472] = {.lex_state = 57}, + [473] = {.lex_state = 57}, + [474] = {.lex_state = 57}, + [475] = {.lex_state = 57}, + [476] = {.lex_state = 57}, + [477] = {.lex_state = 57}, + [478] = {.lex_state = 57}, + [479] = {.lex_state = 57}, + [480] = {.lex_state = 55}, + [481] = {.lex_state = 57}, + [482] = {.lex_state = 57}, + [483] = {.lex_state = 57}, + [484] = {.lex_state = 55}, + [485] = {.lex_state = 57}, + [486] = {.lex_state = 57}, + [487] = {.lex_state = 57}, + [488] = {.lex_state = 57}, + [489] = {.lex_state = 57}, + [490] = {.lex_state = 55}, + [491] = {.lex_state = 57}, + [492] = {.lex_state = 55}, + [493] = {.lex_state = 55}, + [494] = {.lex_state = 55}, + [495] = {.lex_state = 55}, + [496] = {.lex_state = 55}, + [497] = {.lex_state = 55}, + [498] = {.lex_state = 57}, + [499] = {.lex_state = 55}, + [500] = {.lex_state = 55}, + [501] = {.lex_state = 55}, + [502] = {.lex_state = 55}, + [503] = {.lex_state = 55}, + [504] = {.lex_state = 55}, + [505] = {.lex_state = 55}, + [506] = {.lex_state = 55}, + [507] = {.lex_state = 55}, + [508] = {.lex_state = 55}, + [509] = {.lex_state = 55}, + [510] = {.lex_state = 55}, + [511] = {.lex_state = 55}, + [512] = {.lex_state = 55}, + [513] = {.lex_state = 55}, + [514] = {.lex_state = 55}, + [515] = {.lex_state = 55}, + [516] = {.lex_state = 55}, + [517] = {.lex_state = 57}, + [518] = {.lex_state = 57}, + [519] = {.lex_state = 55}, + [520] = {.lex_state = 55}, + [521] = {.lex_state = 55}, + [522] = {.lex_state = 57}, + [523] = {.lex_state = 55}, + [524] = {.lex_state = 55}, + [525] = {.lex_state = 55}, + [526] = {.lex_state = 55}, + [527] = {.lex_state = 55}, + [528] = {.lex_state = 55}, + [529] = {.lex_state = 55}, + [530] = {.lex_state = 57}, + [531] = {.lex_state = 57}, + [532] = {.lex_state = 57}, + [533] = {.lex_state = 57}, + [534] = {.lex_state = 54, .reserved_word_set_id = 14}, + [535] = {.lex_state = 57}, + [536] = {.lex_state = 55}, + [537] = {.lex_state = 54, .reserved_word_set_id = 14}, + [538] = {.lex_state = 55}, + [539] = {.lex_state = 57}, + [540] = {.lex_state = 0}, + [541] = {.lex_state = 57}, + [542] = {.lex_state = 57}, + [543] = {.lex_state = 57}, + [544] = {.lex_state = 55}, + [545] = {.lex_state = 55}, + [546] = {.lex_state = 0}, + [547] = {.lex_state = 4, .reserved_word_set_id = 1}, + [548] = {.lex_state = 4, .reserved_word_set_id = 1}, + [549] = {.lex_state = 4, .reserved_word_set_id = 1}, + [550] = {.lex_state = 4, .reserved_word_set_id = 1}, + [551] = {.lex_state = 4, .reserved_word_set_id = 1}, + [552] = {.lex_state = 4, .reserved_word_set_id = 1}, + [553] = {.lex_state = 4, .reserved_word_set_id = 1}, + [554] = {.lex_state = 4, .reserved_word_set_id = 1}, + [555] = {.lex_state = 4}, + [556] = {.lex_state = 4}, + [557] = {.lex_state = 4, .reserved_word_set_id = 1}, + [558] = {.lex_state = 4}, + [559] = {.lex_state = 55}, + [560] = {.lex_state = 4}, + [561] = {.lex_state = 4}, + [562] = {.lex_state = 54, .reserved_word_set_id = 1}, + [563] = {.lex_state = 4, .reserved_word_set_id = 1}, + [564] = {.lex_state = 4}, + [565] = {.lex_state = 4}, + [566] = {.lex_state = 4, .reserved_word_set_id = 1}, + [567] = {.lex_state = 4, .reserved_word_set_id = 1}, + [568] = {.lex_state = 4, .reserved_word_set_id = 1}, + [569] = {.lex_state = 4, .reserved_word_set_id = 1}, + [570] = {.lex_state = 4}, + [571] = {.lex_state = 4}, + [572] = {.lex_state = 4}, + [573] = {.lex_state = 4}, + [574] = {.lex_state = 4, .reserved_word_set_id = 1}, + [575] = {.lex_state = 4, .reserved_word_set_id = 1}, + [576] = {.lex_state = 4, .reserved_word_set_id = 1}, + [577] = {.lex_state = 55}, + [578] = {.lex_state = 55}, + [579] = {.lex_state = 55}, + [580] = {.lex_state = 55}, + [581] = {.lex_state = 56}, + [582] = {.lex_state = 54}, + [583] = {.lex_state = 55}, + [584] = {.lex_state = 56}, + [585] = {.lex_state = 55}, + [586] = {.lex_state = 55}, + [587] = {.lex_state = 55}, + [588] = {.lex_state = 55}, + [589] = {.lex_state = 55}, + [590] = {.lex_state = 55}, + [591] = {.lex_state = 55}, + [592] = {.lex_state = 55}, + [593] = {.lex_state = 56}, + [594] = {.lex_state = 55}, + [595] = {.lex_state = 4}, + [596] = {.lex_state = 4}, + [597] = {.lex_state = 54, .reserved_word_set_id = 1}, + [598] = {.lex_state = 4}, + [599] = {.lex_state = 4}, + [600] = {.lex_state = 55}, + [601] = {.lex_state = 4}, + [602] = {.lex_state = 54, .reserved_word_set_id = 1}, + [603] = {.lex_state = 55}, + [604] = {.lex_state = 55}, + [605] = {.lex_state = 55}, + [606] = {.lex_state = 55}, + [607] = {.lex_state = 4}, + [608] = {.lex_state = 55}, + [609] = {.lex_state = 55}, + [610] = {.lex_state = 55}, + [611] = {.lex_state = 55}, + [612] = {.lex_state = 4}, + [613] = {.lex_state = 55}, + [614] = {.lex_state = 55}, + [615] = {.lex_state = 55}, + [616] = {.lex_state = 55}, + [617] = {.lex_state = 4}, + [618] = {.lex_state = 55}, + [619] = {.lex_state = 4}, + [620] = {.lex_state = 55}, + [621] = {.lex_state = 55}, + [622] = {.lex_state = 55}, + [623] = {.lex_state = 55}, + [624] = {.lex_state = 55}, + [625] = {.lex_state = 55}, + [626] = {.lex_state = 4}, + [627] = {.lex_state = 4}, + [628] = {.lex_state = 55}, + [629] = {.lex_state = 4}, + [630] = {.lex_state = 55}, + [631] = {.lex_state = 4}, + [632] = {.lex_state = 4}, + [633] = {.lex_state = 4}, + [634] = {.lex_state = 4}, + [635] = {.lex_state = 55}, + [636] = {.lex_state = 55}, + [637] = {.lex_state = 55}, + [638] = {.lex_state = 55}, + [639] = {.lex_state = 55}, + [640] = {.lex_state = 55}, + [641] = {.lex_state = 55}, + [642] = {.lex_state = 55}, + [643] = {.lex_state = 55}, + [644] = {.lex_state = 55}, + [645] = {.lex_state = 55}, + [646] = {.lex_state = 55}, + [647] = {.lex_state = 4}, + [648] = {.lex_state = 4}, + [649] = {.lex_state = 55}, + [650] = {.lex_state = 4}, + [651] = {.lex_state = 55}, + [652] = {.lex_state = 55}, + [653] = {.lex_state = 55}, + [654] = {.lex_state = 55}, + [655] = {.lex_state = 55}, + [656] = {.lex_state = 4}, + [657] = {.lex_state = 55}, + [658] = {.lex_state = 55}, + [659] = {.lex_state = 55}, + [660] = {.lex_state = 55}, + [661] = {.lex_state = 55}, + [662] = {.lex_state = 55}, + [663] = {.lex_state = 55}, + [664] = {.lex_state = 55}, + [665] = {.lex_state = 55}, + [666] = {.lex_state = 55}, + [667] = {.lex_state = 4}, + [668] = {.lex_state = 55}, + [669] = {.lex_state = 4}, + [670] = {.lex_state = 55}, + [671] = {.lex_state = 55}, + [672] = {.lex_state = 55}, + [673] = {.lex_state = 55}, + [674] = {.lex_state = 55}, + [675] = {.lex_state = 55}, + [676] = {.lex_state = 55}, + [677] = {.lex_state = 55}, + [678] = {.lex_state = 55}, + [679] = {.lex_state = 55}, + [680] = {.lex_state = 55}, + [681] = {.lex_state = 55}, + [682] = {.lex_state = 55}, + [683] = {.lex_state = 55}, + [684] = {.lex_state = 55}, + [685] = {.lex_state = 55}, + [686] = {.lex_state = 55}, + [687] = {.lex_state = 4, .reserved_word_set_id = 1}, + [688] = {.lex_state = 55}, + [689] = {.lex_state = 55}, + [690] = {.lex_state = 55}, + [691] = {.lex_state = 56, .reserved_word_set_id = 1}, + [692] = {.lex_state = 56}, + [693] = {.lex_state = 55}, + [694] = {.lex_state = 55}, + [695] = {.lex_state = 55}, + [696] = {.lex_state = 55}, + [697] = {.lex_state = 55}, + [698] = {.lex_state = 55}, + [699] = {.lex_state = 55}, + [700] = {.lex_state = 55}, + [701] = {.lex_state = 55}, + [702] = {.lex_state = 55}, + [703] = {.lex_state = 55}, + [704] = {.lex_state = 55}, + [705] = {.lex_state = 4, .reserved_word_set_id = 1}, + [706] = {.lex_state = 55}, + [707] = {.lex_state = 55}, + [708] = {.lex_state = 55}, + [709] = {.lex_state = 55}, + [710] = {.lex_state = 55}, + [711] = {.lex_state = 55}, + [712] = {.lex_state = 55}, + [713] = {.lex_state = 55}, + [714] = {.lex_state = 55}, + [715] = {.lex_state = 55}, + [716] = {.lex_state = 55}, + [717] = {.lex_state = 55}, + [718] = {.lex_state = 55}, + [719] = {.lex_state = 55}, + [720] = {.lex_state = 55}, + [721] = {.lex_state = 55}, + [722] = {.lex_state = 55}, + [723] = {.lex_state = 55}, + [724] = {.lex_state = 4, .reserved_word_set_id = 1}, + [725] = {.lex_state = 55}, + [726] = {.lex_state = 55}, + [727] = {.lex_state = 55}, + [728] = {.lex_state = 55}, + [729] = {.lex_state = 55}, + [730] = {.lex_state = 55}, + [731] = {.lex_state = 55}, + [732] = {.lex_state = 4, .reserved_word_set_id = 1}, + [733] = {.lex_state = 4, .reserved_word_set_id = 1}, + [734] = {.lex_state = 55}, + [735] = {.lex_state = 55}, + [736] = {.lex_state = 55}, + [737] = {.lex_state = 55}, + [738] = {.lex_state = 55}, + [739] = {.lex_state = 55}, + [740] = {.lex_state = 55}, + [741] = {.lex_state = 55}, + [742] = {.lex_state = 55}, + [743] = {.lex_state = 4, .reserved_word_set_id = 1}, + [744] = {.lex_state = 55}, + [745] = {.lex_state = 55}, + [746] = {.lex_state = 55}, + [747] = {.lex_state = 55}, + [748] = {.lex_state = 55}, + [749] = {.lex_state = 55}, + [750] = {.lex_state = 55}, + [751] = {.lex_state = 55}, + [752] = {.lex_state = 55}, + [753] = {.lex_state = 55}, + [754] = {.lex_state = 55}, + [755] = {.lex_state = 55}, + [756] = {.lex_state = 55}, + [757] = {.lex_state = 55}, + [758] = {.lex_state = 55}, + [759] = {.lex_state = 55}, + [760] = {.lex_state = 56}, + [761] = {.lex_state = 55}, + [762] = {.lex_state = 55}, + [763] = {.lex_state = 55}, + [764] = {.lex_state = 55}, + [765] = {.lex_state = 55}, + [766] = {.lex_state = 55}, + [767] = {.lex_state = 55}, + [768] = {.lex_state = 55}, + [769] = {.lex_state = 55}, + [770] = {.lex_state = 55}, + [771] = {.lex_state = 55}, + [772] = {.lex_state = 4, .reserved_word_set_id = 1}, + [773] = {.lex_state = 4}, + [774] = {.lex_state = 4, .reserved_word_set_id = 1}, + [775] = {.lex_state = 55}, + [776] = {.lex_state = 55}, + [777] = {.lex_state = 55}, + [778] = {.lex_state = 55}, + [779] = {.lex_state = 4, .reserved_word_set_id = 1}, + [780] = {.lex_state = 4, .reserved_word_set_id = 1}, + [781] = {.lex_state = 4, .reserved_word_set_id = 1}, + [782] = {.lex_state = 4, .reserved_word_set_id = 1}, + [783] = {.lex_state = 4, .reserved_word_set_id = 1}, + [784] = {.lex_state = 56}, + [785] = {.lex_state = 4, .reserved_word_set_id = 1}, + [786] = {.lex_state = 55}, + [787] = {.lex_state = 56}, + [788] = {.lex_state = 54, .reserved_word_set_id = 1}, + [789] = {.lex_state = 55}, + [790] = {.lex_state = 4, .reserved_word_set_id = 1}, + [791] = {.lex_state = 4, .reserved_word_set_id = 1}, + [792] = {.lex_state = 4, .reserved_word_set_id = 1}, + [793] = {.lex_state = 4}, + [794] = {.lex_state = 4, .reserved_word_set_id = 1}, + [795] = {.lex_state = 54}, + [796] = {.lex_state = 4, .reserved_word_set_id = 1}, + [797] = {.lex_state = 4, .reserved_word_set_id = 1}, + [798] = {.lex_state = 4, .reserved_word_set_id = 1}, + [799] = {.lex_state = 55}, + [800] = {.lex_state = 56}, + [801] = {.lex_state = 4, .reserved_word_set_id = 1}, + [802] = {.lex_state = 55}, + [803] = {.lex_state = 4, .reserved_word_set_id = 1}, + [804] = {.lex_state = 4, .reserved_word_set_id = 1}, + [805] = {.lex_state = 55}, + [806] = {.lex_state = 4, .reserved_word_set_id = 1}, + [807] = {.lex_state = 4, .reserved_word_set_id = 1}, + [808] = {.lex_state = 4, .reserved_word_set_id = 1}, + [809] = {.lex_state = 55}, + [810] = {.lex_state = 4, .reserved_word_set_id = 1}, + [811] = {.lex_state = 55}, + [812] = {.lex_state = 55}, + [813] = {.lex_state = 55}, + [814] = {.lex_state = 4, .reserved_word_set_id = 1}, + [815] = {.lex_state = 4, .reserved_word_set_id = 1}, + [816] = {.lex_state = 4, .reserved_word_set_id = 1}, + [817] = {.lex_state = 4, .reserved_word_set_id = 1}, + [818] = {.lex_state = 55}, + [819] = {.lex_state = 55}, + [820] = {.lex_state = 55}, + [821] = {.lex_state = 4, .reserved_word_set_id = 1}, + [822] = {.lex_state = 4, .reserved_word_set_id = 1}, + [823] = {.lex_state = 4, .reserved_word_set_id = 1}, + [824] = {.lex_state = 55}, + [825] = {.lex_state = 4, .reserved_word_set_id = 1}, + [826] = {.lex_state = 4, .reserved_word_set_id = 1}, + [827] = {.lex_state = 54, .reserved_word_set_id = 1}, + [828] = {.lex_state = 4, .reserved_word_set_id = 1}, + [829] = {.lex_state = 4, .reserved_word_set_id = 1}, + [830] = {.lex_state = 4, .reserved_word_set_id = 1}, + [831] = {.lex_state = 54, .reserved_word_set_id = 1}, + [832] = {.lex_state = 4, .reserved_word_set_id = 1}, + [833] = {.lex_state = 4, .reserved_word_set_id = 1}, + [834] = {.lex_state = 4, .reserved_word_set_id = 1}, + [835] = {.lex_state = 4, .reserved_word_set_id = 1}, + [836] = {.lex_state = 4, .reserved_word_set_id = 1}, + [837] = {.lex_state = 4, .reserved_word_set_id = 1}, + [838] = {.lex_state = 4, .reserved_word_set_id = 1}, + [839] = {.lex_state = 4, .reserved_word_set_id = 1}, + [840] = {.lex_state = 4, .reserved_word_set_id = 1}, + [841] = {.lex_state = 0}, + [842] = {.lex_state = 4, .reserved_word_set_id = 1}, + [843] = {.lex_state = 0}, + [844] = {.lex_state = 54, .reserved_word_set_id = 1}, + [845] = {.lex_state = 4, .reserved_word_set_id = 1}, + [846] = {.lex_state = 54}, + [847] = {.lex_state = 4, .reserved_word_set_id = 1}, + [848] = {.lex_state = 4, .reserved_word_set_id = 1}, + [849] = {.lex_state = 54, .reserved_word_set_id = 1}, + [850] = {.lex_state = 4, .reserved_word_set_id = 1}, + [851] = {.lex_state = 4, .reserved_word_set_id = 1}, + [852] = {.lex_state = 54}, + [853] = {.lex_state = 0}, + [854] = {.lex_state = 4, .reserved_word_set_id = 1}, + [855] = {.lex_state = 4, .reserved_word_set_id = 1}, + [856] = {.lex_state = 54}, + [857] = {.lex_state = 4}, + [858] = {.lex_state = 0}, + [859] = {.lex_state = 4, .reserved_word_set_id = 1}, + [860] = {.lex_state = 4}, + [861] = {.lex_state = 4, .reserved_word_set_id = 1}, + [862] = {.lex_state = 4, .reserved_word_set_id = 1}, + [863] = {.lex_state = 4}, + [864] = {.lex_state = 4, .reserved_word_set_id = 1}, + [865] = {.lex_state = 4, .reserved_word_set_id = 1}, + [866] = {.lex_state = 4, .reserved_word_set_id = 1}, + [867] = {.lex_state = 4, .reserved_word_set_id = 1}, + [868] = {.lex_state = 4, .reserved_word_set_id = 1}, + [869] = {.lex_state = 55}, + [870] = {.lex_state = 4, .reserved_word_set_id = 1}, + [871] = {.lex_state = 54}, + [872] = {.lex_state = 4, .reserved_word_set_id = 1}, + [873] = {.lex_state = 4, .reserved_word_set_id = 1}, + [874] = {.lex_state = 4, .reserved_word_set_id = 1}, + [875] = {.lex_state = 4, .reserved_word_set_id = 1}, + [876] = {.lex_state = 4, .reserved_word_set_id = 1}, + [877] = {.lex_state = 4, .reserved_word_set_id = 1}, + [878] = {.lex_state = 4, .reserved_word_set_id = 1}, + [879] = {.lex_state = 4, .reserved_word_set_id = 1}, + [880] = {.lex_state = 4, .reserved_word_set_id = 1}, + [881] = {.lex_state = 4, .reserved_word_set_id = 1}, + [882] = {.lex_state = 4, .reserved_word_set_id = 1}, + [883] = {.lex_state = 4, .reserved_word_set_id = 1}, + [884] = {.lex_state = 4, .reserved_word_set_id = 1}, + [885] = {.lex_state = 0}, + [886] = {.lex_state = 4, .reserved_word_set_id = 1}, + [887] = {.lex_state = 54, .reserved_word_set_id = 1}, + [888] = {.lex_state = 4, .reserved_word_set_id = 1}, + [889] = {.lex_state = 4, .reserved_word_set_id = 1}, + [890] = {.lex_state = 4, .reserved_word_set_id = 1}, + [891] = {.lex_state = 4, .reserved_word_set_id = 1}, + [892] = {.lex_state = 4, .reserved_word_set_id = 1}, + [893] = {.lex_state = 0}, + [894] = {.lex_state = 54, .reserved_word_set_id = 1}, + [895] = {.lex_state = 0}, + [896] = {.lex_state = 4, .reserved_word_set_id = 1}, + [897] = {.lex_state = 4, .reserved_word_set_id = 1}, + [898] = {.lex_state = 4, .reserved_word_set_id = 1}, + [899] = {.lex_state = 4, .reserved_word_set_id = 1}, + [900] = {.lex_state = 0}, + [901] = {.lex_state = 55}, + [902] = {.lex_state = 55}, + [903] = {.lex_state = 55}, + [904] = {.lex_state = 55}, + [905] = {.lex_state = 55}, + [906] = {.lex_state = 55}, + [907] = {.lex_state = 55}, + [908] = {.lex_state = 55}, + [909] = {.lex_state = 55}, + [910] = {.lex_state = 55}, + [911] = {.lex_state = 55}, + [912] = {.lex_state = 55}, + [913] = {.lex_state = 55}, + [914] = {.lex_state = 55}, + [915] = {.lex_state = 55}, + [916] = {.lex_state = 55}, + [917] = {.lex_state = 55}, + [918] = {.lex_state = 54, .reserved_word_set_id = 1}, + [919] = {.lex_state = 55}, + [920] = {.lex_state = 55}, + [921] = {.lex_state = 55}, + [922] = {.lex_state = 55}, + [923] = {.lex_state = 55}, + [924] = {.lex_state = 55}, + [925] = {.lex_state = 55}, + [926] = {.lex_state = 55}, + [927] = {.lex_state = 0}, + [928] = {.lex_state = 55}, + [929] = {.lex_state = 55}, + [930] = {.lex_state = 55}, + [931] = {.lex_state = 55}, + [932] = {.lex_state = 55}, + [933] = {.lex_state = 55}, + [934] = {.lex_state = 55}, + [935] = {.lex_state = 55}, + [936] = {.lex_state = 55}, + [937] = {.lex_state = 55}, + [938] = {.lex_state = 55}, + [939] = {.lex_state = 55}, + [940] = {.lex_state = 55}, + [941] = {.lex_state = 55}, + [942] = {.lex_state = 55}, + [943] = {.lex_state = 55}, + [944] = {.lex_state = 55}, + [945] = {.lex_state = 55}, + [946] = {.lex_state = 55}, + [947] = {.lex_state = 55}, + [948] = {.lex_state = 55}, + [949] = {.lex_state = 55}, + [950] = {.lex_state = 55}, + [951] = {.lex_state = 55}, + [952] = {.lex_state = 55}, + [953] = {.lex_state = 55}, + [954] = {.lex_state = 55}, + [955] = {.lex_state = 55}, + [956] = {.lex_state = 55}, + [957] = {.lex_state = 55}, + [958] = {.lex_state = 55}, + [959] = {.lex_state = 55}, + [960] = {.lex_state = 55}, + [961] = {.lex_state = 54}, + [962] = {.lex_state = 55}, + [963] = {.lex_state = 55}, + [964] = {.lex_state = 55}, + [965] = {.lex_state = 55}, + [966] = {.lex_state = 55}, + [967] = {.lex_state = 55}, + [968] = {.lex_state = 55}, + [969] = {.lex_state = 55}, + [970] = {.lex_state = 0}, + [971] = {.lex_state = 55}, + [972] = {.lex_state = 55}, + [973] = {.lex_state = 0, .external_lex_state = 2}, + [974] = {.lex_state = 55}, + [975] = {.lex_state = 55}, + [976] = {.lex_state = 55}, + [977] = {.lex_state = 55}, + [978] = {.lex_state = 55}, + [979] = {.lex_state = 55}, + [980] = {.lex_state = 55}, + [981] = {.lex_state = 55}, + [982] = {.lex_state = 4, .reserved_word_set_id = 1}, + [983] = {.lex_state = 55}, + [984] = {.lex_state = 55}, + [985] = {.lex_state = 55}, + [986] = {.lex_state = 55}, + [987] = {.lex_state = 55}, + [988] = {.lex_state = 55}, + [989] = {.lex_state = 55}, + [990] = {.lex_state = 55}, + [991] = {.lex_state = 55}, + [992] = {.lex_state = 55}, + [993] = {.lex_state = 55}, + [994] = {.lex_state = 55}, + [995] = {.lex_state = 55}, + [996] = {.lex_state = 55}, + [997] = {.lex_state = 55}, + [998] = {.lex_state = 55}, + [999] = {.lex_state = 55}, + [1000] = {.lex_state = 55}, + [1001] = {.lex_state = 55}, + [1002] = {.lex_state = 55}, + [1003] = {.lex_state = 55}, + [1004] = {.lex_state = 55}, + [1005] = {.lex_state = 55}, + [1006] = {.lex_state = 55}, + [1007] = {.lex_state = 55}, + [1008] = {.lex_state = 55}, + [1009] = {.lex_state = 55}, + [1010] = {.lex_state = 55}, + [1011] = {.lex_state = 55}, + [1012] = {.lex_state = 0}, + [1013] = {.lex_state = 55}, + [1014] = {.lex_state = 55}, + [1015] = {.lex_state = 0, .external_lex_state = 2}, + [1016] = {.lex_state = 55}, + [1017] = {.lex_state = 55}, + [1018] = {.lex_state = 55}, + [1019] = {.lex_state = 55}, + [1020] = {.lex_state = 55}, + [1021] = {.lex_state = 55}, + [1022] = {.lex_state = 55}, + [1023] = {.lex_state = 55}, + [1024] = {.lex_state = 55}, + [1025] = {.lex_state = 55}, + [1026] = {.lex_state = 55}, + [1027] = {.lex_state = 55}, + [1028] = {.lex_state = 55}, + [1029] = {.lex_state = 55}, + [1030] = {.lex_state = 55}, + [1031] = {.lex_state = 55}, + [1032] = {.lex_state = 0}, + [1033] = {.lex_state = 55}, + [1034] = {.lex_state = 55}, + [1035] = {.lex_state = 55}, + [1036] = {.lex_state = 55}, + [1037] = {.lex_state = 4, .reserved_word_set_id = 1}, + [1038] = {.lex_state = 55}, + [1039] = {.lex_state = 55}, + [1040] = {.lex_state = 55}, + [1041] = {.lex_state = 55}, + [1042] = {.lex_state = 55}, + [1043] = {.lex_state = 55}, + [1044] = {.lex_state = 55}, + [1045] = {.lex_state = 55}, + [1046] = {.lex_state = 55}, + [1047] = {.lex_state = 55}, + [1048] = {.lex_state = 0}, + [1049] = {.lex_state = 55}, + [1050] = {.lex_state = 55}, + [1051] = {.lex_state = 55}, + [1052] = {.lex_state = 55}, + [1053] = {.lex_state = 55}, + [1054] = {.lex_state = 4, .reserved_word_set_id = 1}, + [1055] = {.lex_state = 55}, + [1056] = {.lex_state = 55}, + [1057] = {.lex_state = 55}, + [1058] = {.lex_state = 0}, + [1059] = {.lex_state = 0}, + [1060] = {.lex_state = 55}, + [1061] = {.lex_state = 55}, + [1062] = {.lex_state = 55}, + [1063] = {.lex_state = 55}, + [1064] = {.lex_state = 55}, + [1065] = {.lex_state = 55}, + [1066] = {.lex_state = 55}, + [1067] = {.lex_state = 0}, + [1068] = {.lex_state = 55}, + [1069] = {.lex_state = 55}, + [1070] = {.lex_state = 55}, + [1071] = {.lex_state = 55}, + [1072] = {.lex_state = 55}, + [1073] = {.lex_state = 55}, + [1074] = {.lex_state = 55}, + [1075] = {.lex_state = 55}, + [1076] = {.lex_state = 4, .reserved_word_set_id = 1}, + [1077] = {.lex_state = 55}, + [1078] = {.lex_state = 55}, + [1079] = {.lex_state = 55}, + [1080] = {.lex_state = 0}, + [1081] = {.lex_state = 55}, + [1082] = {.lex_state = 0}, + [1083] = {.lex_state = 55}, + [1084] = {.lex_state = 0}, + [1085] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1086] = {.lex_state = 0}, + [1087] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1088] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1089] = {.lex_state = 0}, + [1090] = {.lex_state = 0}, + [1091] = {.lex_state = 0}, + [1092] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1093] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1094] = {.lex_state = 0}, + [1095] = {.lex_state = 54}, + [1096] = {.lex_state = 54}, + [1097] = {.lex_state = 0}, + [1098] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1099] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1100] = {.lex_state = 0}, + [1101] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1102] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1103] = {.lex_state = 0}, + [1104] = {.lex_state = 0}, + [1105] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1106] = {.lex_state = 0}, + [1107] = {.lex_state = 0}, + [1108] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1109] = {.lex_state = 0}, + [1110] = {.lex_state = 0}, + [1111] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1112] = {.lex_state = 0}, + [1113] = {.lex_state = 0}, + [1114] = {.lex_state = 0}, + [1115] = {.lex_state = 0}, + [1116] = {.lex_state = 0}, + [1117] = {.lex_state = 0}, + [1118] = {.lex_state = 0}, + [1119] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1120] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1121] = {.lex_state = 0}, + [1122] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1123] = {.lex_state = 0}, + [1124] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1125] = {.lex_state = 0}, + [1126] = {.lex_state = 54}, + [1127] = {.lex_state = 0}, + [1128] = {.lex_state = 54}, + [1129] = {.lex_state = 0}, + [1130] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1131] = {.lex_state = 0}, + [1132] = {.lex_state = 0}, + [1133] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1134] = {.lex_state = 0}, + [1135] = {.lex_state = 0}, + [1136] = {.lex_state = 0}, + [1137] = {.lex_state = 0}, + [1138] = {.lex_state = 54}, + [1139] = {.lex_state = 54}, + [1140] = {.lex_state = 54}, + [1141] = {.lex_state = 54}, + [1142] = {.lex_state = 54}, + [1143] = {.lex_state = 0}, + [1144] = {.lex_state = 54}, + [1145] = {.lex_state = 0}, + [1146] = {.lex_state = 0}, + [1147] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1148] = {.lex_state = 0}, + [1149] = {.lex_state = 0}, + [1150] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1151] = {.lex_state = 54, .reserved_word_set_id = 1}, + [1152] = {.lex_state = 54}, + [1153] = {.lex_state = 0}, + [1154] = {.lex_state = 54}, + [1155] = {.lex_state = 54, .reserved_word_set_id = 1}, +}; + +static const TSSymbol ts_reserved_words[15][MAX_RESERVED_WORD_SET_SIZE] = { + [1] = { + anon_sym_use, + anon_sym_as, + anon_sym_pub, + anon_sym_distinct, + anon_sym_bits, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_match, + anon_sym_loop, + anon_sym_for, + anon_sym_in, + anon_sym_or, + anon_sym_and, + anon_sym_not, + anon_sym_true, + anon_sym_false, + sym_nil_literal, + sym_default_expression, + }, + [2] = { + anon_sym_use, + anon_sym_as, + anon_sym_pub, + anon_sym_distinct, + anon_sym_else, + anon_sym_in, + anon_sym_or, + anon_sym_and, + }, + [3] = { + anon_sym_use, + anon_sym_as, + anon_sym_pub, + anon_sym_else, + anon_sym_in, + anon_sym_or, + anon_sym_and, + }, + [4] = { + anon_sym_use, + anon_sym_as, + anon_sym_pub, + anon_sym_distinct, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_match, + anon_sym_loop, + anon_sym_for, + anon_sym_in, + anon_sym_not, + anon_sym_true, + anon_sym_false, + sym_nil_literal, + sym_default_expression, + }, + [5] = { + anon_sym_use, + anon_sym_as, + anon_sym_pub, + anon_sym_distinct, + anon_sym_bits, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_else, + anon_sym_in, + anon_sym_or, + anon_sym_and, + }, + [6] = { + anon_sym_use, + anon_sym_as, + anon_sym_pub, + anon_sym_distinct, + anon_sym_bits, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_match, + anon_sym_loop, + anon_sym_for, + anon_sym_in, + anon_sym_not, + sym_default_expression, + }, + [7] = { + anon_sym_use, + anon_sym_as, + anon_sym_pub, + anon_sym_distinct, + anon_sym_bits, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_continue, + anon_sym_else, + anon_sym_in, + anon_sym_or, + anon_sym_and, + }, + [8] = { + anon_sym_use, + anon_sym_as, + anon_sym_pub, + anon_sym_distinct, + anon_sym_bits, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_else, + anon_sym_in, + anon_sym_or, + anon_sym_and, + }, + [9] = { + anon_sym_use, + anon_sym_as, + anon_sym_pub, + anon_sym_distinct, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_match, + anon_sym_loop, + anon_sym_for, + anon_sym_in, + anon_sym_or, + anon_sym_and, + anon_sym_not, + anon_sym_true, + anon_sym_false, + sym_nil_literal, + sym_default_expression, + }, + [10] = { + anon_sym_use, + anon_sym_as, + anon_sym_pub, + anon_sym_distinct, + anon_sym_bits, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_else, + anon_sym_in, + anon_sym_or, + anon_sym_and, + anon_sym_not, + }, + [11] = { + anon_sym_as, + anon_sym_distinct, + anon_sym_bits, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_else, + anon_sym_in, + anon_sym_or, + anon_sym_and, + }, + [12] = { + anon_sym_use, + anon_sym_as, + anon_sym_pub, + anon_sym_distinct, + anon_sym_bits, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_else, + anon_sym_match, + anon_sym_loop, + anon_sym_for, + anon_sym_in, + anon_sym_and, + anon_sym_not, + sym_default_expression, + }, + [13] = { + anon_sym_use, + anon_sym_as, + anon_sym_pub, + anon_sym_distinct, + anon_sym_bits, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_match, + anon_sym_loop, + anon_sym_for, + anon_sym_in, + anon_sym_or, + anon_sym_and, + anon_sym_not, + sym_default_expression, + }, + [14] = { + anon_sym_use, + anon_sym_as, + anon_sym_pub, + anon_sym_distinct, + anon_sym_bits, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_match, + anon_sym_loop, + anon_sym_for, + anon_sym_in, + anon_sym_or, + anon_sym_and, + anon_sym_not, + anon_sym_true, + anon_sym_false, + sym_nil_literal, + sym_default_expression, + }, +}; + +static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { + [STATE(0)] = { + [ts_builtin_sym_end] = ACTIONS(1), + [sym_identifier] = ACTIONS(1), + [anon_sym_use] = ACTIONS(1), + [anon_sym_as] = ACTIONS(1), + [anon_sym_DOT] = ACTIONS(1), + [anon_sym_LBRACE] = ACTIONS(1), + [anon_sym_COMMA] = ACTIONS(1), + [anon_sym_RBRACE] = ACTIONS(1), + [anon_sym_DOT_DOT] = ACTIONS(1), + [anon_sym_pub] = ACTIONS(1), + [anon_sym_COLON_COLON] = ACTIONS(1), + [anon_sym_COLON_EQ] = ACTIONS(1), + [anon_sym_COLON] = ACTIONS(1), + [anon_sym_EQ] = ACTIONS(1), + [anon_sym_distinct] = ACTIONS(1), + [anon_sym_DASH_GT] = ACTIONS(1), + [anon_sym_EQ_GT] = ACTIONS(1), + [anon_sym_BANG] = ACTIONS(1), + [anon_sym_QMARK] = ACTIONS(1), + [anon_sym_LBRACK] = ACTIONS(1), + [anon_sym_RBRACK] = ACTIONS(1), + [anon_sym_LPAREN] = ACTIONS(1), + [anon_sym_RPAREN] = ACTIONS(1), + [anon_sym_LT] = ACTIONS(1), + [anon_sym_GT] = ACTIONS(1), + [anon_sym_AMP] = ACTIONS(1), + [anon_sym_PIPE] = ACTIONS(1), + [anon_sym_bits] = ACTIONS(1), + [anon_sym_f32] = ACTIONS(1), + [anon_sym_f64] = ACTIONS(1), + [anon_sym_bit] = ACTIONS(1), + [anon_sym_chr] = ACTIONS(1), + [anon_sym_str] = ACTIONS(1), + [anon_sym_nvr] = ACTIONS(1), + [anon_sym_i8] = ACTIONS(1), + [anon_sym_i16] = ACTIONS(1), + [anon_sym_i32] = ACTIONS(1), + [anon_sym_i64] = ACTIONS(1), + [anon_sym_u8] = ACTIONS(1), + [anon_sym_u16] = ACTIONS(1), + [anon_sym_u32] = ACTIONS(1), + [anon_sym_u64] = ACTIONS(1), + [anon_sym_AT] = ACTIONS(1), + [anon_sym_return] = ACTIONS(1), + [anon_sym_break] = ACTIONS(1), + [anon_sym_continue] = ACTIONS(1), + [anon_sym_BQUOTE] = ACTIONS(1), + [anon_sym_if] = ACTIONS(1), + [anon_sym_else] = ACTIONS(1), + [anon_sym_match] = ACTIONS(1), + [anon_sym_loop] = ACTIONS(1), + [anon_sym_for] = ACTIONS(1), + [anon_sym_in] = ACTIONS(1), + [anon_sym_or] = ACTIONS(1), + [anon_sym__] = ACTIONS(1), + [anon_sym_DOT_DOT_DOT] = ACTIONS(1), + [anon_sym_PIPE_GT] = ACTIONS(1), + [anon_sym_PLUS_EQ] = ACTIONS(1), + [anon_sym_DASH_EQ] = ACTIONS(1), + [anon_sym_STAR_EQ] = ACTIONS(1), + [anon_sym_SLASH_EQ] = ACTIONS(1), + [anon_sym_PERCENT_EQ] = ACTIONS(1), + [anon_sym_AMP_EQ] = ACTIONS(1), + [anon_sym_CARET_EQ] = ACTIONS(1), + [anon_sym_PIPE_EQ] = ACTIONS(1), + [anon_sym_DOT_DOT_LT] = ACTIONS(1), + [anon_sym_DOT_DOT_EQ] = ACTIONS(1), + [anon_sym_and] = ACTIONS(1), + [anon_sym_LT_EQ] = ACTIONS(1), + [anon_sym_GT_EQ] = ACTIONS(1), + [anon_sym_EQ_EQ] = ACTIONS(1), + [anon_sym_CARET] = ACTIONS(1), + [aux_sym_binary_expression_token1] = ACTIONS(1), + [anon_sym_PLUS] = ACTIONS(1), + [anon_sym_DASH] = ACTIONS(1), + [aux_sym_binary_expression_token2] = ACTIONS(1), + [anon_sym_STAR] = ACTIONS(1), + [anon_sym_SLASH] = ACTIONS(1), + [anon_sym_PERCENT] = ACTIONS(1), + [aux_sym_binary_expression_token3] = ACTIONS(1), + [anon_sym_not] = ACTIONS(1), + [anon_sym_TILDE] = ACTIONS(1), + [anon_sym_true] = ACTIONS(1), + [anon_sym_false] = ACTIONS(1), + [sym_nil_literal] = ACTIONS(1), + [sym_default_expression] = ACTIONS(1), + [sym_integer_literal] = ACTIONS(1), + [sym_float_literal] = ACTIONS(1), + [sym_string_literal] = ACTIONS(1), + [sym_character_literal] = ACTIONS(1), + [sym_comment] = ACTIONS(3), + [sym__direct_pipeline_continuation] = ACTIONS(1), + [sym__aggregate_pipeline_continuation] = ACTIONS(1), + [sym__comparison_continuation] = ACTIONS(1), + [sym__newline] = ACTIONS(1), + [anon_sym_SEMI] = ACTIONS(1), + [sym__and_continuation] = ACTIONS(1), + [sym__or_continuation] = ACTIONS(1), + [sym__trailing_dot_float] = ACTIONS(1), + }, + [STATE(1)] = { + [sym_source_file] = STATE(1115), + [sym_module_item] = STATE(609), + [sym_use_declaration] = STATE(977), + [sym_pub_declaration] = STATE(977), + [sym_expression] = STATE(977), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1100), + [sym_product_pattern] = STATE(1100), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(530), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(530), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(32), + [ts_builtin_sym_end] = ACTIONS(5), + [sym_identifier] = ACTIONS(7), + [anon_sym_use] = ACTIONS(9), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_pub] = ACTIONS(13), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(57), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(2)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(1118), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pattern] = STATE(1042), + [sym_pattern_atom] = STATE(601), + [sym_unit_pattern] = STATE(632), + [sym_tuple_pattern] = STATE(773), + [sym_product_pattern] = STATE(773), + [sym_sum_pattern] = STATE(632), + [sym_bits_pattern] = STATE(632), + [sym_array_pattern] = STATE(632), + [sym_array_pattern_entry] = STATE(683), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(719), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(272), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(272), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(27), + [sym_identifier] = ACTIONS(59), + [anon_sym_LBRACE] = ACTIONS(61), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(63), + [anon_sym_RBRACK] = ACTIONS(65), + [anon_sym_LPAREN] = ACTIONS(67), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(71), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym__] = ACTIONS(81), + [anon_sym_DOT_DOT_DOT] = ACTIONS(83), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(85), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(87), + [sym_character_literal] = ACTIONS(87), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(89), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(3)] = { + [sym_expression] = STATE(1075), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(1045), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pattern] = STATE(906), + [sym_pattern_atom] = STATE(601), + [sym_unit_pattern] = STATE(632), + [sym_tuple_pattern] = STATE(793), + [sym_product_pattern] = STATE(793), + [sym_sum_pattern] = STATE(632), + [sym_bits_pattern] = STATE(632), + [sym_array_pattern] = STATE(632), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(272), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(272), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(8), + [sym_identifier] = ACTIONS(91), + [anon_sym_LBRACE] = ACTIONS(61), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(63), + [anon_sym_LPAREN] = ACTIONS(93), + [anon_sym_RPAREN] = ACTIONS(95), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(71), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym__] = ACTIONS(81), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(85), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(87), + [sym_character_literal] = ACTIONS(87), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(101), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(4)] = { + [sym_expression] = STATE(1075), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(1045), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pattern] = STATE(906), + [sym_pattern_atom] = STATE(601), + [sym_unit_pattern] = STATE(632), + [sym_tuple_pattern] = STATE(793), + [sym_product_pattern] = STATE(793), + [sym_sum_pattern] = STATE(632), + [sym_bits_pattern] = STATE(632), + [sym_array_pattern] = STATE(632), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(272), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(272), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(8), + [sym_identifier] = ACTIONS(91), + [anon_sym_LBRACE] = ACTIONS(61), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(63), + [anon_sym_LPAREN] = ACTIONS(93), + [anon_sym_RPAREN] = ACTIONS(103), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(71), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym__] = ACTIONS(81), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(85), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(87), + [sym_character_literal] = ACTIONS(87), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(101), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(5)] = { + [sym_expression] = STATE(1075), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(1045), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pattern] = STATE(906), + [sym_pattern_atom] = STATE(601), + [sym_unit_pattern] = STATE(632), + [sym_tuple_pattern] = STATE(793), + [sym_product_pattern] = STATE(793), + [sym_sum_pattern] = STATE(632), + [sym_bits_pattern] = STATE(632), + [sym_array_pattern] = STATE(632), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(272), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(272), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(8), + [sym_identifier] = ACTIONS(91), + [anon_sym_LBRACE] = ACTIONS(61), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(63), + [anon_sym_LPAREN] = ACTIONS(93), + [anon_sym_RPAREN] = ACTIONS(105), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(71), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym__] = ACTIONS(81), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(85), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(87), + [sym_character_literal] = ACTIONS(87), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(101), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(6)] = { + [sym_expression] = STATE(1075), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(1045), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pattern] = STATE(906), + [sym_pattern_atom] = STATE(601), + [sym_unit_pattern] = STATE(632), + [sym_tuple_pattern] = STATE(793), + [sym_product_pattern] = STATE(793), + [sym_sum_pattern] = STATE(632), + [sym_bits_pattern] = STATE(632), + [sym_array_pattern] = STATE(632), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(272), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(272), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(8), + [sym_identifier] = ACTIONS(91), + [anon_sym_LBRACE] = ACTIONS(61), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(63), + [anon_sym_LPAREN] = ACTIONS(93), + [anon_sym_RPAREN] = ACTIONS(107), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(71), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym__] = ACTIONS(81), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(85), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(87), + [sym_character_literal] = ACTIONS(87), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(101), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(7)] = { + [sym_expression] = STATE(1075), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(1045), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pattern] = STATE(906), + [sym_pattern_atom] = STATE(601), + [sym_unit_pattern] = STATE(632), + [sym_tuple_pattern] = STATE(793), + [sym_product_pattern] = STATE(793), + [sym_sum_pattern] = STATE(632), + [sym_bits_pattern] = STATE(632), + [sym_array_pattern] = STATE(632), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(272), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(272), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(8), + [sym_identifier] = ACTIONS(91), + [anon_sym_LBRACE] = ACTIONS(61), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(63), + [anon_sym_LPAREN] = ACTIONS(93), + [anon_sym_RPAREN] = ACTIONS(109), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(71), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym__] = ACTIONS(81), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(85), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(87), + [sym_character_literal] = ACTIONS(87), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(101), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(8)] = { + [sym_expression] = STATE(916), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(921), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pattern] = STATE(933), + [sym_pattern_atom] = STATE(601), + [sym_unit_pattern] = STATE(632), + [sym_tuple_pattern] = STATE(793), + [sym_product_pattern] = STATE(793), + [sym_sum_pattern] = STATE(632), + [sym_bits_pattern] = STATE(632), + [sym_array_pattern] = STATE(632), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(272), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(272), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(91), + [anon_sym_LBRACE] = ACTIONS(61), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(63), + [anon_sym_LPAREN] = ACTIONS(93), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(71), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym__] = ACTIONS(81), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(85), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(87), + [sym_character_literal] = ACTIONS(87), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(9)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(1118), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(719), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(46), + [sym_identifier] = ACTIONS(113), + [anon_sym_LBRACE] = ACTIONS(115), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(117), + [anon_sym_RBRACK] = ACTIONS(119), + [anon_sym_LPAREN] = ACTIONS(121), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(123), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(127), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(10)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(1118), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(719), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(46), + [sym_identifier] = ACTIONS(113), + [anon_sym_LBRACE] = ACTIONS(115), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(117), + [anon_sym_RBRACK] = ACTIONS(129), + [anon_sym_LPAREN] = ACTIONS(121), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(123), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(127), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(11)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(1118), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(719), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(46), + [sym_identifier] = ACTIONS(113), + [anon_sym_LBRACE] = ACTIONS(115), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(117), + [anon_sym_RBRACK] = ACTIONS(131), + [anon_sym_LPAREN] = ACTIONS(121), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(123), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(127), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(12)] = { + [sym_expression] = STATE(638), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(1127), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_product_pattern_field] = STATE(766), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(69), + [sym_identifier] = ACTIONS(133), + [anon_sym_LBRACE] = ACTIONS(115), + [anon_sym_RBRACE] = ACTIONS(135), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(117), + [anon_sym_LPAREN] = ACTIONS(137), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(123), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(139), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(13)] = { + [sym_expression] = STATE(638), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(1127), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_product_pattern_field] = STATE(766), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(71), + [sym_identifier] = ACTIONS(133), + [anon_sym_LBRACE] = ACTIONS(115), + [anon_sym_RBRACE] = ACTIONS(141), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(117), + [anon_sym_LPAREN] = ACTIONS(137), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(123), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(143), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(14)] = { + [sym_expression] = STATE(1075), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(1045), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(17), + [sym_identifier] = ACTIONS(145), + [anon_sym_LBRACE] = ACTIONS(115), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(117), + [anon_sym_LPAREN] = ACTIONS(147), + [anon_sym_RPAREN] = ACTIONS(95), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(123), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(149), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(15)] = { + [sym_expression] = STATE(638), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(1127), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(85), + [sym_identifier] = ACTIONS(151), + [anon_sym_LBRACE] = ACTIONS(115), + [anon_sym_RBRACE] = ACTIONS(153), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(117), + [anon_sym_LPAREN] = ACTIONS(137), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(123), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(155), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(16)] = { + [sym_expression] = STATE(1075), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(1045), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(17), + [sym_identifier] = ACTIONS(145), + [anon_sym_LBRACE] = ACTIONS(115), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(117), + [anon_sym_LPAREN] = ACTIONS(147), + [anon_sym_RPAREN] = ACTIONS(157), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(123), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(149), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(17)] = { + [sym_expression] = STATE(916), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_type_expression] = STATE(921), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(145), + [anon_sym_LBRACE] = ACTIONS(115), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(117), + [anon_sym_LPAREN] = ACTIONS(147), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(123), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(18)] = { + [sym_value_expression] = STATE(594), + [sym_type_definition] = STATE(589), + [sym_type_expression] = STATE(586), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(540), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(540), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [sym_identifier] = ACTIONS(159), + [anon_sym_LBRACE] = ACTIONS(161), + [anon_sym_distinct] = ACTIONS(163), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(165), + [anon_sym_LPAREN] = ACTIONS(167), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(123), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(169), + [anon_sym_break] = ACTIONS(171), + [anon_sym_continue] = ACTIONS(173), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(19)] = { + [sym_value_expression] = STATE(594), + [sym_type_definition] = STATE(589), + [sym_type_expression] = STATE(586), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [sym_identifier] = ACTIONS(159), + [anon_sym_LBRACE] = ACTIONS(161), + [anon_sym_distinct] = ACTIONS(163), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(117), + [anon_sym_LPAREN] = ACTIONS(167), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(123), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(20)] = { + [sym_value_expression] = STATE(594), + [sym_type_definition] = STATE(589), + [sym_type_expression] = STATE(586), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(641), + [sym_result_type] = STATE(641), + [sym_optional_type] = STATE(641), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [sym_identifier] = ACTIONS(175), + [anon_sym_LBRACE] = ACTIONS(161), + [anon_sym_distinct] = ACTIONS(177), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(117), + [anon_sym_LPAREN] = ACTIONS(179), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(123), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(21)] = { + [sym_value_expression] = STATE(594), + [sym_type_definition] = STATE(589), + [sym_type_expression] = STATE(586), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(530), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(530), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [sym_identifier] = ACTIONS(159), + [anon_sym_LBRACE] = ACTIONS(161), + [anon_sym_distinct] = ACTIONS(163), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(181), + [anon_sym_LPAREN] = ACTIONS(167), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(123), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(22)] = { + [sym_value_expression] = STATE(594), + [sym_type_definition] = STATE(589), + [sym_type_expression] = STATE(586), + [sym_function_type] = STATE(545), + [sym__result_type] = STATE(536), + [sym_result_type] = STATE(536), + [sym_optional_type] = STATE(536), + [sym__container_type] = STATE(484), + [sym_array_type] = STATE(484), + [sym_map_type] = STATE(484), + [sym__primary_type] = STATE(484), + [sym_grouped_type] = STATE(484), + [sym_unit_type] = STATE(484), + [sym_tuple_type] = STATE(484), + [sym_type_application] = STATE(484), + [sym_product_type] = STATE(484), + [sym_sum_type] = STATE(484), + [sym_bits_type] = STATE(484), + [sym_primitive_type] = STATE(484), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(546), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(546), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [sym_identifier] = ACTIONS(159), + [anon_sym_LBRACE] = ACTIONS(161), + [anon_sym_distinct] = ACTIONS(163), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(165), + [anon_sym_LPAREN] = ACTIONS(167), + [anon_sym_AMP] = ACTIONS(69), + [anon_sym_PIPE] = ACTIONS(123), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(183), + [anon_sym_break] = ACTIONS(185), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(23)] = { + [sym__container_type] = STATE(504), + [sym_array_type] = STATE(504), + [sym_map_type] = STATE(504), + [sym__primary_type] = STATE(504), + [sym_grouped_type] = STATE(504), + [sym_unit_type] = STATE(504), + [sym_tuple_type] = STATE(504), + [sym_type_application] = STATE(504), + [sym_product_type] = STATE(504), + [sym_sum_type] = STATE(504), + [sym_bits_type] = STATE(504), + [sym_primitive_type] = STATE(504), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [sym_identifier] = ACTIONS(187), + [anon_sym_DOT] = ACTIONS(189), + [anon_sym_LBRACE] = ACTIONS(191), + [anon_sym_COMMA] = ACTIONS(193), + [anon_sym_RBRACE] = ACTIONS(193), + [anon_sym_EQ] = ACTIONS(189), + [anon_sym_DASH_GT] = ACTIONS(193), + [anon_sym_EQ_GT] = ACTIONS(193), + [anon_sym_BANG] = ACTIONS(193), + [anon_sym_QMARK] = ACTIONS(193), + [anon_sym_LBRACK] = ACTIONS(195), + [anon_sym_RBRACK] = ACTIONS(193), + [anon_sym_LPAREN] = ACTIONS(198), + [anon_sym_RPAREN] = ACTIONS(193), + [anon_sym_LT] = ACTIONS(189), + [anon_sym_GT] = ACTIONS(189), + [anon_sym_AMP] = ACTIONS(200), + [anon_sym_PIPE] = ACTIONS(203), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_or] = ACTIONS(189), + [anon_sym_PIPE_GT] = ACTIONS(193), + [anon_sym_PLUS_EQ] = ACTIONS(193), + [anon_sym_DASH_EQ] = ACTIONS(193), + [anon_sym_STAR_EQ] = ACTIONS(193), + [anon_sym_SLASH_EQ] = ACTIONS(193), + [anon_sym_PERCENT_EQ] = ACTIONS(193), + [anon_sym_AMP_EQ] = ACTIONS(193), + [anon_sym_CARET_EQ] = ACTIONS(193), + [anon_sym_PIPE_EQ] = ACTIONS(193), + [anon_sym_DOT_DOT_LT] = ACTIONS(193), + [anon_sym_DOT_DOT_EQ] = ACTIONS(193), + [anon_sym_and] = ACTIONS(189), + [anon_sym_LT_EQ] = ACTIONS(193), + [anon_sym_GT_EQ] = ACTIONS(193), + [anon_sym_EQ_EQ] = ACTIONS(193), + [anon_sym_CARET] = ACTIONS(189), + [aux_sym_binary_expression_token1] = ACTIONS(193), + [anon_sym_PLUS] = ACTIONS(189), + [anon_sym_DASH] = ACTIONS(189), + [aux_sym_binary_expression_token2] = ACTIONS(193), + [anon_sym_STAR] = ACTIONS(189), + [anon_sym_SLASH] = ACTIONS(189), + [anon_sym_PERCENT] = ACTIONS(189), + [aux_sym_binary_expression_token3] = ACTIONS(193), + [sym_comment] = ACTIONS(3), + [sym__direct_pipeline_continuation] = ACTIONS(193), + [sym__aggregate_pipeline_continuation] = ACTIONS(193), + [sym__comparison_continuation] = ACTIONS(193), + [sym__newline] = ACTIONS(189), + [anon_sym_SEMI] = ACTIONS(193), + [sym__and_continuation] = ACTIONS(193), + [sym__or_continuation] = ACTIONS(193), + }, + [STATE(24)] = { + [sym__container_type] = STATE(504), + [sym_array_type] = STATE(504), + [sym_map_type] = STATE(504), + [sym__primary_type] = STATE(504), + [sym_grouped_type] = STATE(504), + [sym_unit_type] = STATE(504), + [sym_tuple_type] = STATE(504), + [sym_type_application] = STATE(504), + [sym_product_type] = STATE(504), + [sym_sum_type] = STATE(504), + [sym_bits_type] = STATE(504), + [sym_primitive_type] = STATE(504), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [sym_identifier] = ACTIONS(187), + [anon_sym_DOT] = ACTIONS(189), + [anon_sym_LBRACE] = ACTIONS(191), + [anon_sym_COMMA] = ACTIONS(206), + [anon_sym_EQ] = ACTIONS(189), + [anon_sym_DASH_GT] = ACTIONS(193), + [anon_sym_EQ_GT] = ACTIONS(193), + [anon_sym_BANG] = ACTIONS(193), + [anon_sym_QMARK] = ACTIONS(193), + [anon_sym_LBRACK] = ACTIONS(195), + [anon_sym_RBRACK] = ACTIONS(206), + [anon_sym_LPAREN] = ACTIONS(198), + [anon_sym_LT] = ACTIONS(189), + [anon_sym_GT] = ACTIONS(189), + [anon_sym_AMP] = ACTIONS(200), + [anon_sym_PIPE] = ACTIONS(203), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_or] = ACTIONS(209), + [anon_sym_PIPE_GT] = ACTIONS(193), + [anon_sym_PLUS_EQ] = ACTIONS(193), + [anon_sym_DASH_EQ] = ACTIONS(193), + [anon_sym_STAR_EQ] = ACTIONS(193), + [anon_sym_SLASH_EQ] = ACTIONS(193), + [anon_sym_PERCENT_EQ] = ACTIONS(193), + [anon_sym_AMP_EQ] = ACTIONS(193), + [anon_sym_CARET_EQ] = ACTIONS(193), + [anon_sym_PIPE_EQ] = ACTIONS(193), + [anon_sym_DOT_DOT_LT] = ACTIONS(193), + [anon_sym_DOT_DOT_EQ] = ACTIONS(193), + [anon_sym_and] = ACTIONS(189), + [anon_sym_LT_EQ] = ACTIONS(193), + [anon_sym_GT_EQ] = ACTIONS(193), + [anon_sym_EQ_EQ] = ACTIONS(193), + [anon_sym_CARET] = ACTIONS(189), + [aux_sym_binary_expression_token1] = ACTIONS(193), + [anon_sym_PLUS] = ACTIONS(189), + [anon_sym_DASH] = ACTIONS(189), + [aux_sym_binary_expression_token2] = ACTIONS(193), + [anon_sym_STAR] = ACTIONS(189), + [anon_sym_SLASH] = ACTIONS(189), + [anon_sym_PERCENT] = ACTIONS(189), + [aux_sym_binary_expression_token3] = ACTIONS(193), + [sym_comment] = ACTIONS(3), + [sym__direct_pipeline_continuation] = ACTIONS(193), + [sym__aggregate_pipeline_continuation] = ACTIONS(193), + [sym__comparison_continuation] = ACTIONS(193), + [sym__newline] = ACTIONS(209), + [sym__and_continuation] = ACTIONS(193), + [sym__or_continuation] = ACTIONS(193), + }, + [STATE(25)] = { + [sym__container_type] = STATE(504), + [sym_array_type] = STATE(504), + [sym_map_type] = STATE(504), + [sym__primary_type] = STATE(504), + [sym_grouped_type] = STATE(504), + [sym_unit_type] = STATE(504), + [sym_tuple_type] = STATE(504), + [sym_type_application] = STATE(504), + [sym_product_type] = STATE(504), + [sym_sum_type] = STATE(504), + [sym_bits_type] = STATE(504), + [sym_primitive_type] = STATE(504), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [ts_builtin_sym_end] = ACTIONS(193), + [sym_identifier] = ACTIONS(187), + [anon_sym_DOT] = ACTIONS(189), + [anon_sym_LBRACE] = ACTIONS(191), + [anon_sym_EQ] = ACTIONS(189), + [anon_sym_DASH_GT] = ACTIONS(193), + [anon_sym_BANG] = ACTIONS(193), + [anon_sym_QMARK] = ACTIONS(193), + [anon_sym_LBRACK] = ACTIONS(195), + [anon_sym_LPAREN] = ACTIONS(198), + [anon_sym_LT] = ACTIONS(189), + [anon_sym_GT] = ACTIONS(189), + [anon_sym_AMP] = ACTIONS(200), + [anon_sym_PIPE] = ACTIONS(203), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_or] = ACTIONS(189), + [anon_sym_PIPE_GT] = ACTIONS(193), + [anon_sym_PLUS_EQ] = ACTIONS(193), + [anon_sym_DASH_EQ] = ACTIONS(193), + [anon_sym_STAR_EQ] = ACTIONS(193), + [anon_sym_SLASH_EQ] = ACTIONS(193), + [anon_sym_PERCENT_EQ] = ACTIONS(193), + [anon_sym_AMP_EQ] = ACTIONS(193), + [anon_sym_CARET_EQ] = ACTIONS(193), + [anon_sym_PIPE_EQ] = ACTIONS(193), + [anon_sym_DOT_DOT_LT] = ACTIONS(193), + [anon_sym_DOT_DOT_EQ] = ACTIONS(193), + [anon_sym_and] = ACTIONS(189), + [anon_sym_LT_EQ] = ACTIONS(193), + [anon_sym_GT_EQ] = ACTIONS(193), + [anon_sym_EQ_EQ] = ACTIONS(193), + [anon_sym_CARET] = ACTIONS(189), + [aux_sym_binary_expression_token1] = ACTIONS(193), + [anon_sym_PLUS] = ACTIONS(189), + [anon_sym_DASH] = ACTIONS(189), + [aux_sym_binary_expression_token2] = ACTIONS(193), + [anon_sym_STAR] = ACTIONS(189), + [anon_sym_SLASH] = ACTIONS(189), + [anon_sym_PERCENT] = ACTIONS(189), + [aux_sym_binary_expression_token3] = ACTIONS(193), + [sym_comment] = ACTIONS(3), + [sym__direct_pipeline_continuation] = ACTIONS(193), + [sym__aggregate_pipeline_continuation] = ACTIONS(193), + [sym__comparison_continuation] = ACTIONS(193), + [sym__newline] = ACTIONS(189), + [anon_sym_SEMI] = ACTIONS(193), + [sym__and_continuation] = ACTIONS(193), + [sym__or_continuation] = ACTIONS(193), + }, + [STATE(26)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pattern] = STATE(1042), + [sym_pattern_atom] = STATE(601), + [sym_unit_pattern] = STATE(632), + [sym_tuple_pattern] = STATE(773), + [sym_product_pattern] = STATE(773), + [sym_sum_pattern] = STATE(632), + [sym_bits_pattern] = STATE(632), + [sym_array_pattern] = STATE(632), + [sym_array_pattern_entry] = STATE(683), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(719), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(272), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(272), + [aux_sym_source_file_repeat1] = STATE(27), + [sym_identifier] = ACTIONS(212), + [anon_sym_LBRACE] = ACTIONS(214), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(216), + [anon_sym_RBRACK] = ACTIONS(218), + [anon_sym_LPAREN] = ACTIONS(220), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(222), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym__] = ACTIONS(81), + [anon_sym_DOT_DOT_DOT] = ACTIONS(83), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(85), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(87), + [sym_character_literal] = ACTIONS(87), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(89), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(27)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pattern] = STATE(1042), + [sym_pattern_atom] = STATE(601), + [sym_unit_pattern] = STATE(632), + [sym_tuple_pattern] = STATE(773), + [sym_product_pattern] = STATE(773), + [sym_sum_pattern] = STATE(632), + [sym_bits_pattern] = STATE(632), + [sym_array_pattern] = STATE(632), + [sym_array_pattern_entry] = STATE(714), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(678), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(272), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(272), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(212), + [anon_sym_LBRACE] = ACTIONS(214), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(216), + [anon_sym_RBRACK] = ACTIONS(224), + [anon_sym_LPAREN] = ACTIONS(220), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(222), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym__] = ACTIONS(81), + [anon_sym_DOT_DOT_DOT] = ACTIONS(83), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(85), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(87), + [sym_character_literal] = ACTIONS(87), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(28)] = { + [sym__container_type] = STATE(504), + [sym_array_type] = STATE(504), + [sym_map_type] = STATE(504), + [sym__primary_type] = STATE(504), + [sym_grouped_type] = STATE(504), + [sym_unit_type] = STATE(504), + [sym_tuple_type] = STATE(504), + [sym_type_application] = STATE(504), + [sym_product_type] = STATE(504), + [sym_sum_type] = STATE(504), + [sym_bits_type] = STATE(504), + [sym_primitive_type] = STATE(504), + [sym_type_name] = STATE(480), + [sym_qualified_name] = STATE(461), + [sym_identifier] = ACTIONS(187), + [anon_sym_DOT] = ACTIONS(189), + [anon_sym_LBRACE] = ACTIONS(226), + [anon_sym_EQ] = ACTIONS(189), + [anon_sym_DASH_GT] = ACTIONS(193), + [anon_sym_BANG] = ACTIONS(193), + [anon_sym_QMARK] = ACTIONS(193), + [anon_sym_LBRACK] = ACTIONS(195), + [anon_sym_LPAREN] = ACTIONS(198), + [anon_sym_LT] = ACTIONS(189), + [anon_sym_GT] = ACTIONS(189), + [anon_sym_AMP] = ACTIONS(200), + [anon_sym_PIPE] = ACTIONS(203), + [anon_sym_bits] = ACTIONS(73), + [anon_sym_f32] = ACTIONS(75), + [anon_sym_f64] = ACTIONS(75), + [anon_sym_bit] = ACTIONS(75), + [anon_sym_chr] = ACTIONS(75), + [anon_sym_str] = ACTIONS(75), + [anon_sym_nvr] = ACTIONS(75), + [anon_sym_i8] = ACTIONS(75), + [anon_sym_i16] = ACTIONS(75), + [anon_sym_i32] = ACTIONS(75), + [anon_sym_i64] = ACTIONS(75), + [anon_sym_u8] = ACTIONS(75), + [anon_sym_u16] = ACTIONS(75), + [anon_sym_u32] = ACTIONS(75), + [anon_sym_u64] = ACTIONS(75), + [anon_sym_BQUOTE] = ACTIONS(193), + [anon_sym_or] = ACTIONS(189), + [anon_sym_PIPE_GT] = ACTIONS(193), + [anon_sym_PLUS_EQ] = ACTIONS(193), + [anon_sym_DASH_EQ] = ACTIONS(193), + [anon_sym_STAR_EQ] = ACTIONS(193), + [anon_sym_SLASH_EQ] = ACTIONS(193), + [anon_sym_PERCENT_EQ] = ACTIONS(193), + [anon_sym_AMP_EQ] = ACTIONS(193), + [anon_sym_CARET_EQ] = ACTIONS(193), + [anon_sym_PIPE_EQ] = ACTIONS(193), + [anon_sym_DOT_DOT_LT] = ACTIONS(193), + [anon_sym_DOT_DOT_EQ] = ACTIONS(193), + [anon_sym_and] = ACTIONS(189), + [anon_sym_LT_EQ] = ACTIONS(193), + [anon_sym_GT_EQ] = ACTIONS(193), + [anon_sym_EQ_EQ] = ACTIONS(193), + [anon_sym_CARET] = ACTIONS(189), + [aux_sym_binary_expression_token1] = ACTIONS(193), + [anon_sym_PLUS] = ACTIONS(189), + [anon_sym_DASH] = ACTIONS(189), + [aux_sym_binary_expression_token2] = ACTIONS(193), + [anon_sym_STAR] = ACTIONS(189), + [anon_sym_SLASH] = ACTIONS(189), + [anon_sym_PERCENT] = ACTIONS(189), + [aux_sym_binary_expression_token3] = ACTIONS(193), + [sym_comment] = ACTIONS(3), + [sym__direct_pipeline_continuation] = ACTIONS(193), + [sym__aggregate_pipeline_continuation] = ACTIONS(193), + [sym__comparison_continuation] = ACTIONS(193), + [sym__and_continuation] = ACTIONS(193), + [sym__or_continuation] = ACTIONS(193), + }, + [STATE(29)] = { + [sym_expression] = STATE(1075), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pattern] = STATE(906), + [sym_pattern_atom] = STATE(601), + [sym_unit_pattern] = STATE(632), + [sym_tuple_pattern] = STATE(793), + [sym_product_pattern] = STATE(793), + [sym_sum_pattern] = STATE(632), + [sym_bits_pattern] = STATE(632), + [sym_array_pattern] = STATE(632), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(272), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(272), + [aux_sym_source_file_repeat1] = STATE(31), + [sym_identifier] = ACTIONS(229), + [anon_sym_LBRACE] = ACTIONS(214), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(216), + [anon_sym_LPAREN] = ACTIONS(220), + [anon_sym_RPAREN] = ACTIONS(231), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(222), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym__] = ACTIONS(81), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(85), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(87), + [sym_character_literal] = ACTIONS(87), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(233), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(30)] = { + [sym_expression] = STATE(1075), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pattern] = STATE(906), + [sym_pattern_atom] = STATE(601), + [sym_unit_pattern] = STATE(632), + [sym_tuple_pattern] = STATE(793), + [sym_product_pattern] = STATE(793), + [sym_sum_pattern] = STATE(632), + [sym_bits_pattern] = STATE(632), + [sym_array_pattern] = STATE(632), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(272), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(272), + [aux_sym_source_file_repeat1] = STATE(31), + [sym_identifier] = ACTIONS(229), + [anon_sym_LBRACE] = ACTIONS(214), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(216), + [anon_sym_LPAREN] = ACTIONS(220), + [anon_sym_RPAREN] = ACTIONS(235), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(222), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym__] = ACTIONS(81), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(85), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(87), + [sym_character_literal] = ACTIONS(87), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(233), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(31)] = { + [sym_expression] = STATE(916), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_pattern] = STATE(933), + [sym_pattern_atom] = STATE(601), + [sym_unit_pattern] = STATE(632), + [sym_tuple_pattern] = STATE(793), + [sym_product_pattern] = STATE(793), + [sym_sum_pattern] = STATE(632), + [sym_bits_pattern] = STATE(632), + [sym_array_pattern] = STATE(632), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(272), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(272), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(229), + [anon_sym_LBRACE] = ACTIONS(214), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(216), + [anon_sym_LPAREN] = ACTIONS(220), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(222), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym__] = ACTIONS(81), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(85), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(87), + [sym_character_literal] = ACTIONS(87), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(32)] = { + [sym_module_item] = STATE(610), + [sym_use_declaration] = STATE(977), + [sym_pub_declaration] = STATE(977), + [sym_expression] = STATE(977), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1100), + [sym_product_pattern] = STATE(1100), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(530), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(530), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(366), + [ts_builtin_sym_end] = ACTIONS(237), + [sym_identifier] = ACTIONS(7), + [anon_sym_use] = ACTIONS(9), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_pub] = ACTIONS(13), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(239), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(33)] = { + [sym_expression] = STATE(591), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_label] = STATE(35), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_COMMA] = ACTIONS(243), + [anon_sym_RBRACE] = ACTIONS(243), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(243), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(243), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_BQUOTE] = ACTIONS(245), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(243), + [anon_sym_SEMI] = ACTIONS(243), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(34)] = { + [sym_expression] = STATE(583), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_COMMA] = ACTIONS(247), + [anon_sym_RBRACE] = ACTIONS(247), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(247), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(247), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(247), + [anon_sym_SEMI] = ACTIONS(247), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(35)] = { + [sym_expression] = STATE(588), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_COMMA] = ACTIONS(249), + [anon_sym_RBRACE] = ACTIONS(249), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(249), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(249), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(249), + [anon_sym_SEMI] = ACTIONS(249), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(36)] = { + [sym_expression] = STATE(591), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_label] = STATE(64), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_COMMA] = ACTIONS(243), + [anon_sym_EQ_GT] = ACTIONS(243), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(243), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_BQUOTE] = ACTIONS(245), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(243), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(37)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(911), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(253), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(38)] = { + [sym_expression] = STATE(937), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym_array_tail_entry] = STATE(706), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(44), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(255), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(257), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(259), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(39)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(911), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(261), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(40)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(934), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(37), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(261), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(263), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(41)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(911), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(42)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(934), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(39), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(267), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(43)] = { + [sym_expression] = STATE(591), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_label] = STATE(107), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1100), + [sym_product_pattern] = STATE(1100), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(530), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(530), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [ts_builtin_sym_end] = ACTIONS(243), + [sym_identifier] = ACTIONS(7), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_BQUOTE] = ACTIONS(269), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(243), + [anon_sym_SEMI] = ACTIONS(243), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(44)] = { + [sym_expression] = STATE(937), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym_array_tail_entry] = STATE(699), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(271), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(257), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(45)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(719), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(46), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(273), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(127), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(46)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(678), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(275), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(47)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(718), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(48), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(277), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(279), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(48)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(723), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(281), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(49)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(934), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(52), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(283), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(285), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(50)] = { + [sym_module_item] = STATE(1029), + [sym_use_declaration] = STATE(977), + [sym_pub_declaration] = STATE(977), + [sym_expression] = STATE(977), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1100), + [sym_product_pattern] = STATE(1100), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(530), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(530), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_identifier] = ACTIONS(7), + [anon_sym_use] = ACTIONS(9), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_pub] = ACTIONS(13), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(51)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(934), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(41), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(287), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(289), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(52)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(911), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(291), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(53)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(934), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(55), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(291), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(293), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(54)] = { + [sym_expression] = STATE(937), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym_array_tail_entry] = STATE(974), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(57), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(295), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(257), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(297), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(55)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(911), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(299), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(56)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(934), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(58), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(299), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(301), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(57)] = { + [sym_expression] = STATE(937), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym_array_tail_entry] = STATE(999), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(303), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(257), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(58)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(911), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(305), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(59)] = { + [sym_expression] = STATE(937), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym_array_tail_entry] = STATE(974), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(60), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(303), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(257), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(307), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(60)] = { + [sym_expression] = STATE(937), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym_array_tail_entry] = STATE(999), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(309), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(257), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(61)] = { + [sym_expression] = STATE(937), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym_array_tail_entry] = STATE(974), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(62), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(309), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(257), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(311), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(62)] = { + [sym_expression] = STATE(937), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym_array_tail_entry] = STATE(999), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(313), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(257), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(63)] = { + [sym_expression] = STATE(638), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_product_pattern_field] = STATE(766), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(69), + [sym_identifier] = ACTIONS(315), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(135), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(139), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(64)] = { + [sym_expression] = STATE(588), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_COMMA] = ACTIONS(249), + [anon_sym_EQ_GT] = ACTIONS(249), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(249), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(249), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(65)] = { + [sym_expression] = STATE(937), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym_array_tail_entry] = STATE(974), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(66), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(257), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(317), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(66)] = { + [sym_expression] = STATE(937), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym_array_tail_entry] = STATE(999), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(257), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(67)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(934), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(72), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(319), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(68)] = { + [sym_pattern_atom] = STATE(650), + [sym_unit_pattern] = STATE(632), + [sym_tuple_pattern] = STATE(632), + [sym_product_pattern] = STATE(632), + [sym_sum_pattern] = STATE(632), + [sym_bits_pattern] = STATE(632), + [sym_array_pattern] = STATE(632), + [sym_boolean_literal] = STATE(632), + [sym_signed_numeric_literal] = STATE(632), + [sym_identifier] = ACTIONS(81), + [anon_sym_DOT] = ACTIONS(321), + [anon_sym_LBRACE] = ACTIONS(323), + [anon_sym_COMMA] = ACTIONS(325), + [anon_sym_EQ] = ACTIONS(321), + [anon_sym_DASH_GT] = ACTIONS(328), + [anon_sym_EQ_GT] = ACTIONS(328), + [anon_sym_BANG] = ACTIONS(328), + [anon_sym_QMARK] = ACTIONS(328), + [anon_sym_LBRACK] = ACTIONS(330), + [anon_sym_RBRACK] = ACTIONS(325), + [anon_sym_LPAREN] = ACTIONS(333), + [anon_sym_LT] = ACTIONS(321), + [anon_sym_GT] = ACTIONS(321), + [anon_sym_AMP] = ACTIONS(321), + [anon_sym_PIPE] = ACTIONS(335), + [anon_sym_or] = ACTIONS(338), + [anon_sym__] = ACTIONS(81), + [anon_sym_PIPE_GT] = ACTIONS(328), + [anon_sym_PLUS_EQ] = ACTIONS(328), + [anon_sym_DASH_EQ] = ACTIONS(328), + [anon_sym_STAR_EQ] = ACTIONS(328), + [anon_sym_SLASH_EQ] = ACTIONS(328), + [anon_sym_PERCENT_EQ] = ACTIONS(328), + [anon_sym_AMP_EQ] = ACTIONS(328), + [anon_sym_CARET_EQ] = ACTIONS(328), + [anon_sym_PIPE_EQ] = ACTIONS(328), + [anon_sym_DOT_DOT_LT] = ACTIONS(328), + [anon_sym_DOT_DOT_EQ] = ACTIONS(328), + [anon_sym_and] = ACTIONS(321), + [anon_sym_LT_EQ] = ACTIONS(328), + [anon_sym_GT_EQ] = ACTIONS(328), + [anon_sym_EQ_EQ] = ACTIONS(328), + [anon_sym_CARET] = ACTIONS(321), + [aux_sym_binary_expression_token1] = ACTIONS(328), + [anon_sym_PLUS] = ACTIONS(321), + [anon_sym_DASH] = ACTIONS(341), + [aux_sym_binary_expression_token2] = ACTIONS(328), + [anon_sym_STAR] = ACTIONS(321), + [anon_sym_SLASH] = ACTIONS(321), + [anon_sym_PERCENT] = ACTIONS(321), + [aux_sym_binary_expression_token3] = ACTIONS(328), + [anon_sym_true] = ACTIONS(344), + [anon_sym_false] = ACTIONS(344), + [sym_nil_literal] = ACTIONS(81), + [sym_integer_literal] = ACTIONS(346), + [sym_float_literal] = ACTIONS(348), + [sym_string_literal] = ACTIONS(350), + [sym_character_literal] = ACTIONS(350), + [sym_comment] = ACTIONS(3), + [sym__direct_pipeline_continuation] = ACTIONS(328), + [sym__aggregate_pipeline_continuation] = ACTIONS(328), + [sym__comparison_continuation] = ACTIONS(328), + [sym__newline] = ACTIONS(338), + [sym__and_continuation] = ACTIONS(328), + [sym__or_continuation] = ACTIONS(328), + [sym__trailing_dot_float] = ACTIONS(348), + }, + [STATE(69)] = { + [sym_expression] = STATE(620), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_product_pattern_field] = STATE(778), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(315), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(352), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(70)] = { + [sym_expression] = STATE(638), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_product_pattern_field] = STATE(766), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(71), + [sym_identifier] = ACTIONS(315), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(141), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(143), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(71)] = { + [sym_expression] = STATE(620), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_product_pattern_field] = STATE(778), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(315), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(354), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(72)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(911), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(73)] = { + [sym_pattern_atom] = STATE(629), + [sym_unit_pattern] = STATE(632), + [sym_tuple_pattern] = STATE(632), + [sym_product_pattern] = STATE(632), + [sym_sum_pattern] = STATE(632), + [sym_bits_pattern] = STATE(632), + [sym_array_pattern] = STATE(632), + [sym_boolean_literal] = STATE(632), + [sym_signed_numeric_literal] = STATE(632), + [sym_identifier] = ACTIONS(81), + [anon_sym_DOT] = ACTIONS(356), + [anon_sym_LBRACE] = ACTIONS(323), + [anon_sym_COMMA] = ACTIONS(358), + [anon_sym_EQ] = ACTIONS(356), + [anon_sym_DASH_GT] = ACTIONS(361), + [anon_sym_EQ_GT] = ACTIONS(361), + [anon_sym_BANG] = ACTIONS(361), + [anon_sym_QMARK] = ACTIONS(361), + [anon_sym_LBRACK] = ACTIONS(363), + [anon_sym_RBRACK] = ACTIONS(358), + [anon_sym_LPAREN] = ACTIONS(333), + [anon_sym_LT] = ACTIONS(356), + [anon_sym_GT] = ACTIONS(356), + [anon_sym_AMP] = ACTIONS(356), + [anon_sym_PIPE] = ACTIONS(366), + [anon_sym_or] = ACTIONS(369), + [anon_sym__] = ACTIONS(81), + [anon_sym_PIPE_GT] = ACTIONS(361), + [anon_sym_PLUS_EQ] = ACTIONS(361), + [anon_sym_DASH_EQ] = ACTIONS(361), + [anon_sym_STAR_EQ] = ACTIONS(361), + [anon_sym_SLASH_EQ] = ACTIONS(361), + [anon_sym_PERCENT_EQ] = ACTIONS(361), + [anon_sym_AMP_EQ] = ACTIONS(361), + [anon_sym_CARET_EQ] = ACTIONS(361), + [anon_sym_PIPE_EQ] = ACTIONS(361), + [anon_sym_DOT_DOT_LT] = ACTIONS(361), + [anon_sym_DOT_DOT_EQ] = ACTIONS(361), + [anon_sym_and] = ACTIONS(356), + [anon_sym_LT_EQ] = ACTIONS(361), + [anon_sym_GT_EQ] = ACTIONS(361), + [anon_sym_EQ_EQ] = ACTIONS(361), + [anon_sym_CARET] = ACTIONS(356), + [aux_sym_binary_expression_token1] = ACTIONS(361), + [anon_sym_PLUS] = ACTIONS(356), + [anon_sym_DASH] = ACTIONS(372), + [aux_sym_binary_expression_token2] = ACTIONS(361), + [anon_sym_STAR] = ACTIONS(356), + [anon_sym_SLASH] = ACTIONS(356), + [anon_sym_PERCENT] = ACTIONS(356), + [aux_sym_binary_expression_token3] = ACTIONS(361), + [anon_sym_true] = ACTIONS(344), + [anon_sym_false] = ACTIONS(344), + [sym_nil_literal] = ACTIONS(81), + [sym_integer_literal] = ACTIONS(346), + [sym_float_literal] = ACTIONS(348), + [sym_string_literal] = ACTIONS(350), + [sym_character_literal] = ACTIONS(350), + [sym_comment] = ACTIONS(3), + [sym__direct_pipeline_continuation] = ACTIONS(361), + [sym__aggregate_pipeline_continuation] = ACTIONS(361), + [sym__comparison_continuation] = ACTIONS(361), + [sym__newline] = ACTIONS(369), + [sym__and_continuation] = ACTIONS(361), + [sym__or_continuation] = ACTIONS(361), + [sym__trailing_dot_float] = ACTIONS(348), + }, + [STATE(74)] = { + [sym_expression] = STATE(937), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym_array_tail_entry] = STATE(974), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym__newlines] = STATE(363), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(257), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(375), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(75)] = { + [sym_expression] = STATE(649), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_product_pattern_field] = STATE(766), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(76), + [sym_identifier] = ACTIONS(315), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(377), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(379), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(76)] = { + [sym_expression] = STATE(652), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_product_pattern_field] = STATE(778), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(315), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(381), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(77)] = { + [sym_expression] = STATE(869), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_collection_entry] = STATE(934), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym__newlines] = STATE(363), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DOT_DOT_DOT] = ACTIONS(125), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(375), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(78)] = { + [sym_expression] = STATE(583), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1103), + [sym_product_pattern] = STATE(1103), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(488), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(488), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_identifier] = ACTIONS(251), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_COMMA] = ACTIONS(247), + [anon_sym_EQ_GT] = ACTIONS(247), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_RBRACK] = ACTIONS(247), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(77), + [anon_sym_break] = ACTIONS(79), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(247), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(79)] = { + [sym_expression] = STATE(968), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(100), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(383), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(385), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(80)] = { + [sym_expression] = STATE(1073), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(81)] = { + [sym_expression] = STATE(968), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(91), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(387), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(389), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(82)] = { + [sym_expression] = STATE(583), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1100), + [sym_product_pattern] = STATE(1100), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(530), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(530), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [ts_builtin_sym_end] = ACTIONS(247), + [sym_identifier] = ACTIONS(7), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(247), + [anon_sym_SEMI] = ACTIONS(247), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(83)] = { + [sym_expression] = STATE(1075), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(113), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(235), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(391), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(84)] = { + [sym_expression] = STATE(968), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(86), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(393), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(85)] = { + [sym_expression] = STATE(620), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(395), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(86)] = { + [sym_expression] = STATE(1073), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(309), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(87)] = { + [sym_expression] = STATE(649), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(109), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(397), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(399), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(88)] = { + [sym_expression] = STATE(1071), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(120), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(401), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(403), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(89)] = { + [sym_expression] = STATE(968), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(103), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(309), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(405), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(90)] = { + [sym_expression] = STATE(1073), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(407), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(91)] = { + [sym_expression] = STATE(1073), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(409), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(92)] = { + [sym_expression] = STATE(968), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(106), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(409), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(411), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(93)] = { + [sym_expression] = STATE(968), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(96), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(413), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(415), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(94)] = { + [sym_expression] = STATE(638), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(85), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(153), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(155), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(95)] = { + [sym_expression] = STATE(1073), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(417), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(96)] = { + [sym_expression] = STATE(1073), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(419), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(97)] = { + [sym_expression] = STATE(968), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(98), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(419), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(421), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(98)] = { + [sym_expression] = STATE(1073), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(383), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(99)] = { + [sym_expression] = STATE(968), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(95), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(423), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(425), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(100)] = { + [sym_expression] = STATE(1073), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(427), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(101)] = { + [sym_expression] = STATE(968), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(102), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(427), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(429), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(102)] = { + [sym_expression] = STATE(1073), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(431), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(103)] = { + [sym_expression] = STATE(1073), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(313), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(104)] = { + [sym_expression] = STATE(968), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(90), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(417), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(433), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(105)] = { + [sym_expression] = STATE(968), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(80), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(295), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(435), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(106)] = { + [sym_expression] = STATE(1073), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_RPAREN] = ACTIONS(423), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(107)] = { + [sym_expression] = STATE(588), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1100), + [sym_product_pattern] = STATE(1100), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(530), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(530), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [ts_builtin_sym_end] = ACTIONS(249), + [sym_identifier] = ACTIONS(7), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(249), + [anon_sym_SEMI] = ACTIONS(249), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(108)] = { + [sym_expression] = STATE(959), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(437), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(437), + [anon_sym_SEMI] = ACTIONS(437), + [sym__trailing_dot_float] = ACTIONS(53), + }, + [STATE(109)] = { + [sym_expression] = STATE(652), + [sym_value_expression] = STATE(587), + [sym_declaration] = STATE(587), + [sym_function_literal] = STATE(476), + [sym_return_expression] = STATE(577), + [sym_break_expression] = STATE(577), + [sym_continue_expression] = STATE(577), + [sym_if_expression] = STATE(210), + [sym_match_expression] = STATE(210), + [sym_loop_expression] = STATE(210), + [sym_for_expression] = STATE(210), + [sym_block] = STATE(210), + [sym_tuple_pattern] = STATE(1086), + [sym_product_pattern] = STATE(1086), + [sym_pipeline_expression] = STATE(577), + [sym__ordinary_expression] = STATE(577), + [sym__non_assignment_expression] = STATE(470), + [sym__binary_expression] = STATE(291), + [sym__prefix_expression] = STATE(233), + [sym_assignment_expression] = STATE(577), + [sym_range_expression] = STATE(470), + [sym_binary_expression] = STATE(291), + [sym_unary_expression] = STATE(233), + [sym_postfix_expression] = STATE(233), + [sym_primary_expression] = STATE(177), + [sym_tuple_value] = STATE(210), + [sym_collection_literal] = STATE(210), + [sym_product_constructor] = STATE(210), + [sym_sum_constructor] = STATE(210), + [sym_bits_constructor] = STATE(210), + [sym_literal] = STATE(210), + [sym_boolean_literal] = STATE(209), + [sym_unit_literal] = STATE(209), + [sym_signed_numeric_literal] = STATE(209), + [aux_sym_source_file_repeat1] = STATE(235), + [sym_identifier] = ACTIONS(241), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(439), + [anon_sym_BANG] = ACTIONS(15), + [anon_sym_LBRACK] = ACTIONS(17), + [anon_sym_LPAREN] = ACTIONS(19), + [anon_sym_AMP] = ACTIONS(21), + [anon_sym_PIPE] = ACTIONS(23), + [anon_sym_AT] = ACTIONS(25), + [anon_sym_return] = ACTIONS(97), + [anon_sym_break] = ACTIONS(99), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(33), + [anon_sym_match] = ACTIONS(35), + [anon_sym_loop] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_not] = ACTIONS(43), + [anon_sym_TILDE] = ACTIONS(15), + [anon_sym_true] = ACTIONS(45), + [anon_sym_false] = ACTIONS(45), + [sym_nil_literal] = ACTIONS(47), + [sym_default_expression] = ACTIONS(49), + [sym_integer_literal] = ACTIONS(51), + [sym_float_literal] = ACTIONS(53), + [sym_string_literal] = ACTIONS(55), + [sym_character_literal] = ACTIONS(55), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(111), + [sym__trailing_dot_float] = ACTIONS(53), + }, +}; + +static const uint16_t ts_small_parse_table[] = { + [0] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + ACTIONS(375), 1, + sym__newline, + STATE(177), 1, + sym_primary_expression, + STATE(363), 1, + aux_sym__newlines, + STATE(476), 1, + sym_function_literal, + STATE(740), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [139] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(111), 1, + sym__newline, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(476), 1, + sym_function_literal, + STATE(742), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [278] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(169), 1, + anon_sym_return, + ACTIONS(171), 1, + anon_sym_break, + ACTIONS(173), 1, + anon_sym_continue, + ACTIONS(245), 1, + anon_sym_BQUOTE, + ACTIONS(441), 1, + sym_identifier, + STATE(132), 1, + sym_label, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(591), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(540), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1090), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [417] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(111), 1, + sym__newline, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(476), 1, + sym_function_literal, + STATE(916), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [556] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(111), 1, + sym__newline, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(476), 1, + sym_function_literal, + STATE(676), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [695] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(111), 1, + sym__newline, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(476), 1, + sym_function_literal, + STATE(1073), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [834] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(111), 1, + sym__newline, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(476), 1, + sym_function_literal, + STATE(738), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [973] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + ACTIONS(443), 1, + sym__newline, + STATE(111), 1, + aux_sym_source_file_repeat1, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(707), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [1112] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + ACTIONS(445), 1, + sym__newline, + STATE(116), 1, + aux_sym_source_file_repeat1, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(676), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [1251] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + ACTIONS(375), 1, + sym__newline, + STATE(177), 1, + sym_primary_expression, + STATE(363), 1, + aux_sym__newlines, + STATE(476), 1, + sym_function_literal, + STATE(676), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [1390] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(111), 1, + sym__newline, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(476), 1, + sym_function_literal, + STATE(1072), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [1529] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + ACTIONS(447), 1, + sym__newline, + STATE(123), 1, + aux_sym_source_file_repeat1, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(730), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [1668] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + ACTIONS(375), 1, + sym__newline, + STATE(177), 1, + sym_primary_expression, + STATE(363), 1, + aux_sym__newlines, + STATE(476), 1, + sym_function_literal, + STATE(730), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [1807] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(111), 1, + sym__newline, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(476), 1, + sym_function_literal, + STATE(740), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [1946] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + ACTIONS(449), 1, + sym__newline, + STATE(126), 1, + aux_sym_source_file_repeat1, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(740), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [2085] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + ACTIONS(375), 1, + sym__newline, + STATE(177), 1, + sym_primary_expression, + STATE(363), 1, + aux_sym__newlines, + STATE(476), 1, + sym_function_literal, + STATE(725), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [2224] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(111), 1, + sym__newline, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(476), 1, + sym_function_literal, + STATE(750), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [2363] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + ACTIONS(451), 1, + sym__newline, + STATE(114), 1, + aux_sym_source_file_repeat1, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(725), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [2502] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + ACTIONS(453), 1, + sym__newline, + STATE(115), 1, + aux_sym_source_file_repeat1, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(968), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [2641] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + ACTIONS(375), 1, + sym__newline, + STATE(177), 1, + sym_primary_expression, + STATE(363), 1, + aux_sym__newlines, + STATE(476), 1, + sym_function_literal, + STATE(968), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [2780] = 37, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(183), 1, + anon_sym_return, + ACTIONS(185), 1, + anon_sym_break, + ACTIONS(245), 1, + anon_sym_BQUOTE, + ACTIONS(455), 1, + sym_identifier, + STATE(135), 1, + sym_label, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(591), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(546), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1110), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [2919] = 36, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(457), 1, + sym_identifier, + ACTIONS(459), 1, + anon_sym__, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(949), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [3055] = 36, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(169), 1, + anon_sym_return, + ACTIONS(171), 1, + anon_sym_break, + ACTIONS(173), 1, + anon_sym_continue, + ACTIONS(249), 1, + anon_sym_BQUOTE, + ACTIONS(441), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(588), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(540), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1090), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [3191] = 36, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(169), 1, + anon_sym_return, + ACTIONS(171), 1, + anon_sym_break, + ACTIONS(173), 1, + anon_sym_continue, + ACTIONS(247), 1, + anon_sym_BQUOTE, + ACTIONS(441), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(583), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(540), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1090), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [3327] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(183), 1, + anon_sym_return, + ACTIONS(185), 1, + anon_sym_break, + ACTIONS(455), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(1089), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(546), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1110), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [3460] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(183), 1, + anon_sym_return, + ACTIONS(185), 1, + anon_sym_break, + ACTIONS(455), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(588), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(546), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1110), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [3593] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(1013), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [3726] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(1066), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [3859] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(77), 1, + anon_sym_return, + ACTIONS(79), 1, + anon_sym_break, + ACTIONS(251), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(1131), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(488), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1103), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [3992] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(914), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [4125] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(904), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [4258] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(183), 1, + anon_sym_return, + ACTIONS(185), 1, + anon_sym_break, + ACTIONS(455), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(1107), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(546), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1110), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [4391] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(932), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [4524] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(1050), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [4657] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(949), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [4790] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(183), 1, + anon_sym_return, + ACTIONS(185), 1, + anon_sym_break, + ACTIONS(455), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(1136), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(546), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1110), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [4923] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(1153), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [5056] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(169), 1, + anon_sym_return, + ACTIONS(171), 1, + anon_sym_break, + ACTIONS(173), 1, + anon_sym_continue, + ACTIONS(441), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(858), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(540), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1090), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [5189] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(1079), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [5322] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(169), 1, + anon_sym_return, + ACTIONS(171), 1, + anon_sym_break, + ACTIONS(173), 1, + anon_sym_continue, + ACTIONS(441), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(895), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(540), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1090), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [5455] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(183), 1, + anon_sym_return, + ACTIONS(185), 1, + anon_sym_break, + ACTIONS(455), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(1132), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(546), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1110), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [5588] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(183), 1, + anon_sym_return, + ACTIONS(185), 1, + anon_sym_break, + ACTIONS(455), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(583), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(546), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1110), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [5721] = 35, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(49), 1, + sym_default_expression, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(241), 1, + sym_identifier, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(1148), 1, + sym_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(587), 2, + sym_value_expression, + sym_declaration, + STATE(1086), 2, + sym_tuple_pattern, + sym_product_pattern, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [5854] = 32, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(27), 1, + anon_sym_return, + ACTIONS(29), 1, + anon_sym_break, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(585), 1, + sym_value_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(530), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [5977] = 32, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(169), 1, + anon_sym_return, + ACTIONS(171), 1, + anon_sym_break, + ACTIONS(173), 1, + anon_sym_continue, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(589), 1, + sym_value_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(540), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [6100] = 32, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(579), 1, + sym_value_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [6223] = 32, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(27), 1, + anon_sym_return, + ACTIONS(29), 1, + anon_sym_break, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(589), 1, + sym_value_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(530), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [6346] = 32, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(585), 1, + sym_value_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [6469] = 32, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(27), 1, + anon_sym_return, + ACTIONS(29), 1, + anon_sym_break, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(579), 1, + sym_value_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(530), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [6592] = 32, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(169), 1, + anon_sym_return, + ACTIONS(171), 1, + anon_sym_break, + ACTIONS(173), 1, + anon_sym_continue, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(579), 1, + sym_value_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(540), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [6715] = 32, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(183), 1, + anon_sym_return, + ACTIONS(185), 1, + anon_sym_break, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(589), 1, + sym_value_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(546), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [6838] = 32, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(169), 1, + anon_sym_return, + ACTIONS(171), 1, + anon_sym_break, + ACTIONS(173), 1, + anon_sym_continue, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(585), 1, + sym_value_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(540), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [6961] = 32, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(77), 1, + anon_sym_return, + ACTIONS(79), 1, + anon_sym_break, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(585), 1, + sym_value_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(488), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [7084] = 32, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(589), 1, + sym_value_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(470), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [7207] = 32, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(77), 1, + anon_sym_return, + ACTIONS(79), 1, + anon_sym_break, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(589), 1, + sym_value_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(488), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [7330] = 32, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(77), 1, + anon_sym_return, + ACTIONS(79), 1, + anon_sym_break, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(579), 1, + sym_value_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(488), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [7453] = 32, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(183), 1, + anon_sym_return, + ACTIONS(185), 1, + anon_sym_break, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(579), 1, + sym_value_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(546), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [7576] = 32, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(31), 1, + anon_sym_continue, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(183), 1, + anon_sym_return, + ACTIONS(185), 1, + anon_sym_break, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(476), 1, + sym_function_literal, + STATE(585), 1, + sym_value_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(546), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(577), 6, + sym_return_expression, + sym_break_expression, + sym_continue_expression, + sym_pipeline_expression, + sym__ordinary_expression, + sym_assignment_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [7699] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(97), 1, + anon_sym_return, + ACTIONS(99), 1, + anon_sym_break, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(471), 1, + sym_function_literal, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(543), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(592), 3, + sym_return_expression, + sym_break_expression, + sym_pipeline_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [7813] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(27), 1, + anon_sym_return, + ACTIONS(29), 1, + anon_sym_break, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(471), 1, + sym_function_literal, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(543), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(592), 3, + sym_return_expression, + sym_break_expression, + sym_pipeline_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [7927] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(169), 1, + anon_sym_return, + ACTIONS(171), 1, + anon_sym_break, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(471), 1, + sym_function_literal, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(543), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(592), 3, + sym_return_expression, + sym_break_expression, + sym_pipeline_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [8041] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(469), 2, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + ACTIONS(467), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(465), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [8103] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(475), 2, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + ACTIONS(473), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(471), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [8165] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(77), 1, + anon_sym_return, + ACTIONS(79), 1, + anon_sym_break, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(471), 1, + sym_function_literal, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(543), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(592), 3, + sym_return_expression, + sym_break_expression, + sym_pipeline_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [8279] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(25), 1, + anon_sym_AT, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(183), 1, + anon_sym_return, + ACTIONS(185), 1, + anon_sym_break, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + STATE(471), 1, + sym_function_literal, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(291), 2, + sym__binary_expression, + sym_binary_expression, + STATE(543), 2, + sym__non_assignment_expression, + sym_range_expression, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(233), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(592), 3, + sym_return_expression, + sym_break_expression, + sym_pipeline_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [8393] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(479), 1, + anon_sym_DOT, + ACTIONS(485), 1, + anon_sym_LBRACK, + STATE(183), 1, + aux_sym_postfix_expression_repeat1, + ACTIONS(483), 2, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(481), 12, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(477), 34, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [8460] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(467), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(465), 38, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_else, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [8519] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(479), 1, + anon_sym_DOT, + ACTIONS(485), 1, + anon_sym_LBRACK, + STATE(175), 1, + aux_sym_postfix_expression_repeat1, + ACTIONS(483), 2, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(489), 12, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(487), 34, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [8586] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(493), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(491), 38, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_else, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [8645] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(497), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(495), 38, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_else, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [8704] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(473), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(471), 38, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_else, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [8763] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(501), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(499), 38, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_else, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [8822] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(506), 1, + anon_sym_DOT, + ACTIONS(511), 1, + anon_sym_EQ_GT, + STATE(435), 1, + aux_sym_aggregate_pipeline_callable_repeat1, + ACTIONS(515), 2, + anon_sym_LT, + sym__newline, + ACTIONS(509), 10, + anon_sym_EQ, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(503), 11, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_SEMI, + ACTIONS(513), 25, + sym__and_continuation, + sym__or_continuation, + anon_sym_LBRACK, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [8891] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(520), 1, + anon_sym_DOT, + ACTIONS(528), 1, + anon_sym_LBRACK, + STATE(183), 1, + aux_sym_postfix_expression_repeat1, + ACTIONS(525), 2, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(523), 12, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(518), 34, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [8958] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(535), 1, + anon_sym_else, + ACTIONS(533), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(531), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9019] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(539), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(537), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9077] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(321), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(328), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9135] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(543), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(541), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9193] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(547), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(545), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9251] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(554), 1, + anon_sym_EQ_GT, + ACTIONS(558), 1, + sym__newline, + ACTIONS(549), 11, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_SEMI, + ACTIONS(552), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(556), 25, + sym__and_continuation, + sym__or_continuation, + anon_sym_LBRACK, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [9315] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(563), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(561), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9373] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(567), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(565), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9431] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(571), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(569), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9489] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(575), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(573), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9547] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(579), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(577), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9605] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(583), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(581), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9663] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(587), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(585), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9721] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(591), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(589), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9779] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(506), 1, + anon_sym_DOT, + ACTIONS(511), 1, + anon_sym_EQ_GT, + ACTIONS(515), 1, + anon_sym_LT, + ACTIONS(593), 1, + anon_sym_as, + ACTIONS(595), 1, + anon_sym_COMMA, + ACTIONS(597), 1, + anon_sym_RBRACE, + ACTIONS(601), 1, + anon_sym_COLON_COLON, + ACTIONS(603), 1, + anon_sym_COLON_EQ, + ACTIONS(605), 1, + anon_sym_COLON, + ACTIONS(607), 1, + sym__newline, + STATE(435), 1, + aux_sym_aggregate_pipeline_callable_repeat1, + ACTIONS(503), 3, + anon_sym_DASH_GT, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(509), 10, + anon_sym_EQ, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(513), 26, + sym__and_continuation, + sym__or_continuation, + anon_sym_LBRACK, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9861] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(612), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(610), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9919] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(616), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(614), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [9977] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(620), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(618), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10035] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(624), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(622), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10093] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(628), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(626), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10151] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(632), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(630), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10209] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(636), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(634), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10267] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(189), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(193), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10325] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(640), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(638), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10383] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(644), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(642), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10441] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(648), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(646), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10499] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(509), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(513), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10557] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(652), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(650), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10615] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(656), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(654), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10673] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(660), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(658), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10731] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(664), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(662), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10789] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(552), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(556), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10847] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(668), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(666), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10905] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(672), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(670), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [10963] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(676), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(674), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11021] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(680), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(678), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11079] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(356), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(361), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11137] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(684), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(682), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11195] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(688), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(686), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11253] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(692), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(690), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11311] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(696), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(694), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11369] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(700), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(698), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11427] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(704), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(702), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11485] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(708), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(706), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11543] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(712), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(710), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11601] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(716), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(714), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11659] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(720), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(718), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11717] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(725), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(722), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11775] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(730), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(728), 37, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11833] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(736), 1, + anon_sym_DASH_GT, + ACTIONS(738), 1, + anon_sym_PIPE_GT, + STATE(419), 1, + sym_inline_pipeline_stage, + STATE(542), 2, + sym_direct_pipeline_stage, + sym_aggregate_pipeline_stage, + ACTIONS(734), 12, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(732), 32, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11898] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(601), 1, + anon_sym_COLON_COLON, + ACTIONS(603), 1, + anon_sym_COLON_EQ, + ACTIONS(605), 1, + anon_sym_COLON, + ACTIONS(509), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(513), 33, + sym__and_continuation, + sym__or_continuation, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [11961] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(744), 1, + sym__newline, + STATE(235), 1, + aux_sym_source_file_repeat1, + ACTIONS(742), 17, + sym__trailing_dot_float, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_BANG, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_AT, + anon_sym_DOT_DOT_DOT, + anon_sym_DASH, + anon_sym_TILDE, + sym_float_literal, + sym_string_literal, + sym_character_literal, + ACTIONS(740), 30, + anon_sym_bits, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_match, + anon_sym_loop, + anon_sym_for, + anon_sym__, + anon_sym_not, + anon_sym_true, + anon_sym_false, + sym_nil_literal, + sym_default_expression, + sym_integer_literal, + sym_identifier, + [12022] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(593), 1, + anon_sym_as, + ACTIONS(595), 1, + anon_sym_COMMA, + ACTIONS(601), 1, + anon_sym_COLON_COLON, + ACTIONS(603), 1, + anon_sym_COLON_EQ, + ACTIONS(605), 1, + anon_sym_COLON, + ACTIONS(607), 1, + sym__newline, + ACTIONS(747), 1, + anon_sym_RBRACE, + ACTIONS(509), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(513), 29, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [12092] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(506), 1, + anon_sym_DOT, + ACTIONS(515), 1, + anon_sym_LT, + ACTIONS(753), 1, + anon_sym_COLON_COLON, + ACTIONS(755), 1, + anon_sym_COLON_EQ, + ACTIONS(757), 1, + anon_sym_COLON, + ACTIONS(759), 1, + anon_sym_RBRACK, + ACTIONS(763), 1, + sym__newline, + STATE(435), 1, + aux_sym_aggregate_pipeline_callable_repeat1, + ACTIONS(750), 2, + anon_sym_COMMA, + anon_sym_or, + ACTIONS(503), 4, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(509), 10, + anon_sym_EQ, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(513), 24, + sym__and_continuation, + sym__or_continuation, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [12168] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(506), 1, + anon_sym_DOT, + ACTIONS(511), 1, + anon_sym_EQ_GT, + ACTIONS(515), 1, + anon_sym_LT, + ACTIONS(601), 1, + anon_sym_COLON_COLON, + ACTIONS(603), 1, + anon_sym_COLON_EQ, + ACTIONS(605), 1, + anon_sym_COLON, + STATE(435), 1, + aux_sym_aggregate_pipeline_callable_repeat1, + ACTIONS(503), 4, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(509), 11, + anon_sym_EQ, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(513), 26, + sym__and_continuation, + sym__or_continuation, + anon_sym_LBRACK, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [12240] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(506), 1, + anon_sym_DOT, + ACTIONS(515), 1, + anon_sym_LT, + ACTIONS(753), 1, + anon_sym_COLON_COLON, + ACTIONS(755), 1, + anon_sym_COLON_EQ, + ACTIONS(757), 1, + anon_sym_COLON, + STATE(435), 1, + aux_sym_aggregate_pipeline_callable_repeat1, + ACTIONS(503), 5, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + ACTIONS(509), 11, + anon_sym_EQ, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(513), 26, + sym__and_continuation, + sym__or_continuation, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [12310] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(506), 1, + anon_sym_DOT, + ACTIONS(511), 1, + anon_sym_EQ_GT, + ACTIONS(515), 1, + anon_sym_LT, + ACTIONS(601), 1, + anon_sym_COLON_COLON, + ACTIONS(603), 1, + anon_sym_COLON_EQ, + ACTIONS(605), 1, + anon_sym_COLON, + ACTIONS(750), 1, + anon_sym_or, + ACTIONS(759), 1, + anon_sym_COMMA, + ACTIONS(766), 1, + sym__newline, + STATE(435), 1, + aux_sym_aggregate_pipeline_callable_repeat1, + ACTIONS(503), 3, + anon_sym_DASH_GT, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(509), 10, + anon_sym_EQ, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(513), 24, + sym__and_continuation, + sym__or_continuation, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [12387] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(506), 1, + anon_sym_DOT, + ACTIONS(511), 1, + anon_sym_EQ_GT, + ACTIONS(601), 1, + anon_sym_COLON_COLON, + ACTIONS(603), 1, + anon_sym_COLON_EQ, + ACTIONS(605), 1, + anon_sym_COLON, + STATE(435), 1, + aux_sym_aggregate_pipeline_callable_repeat1, + ACTIONS(515), 2, + anon_sym_LT, + sym__newline, + ACTIONS(503), 4, + anon_sym_COMMA, + anon_sym_DASH_GT, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(509), 10, + anon_sym_EQ, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(513), 25, + sym__and_continuation, + sym__or_continuation, + anon_sym_LBRACK, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [12458] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(753), 1, + anon_sym_COLON_COLON, + ACTIONS(755), 1, + anon_sym_COLON_EQ, + ACTIONS(757), 1, + anon_sym_COLON, + ACTIONS(509), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(513), 31, + sym__and_continuation, + sym__or_continuation, + anon_sym_COMMA, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [12519] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(753), 1, + anon_sym_COLON_COLON, + ACTIONS(755), 1, + anon_sym_COLON_EQ, + ACTIONS(757), 1, + anon_sym_COLON, + ACTIONS(763), 1, + sym__newline, + ACTIONS(750), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_or, + ACTIONS(509), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(513), 28, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [12584] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(772), 12, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(770), 34, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [12638] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(601), 1, + anon_sym_COLON_COLON, + ACTIONS(603), 1, + anon_sym_COLON_EQ, + ACTIONS(605), 1, + anon_sym_COLON, + ACTIONS(777), 1, + sym__newline, + ACTIONS(774), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(509), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(513), 28, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [12702] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(783), 1, + sym__newline, + ACTIONS(469), 2, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + ACTIONS(780), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_or, + ACTIONS(467), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(465), 28, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [12762] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(789), 1, + sym__newline, + ACTIONS(475), 2, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + ACTIONS(786), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_or, + ACTIONS(473), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(471), 28, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [12822] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(792), 1, + anon_sym_COLON_COLON, + ACTIONS(794), 1, + anon_sym_COLON_EQ, + ACTIONS(796), 1, + anon_sym_COLON, + ACTIONS(509), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(513), 30, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_DASH_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [12882] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(601), 1, + anon_sym_COLON_COLON, + ACTIONS(603), 1, + anon_sym_COLON_EQ, + ACTIONS(605), 1, + anon_sym_COLON, + ACTIONS(763), 1, + sym__newline, + ACTIONS(750), 2, + anon_sym_COMMA, + anon_sym_or, + ACTIONS(509), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(513), 27, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [12945] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(506), 1, + anon_sym_DOT, + STATE(435), 1, + aux_sym_aggregate_pipeline_callable_repeat1, + ACTIONS(515), 2, + anon_sym_LT, + sym__newline, + ACTIONS(503), 6, + anon_sym_COMMA, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + ACTIONS(509), 10, + anon_sym_EQ, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(513), 25, + sym__and_continuation, + sym__or_continuation, + anon_sym_LBRACK, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [13006] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(798), 1, + anon_sym_COLON_COLON, + ACTIONS(800), 1, + anon_sym_COLON_EQ, + ACTIONS(802), 1, + anon_sym_COLON, + ACTIONS(509), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(513), 30, + sym__and_continuation, + sym__or_continuation, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [13065] = 24, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + ACTIONS(804), 1, + sym__newline, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(281), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [13159] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(809), 1, + sym__newline, + ACTIONS(806), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_or, + ACTIONS(636), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(634), 28, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [13215] = 24, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + ACTIONS(812), 1, + sym__newline, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(275), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [13309] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(817), 1, + sym__newline, + ACTIONS(814), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_or, + ACTIONS(692), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(690), 28, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [13365] = 24, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + ACTIONS(820), 1, + sym__newline, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(276), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [13459] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(828), 1, + aux_sym_binary_expression_token2, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(826), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(824), 7, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + sym__newline, + ACTIONS(822), 30, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [13519] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(837), 1, + sym__newline, + ACTIONS(834), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_or, + ACTIONS(700), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(698), 28, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [13575] = 24, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + ACTIONS(840), 1, + sym__newline, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(283), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [13669] = 24, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + ACTIONS(842), 1, + sym__newline, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(277), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [13763] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(824), 12, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(822), 32, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [13815] = 24, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + ACTIONS(844), 1, + sym__newline, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(279), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [13909] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(828), 1, + aux_sym_binary_expression_token2, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(846), 1, + anon_sym_AMP, + ACTIONS(848), 1, + anon_sym_PIPE, + ACTIONS(850), 1, + anon_sym_CARET, + ACTIONS(852), 1, + aux_sym_binary_expression_token1, + ACTIONS(826), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(824), 4, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + sym__newline, + ACTIONS(822), 29, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [13977] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(857), 1, + sym__newline, + ACTIONS(854), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_or, + ACTIONS(579), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(577), 28, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [14033] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(558), 1, + sym__newline, + ACTIONS(549), 6, + anon_sym_COMMA, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + ACTIONS(552), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(556), 25, + sym__and_continuation, + sym__or_continuation, + anon_sym_LBRACK, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [14089] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(209), 1, + sym__newline, + ACTIONS(206), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_or, + ACTIONS(189), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(193), 28, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [14145] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(863), 1, + anon_sym_RBRACK, + ACTIONS(867), 1, + sym__newline, + ACTIONS(860), 2, + anon_sym_COMMA, + anon_sym_or, + ACTIONS(549), 4, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(552), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(556), 24, + sym__and_continuation, + sym__or_continuation, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [14205] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(828), 1, + aux_sym_binary_expression_token2, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(846), 1, + anon_sym_AMP, + ACTIONS(826), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(824), 6, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + sym__newline, + ACTIONS(822), 30, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [14267] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(554), 1, + anon_sym_EQ_GT, + ACTIONS(549), 4, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(552), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(556), 26, + sym__and_continuation, + sym__or_continuation, + anon_sym_LBRACK, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [14323] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(549), 5, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + ACTIONS(552), 13, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(556), 26, + sym__and_continuation, + sym__or_continuation, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [14377] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(867), 1, + sym__newline, + ACTIONS(860), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_or, + ACTIONS(552), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(556), 28, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [14433] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(873), 1, + sym__newline, + ACTIONS(870), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_or, + ACTIONS(648), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(646), 28, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [14489] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(828), 1, + aux_sym_binary_expression_token2, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(846), 1, + anon_sym_AMP, + ACTIONS(848), 1, + anon_sym_PIPE, + ACTIONS(850), 1, + anon_sym_CARET, + ACTIONS(852), 1, + aux_sym_binary_expression_token1, + ACTIONS(884), 1, + sym__comparison_continuation, + ACTIONS(826), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(878), 2, + anon_sym_EQ, + sym__newline, + ACTIONS(880), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(882), 3, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + ACTIONS(876), 25, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [14563] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(828), 1, + aux_sym_binary_expression_token2, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(846), 1, + anon_sym_AMP, + ACTIONS(848), 1, + anon_sym_PIPE, + ACTIONS(850), 1, + anon_sym_CARET, + ACTIONS(852), 1, + aux_sym_binary_expression_token1, + ACTIONS(884), 1, + sym__comparison_continuation, + ACTIONS(886), 1, + anon_sym_and, + ACTIONS(888), 1, + sym__and_continuation, + ACTIONS(826), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(878), 2, + anon_sym_EQ, + sym__newline, + ACTIONS(880), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(882), 3, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + ACTIONS(876), 23, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [14641] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(828), 1, + aux_sym_binary_expression_token2, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(846), 1, + anon_sym_AMP, + ACTIONS(848), 1, + anon_sym_PIPE, + ACTIONS(850), 1, + anon_sym_CARET, + ACTIONS(852), 1, + aux_sym_binary_expression_token1, + ACTIONS(826), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(878), 4, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + sym__newline, + ACTIONS(876), 29, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [14709] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(828), 1, + aux_sym_binary_expression_token2, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(826), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(878), 7, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + sym__newline, + ACTIONS(876), 30, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [14769] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(828), 1, + aux_sym_binary_expression_token2, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(846), 1, + anon_sym_AMP, + ACTIONS(850), 1, + anon_sym_CARET, + ACTIONS(852), 1, + aux_sym_binary_expression_token1, + ACTIONS(826), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(878), 5, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_PIPE, + sym__newline, + ACTIONS(876), 29, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [14835] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(890), 1, + anon_sym_COLON_COLON, + ACTIONS(892), 1, + anon_sym_COLON_EQ, + ACTIONS(894), 1, + anon_sym_COLON, + ACTIONS(509), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(513), 29, + sym__and_continuation, + sym__or_continuation, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_or, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [14893] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(828), 1, + aux_sym_binary_expression_token2, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(846), 1, + anon_sym_AMP, + ACTIONS(826), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(878), 6, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + sym__newline, + ACTIONS(876), 30, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [14955] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(899), 1, + sym__newline, + ACTIONS(896), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_or, + ACTIONS(676), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(674), 28, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [15011] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(878), 9, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + sym__newline, + ACTIONS(876), 31, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [15067] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(828), 1, + aux_sym_binary_expression_token2, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(846), 1, + anon_sym_AMP, + ACTIONS(848), 1, + anon_sym_PIPE, + ACTIONS(850), 1, + anon_sym_CARET, + ACTIONS(852), 1, + aux_sym_binary_expression_token1, + ACTIONS(884), 1, + sym__comparison_continuation, + ACTIONS(824), 2, + anon_sym_EQ, + sym__newline, + ACTIONS(826), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(880), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(882), 3, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + ACTIONS(822), 25, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [15141] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(878), 12, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + sym__newline, + ACTIONS(876), 32, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [15193] = 24, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + ACTIONS(902), 1, + sym__newline, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(274), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [15287] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(828), 1, + aux_sym_binary_expression_token2, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(846), 1, + anon_sym_AMP, + ACTIONS(850), 1, + anon_sym_CARET, + ACTIONS(852), 1, + aux_sym_binary_expression_token1, + ACTIONS(826), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(824), 5, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_PIPE, + sym__newline, + ACTIONS(822), 29, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [15353] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(907), 1, + sym__newline, + ACTIONS(904), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_or, + ACTIONS(624), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(622), 28, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [15409] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(824), 9, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + sym__newline, + ACTIONS(822), 31, + sym__and_continuation, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + anon_sym_SEMI, + [15465] = 24, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + ACTIONS(910), 1, + sym__newline, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(273), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [15559] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(915), 1, + sym__newline, + ACTIONS(912), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_or, + ACTIONS(652), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(650), 28, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [15615] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(828), 1, + aux_sym_binary_expression_token2, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(846), 1, + anon_sym_AMP, + ACTIONS(848), 1, + anon_sym_PIPE, + ACTIONS(850), 1, + anon_sym_CARET, + ACTIONS(852), 1, + aux_sym_binary_expression_token1, + ACTIONS(884), 1, + sym__comparison_continuation, + ACTIONS(886), 1, + anon_sym_and, + ACTIONS(888), 1, + sym__and_continuation, + ACTIONS(824), 2, + anon_sym_EQ, + sym__newline, + ACTIONS(826), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(880), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(882), 3, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + ACTIONS(822), 23, + sym__or_continuation, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_or, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [15693] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(828), 1, + aux_sym_binary_expression_token2, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(846), 1, + anon_sym_AMP, + ACTIONS(848), 1, + anon_sym_PIPE, + ACTIONS(850), 1, + anon_sym_CARET, + ACTIONS(852), 1, + aux_sym_binary_expression_token1, + ACTIONS(884), 1, + sym__comparison_continuation, + ACTIONS(886), 1, + anon_sym_and, + ACTIONS(888), 1, + sym__and_continuation, + ACTIONS(922), 1, + anon_sym_or, + ACTIONS(926), 1, + sym__or_continuation, + ACTIONS(826), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(880), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(920), 2, + anon_sym_EQ, + sym__newline, + ACTIONS(924), 2, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(882), 3, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + ACTIONS(918), 19, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [15777] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(931), 1, + sym__newline, + ACTIONS(928), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_or, + ACTIONS(660), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(658), 28, + sym__and_continuation, + sym__or_continuation, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [15833] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(261), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [15924] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(275), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [16015] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(554), 1, + anon_sym_EQ_GT, + ACTIONS(860), 1, + anon_sym_or, + ACTIONS(863), 1, + anon_sym_COMMA, + ACTIONS(934), 1, + sym__newline, + ACTIONS(549), 3, + anon_sym_DASH_GT, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(552), 12, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(556), 24, + sym__and_continuation, + sym__or_continuation, + anon_sym_LBRACK, + anon_sym_PIPE_GT, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_DOT_DOT_LT, + anon_sym_DOT_DOT_EQ, + anon_sym_and, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + aux_sym_binary_expression_token1, + aux_sym_binary_expression_token2, + aux_sym_binary_expression_token3, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + sym__comparison_continuation, + [16076] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(940), 1, + anon_sym_GT, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(946), 1, + sym__newline, + STATE(300), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(820), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [16157] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(273), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [16248] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(274), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [16339] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(948), 1, + anon_sym_RPAREN, + ACTIONS(950), 1, + sym__newline, + STATE(304), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(820), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [16420] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(952), 1, + anon_sym_GT, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(824), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [16501] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(952), 1, + anon_sym_GT, + ACTIONS(956), 1, + sym__newline, + STATE(306), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(820), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [16582] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(958), 1, + anon_sym_GT, + ACTIONS(960), 1, + sym__newline, + STATE(320), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(703), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [16663] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(334), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [16754] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(954), 1, + sym__newline, + ACTIONS(962), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(824), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [16835] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(962), 1, + anon_sym_RPAREN, + ACTIONS(964), 1, + sym__newline, + STATE(308), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(820), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [16916] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(954), 1, + sym__newline, + ACTIONS(966), 1, + anon_sym_GT, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(824), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [16997] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(966), 1, + anon_sym_GT, + ACTIONS(968), 1, + sym__newline, + STATE(325), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(820), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [17078] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(954), 1, + sym__newline, + ACTIONS(970), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(824), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [17159] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(970), 1, + anon_sym_RPAREN, + ACTIONS(972), 1, + sym__newline, + STATE(310), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(820), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [17240] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(954), 1, + sym__newline, + ACTIONS(974), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(824), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [17321] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(974), 1, + anon_sym_RPAREN, + ACTIONS(976), 1, + sym__newline, + STATE(312), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(820), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [17402] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(954), 1, + sym__newline, + ACTIONS(978), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(824), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [17483] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(279), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [17574] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(281), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [17665] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(980), 1, + anon_sym_RPAREN, + ACTIONS(982), 1, + sym__newline, + STATE(336), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(1045), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [17746] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(263), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [17837] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(257), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [17928] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(285), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [18019] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(290), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [18110] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(954), 1, + sym__newline, + ACTIONS(984), 1, + anon_sym_GT, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(684), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [18191] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(282), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [18282] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(268), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [18373] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(287), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [18464] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(283), 5, + sym__binary_expression, + sym__prefix_expression, + sym_binary_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [18555] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(954), 1, + sym__newline, + ACTIONS(986), 1, + anon_sym_GT, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(824), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [18636] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(988), 1, + sym__newline, + STATE(410), 1, + aux_sym__newlines, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(820), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [18714] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(824), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [18792] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(990), 1, + sym__newline, + STATE(332), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(775), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [18870] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(988), 1, + sym__newline, + STATE(410), 1, + aux_sym__newlines, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(775), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [18948] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(992), 1, + sym__newline, + STATE(327), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(820), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [19026] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(735), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [19104] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(673), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [19182] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(994), 1, + sym__newline, + STATE(331), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(673), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [19260] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(828), 1, + aux_sym_binary_expression_token2, + ACTIONS(832), 1, + aux_sym_binary_expression_token3, + ACTIONS(846), 1, + anon_sym_AMP, + ACTIONS(848), 1, + anon_sym_PIPE, + ACTIONS(850), 1, + anon_sym_CARET, + ACTIONS(852), 1, + aux_sym_binary_expression_token1, + ACTIONS(884), 1, + sym__comparison_continuation, + ACTIONS(886), 1, + anon_sym_and, + ACTIONS(888), 1, + sym__and_continuation, + ACTIONS(922), 1, + anon_sym_or, + ACTIONS(926), 1, + sym__or_continuation, + ACTIONS(826), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(880), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(998), 2, + anon_sym_EQ, + sym__newline, + ACTIONS(830), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(882), 3, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_EQ_EQ, + ACTIONS(996), 19, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [19340] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(988), 1, + sym__newline, + STATE(410), 1, + aux_sym__newlines, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(673), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [19418] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(921), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [19496] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + ACTIONS(1000), 1, + anon_sym_RBRACK, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(1118), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [19571] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(51), 1, + sym_integer_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(53), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(244), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [19660] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_AMP, + ACTIONS(23), 1, + anon_sym_PIPE, + ACTIONS(33), 1, + anon_sym_if, + ACTIONS(35), 1, + anon_sym_match, + ACTIONS(37), 1, + anon_sym_loop, + ACTIONS(39), 1, + anon_sym_for, + ACTIONS(41), 1, + anon_sym_DASH, + ACTIONS(43), 1, + anon_sym_not, + ACTIONS(47), 1, + sym_nil_literal, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(463), 1, + anon_sym_LPAREN, + ACTIONS(1002), 1, + sym_integer_literal, + STATE(177), 1, + sym_primary_expression, + ACTIONS(15), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(45), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(49), 2, + sym_default_expression, + sym_identifier, + ACTIONS(55), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(1004), 2, + sym__trailing_dot_float, + sym_float_literal, + STATE(209), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(244), 3, + sym__prefix_expression, + sym_unary_expression, + sym_postfix_expression, + STATE(210), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [19749] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(590), 1, + sym_type_expression, + STATE(641), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [19821] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(590), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [19893] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(1106), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [19965] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(1127), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [20037] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(770), 1, + sym_type_expression, + STATE(641), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [20109] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(544), 1, + sym_type_expression, + STATE(545), 1, + sym_function_type, + STATE(641), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [20181] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(1080), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [20253] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(905), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [20325] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(600), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [20397] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(544), 1, + sym_type_expression, + STATE(545), 1, + sym_function_type, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [20469] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(1094), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [20541] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(938), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [20613] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(885), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [20685] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(545), 1, + sym_function_type, + STATE(818), 1, + sym_type_expression, + STATE(536), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [20757] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(970), 3, + sym__result_type, + sym_result_type, + sym_optional_type, + STATE(484), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [20823] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1008), 1, + anon_sym_LBRACE, + ACTIONS(1010), 1, + anon_sym_LBRACK, + ACTIONS(1012), 1, + anon_sym_LPAREN, + ACTIONS(1014), 1, + anon_sym_AMP, + ACTIONS(1016), 1, + anon_sym_PIPE, + ACTIONS(1018), 1, + anon_sym_if, + ACTIONS(1020), 1, + anon_sym_match, + ACTIONS(1022), 1, + anon_sym_loop, + ACTIONS(1024), 1, + anon_sym_for, + ACTIONS(1026), 1, + anon_sym_DASH, + ACTIONS(1030), 1, + sym_nil_literal, + ACTIONS(1032), 1, + sym_integer_literal, + STATE(442), 1, + sym_primary_expression, + STATE(482), 1, + sym_pipeline_callable, + ACTIONS(1006), 2, + sym_default_expression, + sym_identifier, + ACTIONS(1028), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(1034), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(1036), 2, + sym_string_literal, + sym_character_literal, + STATE(467), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(447), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [20903] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1008), 1, + anon_sym_LBRACE, + ACTIONS(1010), 1, + anon_sym_LBRACK, + ACTIONS(1012), 1, + anon_sym_LPAREN, + ACTIONS(1014), 1, + anon_sym_AMP, + ACTIONS(1016), 1, + anon_sym_PIPE, + ACTIONS(1018), 1, + anon_sym_if, + ACTIONS(1020), 1, + anon_sym_match, + ACTIONS(1022), 1, + anon_sym_loop, + ACTIONS(1024), 1, + anon_sym_for, + ACTIONS(1030), 1, + sym_nil_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + STATE(846), 1, + sym_primary_expression, + STATE(900), 1, + sym_aggregate_pipeline_callable, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(1006), 2, + sym_default_expression, + sym_identifier, + ACTIONS(1036), 2, + sym_string_literal, + sym_character_literal, + STATE(467), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(447), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [20983] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1008), 1, + anon_sym_LBRACE, + ACTIONS(1010), 1, + anon_sym_LBRACK, + ACTIONS(1012), 1, + anon_sym_LPAREN, + ACTIONS(1014), 1, + anon_sym_AMP, + ACTIONS(1016), 1, + anon_sym_PIPE, + ACTIONS(1018), 1, + anon_sym_if, + ACTIONS(1020), 1, + anon_sym_match, + ACTIONS(1022), 1, + anon_sym_loop, + ACTIONS(1024), 1, + anon_sym_for, + ACTIONS(1026), 1, + anon_sym_DASH, + ACTIONS(1030), 1, + sym_nil_literal, + ACTIONS(1032), 1, + sym_integer_literal, + STATE(442), 1, + sym_primary_expression, + STATE(487), 1, + sym_pipeline_callable, + ACTIONS(1006), 2, + sym_default_expression, + sym_identifier, + ACTIONS(1028), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(1034), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(1036), 2, + sym_string_literal, + sym_character_literal, + STATE(467), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(447), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [21063] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1008), 1, + anon_sym_LBRACE, + ACTIONS(1010), 1, + anon_sym_LBRACK, + ACTIONS(1012), 1, + anon_sym_LPAREN, + ACTIONS(1014), 1, + anon_sym_AMP, + ACTIONS(1016), 1, + anon_sym_PIPE, + ACTIONS(1018), 1, + anon_sym_if, + ACTIONS(1020), 1, + anon_sym_match, + ACTIONS(1022), 1, + anon_sym_loop, + ACTIONS(1024), 1, + anon_sym_for, + ACTIONS(1030), 1, + sym_nil_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + STATE(846), 1, + sym_primary_expression, + STATE(1082), 1, + sym_aggregate_pipeline_callable, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(1006), 2, + sym_default_expression, + sym_identifier, + ACTIONS(1036), 2, + sym_string_literal, + sym_character_literal, + STATE(467), 3, + sym_boolean_literal, + sym_unit_literal, + sym_signed_numeric_literal, + STATE(447), 11, + sym_if_expression, + sym_match_expression, + sym_loop_expression, + sym_for_expression, + sym_block, + sym_tuple_value, + sym_collection_literal, + sym_product_constructor, + sym_sum_constructor, + sym_bits_constructor, + sym_literal, + [21143] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(504), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [21204] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(538), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [21265] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(73), 1, + anon_sym_bits, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(191), 1, + anon_sym_LBRACE, + ACTIONS(198), 1, + anon_sym_LPAREN, + ACTIONS(938), 1, + anon_sym_LBRACK, + ACTIONS(942), 1, + anon_sym_AMP, + ACTIONS(944), 1, + anon_sym_PIPE, + STATE(461), 1, + sym_qualified_name, + STATE(480), 1, + sym_type_name, + STATE(508), 12, + sym__container_type, + sym_array_type, + sym_map_type, + sym__primary_type, + sym_grouped_type, + sym_unit_type, + sym_tuple_type, + sym_type_application, + sym_product_type, + sym_sum_type, + sym_bits_type, + sym_primitive_type, + ACTIONS(75), 14, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [21326] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1040), 14, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_match, + anon_sym_loop, + anon_sym_for, + anon_sym_not, + anon_sym_true, + anon_sym_false, + sym_nil_literal, + sym_default_expression, + sym_integer_literal, + sym_identifier, + ACTIONS(1042), 21, + sym__trailing_dot_float, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_AT, + anon_sym_BQUOTE, + anon_sym_DASH, + anon_sym_TILDE, + sym_float_literal, + sym_string_literal, + sym_character_literal, + sym__newline, + anon_sym_SEMI, + [21369] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1048), 1, + sym__newline, + STATE(363), 1, + aux_sym__newlines, + ACTIONS(1046), 14, + sym__trailing_dot_float, + anon_sym_LBRACE, + anon_sym_BANG, + anon_sym_LBRACK, + anon_sym_LPAREN, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_AT, + anon_sym_DOT_DOT_DOT, + anon_sym_DASH, + anon_sym_TILDE, + sym_float_literal, + sym_string_literal, + sym_character_literal, + ACTIONS(1044), 17, + anon_sym_use, + anon_sym_pub, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_match, + anon_sym_loop, + anon_sym_for, + anon_sym__, + anon_sym_not, + anon_sym_true, + anon_sym_false, + sym_nil_literal, + sym_default_expression, + sym_integer_literal, + sym_identifier, + [21414] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1057), 1, + sym__newline, + ACTIONS(1055), 3, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_RPAREN, + ACTIONS(1053), 14, + sym__trailing_dot_float, + anon_sym_LBRACE, + anon_sym_BANG, + anon_sym_LBRACK, + anon_sym_LPAREN, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_AT, + anon_sym_DOT_DOT_DOT, + anon_sym_DASH, + anon_sym_TILDE, + sym_float_literal, + sym_string_literal, + sym_character_literal, + ACTIONS(1051), 15, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_match, + anon_sym_loop, + anon_sym_for, + anon_sym__, + anon_sym_not, + anon_sym_true, + anon_sym_false, + sym_nil_literal, + sym_default_expression, + sym_integer_literal, + sym_identifier, + [21459] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(375), 1, + sym__newline, + STATE(363), 1, + aux_sym__newlines, + ACTIONS(1062), 13, + sym__trailing_dot_float, + anon_sym_LBRACE, + anon_sym_BANG, + anon_sym_LBRACK, + anon_sym_LPAREN, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_AT, + anon_sym_DASH, + anon_sym_TILDE, + sym_float_literal, + sym_string_literal, + sym_character_literal, + ACTIONS(1060), 17, + anon_sym_use, + anon_sym_pub, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_match, + anon_sym_loop, + anon_sym_for, + anon_sym__, + anon_sym_not, + anon_sym_true, + anon_sym_false, + sym_nil_literal, + sym_default_expression, + sym_integer_literal, + sym_identifier, + [21503] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1064), 1, + sym__newline, + STATE(366), 1, + aux_sym_source_file_repeat1, + ACTIONS(742), 14, + sym__trailing_dot_float, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_BANG, + anon_sym_LBRACK, + anon_sym_LPAREN, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_AT, + anon_sym_DASH, + anon_sym_TILDE, + sym_float_literal, + sym_string_literal, + sym_character_literal, + ACTIONS(740), 16, + anon_sym_use, + anon_sym_pub, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_match, + anon_sym_loop, + anon_sym_for, + anon_sym_not, + anon_sym_true, + anon_sym_false, + sym_nil_literal, + sym_default_expression, + sym_integer_literal, + sym_identifier, + [21547] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1055), 1, + ts_builtin_sym_end, + ACTIONS(1057), 1, + sym__newline, + ACTIONS(1053), 13, + sym__trailing_dot_float, + anon_sym_LBRACE, + anon_sym_BANG, + anon_sym_LBRACK, + anon_sym_LPAREN, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_AT, + anon_sym_DASH, + anon_sym_TILDE, + sym_float_literal, + sym_string_literal, + sym_character_literal, + ACTIONS(1051), 16, + anon_sym_use, + anon_sym_pub, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_match, + anon_sym_loop, + anon_sym_for, + anon_sym_not, + anon_sym_true, + anon_sym_false, + sym_nil_literal, + sym_default_expression, + sym_integer_literal, + sym_identifier, + [21590] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + STATE(650), 1, + sym_pattern_atom, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(1073), 2, + anon_sym_if, + anon_sym_or, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + ACTIONS(1067), 5, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + sym__newline, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [21653] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + STATE(629), 1, + sym_pattern_atom, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(1077), 2, + anon_sym_if, + anon_sym_or, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + ACTIONS(1075), 5, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + sym__newline, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [21716] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1079), 1, + anon_sym_RBRACK, + ACTIONS(1081), 1, + anon_sym_DOT_DOT_DOT, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(714), 1, + sym_array_pattern_entry, + STATE(1042), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [21786] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1081), 1, + anon_sym_DOT_DOT_DOT, + ACTIONS(1083), 1, + anon_sym_RBRACK, + ACTIONS(1085), 1, + sym__newline, + STATE(370), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(683), 1, + sym_array_pattern_entry, + STATE(1042), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [21856] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1081), 1, + anon_sym_DOT_DOT_DOT, + ACTIONS(1087), 1, + anon_sym_RBRACK, + ACTIONS(1089), 1, + sym__newline, + STATE(375), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(948), 1, + sym_array_pattern_entry, + STATE(1042), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [21926] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(81), 1, + sym_nil_literal, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1093), 1, + anon_sym_RPAREN, + ACTIONS(1095), 1, + sym__newline, + STATE(385), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(906), 1, + sym_pattern, + STATE(1044), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(1091), 2, + anon_sym__, + sym_identifier, + STATE(857), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + STATE(632), 5, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [22000] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1081), 1, + anon_sym_DOT_DOT_DOT, + ACTIONS(1087), 1, + anon_sym_RBRACK, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(955), 1, + sym_array_pattern_entry, + STATE(1042), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [22070] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1081), 1, + anon_sym_DOT_DOT_DOT, + ACTIONS(1097), 1, + anon_sym_RBRACK, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(955), 1, + sym_array_pattern_entry, + STATE(1042), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [22140] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1081), 1, + anon_sym_DOT_DOT_DOT, + ACTIONS(1099), 1, + anon_sym_RBRACK, + ACTIONS(1101), 1, + sym__newline, + STATE(374), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(948), 1, + sym_array_pattern_entry, + STATE(1042), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [22210] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1040), 14, + anon_sym_return, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_match, + anon_sym_loop, + anon_sym_for, + anon_sym_not, + anon_sym_true, + anon_sym_false, + sym_nil_literal, + sym_default_expression, + sym_integer_literal, + sym_identifier, + ACTIONS(1042), 16, + sym__trailing_dot_float, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_BANG, + anon_sym_LBRACK, + anon_sym_LPAREN, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_AT, + anon_sym_DASH, + anon_sym_TILDE, + sym_float_literal, + sym_string_literal, + sym_character_literal, + sym__newline, + anon_sym_SEMI, + [22248] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1081), 1, + anon_sym_DOT_DOT_DOT, + ACTIONS(1097), 1, + anon_sym_RBRACK, + ACTIONS(1103), 1, + sym__newline, + STATE(379), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(948), 1, + sym_array_pattern_entry, + STATE(1042), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [22318] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1081), 1, + anon_sym_DOT_DOT_DOT, + ACTIONS(1105), 1, + anon_sym_RBRACK, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(955), 1, + sym_array_pattern_entry, + STATE(1042), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [22388] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1107), 1, + anon_sym_RBRACE, + ACTIONS(1109), 1, + sym__newline, + STATE(381), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(608), 1, + sym_match_arm, + STATE(1095), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [22455] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1111), 1, + anon_sym_RBRACE, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(670), 1, + sym_match_arm, + STATE(1095), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [22522] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1113), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + ACTIONS(742), 10, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_DOT_DOT_DOT, + ACTIONS(740), 17, + anon_sym_bits, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym__, + sym_identifier, + [22563] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1116), 1, + anon_sym_RBRACE, + ACTIONS(1118), 1, + sym__newline, + STATE(384), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(655), 1, + sym_match_arm, + STATE(1095), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [22630] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1120), 1, + anon_sym_RBRACE, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(660), 1, + sym_match_arm, + STATE(1095), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [22697] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(81), 1, + sym_nil_literal, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(933), 1, + sym_pattern, + STATE(943), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(1091), 2, + anon_sym__, + sym_identifier, + STATE(857), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + STATE(632), 5, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [22768] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(375), 1, + sym__newline, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1081), 1, + anon_sym_DOT_DOT_DOT, + STATE(363), 1, + aux_sym__newlines, + STATE(601), 1, + sym_pattern_atom, + STATE(948), 1, + sym_array_pattern_entry, + STATE(1042), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [22835] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1081), 1, + anon_sym_DOT_DOT_DOT, + ACTIONS(1122), 1, + sym__newline, + STATE(388), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(948), 1, + sym_array_pattern_entry, + STATE(1042), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [22902] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1081), 1, + anon_sym_DOT_DOT_DOT, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(955), 1, + sym_array_pattern_entry, + STATE(1042), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [22969] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1124), 1, + anon_sym_RPAREN, + ACTIONS(1126), 1, + sym__newline, + STATE(392), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(980), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [23033] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1128), 1, + anon_sym_RPAREN, + ACTIONS(1130), 1, + sym__newline, + STATE(393), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(980), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [23097] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1132), 1, + anon_sym_RPAREN, + ACTIONS(1134), 1, + sym__newline, + STATE(397), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(980), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [23161] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1132), 1, + anon_sym_RPAREN, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(912), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [23225] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1136), 1, + anon_sym_RPAREN, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(912), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [23289] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1124), 1, + anon_sym_RPAREN, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(912), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [23353] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1138), 1, + anon_sym_RPAREN, + ACTIONS(1140), 1, + sym__newline, + STATE(394), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(980), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [23417] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1142), 1, + anon_sym_RPAREN, + ACTIONS(1144), 1, + sym__newline, + STATE(405), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(906), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [23481] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1128), 1, + anon_sym_RPAREN, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(912), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [23545] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1146), 1, + sym__newline, + STATE(406), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(681), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [23606] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1148), 1, + sym__newline, + STATE(407), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(980), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [23667] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(375), 1, + sym__newline, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + STATE(363), 1, + aux_sym__newlines, + STATE(601), 1, + sym_pattern_atom, + STATE(681), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [23728] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1057), 1, + sym__newline, + ACTIONS(1055), 3, + anon_sym_RBRACE, + anon_sym_RPAREN, + anon_sym_GT, + ACTIONS(1053), 6, + anon_sym_LBRACE, + anon_sym_LBRACK, + anon_sym_LPAREN, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_DOT_DOT_DOT, + ACTIONS(1051), 17, + anon_sym_bits, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym__, + sym_identifier, + [23767] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(375), 1, + sym__newline, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + STATE(363), 1, + aux_sym__newlines, + STATE(601), 1, + sym_pattern_atom, + STATE(728), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [23828] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(375), 1, + sym__newline, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + STATE(363), 1, + aux_sym__newlines, + STATE(601), 1, + sym_pattern_atom, + STATE(980), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [23889] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + ACTIONS(1150), 1, + sym__newline, + STATE(408), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(728), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [23950] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(933), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [24011] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(748), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [24072] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(912), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [24133] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(111), 1, + sym__newline, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + STATE(235), 1, + aux_sym_source_file_repeat1, + STATE(601), 1, + sym_pattern_atom, + STATE(681), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [24194] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + STATE(601), 1, + sym_pattern_atom, + STATE(1064), 1, + sym_match_arm, + STATE(1095), 1, + sym_pattern, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [24252] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1152), 1, + sym__newline, + STATE(410), 1, + aux_sym__newlines, + ACTIONS(1046), 6, + anon_sym_LBRACE, + anon_sym_LBRACK, + anon_sym_LPAREN, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_DOT_DOT_DOT, + ACTIONS(1044), 17, + anon_sym_bits, + anon_sym_f32, + anon_sym_f64, + anon_sym_bit, + anon_sym_chr, + anon_sym_str, + anon_sym_nvr, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym__, + sym_identifier, + [24289] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(346), 1, + sym_integer_literal, + ACTIONS(1038), 1, + anon_sym_DASH, + ACTIONS(1069), 1, + anon_sym_LBRACK, + ACTIONS(1071), 1, + anon_sym_PIPE, + STATE(656), 1, + sym_pattern_atom, + ACTIONS(344), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(348), 2, + sym__trailing_dot_float, + sym_float_literal, + ACTIONS(350), 2, + sym_string_literal, + sym_character_literal, + ACTIONS(81), 3, + anon_sym__, + sym_nil_literal, + sym_identifier, + STATE(632), 8, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + sym_sum_pattern, + sym_bits_pattern, + sym_array_pattern, + sym_boolean_literal, + sym_signed_numeric_literal, + [24341] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1157), 1, + anon_sym_DOT, + ACTIONS(1160), 1, + anon_sym_EQ, + STATE(412), 1, + aux_sym_aggregate_pipeline_callable_repeat1, + ACTIONS(1155), 19, + ts_builtin_sym_end, + anon_sym_as, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LT, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [24375] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1160), 1, + anon_sym_EQ, + ACTIONS(1155), 20, + ts_builtin_sym_end, + anon_sym_as, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LT, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [24404] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(736), 1, + anon_sym_DASH_GT, + ACTIONS(738), 1, + anon_sym_PIPE_GT, + ACTIONS(1164), 1, + sym__direct_pipeline_continuation, + ACTIONS(1166), 1, + sym__aggregate_pipeline_continuation, + ACTIONS(1168), 1, + sym__newline, + STATE(421), 2, + sym_pipeline_stage, + aux_sym_pipeline_expression_repeat1, + STATE(541), 2, + sym_inline_pipeline_stage, + sym_continuation_pipeline_stage, + STATE(542), 2, + sym_direct_pipeline_stage, + sym_aggregate_pipeline_stage, + ACTIONS(1162), 9, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_SEMI, + [24446] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(473), 1, + sym__newline, + ACTIONS(471), 19, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_else, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24474] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(493), 1, + sym__newline, + ACTIONS(491), 19, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_else, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24502] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(467), 1, + sym__newline, + ACTIONS(465), 19, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_else, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24530] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(533), 1, + sym__newline, + ACTIONS(1170), 1, + anon_sym_else, + ACTIONS(531), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24560] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(736), 1, + anon_sym_DASH_GT, + ACTIONS(738), 1, + anon_sym_PIPE_GT, + ACTIONS(1164), 1, + sym__direct_pipeline_continuation, + ACTIONS(1166), 1, + sym__aggregate_pipeline_continuation, + ACTIONS(1174), 1, + sym__newline, + STATE(414), 2, + sym_pipeline_stage, + aux_sym_pipeline_expression_repeat1, + STATE(541), 2, + sym_inline_pipeline_stage, + sym_continuation_pipeline_stage, + STATE(542), 2, + sym_direct_pipeline_stage, + sym_aggregate_pipeline_stage, + ACTIONS(1172), 9, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_SEMI, + [24602] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(501), 1, + sym__newline, + ACTIONS(499), 19, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_else, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24630] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1178), 1, + anon_sym_DASH_GT, + ACTIONS(1181), 1, + anon_sym_PIPE_GT, + ACTIONS(1184), 1, + sym__direct_pipeline_continuation, + ACTIONS(1187), 1, + sym__aggregate_pipeline_continuation, + ACTIONS(1190), 1, + sym__newline, + STATE(421), 2, + sym_pipeline_stage, + aux_sym_pipeline_expression_repeat1, + STATE(541), 2, + sym_inline_pipeline_stage, + sym_continuation_pipeline_stage, + STATE(542), 2, + sym_direct_pipeline_stage, + sym_aggregate_pipeline_stage, + ACTIONS(1176), 9, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_SEMI, + [24672] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(497), 1, + sym__newline, + ACTIONS(495), 19, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_else, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24700] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(680), 1, + sym__newline, + ACTIONS(678), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24727] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(672), 1, + sym__newline, + ACTIONS(670), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24754] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(676), 1, + sym__newline, + ACTIONS(674), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24781] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(356), 1, + sym__newline, + ACTIONS(361), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24808] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(684), 1, + sym__newline, + ACTIONS(682), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24835] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(688), 1, + sym__newline, + ACTIONS(686), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24862] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(692), 1, + sym__newline, + ACTIONS(690), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24889] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(696), 1, + sym__newline, + ACTIONS(694), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24916] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(700), 1, + sym__newline, + ACTIONS(698), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24943] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(189), 1, + sym__newline, + ACTIONS(193), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24970] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(704), 1, + sym__newline, + ACTIONS(702), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [24997] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(552), 1, + sym__newline, + ACTIONS(556), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25024] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1194), 1, + anon_sym_DOT, + ACTIONS(1196), 1, + anon_sym_EQ, + STATE(412), 1, + aux_sym_aggregate_pipeline_callable_repeat1, + ACTIONS(1192), 16, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_LT, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [25055] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(716), 1, + sym__newline, + ACTIONS(714), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25082] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(547), 1, + sym__newline, + ACTIONS(545), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25109] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(636), 1, + sym__newline, + ACTIONS(634), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25136] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(321), 1, + sym__newline, + ACTIONS(328), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25163] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(543), 1, + sym__newline, + ACTIONS(541), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25190] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1194), 1, + anon_sym_DOT, + ACTIONS(1198), 1, + anon_sym_EQ, + STATE(435), 1, + aux_sym_aggregate_pipeline_callable_repeat1, + ACTIONS(511), 16, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_LT, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [25221] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1202), 1, + anon_sym_DOT, + ACTIONS(1204), 1, + anon_sym_LBRACK, + ACTIONS(1206), 1, + sym__newline, + STATE(444), 1, + aux_sym_pipeline_callable_repeat1, + ACTIONS(1200), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25254] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(720), 1, + sym__newline, + ACTIONS(718), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25281] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1202), 1, + anon_sym_DOT, + ACTIONS(1204), 1, + anon_sym_LBRACK, + ACTIONS(1210), 1, + sym__newline, + STATE(453), 1, + aux_sym_pipeline_callable_repeat1, + ACTIONS(1208), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25314] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(567), 1, + sym__newline, + ACTIONS(565), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25341] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(571), 1, + sym__newline, + ACTIONS(569), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25368] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(509), 1, + sym__newline, + ACTIONS(513), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25395] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(579), 1, + sym__newline, + ACTIONS(577), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25422] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(583), 1, + sym__newline, + ACTIONS(581), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25449] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(587), 1, + sym__newline, + ACTIONS(585), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25476] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(591), 1, + sym__newline, + ACTIONS(589), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25503] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(652), 1, + sym__newline, + ACTIONS(650), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25530] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1214), 1, + anon_sym_DOT, + ACTIONS(1217), 1, + anon_sym_LBRACK, + ACTIONS(1220), 1, + sym__newline, + STATE(453), 1, + aux_sym_pipeline_callable_repeat1, + ACTIONS(1212), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25563] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(616), 1, + sym__newline, + ACTIONS(614), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25590] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(539), 1, + sym__newline, + ACTIONS(537), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25617] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(620), 1, + sym__newline, + ACTIONS(618), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25644] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(624), 1, + sym__newline, + ACTIONS(622), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25671] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(628), 1, + sym__newline, + ACTIONS(626), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25698] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(632), 1, + sym__newline, + ACTIONS(630), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25725] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(640), 1, + sym__newline, + ACTIONS(638), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25752] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1198), 1, + anon_sym_EQ, + ACTIONS(511), 18, + ts_builtin_sym_end, + anon_sym_as, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_LT, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [25779] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(644), 1, + sym__newline, + ACTIONS(642), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25806] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(656), 1, + sym__newline, + ACTIONS(654), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25833] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(660), 1, + sym__newline, + ACTIONS(658), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25860] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(664), 1, + sym__newline, + ACTIONS(662), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25887] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(668), 1, + sym__newline, + ACTIONS(666), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25914] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(648), 1, + sym__newline, + ACTIONS(646), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25941] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(575), 1, + sym__newline, + ACTIONS(573), 18, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25968] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1220), 1, + sym__newline, + ACTIONS(1212), 17, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [25994] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1164), 1, + sym__direct_pipeline_continuation, + ACTIONS(1166), 1, + sym__aggregate_pipeline_continuation, + ACTIONS(1226), 1, + sym__newline, + STATE(419), 1, + sym_continuation_pipeline_stage, + ACTIONS(1222), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_SEMI, + ACTIONS(1224), 9, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [26028] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(736), 1, + anon_sym_DASH_GT, + ACTIONS(738), 1, + anon_sym_PIPE_GT, + ACTIONS(1164), 1, + sym__direct_pipeline_continuation, + ACTIONS(1166), 1, + sym__aggregate_pipeline_continuation, + ACTIONS(1230), 1, + sym__newline, + STATE(419), 2, + sym_inline_pipeline_stage, + sym_continuation_pipeline_stage, + STATE(542), 2, + sym_direct_pipeline_stage, + sym_aggregate_pipeline_stage, + ACTIONS(1228), 9, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_SEMI, + [26066] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(730), 1, + sym__newline, + ACTIONS(728), 17, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26092] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(708), 1, + sym__newline, + ACTIONS(706), 17, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26118] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1234), 1, + sym__newline, + ACTIONS(1232), 17, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26144] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1238), 1, + sym__newline, + ACTIONS(1236), 17, + ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26170] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(736), 1, + anon_sym_DASH_GT, + ACTIONS(738), 1, + anon_sym_PIPE_GT, + ACTIONS(1164), 1, + sym__direct_pipeline_continuation, + ACTIONS(1166), 1, + sym__aggregate_pipeline_continuation, + ACTIONS(1242), 1, + sym__newline, + STATE(419), 2, + sym_inline_pipeline_stage, + sym_continuation_pipeline_stage, + STATE(542), 2, + sym_direct_pipeline_stage, + sym_aggregate_pipeline_stage, + ACTIONS(1240), 9, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_SEMI, + [26208] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1248), 1, + sym__newline, + STATE(485), 1, + aux_sym_continuation_pipeline_stage_repeat1, + ACTIONS(1246), 2, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(1244), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26237] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1254), 1, + sym__newline, + STATE(481), 1, + aux_sym_continuation_pipeline_stage_repeat1, + ACTIONS(1252), 2, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(1250), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26266] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1258), 1, + sym__newline, + STATE(485), 1, + aux_sym_continuation_pipeline_stage_repeat1, + ACTIONS(1246), 2, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(1256), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26295] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1262), 1, + anon_sym_EQ, + ACTIONS(1264), 1, + anon_sym_LT, + ACTIONS(1260), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26322] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1268), 1, + sym__newline, + STATE(485), 1, + aux_sym_continuation_pipeline_stage_repeat1, + ACTIONS(1246), 2, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(1266), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26351] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1274), 1, + sym__newline, + STATE(486), 1, + aux_sym_continuation_pipeline_stage_repeat1, + ACTIONS(1272), 2, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(1270), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26380] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1280), 1, + sym__newline, + STATE(479), 1, + aux_sym_continuation_pipeline_stage_repeat1, + ACTIONS(1278), 2, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(1276), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26409] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1284), 1, + anon_sym_EQ, + ACTIONS(1286), 1, + anon_sym_BANG, + ACTIONS(1288), 1, + anon_sym_QMARK, + STATE(490), 1, + aux_sym_optional_type_repeat1, + ACTIONS(1282), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26440] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1295), 1, + sym__newline, + STATE(485), 1, + aux_sym_continuation_pipeline_stage_repeat1, + ACTIONS(1292), 2, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(1290), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26469] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1299), 1, + sym__newline, + STATE(485), 1, + aux_sym_continuation_pipeline_stage_repeat1, + ACTIONS(1246), 2, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(1297), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26498] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1305), 1, + sym__newline, + STATE(477), 1, + aux_sym_continuation_pipeline_stage_repeat1, + ACTIONS(1303), 2, + anon_sym_BANG, + anon_sym_QMARK, + ACTIONS(1301), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26527] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1164), 1, + sym__direct_pipeline_continuation, + ACTIONS(1166), 1, + sym__aggregate_pipeline_continuation, + ACTIONS(1226), 1, + sym__newline, + ACTIONS(1307), 1, + anon_sym_EQ, + STATE(419), 1, + sym_continuation_pipeline_stage, + ACTIONS(1222), 3, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + ACTIONS(1309), 8, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [26561] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1313), 1, + sym__newline, + ACTIONS(1311), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26585] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1317), 1, + anon_sym_EQ, + ACTIONS(1319), 1, + anon_sym_QMARK, + STATE(514), 1, + aux_sym_optional_type_repeat1, + ACTIONS(1315), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26613] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1323), 1, + sym__newline, + ACTIONS(1321), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26637] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1327), 1, + anon_sym_EQ, + ACTIONS(1325), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26661] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1331), 1, + anon_sym_EQ, + ACTIONS(1329), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26685] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1335), 1, + anon_sym_EQ, + ACTIONS(1333), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26709] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1339), 1, + anon_sym_EQ, + ACTIONS(1337), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26733] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1343), 1, + anon_sym_EQ, + ACTIONS(1341), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26757] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1347), 1, + anon_sym_EQ, + ACTIONS(1345), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26781] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1351), 1, + sym__newline, + ACTIONS(1349), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [26805] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1355), 1, + anon_sym_EQ, + ACTIONS(1353), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26829] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1359), 1, + anon_sym_EQ, + ACTIONS(1357), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26853] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1363), 1, + anon_sym_EQ, + ACTIONS(1361), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26877] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1367), 1, + anon_sym_EQ, + ACTIONS(1365), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26901] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1371), 1, + anon_sym_EQ, + ACTIONS(1369), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26925] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1375), 1, + anon_sym_EQ, + ACTIONS(1373), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26949] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1379), 1, + anon_sym_EQ, + ACTIONS(1377), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26973] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1381), 1, + anon_sym_EQ, + ACTIONS(554), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [26997] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1385), 1, + anon_sym_EQ, + ACTIONS(1383), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27021] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1389), 1, + anon_sym_EQ, + ACTIONS(1387), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27045] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1393), 1, + anon_sym_EQ, + ACTIONS(1391), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27069] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1397), 1, + anon_sym_EQ, + ACTIONS(1395), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27093] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1401), 1, + anon_sym_EQ, + ACTIONS(1399), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27117] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1405), 1, + anon_sym_EQ, + ACTIONS(1403), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27141] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1409), 1, + anon_sym_EQ, + ACTIONS(1407), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27165] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1413), 1, + anon_sym_EQ, + ACTIONS(1415), 1, + anon_sym_QMARK, + STATE(514), 1, + aux_sym_optional_type_repeat1, + ACTIONS(1411), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27193] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1420), 1, + anon_sym_EQ, + ACTIONS(1418), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27217] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1424), 1, + anon_sym_EQ, + ACTIONS(1422), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27241] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1428), 1, + sym__newline, + ACTIONS(1426), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [27265] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1432), 1, + sym__newline, + ACTIONS(1430), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [27289] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1436), 1, + anon_sym_EQ, + ACTIONS(1434), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27313] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1440), 1, + anon_sym_EQ, + ACTIONS(1438), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27337] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1444), 1, + anon_sym_EQ, + ACTIONS(1442), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27361] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1448), 1, + sym__newline, + ACTIONS(1446), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [27385] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1452), 1, + anon_sym_EQ, + ACTIONS(1450), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27409] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1456), 1, + anon_sym_EQ, + ACTIONS(1454), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27433] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1460), 1, + anon_sym_EQ, + ACTIONS(1458), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27457] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1464), 1, + anon_sym_EQ, + ACTIONS(1462), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27481] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1468), 1, + anon_sym_EQ, + ACTIONS(1466), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27505] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1472), 1, + anon_sym_EQ, + ACTIONS(1470), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27529] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1476), 1, + anon_sym_EQ, + ACTIONS(1474), 15, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_BANG, + anon_sym_QMARK, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27553] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1164), 1, + sym__direct_pipeline_continuation, + ACTIONS(1166), 1, + sym__aggregate_pipeline_continuation, + ACTIONS(1226), 1, + sym__newline, + STATE(419), 1, + sym_continuation_pipeline_stage, + ACTIONS(1222), 2, + ts_builtin_sym_end, + anon_sym_SEMI, + ACTIONS(1478), 9, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [27584] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(467), 1, + sym__newline, + ACTIONS(469), 1, + anon_sym_COLON, + ACTIONS(465), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [27609] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(473), 1, + sym__newline, + ACTIONS(475), 1, + anon_sym_COLON, + ACTIONS(471), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [27634] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1482), 1, + sym__newline, + ACTIONS(1480), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [27656] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1484), 1, + sym_identifier, + ACTIONS(1486), 1, + anon_sym_DOT, + ACTIONS(1488), 1, + anon_sym_LBRACE, + STATE(461), 1, + sym_qualified_name, + STATE(1125), 1, + sym_integer_type, + STATE(1154), 1, + sym_type_name, + ACTIONS(1490), 8, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [27688] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1494), 1, + sym__newline, + ACTIONS(1492), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [27710] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1498), 1, + anon_sym_EQ, + ACTIONS(1500), 2, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + ACTIONS(1496), 11, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27734] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1484), 1, + sym_identifier, + ACTIONS(1488), 1, + anon_sym_LBRACE, + ACTIONS(1502), 1, + anon_sym_DOT, + STATE(461), 1, + sym_qualified_name, + STATE(1125), 1, + sym_integer_type, + STATE(1126), 1, + sym_type_name, + ACTIONS(1490), 8, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [27766] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1506), 1, + anon_sym_EQ, + ACTIONS(1504), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27788] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1510), 1, + sym__newline, + ACTIONS(1508), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [27810] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1164), 1, + sym__direct_pipeline_continuation, + ACTIONS(1166), 1, + sym__aggregate_pipeline_continuation, + STATE(419), 1, + sym_continuation_pipeline_stage, + ACTIONS(1222), 2, + anon_sym_LBRACE, + anon_sym_BQUOTE, + ACTIONS(1512), 9, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [27838] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1516), 1, + sym__newline, + ACTIONS(1514), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [27860] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1520), 1, + sym__newline, + ACTIONS(1518), 13, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_PIPE_GT, + sym__direct_pipeline_continuation, + sym__aggregate_pipeline_continuation, + anon_sym_SEMI, + [27882] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1164), 1, + sym__direct_pipeline_continuation, + ACTIONS(1166), 1, + sym__aggregate_pipeline_continuation, + ACTIONS(1230), 1, + sym__newline, + STATE(419), 1, + sym_continuation_pipeline_stage, + ACTIONS(1228), 9, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + anon_sym_SEMI, + [27909] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1524), 1, + anon_sym_EQ, + ACTIONS(1522), 12, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27930] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1498), 1, + anon_sym_EQ, + ACTIONS(1496), 12, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_GT, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [27951] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1164), 1, + sym__direct_pipeline_continuation, + ACTIONS(1166), 1, + sym__aggregate_pipeline_continuation, + ACTIONS(1222), 1, + anon_sym_LBRACE, + STATE(419), 1, + sym_continuation_pipeline_stage, + ACTIONS(1526), 9, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [27978] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1530), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(1068), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28012] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(1532), 1, + anon_sym_RPAREN, + ACTIONS(1534), 1, + sym__newline, + STATE(550), 1, + aux_sym_source_file_repeat1, + STATE(1038), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28046] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(1530), 1, + anon_sym_RPAREN, + ACTIONS(1536), 1, + sym__newline, + STATE(552), 1, + aux_sym_source_file_repeat1, + STATE(1038), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28080] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1538), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(1068), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28114] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(1540), 1, + anon_sym_RPAREN, + ACTIONS(1542), 1, + sym__newline, + STATE(547), 1, + aux_sym_source_file_repeat1, + STATE(1038), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28148] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1544), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(1068), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28182] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(1544), 1, + anon_sym_RPAREN, + ACTIONS(1546), 1, + sym__newline, + STATE(554), 1, + aux_sym_source_file_repeat1, + STATE(1038), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28216] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1532), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(1068), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28250] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1550), 1, + anon_sym_COLON, + ACTIONS(1548), 10, + anon_sym_COMMA, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_or, + sym__newline, + [28269] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1554), 1, + anon_sym_COLON, + ACTIONS(1552), 10, + anon_sym_COMMA, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_or, + sym__newline, + [28288] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(988), 1, + sym__newline, + STATE(410), 1, + aux_sym__newlines, + STATE(1038), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28319] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1558), 1, + anon_sym_COLON, + ACTIONS(1556), 10, + anon_sym_COMMA, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_or, + sym__newline, + [28338] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1562), 1, + anon_sym_BQUOTE, + STATE(580), 1, + sym_label, + ACTIONS(1560), 9, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + sym__newline, + anon_sym_SEMI, + [28359] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1566), 1, + anon_sym_COLON, + ACTIONS(1564), 10, + anon_sym_COMMA, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_or, + sym__newline, + [28378] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1570), 1, + anon_sym_COLON, + ACTIONS(1568), 10, + anon_sym_COMMA, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_or, + sym__newline, + [28397] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1572), 1, + anon_sym_LBRACE, + ACTIONS(1574), 1, + anon_sym_LPAREN, + STATE(535), 1, + sym_block, + STATE(1143), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(893), 2, + sym_typed_tuple_pattern, + sym_typed_parameter, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28426] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(1576), 1, + sym__newline, + STATE(575), 1, + aux_sym_source_file_repeat1, + STATE(768), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28457] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_COLON, + ACTIONS(1578), 10, + anon_sym_COMMA, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_or, + sym__newline, + [28476] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1584), 1, + anon_sym_COLON, + ACTIONS(1582), 10, + anon_sym_COMMA, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_or, + sym__newline, + [28495] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(1586), 1, + sym__newline, + STATE(569), 1, + aux_sym_source_file_repeat1, + STATE(1038), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28526] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(988), 1, + sym__newline, + STATE(410), 1, + aux_sym__newlines, + STATE(768), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28557] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(1588), 1, + sym__newline, + STATE(576), 1, + aux_sym_source_file_repeat1, + STATE(690), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28588] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(1068), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28619] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1592), 1, + anon_sym_COLON, + ACTIONS(1590), 10, + anon_sym_COMMA, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_or, + sym__newline, + [28638] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1594), 1, + anon_sym_COLON, + ACTIONS(475), 10, + anon_sym_COMMA, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_or, + sym__newline, + [28657] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1598), 1, + anon_sym_COLON, + ACTIONS(1596), 10, + anon_sym_COMMA, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_or, + sym__newline, + [28676] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1602), 1, + anon_sym_COLON, + ACTIONS(1600), 10, + anon_sym_COMMA, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_or, + sym__newline, + [28695] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(988), 1, + sym__newline, + STATE(410), 1, + aux_sym__newlines, + STATE(690), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28726] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(726), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28757] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(768), 1, + sym_typed_tuple_component, + STATE(1117), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [28788] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1240), 10, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [28804] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1042), 10, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [28820] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1604), 10, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [28836] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1606), 10, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [28852] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(706), 10, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [28868] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1488), 1, + anon_sym_LBRACE, + STATE(1125), 1, + sym_integer_type, + ACTIONS(1608), 8, + anon_sym_i8, + anon_sym_i16, + anon_sym_i32, + anon_sym_i64, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [28888] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1610), 10, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [28904] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1236), 10, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [28920] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1612), 10, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [28936] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1614), 10, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [28952] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1616), 10, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [28968] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1618), 10, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [28984] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1620), 10, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [29000] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1622), 10, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [29016] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(249), 10, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [29032] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1228), 10, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [29048] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(728), 10, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [29064] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1620), 10, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_BQUOTE, + sym__newline, + anon_sym_SEMI, + [29080] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(469), 9, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_or, + sym__newline, + [29095] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1624), 9, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_or, + sym__newline, + [29110] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + STATE(1144), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [29132] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1628), 1, + anon_sym_or, + STATE(599), 1, + aux_sym_pattern_repeat1, + ACTIONS(1626), 6, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + sym__newline, + [29150] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1632), 1, + anon_sym_or, + STATE(599), 1, + aux_sym_pattern_repeat1, + ACTIONS(1630), 6, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + sym__newline, + [29168] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1637), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(1635), 6, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_RPAREN, + sym__newline, + anon_sym_SEMI, + [29184] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1628), 1, + anon_sym_or, + STATE(598), 1, + aux_sym_pattern_repeat1, + ACTIONS(1639), 6, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + sym__newline, + [29202] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(323), 1, + anon_sym_LBRACE, + ACTIONS(333), 1, + anon_sym_LPAREN, + STATE(1140), 1, + sym_binding_pattern, + ACTIONS(1528), 2, + anon_sym__, + sym_identifier, + STATE(1096), 3, + sym_unit_pattern, + sym_tuple_pattern, + sym_product_pattern, + [29224] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1641), 1, + anon_sym_RBRACE, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1645), 1, + anon_sym_SEMI, + STATE(365), 1, + aux_sym__newlines, + STATE(409), 1, + sym__scope_separator, + STATE(769), 1, + aux_sym_match_expression_repeat1, + STATE(903), 1, + aux_sym_source_file_repeat1, + [29249] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1647), 1, + anon_sym_RBRACE, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1651), 1, + anon_sym_SEMI, + STATE(682), 1, + aux_sym_sum_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(947), 1, + aux_sym_source_file_repeat1, + STATE(1101), 1, + sym__scope_separator, + [29274] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1647), 1, + anon_sym_RBRACE, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1651), 1, + anon_sym_SEMI, + STATE(614), 1, + aux_sym_sum_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(947), 1, + aux_sym_source_file_repeat1, + STATE(1101), 1, + sym__scope_separator, + [29299] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1653), 1, + anon_sym_RBRACE, + ACTIONS(1655), 1, + anon_sym_SEMI, + STATE(613), 1, + aux_sym_product_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(924), 1, + aux_sym_source_file_repeat1, + STATE(1111), 1, + sym__scope_separator, + [29324] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1657), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [29337] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1111), 1, + anon_sym_RBRACE, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1645), 1, + anon_sym_SEMI, + STATE(365), 1, + aux_sym__newlines, + STATE(409), 1, + sym__scope_separator, + STATE(639), 1, + aux_sym_match_expression_repeat1, + STATE(908), 1, + aux_sym_source_file_repeat1, + [29362] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(237), 1, + ts_builtin_sym_end, + ACTIONS(1659), 1, + sym__newline, + ACTIONS(1661), 1, + anon_sym_SEMI, + STATE(50), 1, + sym__scope_separator, + STATE(365), 1, + aux_sym__newlines, + STATE(630), 1, + aux_sym_source_file_repeat2, + STATE(992), 1, + aux_sym_source_file_repeat1, + [29387] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1659), 1, + sym__newline, + ACTIONS(1661), 1, + anon_sym_SEMI, + ACTIONS(1663), 1, + ts_builtin_sym_end, + STATE(50), 1, + sym__scope_separator, + STATE(365), 1, + aux_sym__newlines, + STATE(637), 1, + aux_sym_source_file_repeat2, + STATE(1035), 1, + aux_sym_source_file_repeat1, + [29412] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1665), 1, + anon_sym_RBRACE, + ACTIONS(1667), 1, + anon_sym_SEMI, + STATE(756), 1, + aux_sym_product_constructor_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1031), 1, + aux_sym_source_file_repeat1, + STATE(1054), 1, + sym__scope_separator, + [29437] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1669), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [29450] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1655), 1, + anon_sym_SEMI, + ACTIONS(1671), 1, + anon_sym_RBRACE, + STATE(675), 1, + aux_sym_product_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1063), 1, + aux_sym_source_file_repeat1, + STATE(1111), 1, + sym__scope_separator, + [29475] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1651), 1, + anon_sym_SEMI, + ACTIONS(1673), 1, + anon_sym_RBRACE, + STATE(682), 1, + aux_sym_sum_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(901), 1, + aux_sym_source_file_repeat1, + STATE(1101), 1, + sym__scope_separator, + [29500] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1651), 1, + anon_sym_SEMI, + ACTIONS(1673), 1, + anon_sym_RBRACE, + STATE(621), 1, + aux_sym_sum_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(901), 1, + aux_sym_source_file_repeat1, + STATE(1101), 1, + sym__scope_separator, + [29525] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1675), 1, + anon_sym_RBRACE, + ACTIONS(1677), 1, + anon_sym_SEMI, + STATE(622), 1, + aux_sym_bits_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(923), 1, + aux_sym_source_file_repeat1, + STATE(1085), 1, + sym__scope_separator, + [29550] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1679), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [29563] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1681), 1, + anon_sym_RBRACE, + ACTIONS(1683), 1, + anon_sym_SEMI, + STATE(139), 1, + sym__scope_separator, + STATE(365), 1, + aux_sym__newlines, + STATE(697), 1, + aux_sym_block_repeat1, + STATE(915), 1, + aux_sym_source_file_repeat1, + [29588] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1685), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [29601] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1681), 1, + anon_sym_RBRACE, + ACTIONS(1683), 1, + anon_sym_SEMI, + STATE(139), 1, + sym__scope_separator, + STATE(365), 1, + aux_sym__newlines, + STATE(642), 1, + aux_sym_block_repeat1, + STATE(915), 1, + aux_sym_source_file_repeat1, + [29626] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1651), 1, + anon_sym_SEMI, + ACTIONS(1687), 1, + anon_sym_RBRACE, + STATE(682), 1, + aux_sym_sum_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(963), 1, + aux_sym_source_file_repeat1, + STATE(1101), 1, + sym__scope_separator, + [29651] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1677), 1, + anon_sym_SEMI, + ACTIONS(1689), 1, + anon_sym_RBRACE, + STATE(777), 1, + aux_sym_bits_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(975), 1, + aux_sym_source_file_repeat1, + STATE(1085), 1, + sym__scope_separator, + [29676] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1677), 1, + anon_sym_SEMI, + ACTIONS(1689), 1, + anon_sym_RBRACE, + STATE(628), 1, + aux_sym_bits_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(975), 1, + aux_sym_source_file_repeat1, + STATE(1085), 1, + sym__scope_separator, + [29701] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1691), 1, + anon_sym_RBRACE, + ACTIONS(1693), 1, + anon_sym_SEMI, + STATE(747), 1, + aux_sym_pub_declaration_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(952), 1, + aux_sym_source_file_repeat1, + STATE(1119), 1, + sym__scope_separator, + [29726] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1693), 1, + anon_sym_SEMI, + ACTIONS(1695), 1, + anon_sym_RBRACE, + STATE(645), 1, + aux_sym_pub_declaration_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(929), 1, + aux_sym_source_file_repeat1, + STATE(1119), 1, + sym__scope_separator, + [29751] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1697), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [29764] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1699), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [29777] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1677), 1, + anon_sym_SEMI, + ACTIONS(1701), 1, + anon_sym_RBRACE, + STATE(777), 1, + aux_sym_bits_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1033), 1, + aux_sym_source_file_repeat1, + STATE(1085), 1, + sym__scope_separator, + [29802] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1703), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [29815] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1659), 1, + sym__newline, + ACTIONS(1661), 1, + anon_sym_SEMI, + ACTIONS(1663), 1, + ts_builtin_sym_end, + STATE(50), 1, + sym__scope_separator, + STATE(365), 1, + aux_sym__newlines, + STATE(715), 1, + aux_sym_source_file_repeat2, + STATE(1035), 1, + aux_sym_source_file_repeat1, + [29840] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1705), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [29853] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1707), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [29866] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1709), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [29879] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1711), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [29892] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1667), 1, + anon_sym_SEMI, + ACTIONS(1713), 1, + anon_sym_RBRACE, + STATE(756), 1, + aux_sym_product_constructor_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1026), 1, + aux_sym_source_file_repeat1, + STATE(1054), 1, + sym__scope_separator, + [29917] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1667), 1, + anon_sym_SEMI, + ACTIONS(1713), 1, + anon_sym_RBRACE, + STATE(665), 1, + aux_sym_product_constructor_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1026), 1, + aux_sym_source_file_repeat1, + STATE(1054), 1, + sym__scope_separator, + [29942] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1659), 1, + sym__newline, + ACTIONS(1661), 1, + anon_sym_SEMI, + ACTIONS(1715), 1, + ts_builtin_sym_end, + STATE(50), 1, + sym__scope_separator, + STATE(365), 1, + aux_sym__newlines, + STATE(715), 1, + aux_sym_source_file_repeat2, + STATE(920), 1, + aux_sym_source_file_repeat1, + [29967] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(395), 1, + anon_sym_RBRACE, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1683), 1, + anon_sym_SEMI, + STATE(139), 1, + sym__scope_separator, + STATE(365), 1, + aux_sym__newlines, + STATE(618), 1, + aux_sym_block_repeat1, + STATE(984), 1, + aux_sym_source_file_repeat1, + [29992] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1645), 1, + anon_sym_SEMI, + ACTIONS(1717), 1, + anon_sym_RBRACE, + STATE(365), 1, + aux_sym__newlines, + STATE(409), 1, + sym__scope_separator, + STATE(769), 1, + aux_sym_match_expression_repeat1, + STATE(1065), 1, + aux_sym_source_file_repeat1, + [30017] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1653), 1, + anon_sym_RBRACE, + ACTIONS(1655), 1, + anon_sym_SEMI, + STATE(675), 1, + aux_sym_product_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(924), 1, + aux_sym_source_file_repeat1, + STATE(1111), 1, + sym__scope_separator, + [30042] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1498), 1, + anon_sym_EQ, + ACTIONS(1719), 1, + anon_sym_DASH_GT, + ACTIONS(1721), 1, + anon_sym_EQ_GT, + ACTIONS(1496), 4, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_RBRACK, + sym__newline, + [30061] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1683), 1, + anon_sym_SEMI, + ACTIONS(1724), 1, + anon_sym_RBRACE, + STATE(139), 1, + sym__scope_separator, + STATE(365), 1, + aux_sym__newlines, + STATE(697), 1, + aux_sym_block_repeat1, + STATE(1006), 1, + aux_sym_source_file_repeat1, + [30086] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1655), 1, + anon_sym_SEMI, + ACTIONS(1726), 1, + anon_sym_RBRACE, + STATE(640), 1, + aux_sym_product_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1081), 1, + aux_sym_source_file_repeat1, + STATE(1111), 1, + sym__scope_separator, + [30111] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1651), 1, + anon_sym_SEMI, + ACTIONS(1728), 1, + anon_sym_RBRACE, + STATE(604), 1, + aux_sym_sum_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1070), 1, + aux_sym_source_file_repeat1, + STATE(1101), 1, + sym__scope_separator, + [30136] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1693), 1, + anon_sym_SEMI, + ACTIONS(1730), 1, + anon_sym_RBRACE, + STATE(747), 1, + aux_sym_pub_declaration_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1078), 1, + aux_sym_source_file_repeat1, + STATE(1119), 1, + sym__scope_separator, + [30161] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1693), 1, + anon_sym_SEMI, + ACTIONS(1730), 1, + anon_sym_RBRACE, + STATE(624), 1, + aux_sym_pub_declaration_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1078), 1, + aux_sym_source_file_repeat1, + STATE(1119), 1, + sym__scope_separator, + [30186] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1732), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [30199] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1734), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [30212] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(439), 1, + anon_sym_RBRACE, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1683), 1, + anon_sym_SEMI, + STATE(139), 1, + sym__scope_separator, + STATE(365), 1, + aux_sym__newlines, + STATE(651), 1, + aux_sym_block_repeat1, + STATE(966), 1, + aux_sym_source_file_repeat1, + [30237] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1736), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [30250] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1683), 1, + anon_sym_SEMI, + ACTIONS(1738), 1, + anon_sym_RBRACE, + STATE(139), 1, + sym__scope_separator, + STATE(365), 1, + aux_sym__newlines, + STATE(697), 1, + aux_sym_block_repeat1, + STATE(978), 1, + aux_sym_source_file_repeat1, + [30275] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1683), 1, + anon_sym_SEMI, + ACTIONS(1738), 1, + anon_sym_RBRACE, + STATE(139), 1, + sym__scope_separator, + STATE(365), 1, + aux_sym__newlines, + STATE(653), 1, + aux_sym_block_repeat1, + STATE(978), 1, + aux_sym_source_file_repeat1, + [30300] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1683), 1, + anon_sym_SEMI, + ACTIONS(1740), 1, + anon_sym_RBRACE, + STATE(139), 1, + sym__scope_separator, + STATE(365), 1, + aux_sym__newlines, + STATE(697), 1, + aux_sym_block_repeat1, + STATE(995), 1, + aux_sym_source_file_repeat1, + [30325] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1667), 1, + anon_sym_SEMI, + ACTIONS(1742), 1, + anon_sym_RBRACE, + STATE(657), 1, + aux_sym_product_constructor_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1003), 1, + aux_sym_source_file_repeat1, + STATE(1054), 1, + sym__scope_separator, + [30350] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1120), 1, + anon_sym_RBRACE, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1645), 1, + anon_sym_SEMI, + STATE(365), 1, + aux_sym__newlines, + STATE(409), 1, + sym__scope_separator, + STATE(659), 1, + aux_sym_match_expression_repeat1, + STATE(1010), 1, + aux_sym_source_file_repeat1, + [30375] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1630), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [30388] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1667), 1, + anon_sym_SEMI, + ACTIONS(1744), 1, + anon_sym_RBRACE, + STATE(756), 1, + aux_sym_product_constructor_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1018), 1, + aux_sym_source_file_repeat1, + STATE(1054), 1, + sym__scope_separator, + [30413] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1667), 1, + anon_sym_SEMI, + ACTIONS(1744), 1, + anon_sym_RBRACE, + STATE(661), 1, + aux_sym_product_constructor_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1018), 1, + aux_sym_source_file_repeat1, + STATE(1054), 1, + sym__scope_separator, + [30438] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1645), 1, + anon_sym_SEMI, + ACTIONS(1746), 1, + anon_sym_RBRACE, + STATE(365), 1, + aux_sym__newlines, + STATE(409), 1, + sym__scope_separator, + STATE(769), 1, + aux_sym_match_expression_repeat1, + STATE(1024), 1, + aux_sym_source_file_repeat1, + [30463] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1645), 1, + anon_sym_SEMI, + ACTIONS(1746), 1, + anon_sym_RBRACE, + STATE(365), 1, + aux_sym__newlines, + STATE(409), 1, + sym__scope_separator, + STATE(663), 1, + aux_sym_match_expression_repeat1, + STATE(1024), 1, + aux_sym_source_file_repeat1, + [30488] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1667), 1, + anon_sym_SEMI, + ACTIONS(1748), 1, + anon_sym_RBRACE, + STATE(756), 1, + aux_sym_product_constructor_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1030), 1, + aux_sym_source_file_repeat1, + STATE(1054), 1, + sym__scope_separator, + [30513] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1667), 1, + anon_sym_SEMI, + ACTIONS(1748), 1, + anon_sym_RBRACE, + STATE(664), 1, + aux_sym_product_constructor_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1030), 1, + aux_sym_source_file_repeat1, + STATE(1054), 1, + sym__scope_separator, + [30538] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1645), 1, + anon_sym_SEMI, + ACTIONS(1750), 1, + anon_sym_RBRACE, + STATE(365), 1, + aux_sym__newlines, + STATE(409), 1, + sym__scope_separator, + STATE(769), 1, + aux_sym_match_expression_repeat1, + STATE(1036), 1, + aux_sym_source_file_repeat1, + [30563] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1667), 1, + anon_sym_SEMI, + ACTIONS(1752), 1, + anon_sym_RBRACE, + STATE(756), 1, + aux_sym_product_constructor_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1040), 1, + aux_sym_source_file_repeat1, + STATE(1054), 1, + sym__scope_separator, + [30588] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1667), 1, + anon_sym_SEMI, + ACTIONS(1754), 1, + anon_sym_RBRACE, + STATE(756), 1, + aux_sym_product_constructor_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(939), 1, + aux_sym_source_file_repeat1, + STATE(1054), 1, + sym__scope_separator, + [30613] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1667), 1, + anon_sym_SEMI, + ACTIONS(1754), 1, + anon_sym_RBRACE, + STATE(611), 1, + aux_sym_product_constructor_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(939), 1, + aux_sym_source_file_repeat1, + STATE(1054), 1, + sym__scope_separator, + [30638] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1756), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [30651] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1667), 1, + anon_sym_SEMI, + ACTIONS(1758), 1, + anon_sym_RBRACE, + STATE(635), 1, + aux_sym_product_constructor_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1054), 1, + sym__scope_separator, + STATE(1055), 1, + aux_sym_source_file_repeat1, + [30676] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1760), 7, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_or, + sym__newline, + [30689] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1645), 1, + anon_sym_SEMI, + ACTIONS(1717), 1, + anon_sym_RBRACE, + STATE(365), 1, + aux_sym__newlines, + STATE(409), 1, + sym__scope_separator, + STATE(603), 1, + aux_sym_match_expression_repeat1, + STATE(1065), 1, + aux_sym_source_file_repeat1, + [30714] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(409), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1762), 1, + anon_sym_COMMA, + STATE(129), 1, + aux_sym__newlines, + STATE(811), 1, + aux_sym_aggregate_tail_repeat1, + STATE(987), 1, + aux_sym_source_file_repeat1, + [30736] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(948), 1, + anon_sym_RPAREN, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1764), 1, + anon_sym_COMMA, + STATE(326), 1, + aux_sym__newlines, + STATE(693), 1, + aux_sym_tuple_type_repeat1, + STATE(958), 1, + aux_sym_source_file_repeat1, + [30758] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(948), 1, + anon_sym_RPAREN, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1764), 1, + anon_sym_COMMA, + STATE(326), 1, + aux_sym__newlines, + STATE(731), 1, + aux_sym_tuple_type_repeat1, + STATE(958), 1, + aux_sym_source_file_repeat1, + [30780] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(387), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1766), 1, + anon_sym_COMMA, + STATE(129), 1, + aux_sym__newlines, + STATE(811), 1, + aux_sym_aggregate_tail_repeat1, + STATE(976), 1, + aux_sym_source_file_repeat1, + [30802] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1768), 1, + anon_sym_RBRACE, + ACTIONS(1770), 1, + sym__newline, + ACTIONS(1773), 1, + anon_sym_SEMI, + STATE(675), 1, + aux_sym_product_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1111), 1, + sym__scope_separator, + [30824] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(387), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1766), 1, + anon_sym_COMMA, + STATE(129), 1, + aux_sym__newlines, + STATE(671), 1, + aux_sym_aggregate_tail_repeat1, + STATE(976), 1, + aux_sym_source_file_repeat1, + [30846] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(287), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1776), 1, + anon_sym_COMMA, + STATE(77), 1, + aux_sym__newlines, + STATE(805), 1, + aux_sym_collection_literal_repeat1, + STATE(936), 1, + aux_sym_source_file_repeat1, + [30868] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(287), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1776), 1, + anon_sym_COMMA, + STATE(77), 1, + aux_sym__newlines, + STATE(708), 1, + aux_sym_collection_literal_repeat1, + STATE(936), 1, + aux_sym_source_file_repeat1, + [30890] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1778), 1, + anon_sym_COMMA, + ACTIONS(1780), 1, + anon_sym_RBRACE, + STATE(809), 1, + aux_sym_use_declaration_repeat1, + STATE(836), 1, + aux_sym__newlines, + STATE(1002), 1, + aux_sym_source_file_repeat1, + [30912] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1138), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1782), 1, + anon_sym_COMMA, + STATE(403), 1, + aux_sym__newlines, + STATE(813), 1, + aux_sym_tuple_pattern_repeat1, + STATE(994), 1, + aux_sym_source_file_repeat1, + [30934] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1138), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1782), 1, + anon_sym_COMMA, + STATE(403), 1, + aux_sym__newlines, + STATE(737), 1, + aux_sym_tuple_pattern_repeat1, + STATE(994), 1, + aux_sym_source_file_repeat1, + [30956] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1784), 1, + anon_sym_RBRACE, + ACTIONS(1786), 1, + sym__newline, + ACTIONS(1789), 1, + anon_sym_SEMI, + STATE(682), 1, + aux_sym_sum_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1101), 1, + sym__scope_separator, + [30978] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1079), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1792), 1, + anon_sym_COMMA, + STATE(386), 1, + aux_sym__newlines, + STATE(712), 1, + aux_sym_array_pattern_repeat1, + STATE(953), 1, + aux_sym_source_file_repeat1, + [31000] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(940), 1, + anon_sym_GT, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1794), 1, + anon_sym_COMMA, + STATE(326), 1, + aux_sym__newlines, + STATE(694), 1, + aux_sym_tuple_type_repeat1, + STATE(967), 1, + aux_sym_source_file_repeat1, + [31022] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(295), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1796), 1, + anon_sym_COMMA, + STATE(74), 1, + aux_sym__newlines, + STATE(812), 1, + aux_sym_aggregate_tail_repeat2, + STATE(979), 1, + aux_sym_source_file_repeat1, + [31044] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1798), 1, + anon_sym_COMMA, + ACTIONS(1800), 1, + anon_sym_RBRACE, + STATE(799), 1, + aux_sym_bits_pattern_repeat1, + STATE(1008), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [31066] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1713), 1, + anon_sym_RBRACE, + ACTIONS(1802), 1, + sym_identifier, + ACTIONS(1804), 1, + anon_sym_DOT_DOT_DOT, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(666), 1, + sym_product_entry, + [31088] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1806), 1, + anon_sym_COMMA, + ACTIONS(1808), 1, + anon_sym_RBRACE, + STATE(799), 1, + aux_sym_bits_pattern_repeat1, + STATE(1049), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [31110] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1806), 1, + anon_sym_COMMA, + ACTIONS(1808), 1, + anon_sym_RBRACE, + STATE(762), 1, + aux_sym_bits_pattern_repeat1, + STATE(1049), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [31132] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1810), 1, + anon_sym_COMMA, + ACTIONS(1812), 1, + anon_sym_RPAREN, + STATE(557), 1, + aux_sym__newlines, + STATE(767), 1, + aux_sym_typed_tuple_pattern_repeat1, + STATE(1060), 1, + aux_sym_source_file_repeat1, + [31154] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1814), 1, + sym_identifier, + ACTIONS(1816), 1, + anon_sym_DOT, + ACTIONS(1818), 1, + anon_sym_DOT_DOT, + STATE(461), 1, + sym_qualified_name, + STATE(784), 1, + sym_module_path, + STATE(787), 1, + sym_type_name, + [31176] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1820), 1, + anon_sym_DOT, + STATE(412), 1, + aux_sym_aggregate_pipeline_callable_repeat1, + ACTIONS(1192), 4, + ts_builtin_sym_end, + anon_sym_as, + sym__newline, + anon_sym_SEMI, + [31192] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1823), 1, + anon_sym_COMMA, + ACTIONS(1828), 1, + sym__newline, + STATE(326), 1, + aux_sym__newlines, + STATE(693), 1, + aux_sym_tuple_type_repeat1, + ACTIONS(1826), 2, + anon_sym_RPAREN, + anon_sym_GT, + [31212] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(952), 1, + anon_sym_GT, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1831), 1, + anon_sym_COMMA, + STATE(326), 1, + aux_sym__newlines, + STATE(693), 1, + aux_sym_tuple_type_repeat1, + STATE(989), 1, + aux_sym_source_file_repeat1, + [31234] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(303), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1833), 1, + anon_sym_COMMA, + STATE(74), 1, + aux_sym__newlines, + STATE(812), 1, + aux_sym_aggregate_tail_repeat2, + STATE(1020), 1, + aux_sym_source_file_repeat1, + [31256] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(303), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1835), 1, + anon_sym_COMMA, + STATE(129), 1, + aux_sym__newlines, + STATE(811), 1, + aux_sym_aggregate_tail_repeat1, + STATE(1051), 1, + aux_sym_source_file_repeat1, + [31278] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1837), 1, + anon_sym_RBRACE, + ACTIONS(1839), 1, + sym__newline, + ACTIONS(1842), 1, + anon_sym_SEMI, + STATE(139), 1, + sym__scope_separator, + STATE(365), 1, + aux_sym__newlines, + STATE(697), 1, + aux_sym_block_repeat1, + [31300] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1798), 1, + anon_sym_COMMA, + ACTIONS(1800), 1, + anon_sym_RBRACE, + STATE(701), 1, + aux_sym_bits_pattern_repeat1, + STATE(1008), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [31322] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(295), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1796), 1, + anon_sym_COMMA, + STATE(74), 1, + aux_sym__newlines, + STATE(695), 1, + aux_sym_aggregate_tail_repeat2, + STATE(979), 1, + aux_sym_source_file_repeat1, + [31344] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1845), 1, + anon_sym_COMMA, + ACTIONS(1847), 1, + anon_sym_RBRACE, + STATE(819), 1, + aux_sym_product_pattern_repeat1, + STATE(870), 1, + aux_sym__newlines, + STATE(1009), 1, + aux_sym_source_file_repeat1, + [31366] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1849), 1, + anon_sym_COMMA, + ACTIONS(1851), 1, + anon_sym_RBRACE, + STATE(799), 1, + aux_sym_bits_pattern_repeat1, + STATE(902), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [31388] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1853), 1, + anon_sym_COMMA, + ACTIONS(1855), 1, + anon_sym_RBRACE, + STATE(819), 1, + aux_sym_product_pattern_repeat1, + STATE(870), 1, + aux_sym__newlines, + STATE(919), 1, + aux_sym_source_file_repeat1, + [31410] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(984), 1, + anon_sym_GT, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1857), 1, + anon_sym_COMMA, + STATE(326), 1, + aux_sym__newlines, + STATE(751), 1, + aux_sym_tuple_type_repeat1, + STATE(1005), 1, + aux_sym_source_file_repeat1, + [31432] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(295), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1859), 1, + anon_sym_COMMA, + STATE(129), 1, + aux_sym__newlines, + STATE(811), 1, + aux_sym_aggregate_tail_repeat1, + STATE(985), 1, + aux_sym_source_file_repeat1, + [31454] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1802), 1, + sym_identifier, + ACTIONS(1804), 1, + anon_sym_DOT_DOT_DOT, + ACTIONS(1861), 1, + anon_sym_RBRACE, + ACTIONS(1863), 1, + sym__newline, + STATE(668), 1, + sym_product_entry, + STATE(772), 1, + aux_sym_source_file_repeat1, + [31476] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(271), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1865), 1, + anon_sym_COMMA, + STATE(74), 1, + aux_sym__newlines, + STATE(685), 1, + aux_sym_aggregate_tail_repeat2, + STATE(997), 1, + aux_sym_source_file_repeat1, + [31498] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(271), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1867), 1, + anon_sym_COMMA, + STATE(129), 1, + aux_sym__newlines, + STATE(704), 1, + aux_sym_aggregate_tail_repeat1, + STATE(1057), 1, + aux_sym_source_file_repeat1, + [31520] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(265), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1869), 1, + anon_sym_COMMA, + STATE(77), 1, + aux_sym__newlines, + STATE(805), 1, + aux_sym_collection_literal_repeat1, + STATE(942), 1, + aux_sym_source_file_repeat1, + [31542] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1871), 1, + anon_sym_COMMA, + ACTIONS(1873), 1, + anon_sym_RBRACE, + STATE(809), 1, + aux_sym_use_declaration_repeat1, + STATE(836), 1, + aux_sym__newlines, + STATE(954), 1, + aux_sym_source_file_repeat1, + [31564] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1871), 1, + anon_sym_COMMA, + ACTIONS(1873), 1, + anon_sym_RBRACE, + STATE(679), 1, + aux_sym_use_declaration_repeat1, + STATE(836), 1, + aux_sym__newlines, + STATE(954), 1, + aux_sym_source_file_repeat1, + [31586] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1875), 1, + anon_sym_COMMA, + ACTIONS(1877), 1, + anon_sym_RBRACE, + STATE(799), 1, + aux_sym_bits_pattern_repeat1, + STATE(925), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [31608] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1099), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1879), 1, + anon_sym_COMMA, + STATE(386), 1, + aux_sym__newlines, + STATE(786), 1, + aux_sym_array_pattern_repeat1, + STATE(960), 1, + aux_sym_source_file_repeat1, + [31630] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1875), 1, + anon_sym_COMMA, + ACTIONS(1877), 1, + anon_sym_RBRACE, + STATE(758), 1, + aux_sym_bits_pattern_repeat1, + STATE(925), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [31652] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1099), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1879), 1, + anon_sym_COMMA, + STATE(386), 1, + aux_sym__newlines, + STATE(771), 1, + aux_sym_array_pattern_repeat1, + STATE(960), 1, + aux_sym_source_file_repeat1, + [31674] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1881), 1, + ts_builtin_sym_end, + ACTIONS(1883), 1, + sym__newline, + ACTIONS(1886), 1, + anon_sym_SEMI, + STATE(50), 1, + sym__scope_separator, + STATE(365), 1, + aux_sym__newlines, + STATE(715), 1, + aux_sym_source_file_repeat2, + [31696] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1889), 1, + anon_sym_COMMA, + ACTIONS(1891), 1, + anon_sym_RBRACE, + STATE(799), 1, + aux_sym_bits_pattern_repeat1, + STATE(1062), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [31718] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1889), 1, + anon_sym_COMMA, + ACTIONS(1891), 1, + anon_sym_RBRACE, + STATE(686), 1, + aux_sym_bits_pattern_repeat1, + STATE(1062), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [31740] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(281), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1893), 1, + anon_sym_COMMA, + STATE(77), 1, + aux_sym__newlines, + STATE(722), 1, + aux_sym_collection_literal_repeat1, + STATE(969), 1, + aux_sym_source_file_repeat1, + [31762] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(275), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1895), 1, + anon_sym_COMMA, + STATE(77), 1, + aux_sym__newlines, + STATE(677), 1, + aux_sym_collection_literal_repeat1, + STATE(1001), 1, + aux_sym_source_file_repeat1, + [31784] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(423), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1897), 1, + anon_sym_COMMA, + STATE(129), 1, + aux_sym__newlines, + STATE(811), 1, + aux_sym_aggregate_tail_repeat1, + STATE(1023), 1, + aux_sym_source_file_repeat1, + [31806] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1544), 1, + anon_sym_RPAREN, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1899), 1, + anon_sym_COMMA, + STATE(557), 1, + aux_sym__newlines, + STATE(789), 1, + aux_sym_typed_tuple_pattern_repeat1, + STATE(945), 1, + aux_sym_source_file_repeat1, + [31828] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(283), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1901), 1, + anon_sym_COMMA, + STATE(77), 1, + aux_sym__newlines, + STATE(805), 1, + aux_sym_collection_literal_repeat1, + STATE(981), 1, + aux_sym_source_file_repeat1, + [31850] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(283), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1901), 1, + anon_sym_COMMA, + STATE(77), 1, + aux_sym__newlines, + STATE(729), 1, + aux_sym_collection_literal_repeat1, + STATE(981), 1, + aux_sym_source_file_repeat1, + [31872] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1802), 1, + sym_identifier, + ACTIONS(1804), 1, + anon_sym_DOT_DOT_DOT, + ACTIONS(1903), 1, + anon_sym_RBRACE, + ACTIONS(1905), 1, + sym__newline, + STATE(654), 1, + sym_product_entry, + STATE(732), 1, + aux_sym_source_file_repeat1, + [31894] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1907), 1, + anon_sym_COMMA, + ACTIONS(1909), 1, + anon_sym_RPAREN, + STATE(129), 1, + aux_sym__newlines, + STATE(674), 1, + aux_sym_aggregate_tail_repeat1, + STATE(1004), 1, + aux_sym_source_file_repeat1, + [31916] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1530), 1, + anon_sym_RPAREN, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1911), 1, + anon_sym_COMMA, + STATE(557), 1, + aux_sym__newlines, + STATE(721), 1, + aux_sym_typed_tuple_pattern_repeat1, + STATE(1074), 1, + aux_sym_source_file_repeat1, + [31938] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1913), 1, + anon_sym_COMMA, + ACTIONS(1915), 1, + anon_sym_RBRACE, + STATE(716), 1, + aux_sym_bits_pattern_repeat1, + STATE(962), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [31960] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1917), 1, + anon_sym_COMMA, + ACTIONS(1919), 1, + anon_sym_RPAREN, + STATE(403), 1, + aux_sym__newlines, + STATE(680), 1, + aux_sym_tuple_pattern_repeat1, + STATE(1025), 1, + aux_sym_source_file_repeat1, + [31982] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(291), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1921), 1, + anon_sym_COMMA, + STATE(77), 1, + aux_sym__newlines, + STATE(805), 1, + aux_sym_collection_literal_repeat1, + STATE(998), 1, + aux_sym_source_file_repeat1, + [32004] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1923), 1, + anon_sym_COMMA, + ACTIONS(1925), 1, + anon_sym_RPAREN, + STATE(129), 1, + aux_sym__newlines, + STATE(739), 1, + aux_sym_aggregate_tail_repeat1, + STATE(1000), 1, + aux_sym_source_file_repeat1, + [32026] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(962), 1, + anon_sym_RPAREN, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1927), 1, + anon_sym_COMMA, + STATE(326), 1, + aux_sym__newlines, + STATE(693), 1, + aux_sym_tuple_type_repeat1, + STATE(956), 1, + aux_sym_source_file_repeat1, + [32048] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1742), 1, + anon_sym_RBRACE, + ACTIONS(1802), 1, + sym_identifier, + ACTIONS(1804), 1, + anon_sym_DOT_DOT_DOT, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(658), 1, + sym_product_entry, + [32070] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1742), 1, + anon_sym_RBRACE, + ACTIONS(1802), 1, + sym_identifier, + ACTIONS(1804), 1, + anon_sym_DOT_DOT_DOT, + ACTIONS(1929), 1, + sym__newline, + STATE(658), 1, + sym_product_entry, + STATE(743), 1, + aux_sym_source_file_repeat1, + [32092] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1931), 1, + anon_sym_COMMA, + ACTIONS(1933), 1, + anon_sym_RBRACE, + STATE(744), 1, + aux_sym_bits_pattern_repeat1, + STATE(1007), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [32114] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(962), 1, + anon_sym_RPAREN, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1927), 1, + anon_sym_COMMA, + STATE(326), 1, + aux_sym__newlines, + STATE(764), 1, + aux_sym_tuple_type_repeat1, + STATE(956), 1, + aux_sym_source_file_repeat1, + [32136] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1935), 1, + anon_sym_COMMA, + ACTIONS(1937), 1, + anon_sym_RBRACE, + STATE(709), 1, + aux_sym_use_declaration_repeat1, + STATE(836), 1, + aux_sym__newlines, + STATE(946), 1, + aux_sym_source_file_repeat1, + [32158] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1124), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1939), 1, + anon_sym_COMMA, + STATE(403), 1, + aux_sym__newlines, + STATE(813), 1, + aux_sym_tuple_pattern_repeat1, + STATE(1083), 1, + aux_sym_source_file_repeat1, + [32180] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(409), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1762), 1, + anon_sym_COMMA, + STATE(129), 1, + aux_sym__newlines, + STATE(720), 1, + aux_sym_aggregate_tail_repeat1, + STATE(987), 1, + aux_sym_source_file_repeat1, + [32202] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(413), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1941), 1, + anon_sym_COMMA, + STATE(129), 1, + aux_sym__newlines, + STATE(811), 1, + aux_sym_aggregate_tail_repeat1, + STATE(1016), 1, + aux_sym_source_file_repeat1, + [32224] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(413), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1941), 1, + anon_sym_COMMA, + STATE(129), 1, + aux_sym__newlines, + STATE(749), 1, + aux_sym_aggregate_tail_repeat1, + STATE(1016), 1, + aux_sym_source_file_repeat1, + [32246] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1132), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1943), 1, + anon_sym_COMMA, + STATE(403), 1, + aux_sym__newlines, + STATE(813), 1, + aux_sym_tuple_pattern_repeat1, + STATE(1027), 1, + aux_sym_source_file_repeat1, + [32268] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(295), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1859), 1, + anon_sym_COMMA, + STATE(129), 1, + aux_sym__newlines, + STATE(696), 1, + aux_sym_aggregate_tail_repeat1, + STATE(985), 1, + aux_sym_source_file_repeat1, + [32290] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1744), 1, + anon_sym_RBRACE, + ACTIONS(1802), 1, + sym_identifier, + ACTIONS(1804), 1, + anon_sym_DOT_DOT_DOT, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(662), 1, + sym_product_entry, + [32312] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1945), 1, + anon_sym_COMMA, + ACTIONS(1947), 1, + anon_sym_RBRACE, + STATE(799), 1, + aux_sym_bits_pattern_repeat1, + STATE(1021), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [32334] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1945), 1, + anon_sym_COMMA, + ACTIONS(1947), 1, + anon_sym_RBRACE, + STATE(753), 1, + aux_sym_bits_pattern_repeat1, + STATE(1021), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [32356] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1949), 1, + anon_sym_COMMA, + ACTIONS(1951), 1, + anon_sym_RBRACE, + STATE(799), 1, + aux_sym_bits_pattern_repeat1, + STATE(1052), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [32378] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1953), 1, + anon_sym_RBRACE, + ACTIONS(1955), 1, + sym__newline, + ACTIONS(1958), 1, + anon_sym_SEMI, + STATE(747), 1, + aux_sym_pub_declaration_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1119), 1, + sym__scope_separator, + [32400] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1124), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1939), 1, + anon_sym_COMMA, + STATE(403), 1, + aux_sym__newlines, + STATE(741), 1, + aux_sym_tuple_pattern_repeat1, + STATE(1083), 1, + aux_sym_source_file_repeat1, + [32422] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(419), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1961), 1, + anon_sym_COMMA, + STATE(129), 1, + aux_sym__newlines, + STATE(811), 1, + aux_sym_aggregate_tail_repeat1, + STATE(1028), 1, + aux_sym_source_file_repeat1, + [32444] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(419), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1961), 1, + anon_sym_COMMA, + STATE(129), 1, + aux_sym__newlines, + STATE(757), 1, + aux_sym_aggregate_tail_repeat1, + STATE(1028), 1, + aux_sym_source_file_repeat1, + [32466] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(940), 1, + anon_sym_GT, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1794), 1, + anon_sym_COMMA, + STATE(326), 1, + aux_sym__newlines, + STATE(693), 1, + aux_sym_tuple_type_repeat1, + STATE(967), 1, + aux_sym_source_file_repeat1, + [32488] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1963), 1, + anon_sym_COMMA, + ACTIONS(1965), 1, + anon_sym_RBRACE, + STATE(799), 1, + aux_sym_bits_pattern_repeat1, + STATE(1061), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [32510] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1967), 1, + anon_sym_COMMA, + ACTIONS(1969), 1, + anon_sym_RBRACE, + STATE(799), 1, + aux_sym_bits_pattern_repeat1, + STATE(1034), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [32532] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1967), 1, + anon_sym_COMMA, + ACTIONS(1969), 1, + anon_sym_RBRACE, + STATE(759), 1, + aux_sym_bits_pattern_repeat1, + STATE(1034), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [32554] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1963), 1, + anon_sym_COMMA, + ACTIONS(1965), 1, + anon_sym_RBRACE, + STATE(711), 1, + aux_sym_bits_pattern_repeat1, + STATE(1061), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [32576] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1971), 1, + anon_sym_RBRACE, + ACTIONS(1973), 1, + sym__newline, + ACTIONS(1976), 1, + anon_sym_SEMI, + STATE(756), 1, + aux_sym_product_constructor_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1054), 1, + sym__scope_separator, + [32598] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(383), 1, + anon_sym_RPAREN, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(1979), 1, + anon_sym_COMMA, + STATE(129), 1, + aux_sym__newlines, + STATE(811), 1, + aux_sym_aggregate_tail_repeat1, + STATE(1039), 1, + aux_sym_source_file_repeat1, + [32620] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1981), 1, + anon_sym_COMMA, + ACTIONS(1983), 1, + anon_sym_RBRACE, + STATE(799), 1, + aux_sym_bits_pattern_repeat1, + STATE(1011), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [32642] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1985), 1, + anon_sym_COMMA, + ACTIONS(1987), 1, + anon_sym_RBRACE, + STATE(799), 1, + aux_sym_bits_pattern_repeat1, + STATE(1043), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [32664] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1989), 1, + anon_sym_DOT, + STATE(692), 1, + aux_sym_aggregate_pipeline_callable_repeat1, + ACTIONS(511), 4, + ts_builtin_sym_end, + anon_sym_as, + sym__newline, + anon_sym_SEMI, + [32680] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1530), 1, + anon_sym_RPAREN, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1911), 1, + anon_sym_COMMA, + STATE(557), 1, + aux_sym__newlines, + STATE(789), 1, + aux_sym_typed_tuple_pattern_repeat1, + STATE(1074), 1, + aux_sym_source_file_repeat1, + [32702] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1992), 1, + anon_sym_COMMA, + ACTIONS(1994), 1, + anon_sym_RBRACE, + STATE(799), 1, + aux_sym_bits_pattern_repeat1, + STATE(988), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [32724] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1992), 1, + anon_sym_COMMA, + ACTIONS(1994), 1, + anon_sym_RBRACE, + STATE(746), 1, + aux_sym_bits_pattern_repeat1, + STATE(988), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [32746] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(970), 1, + anon_sym_RPAREN, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1996), 1, + anon_sym_COMMA, + STATE(326), 1, + aux_sym__newlines, + STATE(693), 1, + aux_sym_tuple_type_repeat1, + STATE(1022), 1, + aux_sym_source_file_repeat1, + [32768] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1998), 1, + anon_sym_COMMA, + ACTIONS(2000), 1, + anon_sym_RBRACE, + STATE(752), 1, + aux_sym_bits_pattern_repeat1, + STATE(1017), 1, + aux_sym_source_file_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [32790] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(2002), 1, + anon_sym_COMMA, + ACTIONS(2004), 1, + anon_sym_RBRACE, + STATE(702), 1, + aux_sym_product_pattern_repeat1, + STATE(870), 1, + aux_sym__newlines, + STATE(1019), 1, + aux_sym_source_file_repeat1, + [32812] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1540), 1, + anon_sym_RPAREN, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(2006), 1, + anon_sym_COMMA, + STATE(557), 1, + aux_sym__newlines, + STATE(789), 1, + aux_sym_typed_tuple_pattern_repeat1, + STATE(1053), 1, + aux_sym_source_file_repeat1, + [32834] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1540), 1, + anon_sym_RPAREN, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(2006), 1, + anon_sym_COMMA, + STATE(557), 1, + aux_sym__newlines, + STATE(761), 1, + aux_sym_typed_tuple_pattern_repeat1, + STATE(1053), 1, + aux_sym_source_file_repeat1, + [32856] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2008), 1, + anon_sym_RBRACE, + ACTIONS(2010), 1, + sym__newline, + ACTIONS(2013), 1, + anon_sym_SEMI, + STATE(365), 1, + aux_sym__newlines, + STATE(409), 1, + sym__scope_separator, + STATE(769), 1, + aux_sym_match_expression_repeat1, + [32878] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2016), 1, + anon_sym_COLON, + ACTIONS(2018), 1, + anon_sym_EQ, + ACTIONS(1635), 4, + anon_sym_COMMA, + anon_sym_EQ_GT, + anon_sym_RBRACK, + sym__newline, + [32894] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1087), 1, + anon_sym_RBRACK, + ACTIONS(1643), 1, + sym__newline, + ACTIONS(2020), 1, + anon_sym_COMMA, + STATE(386), 1, + aux_sym__newlines, + STATE(786), 1, + aux_sym_array_pattern_repeat1, + STATE(957), 1, + aux_sym_source_file_repeat1, + [32916] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1758), 1, + anon_sym_RBRACE, + ACTIONS(1802), 1, + sym_identifier, + ACTIONS(1804), 1, + anon_sym_DOT_DOT_DOT, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(636), 1, + sym_product_entry, + [32938] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2022), 2, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + ACTIONS(1707), 4, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_or, + sym__newline, + [32952] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1758), 1, + anon_sym_RBRACE, + ACTIONS(1802), 1, + sym_identifier, + ACTIONS(1804), 1, + anon_sym_DOT_DOT_DOT, + ACTIONS(2024), 1, + sym__newline, + STATE(636), 1, + sym_product_entry, + STATE(687), 1, + aux_sym_source_file_repeat1, + [32974] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(2026), 1, + anon_sym_COMMA, + ACTIONS(2028), 1, + anon_sym_RPAREN, + STATE(326), 1, + aux_sym__newlines, + STATE(672), 1, + aux_sym_tuple_type_repeat1, + STATE(907), 1, + aux_sym_source_file_repeat1, + [32996] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(2030), 1, + anon_sym_COMMA, + ACTIONS(2032), 1, + anon_sym_RBRACE, + STATE(688), 1, + aux_sym_bits_pattern_repeat1, + STATE(1076), 1, + aux_sym__newlines, + STATE(1077), 1, + aux_sym_source_file_repeat1, + [33018] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2034), 1, + anon_sym_RBRACE, + ACTIONS(2036), 1, + sym__newline, + ACTIONS(2039), 1, + anon_sym_SEMI, + STATE(777), 1, + aux_sym_bits_type_repeat1, + STATE(884), 1, + aux_sym__newlines, + STATE(1085), 1, + sym__scope_separator, + [33040] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1649), 1, + sym__newline, + ACTIONS(1853), 1, + anon_sym_COMMA, + ACTIONS(1855), 1, + anon_sym_RBRACE, + STATE(700), 1, + aux_sym_product_pattern_repeat1, + STATE(870), 1, + aux_sym__newlines, + STATE(919), 1, + aux_sym_source_file_repeat1, + [33062] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1780), 1, + anon_sym_RBRACE, + ACTIONS(2042), 1, + sym_identifier, + ACTIONS(2044), 1, + sym__newline, + STATE(814), 1, + aux_sym_source_file_repeat1, + STATE(930), 1, + sym_import_member, + [33081] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1937), 1, + anon_sym_RBRACE, + ACTIONS(2042), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(710), 1, + sym_import_member, + [33100] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2046), 1, + sym_identifier, + ACTIONS(2048), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(986), 1, + sym_product_pattern_field, + [33119] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2046), 1, + sym_identifier, + ACTIONS(2048), 1, + anon_sym_RBRACE, + ACTIONS(2050), 1, + sym__newline, + STATE(808), 1, + aux_sym_source_file_repeat1, + STATE(917), 1, + sym_product_pattern_field, + [33138] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2042), 1, + sym_identifier, + ACTIONS(2052), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(993), 1, + sym_import_member, + [33157] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2056), 1, + anon_sym_as, + ACTIONS(2058), 1, + anon_sym_DOT, + ACTIONS(2054), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [33172] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2046), 1, + sym_identifier, + ACTIONS(2060), 1, + anon_sym_RBRACE, + ACTIONS(2062), 1, + sym__newline, + STATE(766), 1, + sym_product_pattern_field, + STATE(816), 1, + aux_sym_source_file_repeat1, + [33191] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2064), 1, + anon_sym_COMMA, + ACTIONS(2067), 1, + anon_sym_RBRACK, + ACTIONS(2069), 1, + sym__newline, + STATE(386), 1, + aux_sym__newlines, + STATE(786), 1, + aux_sym_array_pattern_repeat1, + [33210] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2072), 5, + ts_builtin_sym_end, + anon_sym_as, + anon_sym_DOT, + sym__newline, + anon_sym_SEMI, + [33221] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1814), 1, + sym_identifier, + ACTIONS(2074), 1, + anon_sym_DOT, + ACTIONS(2076), 1, + anon_sym_LBRACE, + STATE(461), 1, + sym_qualified_name, + STATE(1128), 1, + sym_type_name, + [33240] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2078), 1, + anon_sym_COMMA, + ACTIONS(2081), 1, + anon_sym_RPAREN, + ACTIONS(2083), 1, + sym__newline, + STATE(557), 1, + aux_sym__newlines, + STATE(789), 1, + aux_sym_typed_tuple_pattern_repeat1, + [33259] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1647), 1, + anon_sym_RBRACE, + ACTIONS(2086), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(615), 1, + sym_sum_variant, + [33278] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2088), 1, + sym_identifier, + ACTIONS(2090), 1, + anon_sym_RBRACE, + ACTIONS(2092), 1, + sym__newline, + STATE(643), 1, + sym_product_field, + STATE(801), 1, + aux_sym_source_file_repeat1, + [33297] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2086), 1, + sym_identifier, + ACTIONS(2094), 1, + anon_sym_RBRACE, + ACTIONS(2096), 1, + sym__newline, + STATE(644), 1, + sym_sum_variant, + STATE(803), 1, + aux_sym_source_file_repeat1, + [33316] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2098), 2, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + ACTIONS(1707), 3, + anon_sym_COMMA, + anon_sym_or, + sym__newline, + [33329] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2100), 1, + sym_identifier, + ACTIONS(2102), 1, + anon_sym_RBRACE, + ACTIONS(2104), 1, + sym__newline, + STATE(616), 1, + sym_bits_member, + STATE(810), 1, + aux_sym_source_file_repeat1, + [33348] = 3, + ACTIONS(3), 1, + sym_comment, + STATE(1114), 1, + sym_unsigned_integer_type, + ACTIONS(2106), 4, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + [33361] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2042), 1, + sym_identifier, + ACTIONS(2108), 1, + anon_sym_RBRACE, + ACTIONS(2110), 1, + sym__newline, + STATE(736), 1, + sym_import_member, + STATE(780), 1, + aux_sym_source_file_repeat1, + [33380] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1847), 1, + anon_sym_RBRACE, + ACTIONS(2046), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(986), 1, + sym_product_pattern_field, + [33399] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1847), 1, + anon_sym_RBRACE, + ACTIONS(2046), 1, + sym_identifier, + ACTIONS(2112), 1, + sym__newline, + STATE(781), 1, + aux_sym_source_file_repeat1, + STATE(917), 1, + sym_product_pattern_field, + [33418] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2114), 1, + anon_sym_COMMA, + ACTIONS(2117), 1, + anon_sym_RBRACE, + ACTIONS(2119), 1, + sym__newline, + STATE(799), 1, + aux_sym_bits_pattern_repeat1, + STATE(1076), 1, + aux_sym__newlines, + [33437] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2122), 5, + ts_builtin_sym_end, + anon_sym_as, + anon_sym_DOT, + sym__newline, + anon_sym_SEMI, + [33448] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1726), 1, + anon_sym_RBRACE, + ACTIONS(2088), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(606), 1, + sym_product_field, + [33467] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2126), 1, + anon_sym_COLON_COLON, + ACTIONS(2128), 1, + anon_sym_COLON, + ACTIONS(2124), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [33482] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1728), 1, + anon_sym_RBRACE, + ACTIONS(2086), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(605), 1, + sym_sum_variant, + [33501] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1728), 1, + anon_sym_RBRACE, + ACTIONS(2086), 1, + sym_identifier, + ACTIONS(2130), 1, + sym__newline, + STATE(605), 1, + sym_sum_variant, + STATE(790), 1, + aux_sym_source_file_repeat1, + [33520] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2132), 1, + anon_sym_COMMA, + ACTIONS(2135), 1, + anon_sym_RBRACK, + ACTIONS(2137), 1, + sym__newline, + STATE(77), 1, + aux_sym__newlines, + STATE(805), 1, + aux_sym_collection_literal_repeat1, + [33539] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1873), 1, + anon_sym_RBRACE, + ACTIONS(2042), 1, + sym_identifier, + ACTIONS(2140), 1, + sym__newline, + STATE(807), 1, + aux_sym_source_file_repeat1, + STATE(930), 1, + sym_import_member, + [33558] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1780), 1, + anon_sym_RBRACE, + ACTIONS(2042), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(993), 1, + sym_import_member, + [33577] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2046), 1, + sym_identifier, + ACTIONS(2142), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(986), 1, + sym_product_pattern_field, + [33596] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2144), 1, + anon_sym_COMMA, + ACTIONS(2147), 1, + anon_sym_RBRACE, + ACTIONS(2149), 1, + sym__newline, + STATE(809), 1, + aux_sym_use_declaration_repeat1, + STATE(836), 1, + aux_sym__newlines, + [33615] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1675), 1, + anon_sym_RBRACE, + ACTIONS(2100), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(623), 1, + sym_bits_member, + [33634] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2152), 1, + anon_sym_COMMA, + ACTIONS(2155), 1, + anon_sym_RPAREN, + ACTIONS(2157), 1, + sym__newline, + STATE(129), 1, + aux_sym__newlines, + STATE(811), 1, + aux_sym_aggregate_tail_repeat1, + [33653] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2160), 1, + anon_sym_COMMA, + ACTIONS(2163), 1, + anon_sym_RBRACK, + ACTIONS(2165), 1, + sym__newline, + STATE(74), 1, + aux_sym__newlines, + STATE(812), 1, + aux_sym_aggregate_tail_repeat2, + [33672] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2168), 1, + anon_sym_COMMA, + ACTIONS(2171), 1, + anon_sym_RPAREN, + ACTIONS(2173), 1, + sym__newline, + STATE(403), 1, + aux_sym__newlines, + STATE(813), 1, + aux_sym_tuple_pattern_repeat1, + [33691] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2042), 1, + sym_identifier, + ACTIONS(2176), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(993), 1, + sym_import_member, + [33710] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2042), 1, + sym_identifier, + ACTIONS(2176), 1, + anon_sym_RBRACE, + ACTIONS(2178), 1, + sym__newline, + STATE(783), 1, + aux_sym_source_file_repeat1, + STATE(930), 1, + sym_import_member, + [33729] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2004), 1, + anon_sym_RBRACE, + ACTIONS(2046), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(778), 1, + sym_product_pattern_field, + [33748] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1855), 1, + anon_sym_RBRACE, + ACTIONS(2046), 1, + sym_identifier, + ACTIONS(2180), 1, + sym__newline, + STATE(797), 1, + aux_sym_source_file_repeat1, + STATE(917), 1, + sym_product_pattern_field, + [33767] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2182), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(1635), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [33780] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2184), 1, + anon_sym_COMMA, + ACTIONS(2187), 1, + anon_sym_RBRACE, + ACTIONS(2189), 1, + sym__newline, + STATE(819), 1, + aux_sym_product_pattern_repeat1, + STATE(870), 1, + aux_sym__newlines, + [33799] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1826), 4, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_GT, + sym__newline, + [33809] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1983), 1, + anon_sym_RBRACE, + ACTIONS(2192), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [33825] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1983), 1, + anon_sym_RBRACE, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2196), 1, + sym__newline, + STATE(835), 1, + aux_sym_source_file_repeat1, + [33841] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2046), 1, + sym_identifier, + ACTIONS(2198), 1, + sym__newline, + STATE(838), 1, + aux_sym_source_file_repeat1, + STATE(917), 1, + sym_product_pattern_field, + [33857] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2200), 4, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_GT, + sym__newline, + [33867] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2042), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(993), 1, + sym_import_member, + [33883] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1951), 1, + anon_sym_RBRACE, + ACTIONS(2192), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [33899] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1814), 1, + sym_identifier, + ACTIONS(2074), 1, + anon_sym_DOT, + STATE(461), 1, + sym_qualified_name, + STATE(1128), 1, + sym_type_name, + [33915] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1951), 1, + anon_sym_RBRACE, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2202), 1, + sym__newline, + STATE(878), 1, + aux_sym_source_file_repeat1, + [33931] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1915), 1, + anon_sym_RBRACE, + ACTIONS(2204), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [33947] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1915), 1, + anon_sym_RBRACE, + ACTIONS(2204), 1, + sym_identifier, + ACTIONS(2206), 1, + sym__newline, + STATE(847), 1, + aux_sym_source_file_repeat1, + [33963] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1502), 1, + anon_sym_DOT, + ACTIONS(1814), 1, + sym_identifier, + STATE(461), 1, + sym_qualified_name, + STATE(1126), 1, + sym_type_name, + [33979] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2192), 1, + sym_identifier, + ACTIONS(2208), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [33995] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1965), 1, + anon_sym_RBRACE, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2210), 1, + sym__newline, + STATE(889), 1, + aux_sym_source_file_repeat1, + [34011] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2212), 1, + sym_identifier, + ACTIONS(2214), 1, + anon_sym_RBRACE, + ACTIONS(2216), 1, + sym__newline, + STATE(896), 1, + aux_sym_source_file_repeat1, + [34027] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2192), 1, + sym_identifier, + ACTIONS(2218), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34043] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(988), 1, + sym__newline, + ACTIONS(2042), 1, + sym_identifier, + STATE(410), 1, + aux_sym__newlines, + STATE(930), 1, + sym_import_member, + [34059] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2218), 1, + anon_sym_RBRACE, + ACTIONS(2220), 1, + sym__newline, + STATE(845), 1, + aux_sym_source_file_repeat1, + [34075] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2046), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + STATE(986), 1, + sym_product_pattern_field, + [34091] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1965), 1, + anon_sym_RBRACE, + ACTIONS(2222), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34107] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2224), 1, + sym_identifier, + ACTIONS(2226), 1, + anon_sym_RBRACE, + ACTIONS(2228), 1, + sym__newline, + STATE(829), 1, + aux_sym_source_file_repeat1, + [34123] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1008), 1, + anon_sym_LBRACE, + ACTIONS(1562), 1, + anon_sym_BQUOTE, + STATE(443), 1, + sym_block, + STATE(1091), 1, + sym_label, + [34139] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1891), 1, + anon_sym_RBRACE, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2230), 1, + sym__newline, + STATE(875), 1, + aux_sym_source_file_repeat1, + [34155] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1624), 1, + anon_sym_COLON, + ACTIONS(2232), 3, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + [34167] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1486), 1, + anon_sym_DOT, + ACTIONS(1814), 1, + sym_identifier, + STATE(461), 1, + sym_qualified_name, + STATE(1154), 1, + sym_type_name, + [34183] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2192), 1, + sym_identifier, + ACTIONS(2234), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34199] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1194), 1, + anon_sym_DOT, + STATE(871), 1, + aux_sym_aggregate_pipeline_callable_repeat1, + ACTIONS(2236), 2, + anon_sym_LBRACK, + anon_sym_LPAREN, + [34213] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1891), 1, + anon_sym_RBRACE, + ACTIONS(2238), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34229] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2240), 1, + sym_identifier, + ACTIONS(2242), 1, + anon_sym_RBRACE, + ACTIONS(2244), 1, + sym__newline, + STATE(854), 1, + aux_sym_source_file_repeat1, + [34245] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1814), 1, + sym_identifier, + ACTIONS(2246), 1, + anon_sym_DOT, + STATE(461), 1, + sym_qualified_name, + STATE(1138), 1, + sym_type_name, + [34261] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2192), 1, + sym_identifier, + ACTIONS(2248), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34277] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2248), 1, + anon_sym_RBRACE, + ACTIONS(2250), 1, + sym__newline, + STATE(832), 1, + aux_sym_source_file_repeat1, + [34293] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(2252), 1, + anon_sym_if, + STATE(195), 2, + sym_if_expression, + sym_block, + [34307] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(1562), 1, + anon_sym_BQUOTE, + STATE(230), 1, + sym_block, + STATE(1084), 1, + sym_label, + [34323] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1933), 1, + anon_sym_RBRACE, + ACTIONS(2254), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34339] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1933), 1, + anon_sym_RBRACE, + ACTIONS(2254), 1, + sym_identifier, + ACTIONS(2256), 1, + sym__newline, + STATE(867), 1, + aux_sym_source_file_repeat1, + [34355] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1008), 1, + anon_sym_LBRACE, + ACTIONS(2258), 1, + anon_sym_if, + STATE(449), 2, + sym_if_expression, + sym_block, + [34369] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2260), 1, + anon_sym_COLON, + ACTIONS(1707), 3, + anon_sym_COMMA, + anon_sym_or, + sym__newline, + [34381] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1008), 1, + anon_sym_LBRACE, + ACTIONS(1562), 1, + anon_sym_BQUOTE, + STATE(451), 1, + sym_block, + STATE(1097), 1, + sym_label, + [34397] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1695), 1, + anon_sym_RBRACE, + ACTIONS(2262), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34413] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2264), 1, + anon_sym_as, + ACTIONS(2266), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + sym__newline, + [34425] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2042), 1, + sym_identifier, + ACTIONS(2268), 1, + sym__newline, + STATE(825), 1, + aux_sym_source_file_repeat1, + STATE(930), 1, + sym_import_member, + [34441] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2192), 1, + sym_identifier, + ACTIONS(2270), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34457] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(593), 1, + anon_sym_as, + ACTIONS(595), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + sym__newline, + [34469] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1851), 1, + anon_sym_RBRACE, + ACTIONS(2192), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34485] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1947), 1, + anon_sym_RBRACE, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2272), 1, + sym__newline, + STATE(872), 1, + aux_sym_source_file_repeat1, + [34501] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1851), 1, + anon_sym_RBRACE, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2274), 1, + sym__newline, + STATE(850), 1, + aux_sym_source_file_repeat1, + [34517] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1947), 1, + anon_sym_RBRACE, + ACTIONS(2276), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34533] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1808), 1, + anon_sym_RBRACE, + ACTIONS(2278), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34549] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2282), 1, + anon_sym_EQ_GT, + ACTIONS(2280), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + sym__newline, + [34561] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(988), 1, + sym__newline, + ACTIONS(2046), 1, + sym_identifier, + STATE(410), 1, + aux_sym__newlines, + STATE(917), 1, + sym_product_pattern_field, + [34577] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1194), 1, + anon_sym_DOT, + STATE(412), 1, + aux_sym_aggregate_pipeline_callable_repeat1, + ACTIONS(2284), 2, + anon_sym_LBRACK, + anon_sym_LPAREN, + [34591] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1969), 1, + anon_sym_RBRACE, + ACTIONS(2192), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34607] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1969), 1, + anon_sym_RBRACE, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2286), 1, + sym__newline, + STATE(876), 1, + aux_sym_source_file_repeat1, + [34623] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2288), 1, + sym_identifier, + ACTIONS(2290), 1, + anon_sym_RBRACE, + ACTIONS(2292), 1, + sym__newline, + STATE(890), 1, + aux_sym_source_file_repeat1, + [34639] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1800), 1, + anon_sym_RBRACE, + ACTIONS(2192), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34655] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1987), 1, + anon_sym_RBRACE, + ACTIONS(2192), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34671] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1987), 1, + anon_sym_RBRACE, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2294), 1, + sym__newline, + STATE(879), 1, + aux_sym_source_file_repeat1, + [34687] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2192), 1, + sym_identifier, + ACTIONS(2296), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34703] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2192), 1, + sym_identifier, + ACTIONS(2298), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34719] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2298), 1, + anon_sym_RBRACE, + ACTIONS(2300), 1, + sym__newline, + STATE(881), 1, + aux_sym_source_file_repeat1, + [34735] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2192), 1, + sym_identifier, + ACTIONS(2302), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34751] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1994), 1, + anon_sym_RBRACE, + ACTIONS(2192), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34767] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1994), 1, + anon_sym_RBRACE, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2304), 1, + sym__newline, + STATE(826), 1, + aux_sym_source_file_repeat1, + [34783] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(988), 1, + sym__newline, + STATE(410), 1, + aux_sym__newlines, + ACTIONS(1062), 2, + anon_sym_DOT_DOT_DOT, + sym_identifier, + [34797] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1635), 2, + anon_sym_LBRACE, + anon_sym_BQUOTE, + ACTIONS(2306), 2, + anon_sym_COLON, + anon_sym_EQ, + [34809] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2296), 1, + anon_sym_RBRACE, + ACTIONS(2308), 1, + sym__newline, + STATE(862), 1, + aux_sym_source_file_repeat1, + [34825] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1814), 1, + sym_identifier, + ACTIONS(2310), 1, + anon_sym_DOT, + STATE(461), 1, + sym_qualified_name, + STATE(1152), 1, + sym_type_name, + [34841] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1800), 1, + anon_sym_RBRACE, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2312), 1, + sym__newline, + STATE(864), 1, + aux_sym_source_file_repeat1, + [34857] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1877), 1, + anon_sym_RBRACE, + ACTIONS(2192), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34873] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2000), 1, + anon_sym_RBRACE, + ACTIONS(2314), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34889] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2000), 1, + anon_sym_RBRACE, + ACTIONS(2314), 1, + sym_identifier, + ACTIONS(2316), 1, + sym__newline, + STATE(839), 1, + aux_sym_source_file_repeat1, + [34905] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1877), 1, + anon_sym_RBRACE, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2318), 1, + sym__newline, + STATE(821), 1, + aux_sym_source_file_repeat1, + [34921] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1008), 1, + anon_sym_LBRACE, + STATE(533), 1, + sym_block, + ACTIONS(2320), 2, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + [34935] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1814), 1, + sym_identifier, + ACTIONS(2322), 1, + anon_sym_DOT, + STATE(461), 1, + sym_qualified_name, + STATE(1139), 1, + sym_type_name, + [34951] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(461), 1, + anon_sym_LBRACE, + ACTIONS(1562), 1, + anon_sym_BQUOTE, + STATE(197), 1, + sym_block, + STATE(1109), 1, + sym_label, + [34967] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2032), 1, + anon_sym_RBRACE, + ACTIONS(2324), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [34983] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2032), 1, + anon_sym_RBRACE, + ACTIONS(2324), 1, + sym_identifier, + ACTIONS(2326), 1, + sym__newline, + STATE(868), 1, + aux_sym_source_file_repeat1, + [34999] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2328), 1, + sym_identifier, + ACTIONS(2330), 1, + anon_sym_RBRACE, + ACTIONS(2332), 1, + sym__newline, + STATE(859), 1, + aux_sym_source_file_repeat1, + [35015] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1808), 1, + anon_sym_RBRACE, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2334), 1, + sym__newline, + STATE(882), 1, + aux_sym_source_file_repeat1, + [35031] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2336), 1, + anon_sym_LBRACK, + ACTIONS(2338), 1, + anon_sym_LPAREN, + STATE(478), 1, + sym_aggregate_tail, + [35044] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1687), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35057] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2248), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35070] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2340), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35083] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2342), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + sym__newline, + [35092] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2344), 3, + anon_sym_COMMA, + anon_sym_RPAREN, + sym__newline, + [35101] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2346), 1, + anon_sym_COMMA, + ACTIONS(2348), 1, + sym__newline, + STATE(402), 1, + aux_sym__newlines, + [35114] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(948), 1, + anon_sym_RPAREN, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35127] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1717), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35140] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2350), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [35149] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2352), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + sym__newline, + [35158] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2354), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + sym__newline, + [35167] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2356), 3, + anon_sym_COMMA, + anon_sym_RPAREN, + sym__newline, + [35176] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2358), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + sym__newline, + [35185] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1837), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [35194] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1724), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35207] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2360), 1, + anon_sym_COMMA, + ACTIONS(2362), 1, + sym__newline, + STATE(119), 1, + aux_sym__newlines, + [35220] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2187), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + sym__newline, + [35229] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1814), 1, + sym_identifier, + STATE(461), 1, + sym_qualified_name, + STATE(800), 1, + sym_type_name, + [35242] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1847), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35255] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2364), 1, + ts_builtin_sym_end, + ACTIONS(2366), 1, + sym__newline, + STATE(950), 1, + aux_sym_source_file_repeat1, + [35268] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2368), 1, + anon_sym_COMMA, + ACTIONS(2370), 1, + sym__newline, + STATE(335), 1, + aux_sym__newlines, + [35281] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1768), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [35290] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1689), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35303] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1671), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35316] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1983), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35329] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2372), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [35338] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2374), 3, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + [35347] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2376), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [35356] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1730), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35369] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2147), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + sym__newline, + [35378] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2378), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [35387] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2380), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + sym__newline, + [35396] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2382), 1, + anon_sym_COMMA, + ACTIONS(2384), 1, + sym__newline, + STATE(400), 1, + aux_sym__newlines, + [35409] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2135), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + sym__newline, + [35418] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2386), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [35427] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(265), 1, + anon_sym_RBRACK, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35440] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2388), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + sym__newline, + [35449] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2390), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [35458] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1665), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35471] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1784), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [35480] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2392), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + sym__newline, + [35489] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(261), 1, + anon_sym_RBRACK, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35502] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2394), 1, + anon_sym_COMMA, + ACTIONS(2396), 1, + sym__newline, + STATE(567), 1, + aux_sym__newlines, + [35515] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2398), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [35524] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1532), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35537] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1873), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35550] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1673), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35563] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2067), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + sym__newline, + [35572] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2400), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + sym__newline, + [35581] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(742), 1, + ts_builtin_sym_end, + ACTIONS(2402), 1, + sym__newline, + STATE(950), 1, + aux_sym_source_file_repeat1, + [35594] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2405), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [35603] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2407), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35616] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1099), 1, + anon_sym_RBRACK, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35629] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1780), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35642] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2409), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + sym__newline, + [35651] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(970), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35664] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1097), 1, + anon_sym_RBRACK, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35677] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(962), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35690] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2411), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [35699] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1087), 1, + anon_sym_RBRACK, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35712] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2413), 1, + anon_sym_DASH, + ACTIONS(2415), 1, + sym_integer_literal, + STATE(935), 1, + sym_signed_integer_literal, + [35725] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1891), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35738] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2417), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35751] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2419), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [35760] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2034), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [35769] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1738), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35782] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(952), 1, + anon_sym_GT, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35795] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2155), 3, + anon_sym_COMMA, + anon_sym_RPAREN, + sym__newline, + [35804] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(283), 1, + anon_sym_RBRACK, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35817] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2421), 3, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + [35826] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2423), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [35835] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2425), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + sym__newline, + [35844] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2427), 1, + sym_integer_literal, + ACTIONS(2429), 2, + sym__trailing_dot_float, + sym_float_literal, + [35855] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2163), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + sym__newline, + [35864] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1701), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35877] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(409), 1, + anon_sym_RPAREN, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35890] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2431), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [35899] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1740), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35912] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(303), 1, + anon_sym_RBRACK, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35925] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2171), 3, + anon_sym_COMMA, + anon_sym_RPAREN, + sym__newline, + [35934] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(291), 1, + anon_sym_RBRACK, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35947] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2194), 1, + sym_identifier, + ACTIONS(2433), 1, + sym__newline, + STATE(1037), 1, + aux_sym_source_file_repeat1, + [35960] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2435), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [35969] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1681), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35982] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(303), 1, + anon_sym_RPAREN, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [35995] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2437), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + sym__newline, + [36004] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(423), 1, + anon_sym_RPAREN, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36017] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1951), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36030] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(966), 1, + anon_sym_GT, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36043] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2439), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [36052] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2441), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [36061] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1663), 1, + ts_builtin_sym_end, + ACTIONS(2366), 1, + sym__newline, + STATE(950), 1, + aux_sym_source_file_repeat1, + [36074] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2443), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + sym__newline, + [36083] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1124), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36096] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2445), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36109] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2447), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [36118] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(295), 1, + anon_sym_RBRACK, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36131] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(299), 1, + anon_sym_RBRACK, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36144] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2449), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + sym__newline, + [36153] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(413), 1, + anon_sym_RPAREN, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36166] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(287), 1, + anon_sym_RBRACK, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36179] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2176), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36192] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1744), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36205] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(387), 1, + anon_sym_RPAREN, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36218] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(940), 1, + anon_sym_GT, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36231] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2451), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36244] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1947), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36257] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1851), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36270] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2048), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36283] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1746), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36296] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2218), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36309] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2453), 3, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + [36318] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2455), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [36327] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1971), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [36336] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2457), 1, + sym_integer_literal, + ACTIONS(2459), 2, + sym__trailing_dot_float, + sym_float_literal, + [36347] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(419), 1, + anon_sym_RPAREN, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36360] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1965), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36373] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1748), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36386] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1855), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36399] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(309), 1, + anon_sym_RBRACK, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36412] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1969), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36425] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(974), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36438] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(417), 1, + anon_sym_RPAREN, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36451] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1750), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36464] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1138), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36477] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1754), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36490] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1128), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36503] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(383), 1, + anon_sym_RPAREN, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36516] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1881), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [36525] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1752), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36538] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2461), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36551] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2463), 3, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + [36560] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2465), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36573] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1987), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36586] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1715), 1, + ts_builtin_sym_end, + ACTIONS(2366), 1, + sym__newline, + STATE(950), 1, + aux_sym_source_file_repeat1, + [36599] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2467), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36612] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2192), 1, + sym_identifier, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36625] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2081), 3, + anon_sym_COMMA, + anon_sym_RPAREN, + sym__newline, + [36634] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(427), 1, + anon_sym_RPAREN, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36647] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2469), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36660] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1953), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [36669] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2471), 3, + anon_sym_COMMA, + anon_sym_RBRACK, + sym__newline, + [36678] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2298), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36691] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2473), 1, + anon_sym_COMMA, + ACTIONS(2475), 1, + sym__newline, + STATE(574), 1, + aux_sym__newlines, + [36704] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2477), 1, + anon_sym_COMMA, + ACTIONS(2479), 1, + sym__newline, + STATE(329), 1, + aux_sym__newlines, + [36717] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2117), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + sym__newline, + [36726] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2481), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [36735] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2483), 3, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + [36744] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1994), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36757] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2485), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [36766] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(309), 1, + anon_sym_RPAREN, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36779] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2296), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36792] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1530), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36805] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1802), 1, + sym_identifier, + ACTIONS(1804), 1, + anon_sym_DOT_DOT_DOT, + STATE(1014), 1, + sym_product_entry, + [36818] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1713), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36831] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2487), 3, + ts_builtin_sym_end, + sym__newline, + anon_sym_SEMI, + [36840] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(295), 1, + anon_sym_RPAREN, + ACTIONS(954), 1, + sym__newline, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36853] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1560), 1, + anon_sym_LBRACE, + ACTIONS(2489), 1, + anon_sym_BQUOTE, + STATE(580), 1, + sym_label, + [36866] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2492), 3, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + [36875] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1540), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36888] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1877), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36901] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1800), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36914] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(2494), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36927] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2008), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [36936] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1641), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36949] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2496), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [36958] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2498), 3, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_EQ_GT, + [36967] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2500), 3, + anon_sym_COMMA, + anon_sym_RPAREN, + sym__newline, + [36976] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2502), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [36985] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1647), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [36998] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2504), 1, + anon_sym_COMMA, + ACTIONS(2506), 1, + sym__newline, + STATE(122), 1, + aux_sym__newlines, + [37011] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2508), 1, + anon_sym_COMMA, + ACTIONS(2510), 1, + sym__newline, + STATE(110), 1, + aux_sym__newlines, + [37024] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2512), 3, + anon_sym_COMMA, + anon_sym_RPAREN, + sym__newline, + [37033] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1544), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + [37046] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2514), 1, + anon_sym_COMMA, + ACTIONS(2516), 1, + sym__newline, + STATE(125), 1, + aux_sym__newlines, + [37059] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(988), 1, + sym__newline, + ACTIONS(2194), 1, + sym_identifier, + STATE(410), 1, + aux_sym__newlines, + [37072] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1808), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [37085] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1691), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [37098] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2518), 3, + anon_sym_RBRACE, + sym__newline, + anon_sym_SEMI, + [37107] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1635), 1, + anon_sym_LBRACE, + ACTIONS(2520), 2, + anon_sym_COLON, + anon_sym_EQ, + [37118] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1653), 1, + anon_sym_RBRACE, + STATE(382), 1, + aux_sym_source_file_repeat1, + [37131] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2336), 1, + anon_sym_LBRACK, + ACTIONS(2338), 1, + anon_sym_LPAREN, + STATE(483), 1, + sym_aggregate_tail, + [37144] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(954), 1, + sym__newline, + ACTIONS(1132), 1, + anon_sym_RPAREN, + STATE(382), 1, + aux_sym_source_file_repeat1, + [37157] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(461), 1, + anon_sym_LBRACE, + STATE(226), 1, + sym_block, + [37167] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2100), 1, + sym_identifier, + STATE(965), 1, + sym_bits_member, + [37177] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2098), 2, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + [37185] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2522), 1, + sym_identifier, + ACTIONS(2524), 1, + anon_sym_LBRACE, + [37195] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2526), 1, + sym_identifier, + ACTIONS(2528), 1, + anon_sym_LBRACE, + [37205] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1008), 1, + anon_sym_LBRACE, + STATE(418), 1, + sym_block, + [37215] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2530), 2, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + [37223] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1008), 1, + anon_sym_LBRACE, + STATE(433), 1, + sym_block, + [37233] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2532), 1, + sym_identifier, + ACTIONS(2534), 1, + anon_sym_LBRACE, + [37243] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(459), 2, + anon_sym__, + sym_identifier, + [37251] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2536), 2, + anon_sym_COLON, + anon_sym_EQ, + [37259] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2538), 1, + anon_sym_EQ_GT, + ACTIONS(2540), 1, + anon_sym_if, + [37269] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2260), 2, + anon_sym_COLON, + anon_sym_in, + [37277] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1008), 1, + anon_sym_LBRACE, + STATE(459), 1, + sym_block, + [37287] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2542), 1, + sym_identifier, + ACTIONS(2544), 1, + anon_sym_LBRACE, + [37297] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2546), 1, + sym_identifier, + ACTIONS(2548), 1, + anon_sym_LBRACE, + [37307] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2550), 2, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + [37315] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2086), 1, + sym_identifier, + STATE(940), 1, + sym_sum_variant, + [37325] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2552), 1, + sym_identifier, + ACTIONS(2554), 1, + anon_sym_LBRACE, + [37335] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2022), 2, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + [37343] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2556), 2, + anon_sym_COLON, + anon_sym_EQ, + [37351] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2558), 1, + sym_identifier, + ACTIONS(2560), 1, + anon_sym_LBRACE, + [37361] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1008), 1, + anon_sym_LBRACE, + STATE(539), 1, + sym_block, + [37371] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(461), 1, + anon_sym_LBRACE, + STATE(184), 1, + sym_block, + [37381] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2562), 1, + sym_identifier, + ACTIONS(2564), 1, + anon_sym_LBRACE, + [37391] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(461), 1, + anon_sym_LBRACE, + STATE(204), 1, + sym_block, + [37401] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2566), 2, + anon_sym_COLON_COLON, + anon_sym_COLON_EQ, + [37409] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2088), 1, + sym_identifier, + STATE(922), 1, + sym_product_field, + [37419] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2568), 1, + anon_sym_LBRACE, + [37426] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2570), 1, + anon_sym_LBRACE, + [37433] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2572), 1, + anon_sym_LBRACE, + [37440] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2574), 1, + ts_builtin_sym_end, + [37447] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2576), 1, + anon_sym_LBRACE, + [37454] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2578), 1, + anon_sym_COLON, + [37461] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2580), 1, + anon_sym_RBRACK, + [37468] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2582), 1, + sym_identifier, + [37475] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2584), 1, + sym_identifier, + [37482] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2586), 1, + anon_sym_COLON, + [37489] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2588), 1, + sym_identifier, + [37496] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2590), 1, + anon_sym_COLON_COLON, + [37503] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2592), 1, + sym_identifier, + [37510] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2594), 1, + anon_sym_LBRACE, + [37517] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2596), 1, + anon_sym_DOT, + [37524] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2598), 1, + anon_sym_RBRACE, + [37531] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2600), 1, + anon_sym_DOT, + [37538] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2602), 1, + anon_sym_PIPE, + [37545] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2604), 1, + sym_identifier, + [37552] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2606), 1, + anon_sym_EQ_GT, + [37559] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2608), 1, + anon_sym_LBRACE, + [37566] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2610), 1, + sym_identifier, + [37573] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2612), 1, + anon_sym_LBRACE, + [37580] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2076), 1, + anon_sym_LBRACE, + [37587] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2614), 1, + anon_sym_LBRACE, + [37594] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2616), 1, + anon_sym_LBRACE, + [37601] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2618), 1, + anon_sym_DOT, + [37608] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2620), 1, + anon_sym_DOT, + [37615] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2622), 1, + anon_sym_in, + [37622] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2624), 1, + sym_integer_literal, + [37629] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2626), 1, + sym_integer_literal, + [37636] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2628), 1, + anon_sym_COLON, + [37643] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2630), 1, + anon_sym_in, + [37650] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2632), 1, + anon_sym_LBRACE, + [37657] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2634), 1, + anon_sym_LBRACE, + [37664] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2636), 1, + sym_identifier, + [37671] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2638), 1, + anon_sym_RBRACK, + [37678] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2640), 1, + anon_sym_LBRACE, + [37685] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2642), 1, + sym_identifier, + [37692] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2644), 1, + sym_identifier, + [37699] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2646), 1, + anon_sym_DOT, + [37706] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2648), 1, + anon_sym_RBRACK, + [37713] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2650), 1, + anon_sym_DOT, + [37720] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2652), 1, + sym_identifier, +}; + +static const uint32_t ts_small_parse_table_map[] = { + [SMALL_STATE(110)] = 0, + [SMALL_STATE(111)] = 139, + [SMALL_STATE(112)] = 278, + [SMALL_STATE(113)] = 417, + [SMALL_STATE(114)] = 556, + [SMALL_STATE(115)] = 695, + [SMALL_STATE(116)] = 834, + [SMALL_STATE(117)] = 973, + [SMALL_STATE(118)] = 1112, + [SMALL_STATE(119)] = 1251, + [SMALL_STATE(120)] = 1390, + [SMALL_STATE(121)] = 1529, + [SMALL_STATE(122)] = 1668, + [SMALL_STATE(123)] = 1807, + [SMALL_STATE(124)] = 1946, + [SMALL_STATE(125)] = 2085, + [SMALL_STATE(126)] = 2224, + [SMALL_STATE(127)] = 2363, + [SMALL_STATE(128)] = 2502, + [SMALL_STATE(129)] = 2641, + [SMALL_STATE(130)] = 2780, + [SMALL_STATE(131)] = 2919, + [SMALL_STATE(132)] = 3055, + [SMALL_STATE(133)] = 3191, + [SMALL_STATE(134)] = 3327, + [SMALL_STATE(135)] = 3460, + [SMALL_STATE(136)] = 3593, + [SMALL_STATE(137)] = 3726, + [SMALL_STATE(138)] = 3859, + [SMALL_STATE(139)] = 3992, + [SMALL_STATE(140)] = 4125, + [SMALL_STATE(141)] = 4258, + [SMALL_STATE(142)] = 4391, + [SMALL_STATE(143)] = 4524, + [SMALL_STATE(144)] = 4657, + [SMALL_STATE(145)] = 4790, + [SMALL_STATE(146)] = 4923, + [SMALL_STATE(147)] = 5056, + [SMALL_STATE(148)] = 5189, + [SMALL_STATE(149)] = 5322, + [SMALL_STATE(150)] = 5455, + [SMALL_STATE(151)] = 5588, + [SMALL_STATE(152)] = 5721, + [SMALL_STATE(153)] = 5854, + [SMALL_STATE(154)] = 5977, + [SMALL_STATE(155)] = 6100, + [SMALL_STATE(156)] = 6223, + [SMALL_STATE(157)] = 6346, + [SMALL_STATE(158)] = 6469, + [SMALL_STATE(159)] = 6592, + [SMALL_STATE(160)] = 6715, + [SMALL_STATE(161)] = 6838, + [SMALL_STATE(162)] = 6961, + [SMALL_STATE(163)] = 7084, + [SMALL_STATE(164)] = 7207, + [SMALL_STATE(165)] = 7330, + [SMALL_STATE(166)] = 7453, + [SMALL_STATE(167)] = 7576, + [SMALL_STATE(168)] = 7699, + [SMALL_STATE(169)] = 7813, + [SMALL_STATE(170)] = 7927, + [SMALL_STATE(171)] = 8041, + [SMALL_STATE(172)] = 8103, + [SMALL_STATE(173)] = 8165, + [SMALL_STATE(174)] = 8279, + [SMALL_STATE(175)] = 8393, + [SMALL_STATE(176)] = 8460, + [SMALL_STATE(177)] = 8519, + [SMALL_STATE(178)] = 8586, + [SMALL_STATE(179)] = 8645, + [SMALL_STATE(180)] = 8704, + [SMALL_STATE(181)] = 8763, + [SMALL_STATE(182)] = 8822, + [SMALL_STATE(183)] = 8891, + [SMALL_STATE(184)] = 8958, + [SMALL_STATE(185)] = 9019, + [SMALL_STATE(186)] = 9077, + [SMALL_STATE(187)] = 9135, + [SMALL_STATE(188)] = 9193, + [SMALL_STATE(189)] = 9251, + [SMALL_STATE(190)] = 9315, + [SMALL_STATE(191)] = 9373, + [SMALL_STATE(192)] = 9431, + [SMALL_STATE(193)] = 9489, + [SMALL_STATE(194)] = 9547, + [SMALL_STATE(195)] = 9605, + [SMALL_STATE(196)] = 9663, + [SMALL_STATE(197)] = 9721, + [SMALL_STATE(198)] = 9779, + [SMALL_STATE(199)] = 9861, + [SMALL_STATE(200)] = 9919, + [SMALL_STATE(201)] = 9977, + [SMALL_STATE(202)] = 10035, + [SMALL_STATE(203)] = 10093, + [SMALL_STATE(204)] = 10151, + [SMALL_STATE(205)] = 10209, + [SMALL_STATE(206)] = 10267, + [SMALL_STATE(207)] = 10325, + [SMALL_STATE(208)] = 10383, + [SMALL_STATE(209)] = 10441, + [SMALL_STATE(210)] = 10499, + [SMALL_STATE(211)] = 10557, + [SMALL_STATE(212)] = 10615, + [SMALL_STATE(213)] = 10673, + [SMALL_STATE(214)] = 10731, + [SMALL_STATE(215)] = 10789, + [SMALL_STATE(216)] = 10847, + [SMALL_STATE(217)] = 10905, + [SMALL_STATE(218)] = 10963, + [SMALL_STATE(219)] = 11021, + [SMALL_STATE(220)] = 11079, + [SMALL_STATE(221)] = 11137, + [SMALL_STATE(222)] = 11195, + [SMALL_STATE(223)] = 11253, + [SMALL_STATE(224)] = 11311, + [SMALL_STATE(225)] = 11369, + [SMALL_STATE(226)] = 11427, + [SMALL_STATE(227)] = 11485, + [SMALL_STATE(228)] = 11543, + [SMALL_STATE(229)] = 11601, + [SMALL_STATE(230)] = 11659, + [SMALL_STATE(231)] = 11717, + [SMALL_STATE(232)] = 11775, + [SMALL_STATE(233)] = 11833, + [SMALL_STATE(234)] = 11898, + [SMALL_STATE(235)] = 11961, + [SMALL_STATE(236)] = 12022, + [SMALL_STATE(237)] = 12092, + [SMALL_STATE(238)] = 12168, + [SMALL_STATE(239)] = 12240, + [SMALL_STATE(240)] = 12310, + [SMALL_STATE(241)] = 12387, + [SMALL_STATE(242)] = 12458, + [SMALL_STATE(243)] = 12519, + [SMALL_STATE(244)] = 12584, + [SMALL_STATE(245)] = 12638, + [SMALL_STATE(246)] = 12702, + [SMALL_STATE(247)] = 12762, + [SMALL_STATE(248)] = 12822, + [SMALL_STATE(249)] = 12882, + [SMALL_STATE(250)] = 12945, + [SMALL_STATE(251)] = 13006, + [SMALL_STATE(252)] = 13065, + [SMALL_STATE(253)] = 13159, + [SMALL_STATE(254)] = 13215, + [SMALL_STATE(255)] = 13309, + [SMALL_STATE(256)] = 13365, + [SMALL_STATE(257)] = 13459, + [SMALL_STATE(258)] = 13519, + [SMALL_STATE(259)] = 13575, + [SMALL_STATE(260)] = 13669, + [SMALL_STATE(261)] = 13763, + [SMALL_STATE(262)] = 13815, + [SMALL_STATE(263)] = 13909, + [SMALL_STATE(264)] = 13977, + [SMALL_STATE(265)] = 14033, + [SMALL_STATE(266)] = 14089, + [SMALL_STATE(267)] = 14145, + [SMALL_STATE(268)] = 14205, + [SMALL_STATE(269)] = 14267, + [SMALL_STATE(270)] = 14323, + [SMALL_STATE(271)] = 14377, + [SMALL_STATE(272)] = 14433, + [SMALL_STATE(273)] = 14489, + [SMALL_STATE(274)] = 14563, + [SMALL_STATE(275)] = 14641, + [SMALL_STATE(276)] = 14709, + [SMALL_STATE(277)] = 14769, + [SMALL_STATE(278)] = 14835, + [SMALL_STATE(279)] = 14893, + [SMALL_STATE(280)] = 14955, + [SMALL_STATE(281)] = 15011, + [SMALL_STATE(282)] = 15067, + [SMALL_STATE(283)] = 15141, + [SMALL_STATE(284)] = 15193, + [SMALL_STATE(285)] = 15287, + [SMALL_STATE(286)] = 15353, + [SMALL_STATE(287)] = 15409, + [SMALL_STATE(288)] = 15465, + [SMALL_STATE(289)] = 15559, + [SMALL_STATE(290)] = 15615, + [SMALL_STATE(291)] = 15693, + [SMALL_STATE(292)] = 15777, + [SMALL_STATE(293)] = 15833, + [SMALL_STATE(294)] = 15924, + [SMALL_STATE(295)] = 16015, + [SMALL_STATE(296)] = 16076, + [SMALL_STATE(297)] = 16157, + [SMALL_STATE(298)] = 16248, + [SMALL_STATE(299)] = 16339, + [SMALL_STATE(300)] = 16420, + [SMALL_STATE(301)] = 16501, + [SMALL_STATE(302)] = 16582, + [SMALL_STATE(303)] = 16663, + [SMALL_STATE(304)] = 16754, + [SMALL_STATE(305)] = 16835, + [SMALL_STATE(306)] = 16916, + [SMALL_STATE(307)] = 16997, + [SMALL_STATE(308)] = 17078, + [SMALL_STATE(309)] = 17159, + [SMALL_STATE(310)] = 17240, + [SMALL_STATE(311)] = 17321, + [SMALL_STATE(312)] = 17402, + [SMALL_STATE(313)] = 17483, + [SMALL_STATE(314)] = 17574, + [SMALL_STATE(315)] = 17665, + [SMALL_STATE(316)] = 17746, + [SMALL_STATE(317)] = 17837, + [SMALL_STATE(318)] = 17928, + [SMALL_STATE(319)] = 18019, + [SMALL_STATE(320)] = 18110, + [SMALL_STATE(321)] = 18191, + [SMALL_STATE(322)] = 18282, + [SMALL_STATE(323)] = 18373, + [SMALL_STATE(324)] = 18464, + [SMALL_STATE(325)] = 18555, + [SMALL_STATE(326)] = 18636, + [SMALL_STATE(327)] = 18714, + [SMALL_STATE(328)] = 18792, + [SMALL_STATE(329)] = 18870, + [SMALL_STATE(330)] = 18948, + [SMALL_STATE(331)] = 19026, + [SMALL_STATE(332)] = 19104, + [SMALL_STATE(333)] = 19182, + [SMALL_STATE(334)] = 19260, + [SMALL_STATE(335)] = 19340, + [SMALL_STATE(336)] = 19418, + [SMALL_STATE(337)] = 19496, + [SMALL_STATE(338)] = 19571, + [SMALL_STATE(339)] = 19660, + [SMALL_STATE(340)] = 19749, + [SMALL_STATE(341)] = 19821, + [SMALL_STATE(342)] = 19893, + [SMALL_STATE(343)] = 19965, + [SMALL_STATE(344)] = 20037, + [SMALL_STATE(345)] = 20109, + [SMALL_STATE(346)] = 20181, + [SMALL_STATE(347)] = 20253, + [SMALL_STATE(348)] = 20325, + [SMALL_STATE(349)] = 20397, + [SMALL_STATE(350)] = 20469, + [SMALL_STATE(351)] = 20541, + [SMALL_STATE(352)] = 20613, + [SMALL_STATE(353)] = 20685, + [SMALL_STATE(354)] = 20757, + [SMALL_STATE(355)] = 20823, + [SMALL_STATE(356)] = 20903, + [SMALL_STATE(357)] = 20983, + [SMALL_STATE(358)] = 21063, + [SMALL_STATE(359)] = 21143, + [SMALL_STATE(360)] = 21204, + [SMALL_STATE(361)] = 21265, + [SMALL_STATE(362)] = 21326, + [SMALL_STATE(363)] = 21369, + [SMALL_STATE(364)] = 21414, + [SMALL_STATE(365)] = 21459, + [SMALL_STATE(366)] = 21503, + [SMALL_STATE(367)] = 21547, + [SMALL_STATE(368)] = 21590, + [SMALL_STATE(369)] = 21653, + [SMALL_STATE(370)] = 21716, + [SMALL_STATE(371)] = 21786, + [SMALL_STATE(372)] = 21856, + [SMALL_STATE(373)] = 21926, + [SMALL_STATE(374)] = 22000, + [SMALL_STATE(375)] = 22070, + [SMALL_STATE(376)] = 22140, + [SMALL_STATE(377)] = 22210, + [SMALL_STATE(378)] = 22248, + [SMALL_STATE(379)] = 22318, + [SMALL_STATE(380)] = 22388, + [SMALL_STATE(381)] = 22455, + [SMALL_STATE(382)] = 22522, + [SMALL_STATE(383)] = 22563, + [SMALL_STATE(384)] = 22630, + [SMALL_STATE(385)] = 22697, + [SMALL_STATE(386)] = 22768, + [SMALL_STATE(387)] = 22835, + [SMALL_STATE(388)] = 22902, + [SMALL_STATE(389)] = 22969, + [SMALL_STATE(390)] = 23033, + [SMALL_STATE(391)] = 23097, + [SMALL_STATE(392)] = 23161, + [SMALL_STATE(393)] = 23225, + [SMALL_STATE(394)] = 23289, + [SMALL_STATE(395)] = 23353, + [SMALL_STATE(396)] = 23417, + [SMALL_STATE(397)] = 23481, + [SMALL_STATE(398)] = 23545, + [SMALL_STATE(399)] = 23606, + [SMALL_STATE(400)] = 23667, + [SMALL_STATE(401)] = 23728, + [SMALL_STATE(402)] = 23767, + [SMALL_STATE(403)] = 23828, + [SMALL_STATE(404)] = 23889, + [SMALL_STATE(405)] = 23950, + [SMALL_STATE(406)] = 24011, + [SMALL_STATE(407)] = 24072, + [SMALL_STATE(408)] = 24133, + [SMALL_STATE(409)] = 24194, + [SMALL_STATE(410)] = 24252, + [SMALL_STATE(411)] = 24289, + [SMALL_STATE(412)] = 24341, + [SMALL_STATE(413)] = 24375, + [SMALL_STATE(414)] = 24404, + [SMALL_STATE(415)] = 24446, + [SMALL_STATE(416)] = 24474, + [SMALL_STATE(417)] = 24502, + [SMALL_STATE(418)] = 24530, + [SMALL_STATE(419)] = 24560, + [SMALL_STATE(420)] = 24602, + [SMALL_STATE(421)] = 24630, + [SMALL_STATE(422)] = 24672, + [SMALL_STATE(423)] = 24700, + [SMALL_STATE(424)] = 24727, + [SMALL_STATE(425)] = 24754, + [SMALL_STATE(426)] = 24781, + [SMALL_STATE(427)] = 24808, + [SMALL_STATE(428)] = 24835, + [SMALL_STATE(429)] = 24862, + [SMALL_STATE(430)] = 24889, + [SMALL_STATE(431)] = 24916, + [SMALL_STATE(432)] = 24943, + [SMALL_STATE(433)] = 24970, + [SMALL_STATE(434)] = 24997, + [SMALL_STATE(435)] = 25024, + [SMALL_STATE(436)] = 25055, + [SMALL_STATE(437)] = 25082, + [SMALL_STATE(438)] = 25109, + [SMALL_STATE(439)] = 25136, + [SMALL_STATE(440)] = 25163, + [SMALL_STATE(441)] = 25190, + [SMALL_STATE(442)] = 25221, + [SMALL_STATE(443)] = 25254, + [SMALL_STATE(444)] = 25281, + [SMALL_STATE(445)] = 25314, + [SMALL_STATE(446)] = 25341, + [SMALL_STATE(447)] = 25368, + [SMALL_STATE(448)] = 25395, + [SMALL_STATE(449)] = 25422, + [SMALL_STATE(450)] = 25449, + [SMALL_STATE(451)] = 25476, + [SMALL_STATE(452)] = 25503, + [SMALL_STATE(453)] = 25530, + [SMALL_STATE(454)] = 25563, + [SMALL_STATE(455)] = 25590, + [SMALL_STATE(456)] = 25617, + [SMALL_STATE(457)] = 25644, + [SMALL_STATE(458)] = 25671, + [SMALL_STATE(459)] = 25698, + [SMALL_STATE(460)] = 25725, + [SMALL_STATE(461)] = 25752, + [SMALL_STATE(462)] = 25779, + [SMALL_STATE(463)] = 25806, + [SMALL_STATE(464)] = 25833, + [SMALL_STATE(465)] = 25860, + [SMALL_STATE(466)] = 25887, + [SMALL_STATE(467)] = 25914, + [SMALL_STATE(468)] = 25941, + [SMALL_STATE(469)] = 25968, + [SMALL_STATE(470)] = 25994, + [SMALL_STATE(471)] = 26028, + [SMALL_STATE(472)] = 26066, + [SMALL_STATE(473)] = 26092, + [SMALL_STATE(474)] = 26118, + [SMALL_STATE(475)] = 26144, + [SMALL_STATE(476)] = 26170, + [SMALL_STATE(477)] = 26208, + [SMALL_STATE(478)] = 26237, + [SMALL_STATE(479)] = 26266, + [SMALL_STATE(480)] = 26295, + [SMALL_STATE(481)] = 26322, + [SMALL_STATE(482)] = 26351, + [SMALL_STATE(483)] = 26380, + [SMALL_STATE(484)] = 26409, + [SMALL_STATE(485)] = 26440, + [SMALL_STATE(486)] = 26469, + [SMALL_STATE(487)] = 26498, + [SMALL_STATE(488)] = 26527, + [SMALL_STATE(489)] = 26561, + [SMALL_STATE(490)] = 26585, + [SMALL_STATE(491)] = 26613, + [SMALL_STATE(492)] = 26637, + [SMALL_STATE(493)] = 26661, + [SMALL_STATE(494)] = 26685, + [SMALL_STATE(495)] = 26709, + [SMALL_STATE(496)] = 26733, + [SMALL_STATE(497)] = 26757, + [SMALL_STATE(498)] = 26781, + [SMALL_STATE(499)] = 26805, + [SMALL_STATE(500)] = 26829, + [SMALL_STATE(501)] = 26853, + [SMALL_STATE(502)] = 26877, + [SMALL_STATE(503)] = 26901, + [SMALL_STATE(504)] = 26925, + [SMALL_STATE(505)] = 26949, + [SMALL_STATE(506)] = 26973, + [SMALL_STATE(507)] = 26997, + [SMALL_STATE(508)] = 27021, + [SMALL_STATE(509)] = 27045, + [SMALL_STATE(510)] = 27069, + [SMALL_STATE(511)] = 27093, + [SMALL_STATE(512)] = 27117, + [SMALL_STATE(513)] = 27141, + [SMALL_STATE(514)] = 27165, + [SMALL_STATE(515)] = 27193, + [SMALL_STATE(516)] = 27217, + [SMALL_STATE(517)] = 27241, + [SMALL_STATE(518)] = 27265, + [SMALL_STATE(519)] = 27289, + [SMALL_STATE(520)] = 27313, + [SMALL_STATE(521)] = 27337, + [SMALL_STATE(522)] = 27361, + [SMALL_STATE(523)] = 27385, + [SMALL_STATE(524)] = 27409, + [SMALL_STATE(525)] = 27433, + [SMALL_STATE(526)] = 27457, + [SMALL_STATE(527)] = 27481, + [SMALL_STATE(528)] = 27505, + [SMALL_STATE(529)] = 27529, + [SMALL_STATE(530)] = 27553, + [SMALL_STATE(531)] = 27584, + [SMALL_STATE(532)] = 27609, + [SMALL_STATE(533)] = 27634, + [SMALL_STATE(534)] = 27656, + [SMALL_STATE(535)] = 27688, + [SMALL_STATE(536)] = 27710, + [SMALL_STATE(537)] = 27734, + [SMALL_STATE(538)] = 27766, + [SMALL_STATE(539)] = 27788, + [SMALL_STATE(540)] = 27810, + [SMALL_STATE(541)] = 27838, + [SMALL_STATE(542)] = 27860, + [SMALL_STATE(543)] = 27882, + [SMALL_STATE(544)] = 27909, + [SMALL_STATE(545)] = 27930, + [SMALL_STATE(546)] = 27951, + [SMALL_STATE(547)] = 27978, + [SMALL_STATE(548)] = 28012, + [SMALL_STATE(549)] = 28046, + [SMALL_STATE(550)] = 28080, + [SMALL_STATE(551)] = 28114, + [SMALL_STATE(552)] = 28148, + [SMALL_STATE(553)] = 28182, + [SMALL_STATE(554)] = 28216, + [SMALL_STATE(555)] = 28250, + [SMALL_STATE(556)] = 28269, + [SMALL_STATE(557)] = 28288, + [SMALL_STATE(558)] = 28319, + [SMALL_STATE(559)] = 28338, + [SMALL_STATE(560)] = 28359, + [SMALL_STATE(561)] = 28378, + [SMALL_STATE(562)] = 28397, + [SMALL_STATE(563)] = 28426, + [SMALL_STATE(564)] = 28457, + [SMALL_STATE(565)] = 28476, + [SMALL_STATE(566)] = 28495, + [SMALL_STATE(567)] = 28526, + [SMALL_STATE(568)] = 28557, + [SMALL_STATE(569)] = 28588, + [SMALL_STATE(570)] = 28619, + [SMALL_STATE(571)] = 28638, + [SMALL_STATE(572)] = 28657, + [SMALL_STATE(573)] = 28676, + [SMALL_STATE(574)] = 28695, + [SMALL_STATE(575)] = 28726, + [SMALL_STATE(576)] = 28757, + [SMALL_STATE(577)] = 28788, + [SMALL_STATE(578)] = 28804, + [SMALL_STATE(579)] = 28820, + [SMALL_STATE(580)] = 28836, + [SMALL_STATE(581)] = 28852, + [SMALL_STATE(582)] = 28868, + [SMALL_STATE(583)] = 28888, + [SMALL_STATE(584)] = 28904, + [SMALL_STATE(585)] = 28920, + [SMALL_STATE(586)] = 28936, + [SMALL_STATE(587)] = 28952, + [SMALL_STATE(588)] = 28968, + [SMALL_STATE(589)] = 28984, + [SMALL_STATE(590)] = 29000, + [SMALL_STATE(591)] = 29016, + [SMALL_STATE(592)] = 29032, + [SMALL_STATE(593)] = 29048, + [SMALL_STATE(594)] = 29064, + [SMALL_STATE(595)] = 29080, + [SMALL_STATE(596)] = 29095, + [SMALL_STATE(597)] = 29110, + [SMALL_STATE(598)] = 29132, + [SMALL_STATE(599)] = 29150, + [SMALL_STATE(600)] = 29168, + [SMALL_STATE(601)] = 29184, + [SMALL_STATE(602)] = 29202, + [SMALL_STATE(603)] = 29224, + [SMALL_STATE(604)] = 29249, + [SMALL_STATE(605)] = 29274, + [SMALL_STATE(606)] = 29299, + [SMALL_STATE(607)] = 29324, + [SMALL_STATE(608)] = 29337, + [SMALL_STATE(609)] = 29362, + [SMALL_STATE(610)] = 29387, + [SMALL_STATE(611)] = 29412, + [SMALL_STATE(612)] = 29437, + [SMALL_STATE(613)] = 29450, + [SMALL_STATE(614)] = 29475, + [SMALL_STATE(615)] = 29500, + [SMALL_STATE(616)] = 29525, + [SMALL_STATE(617)] = 29550, + [SMALL_STATE(618)] = 29563, + [SMALL_STATE(619)] = 29588, + [SMALL_STATE(620)] = 29601, + [SMALL_STATE(621)] = 29626, + [SMALL_STATE(622)] = 29651, + [SMALL_STATE(623)] = 29676, + [SMALL_STATE(624)] = 29701, + [SMALL_STATE(625)] = 29726, + [SMALL_STATE(626)] = 29751, + [SMALL_STATE(627)] = 29764, + [SMALL_STATE(628)] = 29777, + [SMALL_STATE(629)] = 29802, + [SMALL_STATE(630)] = 29815, + [SMALL_STATE(631)] = 29840, + [SMALL_STATE(632)] = 29853, + [SMALL_STATE(633)] = 29866, + [SMALL_STATE(634)] = 29879, + [SMALL_STATE(635)] = 29892, + [SMALL_STATE(636)] = 29917, + [SMALL_STATE(637)] = 29942, + [SMALL_STATE(638)] = 29967, + [SMALL_STATE(639)] = 29992, + [SMALL_STATE(640)] = 30017, + [SMALL_STATE(641)] = 30042, + [SMALL_STATE(642)] = 30061, + [SMALL_STATE(643)] = 30086, + [SMALL_STATE(644)] = 30111, + [SMALL_STATE(645)] = 30136, + [SMALL_STATE(646)] = 30161, + [SMALL_STATE(647)] = 30186, + [SMALL_STATE(648)] = 30199, + [SMALL_STATE(649)] = 30212, + [SMALL_STATE(650)] = 30237, + [SMALL_STATE(651)] = 30250, + [SMALL_STATE(652)] = 30275, + [SMALL_STATE(653)] = 30300, + [SMALL_STATE(654)] = 30325, + [SMALL_STATE(655)] = 30350, + [SMALL_STATE(656)] = 30375, + [SMALL_STATE(657)] = 30388, + [SMALL_STATE(658)] = 30413, + [SMALL_STATE(659)] = 30438, + [SMALL_STATE(660)] = 30463, + [SMALL_STATE(661)] = 30488, + [SMALL_STATE(662)] = 30513, + [SMALL_STATE(663)] = 30538, + [SMALL_STATE(664)] = 30563, + [SMALL_STATE(665)] = 30588, + [SMALL_STATE(666)] = 30613, + [SMALL_STATE(667)] = 30638, + [SMALL_STATE(668)] = 30651, + [SMALL_STATE(669)] = 30676, + [SMALL_STATE(670)] = 30689, + [SMALL_STATE(671)] = 30714, + [SMALL_STATE(672)] = 30736, + [SMALL_STATE(673)] = 30758, + [SMALL_STATE(674)] = 30780, + [SMALL_STATE(675)] = 30802, + [SMALL_STATE(676)] = 30824, + [SMALL_STATE(677)] = 30846, + [SMALL_STATE(678)] = 30868, + [SMALL_STATE(679)] = 30890, + [SMALL_STATE(680)] = 30912, + [SMALL_STATE(681)] = 30934, + [SMALL_STATE(682)] = 30956, + [SMALL_STATE(683)] = 30978, + [SMALL_STATE(684)] = 31000, + [SMALL_STATE(685)] = 31022, + [SMALL_STATE(686)] = 31044, + [SMALL_STATE(687)] = 31066, + [SMALL_STATE(688)] = 31088, + [SMALL_STATE(689)] = 31110, + [SMALL_STATE(690)] = 31132, + [SMALL_STATE(691)] = 31154, + [SMALL_STATE(692)] = 31176, + [SMALL_STATE(693)] = 31192, + [SMALL_STATE(694)] = 31212, + [SMALL_STATE(695)] = 31234, + [SMALL_STATE(696)] = 31256, + [SMALL_STATE(697)] = 31278, + [SMALL_STATE(698)] = 31300, + [SMALL_STATE(699)] = 31322, + [SMALL_STATE(700)] = 31344, + [SMALL_STATE(701)] = 31366, + [SMALL_STATE(702)] = 31388, + [SMALL_STATE(703)] = 31410, + [SMALL_STATE(704)] = 31432, + [SMALL_STATE(705)] = 31454, + [SMALL_STATE(706)] = 31476, + [SMALL_STATE(707)] = 31498, + [SMALL_STATE(708)] = 31520, + [SMALL_STATE(709)] = 31542, + [SMALL_STATE(710)] = 31564, + [SMALL_STATE(711)] = 31586, + [SMALL_STATE(712)] = 31608, + [SMALL_STATE(713)] = 31630, + [SMALL_STATE(714)] = 31652, + [SMALL_STATE(715)] = 31674, + [SMALL_STATE(716)] = 31696, + [SMALL_STATE(717)] = 31718, + [SMALL_STATE(718)] = 31740, + [SMALL_STATE(719)] = 31762, + [SMALL_STATE(720)] = 31784, + [SMALL_STATE(721)] = 31806, + [SMALL_STATE(722)] = 31828, + [SMALL_STATE(723)] = 31850, + [SMALL_STATE(724)] = 31872, + [SMALL_STATE(725)] = 31894, + [SMALL_STATE(726)] = 31916, + [SMALL_STATE(727)] = 31938, + [SMALL_STATE(728)] = 31960, + [SMALL_STATE(729)] = 31982, + [SMALL_STATE(730)] = 32004, + [SMALL_STATE(731)] = 32026, + [SMALL_STATE(732)] = 32048, + [SMALL_STATE(733)] = 32070, + [SMALL_STATE(734)] = 32092, + [SMALL_STATE(735)] = 32114, + [SMALL_STATE(736)] = 32136, + [SMALL_STATE(737)] = 32158, + [SMALL_STATE(738)] = 32180, + [SMALL_STATE(739)] = 32202, + [SMALL_STATE(740)] = 32224, + [SMALL_STATE(741)] = 32246, + [SMALL_STATE(742)] = 32268, + [SMALL_STATE(743)] = 32290, + [SMALL_STATE(744)] = 32312, + [SMALL_STATE(745)] = 32334, + [SMALL_STATE(746)] = 32356, + [SMALL_STATE(747)] = 32378, + [SMALL_STATE(748)] = 32400, + [SMALL_STATE(749)] = 32422, + [SMALL_STATE(750)] = 32444, + [SMALL_STATE(751)] = 32466, + [SMALL_STATE(752)] = 32488, + [SMALL_STATE(753)] = 32510, + [SMALL_STATE(754)] = 32532, + [SMALL_STATE(755)] = 32554, + [SMALL_STATE(756)] = 32576, + [SMALL_STATE(757)] = 32598, + [SMALL_STATE(758)] = 32620, + [SMALL_STATE(759)] = 32642, + [SMALL_STATE(760)] = 32664, + [SMALL_STATE(761)] = 32680, + [SMALL_STATE(762)] = 32702, + [SMALL_STATE(763)] = 32724, + [SMALL_STATE(764)] = 32746, + [SMALL_STATE(765)] = 32768, + [SMALL_STATE(766)] = 32790, + [SMALL_STATE(767)] = 32812, + [SMALL_STATE(768)] = 32834, + [SMALL_STATE(769)] = 32856, + [SMALL_STATE(770)] = 32878, + [SMALL_STATE(771)] = 32894, + [SMALL_STATE(772)] = 32916, + [SMALL_STATE(773)] = 32938, + [SMALL_STATE(774)] = 32952, + [SMALL_STATE(775)] = 32974, + [SMALL_STATE(776)] = 32996, + [SMALL_STATE(777)] = 33018, + [SMALL_STATE(778)] = 33040, + [SMALL_STATE(779)] = 33062, + [SMALL_STATE(780)] = 33081, + [SMALL_STATE(781)] = 33100, + [SMALL_STATE(782)] = 33119, + [SMALL_STATE(783)] = 33138, + [SMALL_STATE(784)] = 33157, + [SMALL_STATE(785)] = 33172, + [SMALL_STATE(786)] = 33191, + [SMALL_STATE(787)] = 33210, + [SMALL_STATE(788)] = 33221, + [SMALL_STATE(789)] = 33240, + [SMALL_STATE(790)] = 33259, + [SMALL_STATE(791)] = 33278, + [SMALL_STATE(792)] = 33297, + [SMALL_STATE(793)] = 33316, + [SMALL_STATE(794)] = 33329, + [SMALL_STATE(795)] = 33348, + [SMALL_STATE(796)] = 33361, + [SMALL_STATE(797)] = 33380, + [SMALL_STATE(798)] = 33399, + [SMALL_STATE(799)] = 33418, + [SMALL_STATE(800)] = 33437, + [SMALL_STATE(801)] = 33448, + [SMALL_STATE(802)] = 33467, + [SMALL_STATE(803)] = 33482, + [SMALL_STATE(804)] = 33501, + [SMALL_STATE(805)] = 33520, + [SMALL_STATE(806)] = 33539, + [SMALL_STATE(807)] = 33558, + [SMALL_STATE(808)] = 33577, + [SMALL_STATE(809)] = 33596, + [SMALL_STATE(810)] = 33615, + [SMALL_STATE(811)] = 33634, + [SMALL_STATE(812)] = 33653, + [SMALL_STATE(813)] = 33672, + [SMALL_STATE(814)] = 33691, + [SMALL_STATE(815)] = 33710, + [SMALL_STATE(816)] = 33729, + [SMALL_STATE(817)] = 33748, + [SMALL_STATE(818)] = 33767, + [SMALL_STATE(819)] = 33780, + [SMALL_STATE(820)] = 33799, + [SMALL_STATE(821)] = 33809, + [SMALL_STATE(822)] = 33825, + [SMALL_STATE(823)] = 33841, + [SMALL_STATE(824)] = 33857, + [SMALL_STATE(825)] = 33867, + [SMALL_STATE(826)] = 33883, + [SMALL_STATE(827)] = 33899, + [SMALL_STATE(828)] = 33915, + [SMALL_STATE(829)] = 33931, + [SMALL_STATE(830)] = 33947, + [SMALL_STATE(831)] = 33963, + [SMALL_STATE(832)] = 33979, + [SMALL_STATE(833)] = 33995, + [SMALL_STATE(834)] = 34011, + [SMALL_STATE(835)] = 34027, + [SMALL_STATE(836)] = 34043, + [SMALL_STATE(837)] = 34059, + [SMALL_STATE(838)] = 34075, + [SMALL_STATE(839)] = 34091, + [SMALL_STATE(840)] = 34107, + [SMALL_STATE(841)] = 34123, + [SMALL_STATE(842)] = 34139, + [SMALL_STATE(843)] = 34155, + [SMALL_STATE(844)] = 34167, + [SMALL_STATE(845)] = 34183, + [SMALL_STATE(846)] = 34199, + [SMALL_STATE(847)] = 34213, + [SMALL_STATE(848)] = 34229, + [SMALL_STATE(849)] = 34245, + [SMALL_STATE(850)] = 34261, + [SMALL_STATE(851)] = 34277, + [SMALL_STATE(852)] = 34293, + [SMALL_STATE(853)] = 34307, + [SMALL_STATE(854)] = 34323, + [SMALL_STATE(855)] = 34339, + [SMALL_STATE(856)] = 34355, + [SMALL_STATE(857)] = 34369, + [SMALL_STATE(858)] = 34381, + [SMALL_STATE(859)] = 34397, + [SMALL_STATE(860)] = 34413, + [SMALL_STATE(861)] = 34425, + [SMALL_STATE(862)] = 34441, + [SMALL_STATE(863)] = 34457, + [SMALL_STATE(864)] = 34469, + [SMALL_STATE(865)] = 34485, + [SMALL_STATE(866)] = 34501, + [SMALL_STATE(867)] = 34517, + [SMALL_STATE(868)] = 34533, + [SMALL_STATE(869)] = 34549, + [SMALL_STATE(870)] = 34561, + [SMALL_STATE(871)] = 34577, + [SMALL_STATE(872)] = 34591, + [SMALL_STATE(873)] = 34607, + [SMALL_STATE(874)] = 34623, + [SMALL_STATE(875)] = 34639, + [SMALL_STATE(876)] = 34655, + [SMALL_STATE(877)] = 34671, + [SMALL_STATE(878)] = 34687, + [SMALL_STATE(879)] = 34703, + [SMALL_STATE(880)] = 34719, + [SMALL_STATE(881)] = 34735, + [SMALL_STATE(882)] = 34751, + [SMALL_STATE(883)] = 34767, + [SMALL_STATE(884)] = 34783, + [SMALL_STATE(885)] = 34797, + [SMALL_STATE(886)] = 34809, + [SMALL_STATE(887)] = 34825, + [SMALL_STATE(888)] = 34841, + [SMALL_STATE(889)] = 34857, + [SMALL_STATE(890)] = 34873, + [SMALL_STATE(891)] = 34889, + [SMALL_STATE(892)] = 34905, + [SMALL_STATE(893)] = 34921, + [SMALL_STATE(894)] = 34935, + [SMALL_STATE(895)] = 34951, + [SMALL_STATE(896)] = 34967, + [SMALL_STATE(897)] = 34983, + [SMALL_STATE(898)] = 34999, + [SMALL_STATE(899)] = 35015, + [SMALL_STATE(900)] = 35031, + [SMALL_STATE(901)] = 35044, + [SMALL_STATE(902)] = 35057, + [SMALL_STATE(903)] = 35070, + [SMALL_STATE(904)] = 35083, + [SMALL_STATE(905)] = 35092, + [SMALL_STATE(906)] = 35101, + [SMALL_STATE(907)] = 35114, + [SMALL_STATE(908)] = 35127, + [SMALL_STATE(909)] = 35140, + [SMALL_STATE(910)] = 35149, + [SMALL_STATE(911)] = 35158, + [SMALL_STATE(912)] = 35167, + [SMALL_STATE(913)] = 35176, + [SMALL_STATE(914)] = 35185, + [SMALL_STATE(915)] = 35194, + [SMALL_STATE(916)] = 35207, + [SMALL_STATE(917)] = 35220, + [SMALL_STATE(918)] = 35229, + [SMALL_STATE(919)] = 35242, + [SMALL_STATE(920)] = 35255, + [SMALL_STATE(921)] = 35268, + [SMALL_STATE(922)] = 35281, + [SMALL_STATE(923)] = 35290, + [SMALL_STATE(924)] = 35303, + [SMALL_STATE(925)] = 35316, + [SMALL_STATE(926)] = 35329, + [SMALL_STATE(927)] = 35338, + [SMALL_STATE(928)] = 35347, + [SMALL_STATE(929)] = 35356, + [SMALL_STATE(930)] = 35369, + [SMALL_STATE(931)] = 35378, + [SMALL_STATE(932)] = 35387, + [SMALL_STATE(933)] = 35396, + [SMALL_STATE(934)] = 35409, + [SMALL_STATE(935)] = 35418, + [SMALL_STATE(936)] = 35427, + [SMALL_STATE(937)] = 35440, + [SMALL_STATE(938)] = 35449, + [SMALL_STATE(939)] = 35458, + [SMALL_STATE(940)] = 35471, + [SMALL_STATE(941)] = 35480, + [SMALL_STATE(942)] = 35489, + [SMALL_STATE(943)] = 35502, + [SMALL_STATE(944)] = 35515, + [SMALL_STATE(945)] = 35524, + [SMALL_STATE(946)] = 35537, + [SMALL_STATE(947)] = 35550, + [SMALL_STATE(948)] = 35563, + [SMALL_STATE(949)] = 35572, + [SMALL_STATE(950)] = 35581, + [SMALL_STATE(951)] = 35594, + [SMALL_STATE(952)] = 35603, + [SMALL_STATE(953)] = 35616, + [SMALL_STATE(954)] = 35629, + [SMALL_STATE(955)] = 35642, + [SMALL_STATE(956)] = 35651, + [SMALL_STATE(957)] = 35664, + [SMALL_STATE(958)] = 35677, + [SMALL_STATE(959)] = 35690, + [SMALL_STATE(960)] = 35699, + [SMALL_STATE(961)] = 35712, + [SMALL_STATE(962)] = 35725, + [SMALL_STATE(963)] = 35738, + [SMALL_STATE(964)] = 35751, + [SMALL_STATE(965)] = 35760, + [SMALL_STATE(966)] = 35769, + [SMALL_STATE(967)] = 35782, + [SMALL_STATE(968)] = 35795, + [SMALL_STATE(969)] = 35804, + [SMALL_STATE(970)] = 35817, + [SMALL_STATE(971)] = 35826, + [SMALL_STATE(972)] = 35835, + [SMALL_STATE(973)] = 35844, + [SMALL_STATE(974)] = 35855, + [SMALL_STATE(975)] = 35864, + [SMALL_STATE(976)] = 35877, + [SMALL_STATE(977)] = 35890, + [SMALL_STATE(978)] = 35899, + [SMALL_STATE(979)] = 35912, + [SMALL_STATE(980)] = 35925, + [SMALL_STATE(981)] = 35934, + [SMALL_STATE(982)] = 35947, + [SMALL_STATE(983)] = 35960, + [SMALL_STATE(984)] = 35969, + [SMALL_STATE(985)] = 35982, + [SMALL_STATE(986)] = 35995, + [SMALL_STATE(987)] = 36004, + [SMALL_STATE(988)] = 36017, + [SMALL_STATE(989)] = 36030, + [SMALL_STATE(990)] = 36043, + [SMALL_STATE(991)] = 36052, + [SMALL_STATE(992)] = 36061, + [SMALL_STATE(993)] = 36074, + [SMALL_STATE(994)] = 36083, + [SMALL_STATE(995)] = 36096, + [SMALL_STATE(996)] = 36109, + [SMALL_STATE(997)] = 36118, + [SMALL_STATE(998)] = 36131, + [SMALL_STATE(999)] = 36144, + [SMALL_STATE(1000)] = 36153, + [SMALL_STATE(1001)] = 36166, + [SMALL_STATE(1002)] = 36179, + [SMALL_STATE(1003)] = 36192, + [SMALL_STATE(1004)] = 36205, + [SMALL_STATE(1005)] = 36218, + [SMALL_STATE(1006)] = 36231, + [SMALL_STATE(1007)] = 36244, + [SMALL_STATE(1008)] = 36257, + [SMALL_STATE(1009)] = 36270, + [SMALL_STATE(1010)] = 36283, + [SMALL_STATE(1011)] = 36296, + [SMALL_STATE(1012)] = 36309, + [SMALL_STATE(1013)] = 36318, + [SMALL_STATE(1014)] = 36327, + [SMALL_STATE(1015)] = 36336, + [SMALL_STATE(1016)] = 36347, + [SMALL_STATE(1017)] = 36360, + [SMALL_STATE(1018)] = 36373, + [SMALL_STATE(1019)] = 36386, + [SMALL_STATE(1020)] = 36399, + [SMALL_STATE(1021)] = 36412, + [SMALL_STATE(1022)] = 36425, + [SMALL_STATE(1023)] = 36438, + [SMALL_STATE(1024)] = 36451, + [SMALL_STATE(1025)] = 36464, + [SMALL_STATE(1026)] = 36477, + [SMALL_STATE(1027)] = 36490, + [SMALL_STATE(1028)] = 36503, + [SMALL_STATE(1029)] = 36516, + [SMALL_STATE(1030)] = 36525, + [SMALL_STATE(1031)] = 36538, + [SMALL_STATE(1032)] = 36551, + [SMALL_STATE(1033)] = 36560, + [SMALL_STATE(1034)] = 36573, + [SMALL_STATE(1035)] = 36586, + [SMALL_STATE(1036)] = 36599, + [SMALL_STATE(1037)] = 36612, + [SMALL_STATE(1038)] = 36625, + [SMALL_STATE(1039)] = 36634, + [SMALL_STATE(1040)] = 36647, + [SMALL_STATE(1041)] = 36660, + [SMALL_STATE(1042)] = 36669, + [SMALL_STATE(1043)] = 36678, + [SMALL_STATE(1044)] = 36691, + [SMALL_STATE(1045)] = 36704, + [SMALL_STATE(1046)] = 36717, + [SMALL_STATE(1047)] = 36726, + [SMALL_STATE(1048)] = 36735, + [SMALL_STATE(1049)] = 36744, + [SMALL_STATE(1050)] = 36757, + [SMALL_STATE(1051)] = 36766, + [SMALL_STATE(1052)] = 36779, + [SMALL_STATE(1053)] = 36792, + [SMALL_STATE(1054)] = 36805, + [SMALL_STATE(1055)] = 36818, + [SMALL_STATE(1056)] = 36831, + [SMALL_STATE(1057)] = 36840, + [SMALL_STATE(1058)] = 36853, + [SMALL_STATE(1059)] = 36866, + [SMALL_STATE(1060)] = 36875, + [SMALL_STATE(1061)] = 36888, + [SMALL_STATE(1062)] = 36901, + [SMALL_STATE(1063)] = 36914, + [SMALL_STATE(1064)] = 36927, + [SMALL_STATE(1065)] = 36936, + [SMALL_STATE(1066)] = 36949, + [SMALL_STATE(1067)] = 36958, + [SMALL_STATE(1068)] = 36967, + [SMALL_STATE(1069)] = 36976, + [SMALL_STATE(1070)] = 36985, + [SMALL_STATE(1071)] = 36998, + [SMALL_STATE(1072)] = 37011, + [SMALL_STATE(1073)] = 37024, + [SMALL_STATE(1074)] = 37033, + [SMALL_STATE(1075)] = 37046, + [SMALL_STATE(1076)] = 37059, + [SMALL_STATE(1077)] = 37072, + [SMALL_STATE(1078)] = 37085, + [SMALL_STATE(1079)] = 37098, + [SMALL_STATE(1080)] = 37107, + [SMALL_STATE(1081)] = 37118, + [SMALL_STATE(1082)] = 37131, + [SMALL_STATE(1083)] = 37144, + [SMALL_STATE(1084)] = 37157, + [SMALL_STATE(1085)] = 37167, + [SMALL_STATE(1086)] = 37177, + [SMALL_STATE(1087)] = 37185, + [SMALL_STATE(1088)] = 37195, + [SMALL_STATE(1089)] = 37205, + [SMALL_STATE(1090)] = 37215, + [SMALL_STATE(1091)] = 37223, + [SMALL_STATE(1092)] = 37233, + [SMALL_STATE(1093)] = 37243, + [SMALL_STATE(1094)] = 37251, + [SMALL_STATE(1095)] = 37259, + [SMALL_STATE(1096)] = 37269, + [SMALL_STATE(1097)] = 37277, + [SMALL_STATE(1098)] = 37287, + [SMALL_STATE(1099)] = 37297, + [SMALL_STATE(1100)] = 37307, + [SMALL_STATE(1101)] = 37315, + [SMALL_STATE(1102)] = 37325, + [SMALL_STATE(1103)] = 37335, + [SMALL_STATE(1104)] = 37343, + [SMALL_STATE(1105)] = 37351, + [SMALL_STATE(1106)] = 37361, + [SMALL_STATE(1107)] = 37371, + [SMALL_STATE(1108)] = 37381, + [SMALL_STATE(1109)] = 37391, + [SMALL_STATE(1110)] = 37401, + [SMALL_STATE(1111)] = 37409, + [SMALL_STATE(1112)] = 37419, + [SMALL_STATE(1113)] = 37426, + [SMALL_STATE(1114)] = 37433, + [SMALL_STATE(1115)] = 37440, + [SMALL_STATE(1116)] = 37447, + [SMALL_STATE(1117)] = 37454, + [SMALL_STATE(1118)] = 37461, + [SMALL_STATE(1119)] = 37468, + [SMALL_STATE(1120)] = 37475, + [SMALL_STATE(1121)] = 37482, + [SMALL_STATE(1122)] = 37489, + [SMALL_STATE(1123)] = 37496, + [SMALL_STATE(1124)] = 37503, + [SMALL_STATE(1125)] = 37510, + [SMALL_STATE(1126)] = 37517, + [SMALL_STATE(1127)] = 37524, + [SMALL_STATE(1128)] = 37531, + [SMALL_STATE(1129)] = 37538, + [SMALL_STATE(1130)] = 37545, + [SMALL_STATE(1131)] = 37552, + [SMALL_STATE(1132)] = 37559, + [SMALL_STATE(1133)] = 37566, + [SMALL_STATE(1134)] = 37573, + [SMALL_STATE(1135)] = 37580, + [SMALL_STATE(1136)] = 37587, + [SMALL_STATE(1137)] = 37594, + [SMALL_STATE(1138)] = 37601, + [SMALL_STATE(1139)] = 37608, + [SMALL_STATE(1140)] = 37615, + [SMALL_STATE(1141)] = 37622, + [SMALL_STATE(1142)] = 37629, + [SMALL_STATE(1143)] = 37636, + [SMALL_STATE(1144)] = 37643, + [SMALL_STATE(1145)] = 37650, + [SMALL_STATE(1146)] = 37657, + [SMALL_STATE(1147)] = 37664, + [SMALL_STATE(1148)] = 37671, + [SMALL_STATE(1149)] = 37678, + [SMALL_STATE(1150)] = 37685, + [SMALL_STATE(1151)] = 37692, + [SMALL_STATE(1152)] = 37699, + [SMALL_STATE(1153)] = 37706, + [SMALL_STATE(1154)] = 37713, + [SMALL_STATE(1155)] = 37720, +}; + +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_source_file, 0, 0, 0), + [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(248), + [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(691), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1137), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(338), + [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(827), + [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(844), + [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(562), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(82), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(43), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(559), + [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(141), + [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(145), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(853), + [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(597), + [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339), + [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(338), + [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(232), + [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(209), + [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(210), + [51] = {.entry = {.count = 1, .reusable = false}}, SHIFT(227), + [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), + [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), + [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(237), + [61] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [63] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [65] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(788), + [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(537), + [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1129), + [75] = {.entry = {.count = 1, .reusable = false}}, SHIFT(501), + [77] = {.entry = {.count = 1, .reusable = false}}, SHIFT(78), + [79] = {.entry = {.count = 1, .reusable = false}}, SHIFT(36), + [81] = {.entry = {.count = 1, .reusable = false}}, SHIFT(632), + [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [85] = {.entry = {.count = 1, .reusable = false}}, SHIFT(272), + [87] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), + [89] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [91] = {.entry = {.count = 1, .reusable = false}}, SHIFT(240), + [93] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [95] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), + [97] = {.entry = {.count = 1, .reusable = false}}, SHIFT(34), + [99] = {.entry = {.count = 1, .reusable = false}}, SHIFT(33), + [101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), + [105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), + [107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), + [109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), + [111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), + [113] = {.entry = {.count = 1, .reusable = false}}, SHIFT(239), + [115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(534), + [125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), + [127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [133] = {.entry = {.count = 1, .reusable = false}}, SHIFT(198), + [135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), + [137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), + [143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [145] = {.entry = {.count = 1, .reusable = false}}, SHIFT(241), + [147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [151] = {.entry = {.count = 1, .reusable = false}}, SHIFT(238), + [153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), + [155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), + [159] = {.entry = {.count = 1, .reusable = false}}, SHIFT(182), + [161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [163] = {.entry = {.count = 1, .reusable = false}}, SHIFT(341), + [165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [169] = {.entry = {.count = 1, .reusable = false}}, SHIFT(133), + [171] = {.entry = {.count = 1, .reusable = false}}, SHIFT(112), + [173] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1058), + [175] = {.entry = {.count = 1, .reusable = false}}, SHIFT(250), + [177] = {.entry = {.count = 1, .reusable = false}}, SHIFT(340), + [179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(151), + [185] = {.entry = {.count = 1, .reusable = false}}, SHIFT(130), + [187] = {.entry = {.count = 1, .reusable = false}}, SHIFT(441), + [189] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_collection_literal, 2, 0, 0), + [191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(343), + [193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_collection_literal, 2, 0, 0), + [195] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_collection_literal, 2, 0, 0), SHIFT(337), + [198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), + [200] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_collection_literal, 2, 0, 0), SHIFT(1135), + [203] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_collection_literal, 2, 0, 0), SHIFT(582), + [206] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_array_pattern, 2, 0, 0), REDUCE(sym_collection_literal, 2, 0, 0), + [209] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_array_pattern, 2, 0, 0), REDUCE(sym_collection_literal, 2, 0, 0), + [212] = {.entry = {.count = 1, .reusable = false}}, SHIFT(243), + [214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266), + [220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(831), + [224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), + [226] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_collection_literal, 2, 0, 0), SHIFT(343), + [229] = {.entry = {.count = 1, .reusable = false}}, SHIFT(249), + [231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), + [233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), + [237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, 0, 0), + [239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), + [241] = {.entry = {.count = 1, .reusable = false}}, SHIFT(234), + [243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_expression, 1, 0, 0), + [245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1130), + [247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_expression, 1, 0, 0), + [249] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_expression, 2, 0, 0), + [251] = {.entry = {.count = 1, .reusable = false}}, SHIFT(242), + [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(522), + [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), + [259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), + [267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1155), + [271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(517), + [273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), + [275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), + [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), + [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(452), + [283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(436), + [285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), + [289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(445), + [293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), + [295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(489), + [297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(454), + [301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518), + [305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(460), + [307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), + [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), + [311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(498), + [315] = {.entry = {.count = 1, .reusable = false}}, SHIFT(236), + [317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), + [319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [321] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sum_constructor, 4, 0, 0), + [323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(785), + [325] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_sum_pattern, 4, 0, 24), REDUCE(sym_sum_constructor, 4, 0, 0), + [328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sum_constructor, 4, 0, 0), + [330] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_sum_constructor, 4, 0, 0), SHIFT(371), + [333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), + [335] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_sum_constructor, 4, 0, 0), SHIFT(849), + [338] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_sum_pattern, 4, 0, 24), REDUCE(sym_sum_constructor, 4, 0, 0), + [341] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_sum_constructor, 4, 0, 0), SHIFT(1015), + [344] = {.entry = {.count = 1, .reusable = false}}, SHIFT(593), + [346] = {.entry = {.count = 1, .reusable = false}}, SHIFT(581), + [348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(581), + [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(632), + [352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), + [354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), + [356] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sum_constructor, 3, 0, 0), + [358] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_sum_pattern, 3, 0, 16), REDUCE(sym_sum_constructor, 3, 0, 0), + [361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sum_constructor, 3, 0, 0), + [363] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_sum_constructor, 3, 0, 0), SHIFT(371), + [366] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_sum_constructor, 3, 0, 0), SHIFT(849), + [369] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_sum_pattern, 3, 0, 16), REDUCE(sym_sum_constructor, 3, 0, 0), + [372] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_sum_constructor, 3, 0, 0), SHIFT(1015), + [375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), + [377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531), + [379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(532), + [383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(466), + [385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), + [391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), + [393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), + [397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), + [399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), + [403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), + [407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), + [409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), + [411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(455), + [415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), + [419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(462), + [421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427), + [429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), + [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [437] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_field, 4, 0, 9), + [439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(415), + [441] = {.entry = {.count = 1, .reusable = false}}, SHIFT(251), + [443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), + [447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), + [449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), + [455] = {.entry = {.count = 1, .reusable = false}}, SHIFT(278), + [457] = {.entry = {.count = 1, .reusable = false}}, SHIFT(245), + [459] = {.entry = {.count = 1, .reusable = false}}, SHIFT(941), + [461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [465] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2, 0, 0), + [467] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2, 0, 0), + [469] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_pattern, 2, 0, 0), + [471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 3, 0, 0), + [473] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 3, 0, 0), + [475] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_pattern, 3, 0, 0), + [477] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_postfix_expression, 2, 0, 5), + [479] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1147), + [481] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_postfix_expression, 2, 0, 5), + [483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152), + [487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__prefix_expression, 1, 0, 0), + [489] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__prefix_expression, 1, 0, 0), + [491] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 6, 0, 0), + [493] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 6, 0, 0), + [495] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 5, 0, 0), + [497] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 5, 0, 0), + [499] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 4, 0, 0), + [501] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 4, 0, 0), + [503] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), REDUCE(sym_type_name, 1, 0, 0), + [506] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 0), SHIFT(1150), + [509] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 0), + [511] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_name, 1, 0, 0), + [513] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), + [515] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 0), REDUCE(sym_type_name, 1, 0, 0), + [518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_postfix_expression_repeat1, 2, 0, 14), + [520] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_postfix_expression_repeat1, 2, 0, 14), SHIFT_REPEAT(1147), + [523] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_postfix_expression_repeat1, 2, 0, 14), + [525] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_postfix_expression_repeat1, 2, 0, 14), SHIFT_REPEAT(199), + [528] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_postfix_expression_repeat1, 2, 0, 14), SHIFT_REPEAT(152), + [531] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 3, 0, 7), + [533] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_expression, 3, 0, 7), + [535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(852), + [537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_value, 6, 0, 0), + [539] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_value, 6, 0, 0), + [541] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_expression, 4, 0, 18), + [543] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_expression, 4, 0, 18), + [545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_constructor, 4, 0, 0), + [547] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_constructor, 4, 0, 0), + [549] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_unit_type, 2, 0, 0), REDUCE(sym_unit_literal, 2, 0, 0), + [552] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unit_literal, 2, 0, 0), + [554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unit_type, 2, 0, 0), + [556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unit_literal, 2, 0, 0), + [558] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_unit_type, 2, 0, 0), REDUCE(sym_unit_literal, 2, 0, 0), + [561] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_postfix_expression_repeat1, 3, 0, 22), + [563] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_postfix_expression_repeat1, 3, 0, 22), + [565] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_collection_literal, 5, 0, 0), + [567] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_collection_literal, 5, 0, 0), + [569] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_value, 5, 0, 0), + [571] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_value, 5, 0, 0), + [573] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_constructor, 5, 0, 0), + [575] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_constructor, 5, 0, 0), + [577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_constructor, 5, 0, 0), + [579] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bits_constructor, 5, 0, 0), + [581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 5, 0, 26), + [583] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_expression, 5, 0, 26), + [585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_expression, 5, 0, 18), + [587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_expression, 5, 0, 18), + [589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_expression, 5, 0, 27), + [591] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_expression, 5, 0, 27), + [593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1122), + [595] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_pattern_field, 1, 0, 0), + [597] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym_product_pattern_field, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 0), REDUCE(sym_type_name, 1, 0, 0), + [601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), + [605] = {.entry = {.count = 1, .reusable = false}}, SHIFT(348), + [607] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_product_pattern_field, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 0), + [610] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_postfix_expression_repeat1, 1, 0, 4), + [612] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_postfix_expression_repeat1, 1, 0, 4), + [614] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_collection_literal, 6, 0, 0), + [616] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_collection_literal, 6, 0, 0), + [618] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_constructor, 6, 0, 0), + [620] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_constructor, 6, 0, 0), + [622] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_constructor, 6, 0, 0), + [624] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bits_constructor, 6, 0, 0), + [626] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_expression, 6, 0, 18), + [628] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_expression, 6, 0, 18), + [630] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_expression, 6, 0, 34), + [632] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_expression, 6, 0, 34), + [634] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_constructor, 4, 0, 0), + [636] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bits_constructor, 4, 0, 0), + [638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_collection_literal, 7, 0, 0), + [640] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_collection_literal, 7, 0, 0), + [642] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_value, 7, 0, 0), + [644] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_value, 7, 0, 0), + [646] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal, 1, 0, 0), + [648] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_literal, 1, 0, 0), + [650] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_collection_literal, 3, 0, 0), + [652] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_collection_literal, 3, 0, 0), + [654] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_constructor, 7, 0, 0), + [656] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_constructor, 7, 0, 0), + [658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_constructor, 7, 0, 0), + [660] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bits_constructor, 7, 0, 0), + [662] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_expression, 7, 0, 18), + [664] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_expression, 7, 0, 18), + [666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_value, 8, 0, 0), + [668] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_value, 8, 0, 0), + [670] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_constructor, 8, 0, 0), + [672] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_constructor, 8, 0, 0), + [674] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_constructor, 8, 0, 0), + [676] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bits_constructor, 8, 0, 0), + [678] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_expression, 8, 0, 18), + [680] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_expression, 8, 0, 18), + [682] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_value, 9, 0, 0), + [684] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_value, 9, 0, 0), + [686] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_constructor, 9, 0, 0), + [688] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_constructor, 9, 0, 0), + [690] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_constructor, 9, 0, 0), + [692] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bits_constructor, 9, 0, 0), + [694] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_value, 10, 0, 0), + [696] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_value, 10, 0, 0), + [698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_constructor, 10, 0, 0), + [700] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bits_constructor, 10, 0, 0), + [702] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_expression, 3, 0, 0), + [704] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_expression, 3, 0, 0), + [706] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signed_numeric_literal, 1, 0, 0), + [708] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_signed_numeric_literal, 1, 0, 0), + [710] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_postfix_expression_repeat1, 2, 0, 13), + [712] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_postfix_expression_repeat1, 2, 0, 13), + [714] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_collection_literal, 4, 0, 0), + [716] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_collection_literal, 4, 0, 0), + [718] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_expression, 2, 0, 0), + [720] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_expression, 2, 0, 0), + [722] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_signed_numeric_literal, 1, 0, 0), REDUCE(sym_signed_numeric_literal, 2, 0, 0), + [725] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_signed_numeric_literal, 1, 0, 0), REDUCE(sym_signed_numeric_literal, 2, 0, 0), + [728] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_literal, 1, 0, 0), + [730] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_literal, 1, 0, 0), + [732] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__binary_expression, 1, 0, 0), + [734] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__binary_expression, 1, 0, 0), + [736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), + [738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), + [740] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), + [742] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), + [744] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(235), + [747] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_product_pattern_field, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 0), + [750] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern_atom, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 0), + [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [757] = {.entry = {.count = 1, .reusable = false}}, SHIFT(344), + [759] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym_pattern_atom, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 0), REDUCE(sym_type_name, 1, 0, 0), + [763] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_pattern_atom, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 0), + [766] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_pattern_atom, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 0), REDUCE(sym_type_name, 1, 0, 0), + [770] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, 0, 1), + [772] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, 0, 1), + [774] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), REDUCE(sym_array_pattern_entry, 2, 0, 0), + [777] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 0), REDUCE(sym_array_pattern_entry, 2, 0, 0), + [780] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_block, 2, 0, 0), REDUCE(sym_product_pattern, 2, 0, 0), + [783] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_block, 2, 0, 0), REDUCE(sym_product_pattern, 2, 0, 0), + [786] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_block, 3, 0, 0), REDUCE(sym_product_pattern, 3, 0, 0), + [789] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_block, 3, 0, 0), REDUCE(sym_product_pattern, 3, 0, 0), + [792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), + [796] = {.entry = {.count = 1, .reusable = false}}, SHIFT(353), + [798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), + [802] = {.entry = {.count = 1, .reusable = false}}, SHIFT(352), + [804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), + [806] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_bits_pattern, 4, 0, 0), REDUCE(sym_bits_constructor, 4, 0, 0), + [809] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_bits_pattern, 4, 0, 0), REDUCE(sym_bits_constructor, 4, 0, 0), + [812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), + [814] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_bits_pattern, 9, 0, 0), REDUCE(sym_bits_constructor, 9, 0, 0), + [817] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_bits_pattern, 9, 0, 0), REDUCE(sym_bits_constructor, 9, 0, 0), + [820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(317), + [822] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 4, 0, 21), + [824] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 4, 0, 21), + [826] = {.entry = {.count = 1, .reusable = false}}, SHIFT(252), + [828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), + [830] = {.entry = {.count = 1, .reusable = false}}, SHIFT(259), + [832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(324), + [834] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_bits_pattern, 10, 0, 0), REDUCE(sym_bits_constructor, 10, 0, 0), + [837] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_bits_pattern, 10, 0, 0), REDUCE(sym_bits_constructor, 10, 0, 0), + [840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), + [842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), + [844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), + [846] = {.entry = {.count = 1, .reusable = false}}, SHIFT(256), + [848] = {.entry = {.count = 1, .reusable = false}}, SHIFT(260), + [850] = {.entry = {.count = 1, .reusable = false}}, SHIFT(262), + [852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), + [854] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_bits_pattern, 5, 0, 0), REDUCE(sym_bits_constructor, 5, 0, 0), + [857] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_bits_pattern, 5, 0, 0), REDUCE(sym_bits_constructor, 5, 0, 0), + [860] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_unit_pattern, 2, 0, 0), REDUCE(sym_unit_literal, 2, 0, 0), + [863] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym_unit_type, 2, 0, 0), REDUCE(sym_unit_pattern, 2, 0, 0), REDUCE(sym_unit_literal, 2, 0, 0), + [867] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_unit_pattern, 2, 0, 0), REDUCE(sym_unit_literal, 2, 0, 0), + [870] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern_atom, 1, 0, 0), REDUCE(sym_literal, 1, 0, 0), + [873] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_pattern_atom, 1, 0, 0), REDUCE(sym_literal, 1, 0, 0), + [876] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, 0, 12), + [878] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, 0, 12), + [880] = {.entry = {.count = 1, .reusable = false}}, SHIFT(254), + [882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), + [884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), + [886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), + [888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), + [890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [894] = {.entry = {.count = 1, .reusable = false}}, SHIFT(346), + [896] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_bits_pattern, 8, 0, 0), REDUCE(sym_bits_constructor, 8, 0, 0), + [899] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_bits_pattern, 8, 0, 0), REDUCE(sym_bits_constructor, 8, 0, 0), + [902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), + [904] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_bits_pattern, 6, 0, 0), REDUCE(sym_bits_constructor, 6, 0, 0), + [907] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_bits_pattern, 6, 0, 0), REDUCE(sym_bits_constructor, 6, 0, 0), + [910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), + [912] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_array_pattern, 3, 0, 0), REDUCE(sym_collection_literal, 3, 0, 0), + [915] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_array_pattern, 3, 0, 0), REDUCE(sym_collection_literal, 3, 0, 0), + [918] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__non_assignment_expression, 1, 0, 0), + [920] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__non_assignment_expression, 1, 0, 0), + [922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), + [924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), + [926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [928] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_bits_pattern, 7, 0, 0), REDUCE(sym_bits_constructor, 7, 0, 0), + [931] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_bits_pattern, 7, 0, 0), REDUCE(sym_bits_constructor, 7, 0, 0), + [934] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_unit_type, 2, 0, 0), REDUCE(sym_unit_pattern, 2, 0, 0), REDUCE(sym_unit_literal, 2, 0, 0), + [938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), + [940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(524), + [942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1135), + [944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(582), + [946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), + [948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(509), + [950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(304), + [952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(515), + [954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), + [956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), + [958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(516), + [960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), + [962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(525), + [964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), + [966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(529), + [968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), + [970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(493), + [972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310), + [974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(499), + [976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312), + [978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(503), + [980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(506), + [982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), + [984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(505), + [986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(497), + [988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), + [990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), + [992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327), + [994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331), + [996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_range_expression, 3, 0, 12), + [998] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_range_expression, 3, 0, 12), + [1000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), + [1002] = {.entry = {.count = 1, .reusable = false}}, SHIFT(231), + [1004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), + [1006] = {.entry = {.count = 1, .reusable = false}}, SHIFT(447), + [1008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [1010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [1012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [1014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894), + [1016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(887), + [1018] = {.entry = {.count = 1, .reusable = false}}, SHIFT(134), + [1020] = {.entry = {.count = 1, .reusable = false}}, SHIFT(150), + [1022] = {.entry = {.count = 1, .reusable = false}}, SHIFT(841), + [1024] = {.entry = {.count = 1, .reusable = false}}, SHIFT(602), + [1026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(973), + [1028] = {.entry = {.count = 1, .reusable = false}}, SHIFT(472), + [1030] = {.entry = {.count = 1, .reusable = false}}, SHIFT(467), + [1032] = {.entry = {.count = 1, .reusable = false}}, SHIFT(473), + [1034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(473), + [1036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(467), + [1038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1015), + [1040] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), + [1042] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), + [1044] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__newlines, 2, 0, 0), + [1046] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__newlines, 2, 0, 0), + [1048] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__newlines, 2, 0, 0), SHIFT_REPEAT(363), + [1051] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__newlines, 1, 0, 0), + [1053] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__newlines, 1, 0, 0), + [1055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 1, 0, 0), + [1057] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__newlines, 1, 0, 0), REDUCE(aux_sym_source_file_repeat1, 1, 0, 0), + [1060] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__scope_separator, 1, 0, 0), + [1062] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__scope_separator, 1, 0, 0), + [1064] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(366), + [1067] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sum_pattern, 4, 0, 24), + [1069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371), + [1071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(849), + [1073] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sum_pattern, 4, 0, 24), + [1075] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sum_pattern, 3, 0, 16), + [1077] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sum_pattern, 3, 0, 16), + [1079] = {.entry = {.count = 1, .reusable = true}}, SHIFT(647), + [1081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1093), + [1083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(669), + [1085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370), + [1087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(648), + [1089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375), + [1091] = {.entry = {.count = 1, .reusable = false}}, SHIFT(857), + [1093] = {.entry = {.count = 1, .reusable = true}}, SHIFT(843), + [1095] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385), + [1097] = {.entry = {.count = 1, .reusable = true}}, SHIFT(607), + [1099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(627), + [1101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), + [1103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), + [1105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(617), + [1107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), + [1109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), + [1111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), + [1113] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(382), + [1116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440), + [1118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), + [1120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(450), + [1122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388), + [1124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(558), + [1126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(392), + [1128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(564), + [1130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), + [1132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(556), + [1134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(397), + [1136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(570), + [1138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(561), + [1140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(394), + [1142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(596), + [1144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), + [1146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(406), + [1148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(407), + [1150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), + [1152] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__newlines, 2, 0, 0), SHIFT_REPEAT(410), + [1155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_aggregate_pipeline_callable_repeat1, 2, 0, 0), + [1157] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_aggregate_pipeline_callable_repeat1, 2, 0, 0), SHIFT_REPEAT(1150), + [1160] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_aggregate_pipeline_callable_repeat1, 2, 0, 0), + [1162] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pipeline_expression, 3, 1, 3), + [1164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), + [1166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), + [1168] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pipeline_expression, 3, 1, 3), + [1170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(856), + [1172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pipeline_expression, 2, 1, 3), + [1174] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pipeline_expression, 2, 1, 3), + [1176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_pipeline_expression_repeat1, 2, 0, 0), + [1178] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_pipeline_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(355), + [1181] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_pipeline_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(358), + [1184] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_pipeline_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(357), + [1187] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_pipeline_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(356), + [1190] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_pipeline_expression_repeat1, 2, 0, 0), + [1192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_qualified_name, 2, 0, 0), + [1194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1150), + [1196] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_qualified_name, 2, 0, 0), + [1198] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_name, 1, 0, 0), + [1200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pipeline_callable, 1, 0, 0), + [1202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1151), + [1204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), + [1206] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pipeline_callable, 1, 0, 0), + [1208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pipeline_callable, 2, 0, 0), + [1210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pipeline_callable, 2, 0, 0), + [1212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_pipeline_callable_repeat1, 2, 0, 0), + [1214] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_pipeline_callable_repeat1, 2, 0, 0), SHIFT_REPEAT(1151), + [1217] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_pipeline_callable_repeat1, 2, 0, 0), SHIFT_REPEAT(146), + [1220] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_pipeline_callable_repeat1, 2, 0, 0), + [1222] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ordinary_expression, 1, 0, 0), + [1224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), + [1226] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__ordinary_expression, 1, 0, 0), + [1228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_expression, 3, 0, 12), + [1230] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_expression, 3, 0, 12), + [1232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_pipeline_callable_repeat1, 3, 0, 0), + [1234] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_pipeline_callable_repeat1, 3, 0, 0), + [1236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signed_numeric_literal, 2, 0, 0), + [1238] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_signed_numeric_literal, 2, 0, 0), + [1240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value_expression, 1, 0, 0), + [1242] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value_expression, 1, 0, 0), + [1244] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuation_pipeline_stage, 3, 0, 10), + [1246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), + [1248] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_continuation_pipeline_stage, 3, 0, 10), + [1250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuation_pipeline_stage, 3, 0, 20), + [1252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(481), + [1254] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_continuation_pipeline_stage, 3, 0, 20), + [1256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aggregate_pipeline_stage, 4, 0, 20), + [1258] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_aggregate_pipeline_stage, 4, 0, 20), + [1260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__primary_type, 1, 0, 0), + [1262] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__primary_type, 1, 0, 0), + [1264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), + [1266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuation_pipeline_stage, 4, 0, 20), + [1268] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_continuation_pipeline_stage, 4, 0, 20), + [1270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_direct_pipeline_stage, 2, 0, 10), + [1272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486), + [1274] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_direct_pipeline_stage, 2, 0, 10), + [1276] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aggregate_pipeline_stage, 3, 0, 20), + [1278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(479), + [1280] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_aggregate_pipeline_stage, 3, 0, 20), + [1282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__result_type, 1, 0, 0), + [1284] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__result_type, 1, 0, 0), + [1286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), + [1288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(490), + [1290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_continuation_pipeline_stage_repeat1, 2, 0, 0), + [1292] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_continuation_pipeline_stage_repeat1, 2, 0, 0), SHIFT_REPEAT(485), + [1295] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_continuation_pipeline_stage_repeat1, 2, 0, 0), + [1297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_direct_pipeline_stage, 3, 0, 10), + [1299] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_direct_pipeline_stage, 3, 0, 10), + [1301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuation_pipeline_stage, 2, 0, 10), + [1303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(477), + [1305] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_continuation_pipeline_stage, 2, 0, 10), + [1307] = {.entry = {.count = 1, .reusable = false}}, SHIFT(173), + [1309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [1311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aggregate_tail, 4, 0, 0), + [1313] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_aggregate_tail, 4, 0, 0), + [1315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_type, 2, 0, 19), + [1317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_optional_type, 2, 0, 19), + [1319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(514), + [1321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aggregate_tail, 6, 0, 0), + [1323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_aggregate_tail, 6, 0, 0), + [1325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_grouped_type, 3, 0, 18), + [1327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_grouped_type, 3, 0, 18), + [1329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 8, 0, 0), + [1331] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 8, 0, 0), + [1333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_type, 4, 0, 0), + [1335] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_type, 4, 0, 0), + [1337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sum_type, 8, 0, 0), + [1339] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sum_type, 8, 0, 0), + [1341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_type, 8, 0, 0), + [1343] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bits_type, 8, 0, 0), + [1345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_application, 8, 0, 31), + [1347] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_application, 8, 0, 31), + [1349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aggregate_tail, 7, 0, 0), + [1351] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_aggregate_tail, 7, 0, 0), + [1353] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 9, 0, 0), + [1355] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 9, 0, 0), + [1357] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sum_type, 4, 0, 0), + [1359] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sum_type, 4, 0, 0), + [1361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primitive_type, 1, 0, 0), + [1363] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primitive_type, 1, 0, 0), + [1365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_type, 9, 0, 0), + [1367] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bits_type, 9, 0, 0), + [1369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 10, 0, 0), + [1371] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 10, 0, 0), + [1373] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type, 3, 0, 28), + [1375] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_type, 3, 0, 28), + [1377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_application, 4, 0, 31), + [1379] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_application, 4, 0, 31), + [1381] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unit_type, 2, 0, 0), + [1383] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_type, 3, 0, 0), + [1385] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_type, 3, 0, 0), + [1387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_type, 4, 0, 35), + [1389] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_map_type, 4, 0, 35), + [1391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 6, 0, 0), + [1393] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 6, 0, 0), + [1395] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_type, 6, 0, 0), + [1397] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_type, 6, 0, 0), + [1399] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sum_type, 3, 0, 0), + [1401] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sum_type, 3, 0, 0), + [1403] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sum_type, 6, 0, 0), + [1405] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sum_type, 6, 0, 0), + [1407] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_type, 6, 0, 0), + [1409] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bits_type, 6, 0, 0), + [1411] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_optional_type_repeat1, 2, 0, 0), + [1413] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_optional_type_repeat1, 2, 0, 0), + [1415] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_optional_type_repeat1, 2, 0, 0), SHIFT_REPEAT(514), + [1418] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_application, 6, 0, 31), + [1420] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_application, 6, 0, 31), + [1422] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_application, 3, 0, 31), + [1424] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_application, 3, 0, 31), + [1426] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aggregate_tail, 3, 0, 0), + [1428] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_aggregate_tail, 3, 0, 0), + [1430] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aggregate_tail, 5, 0, 0), + [1432] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_aggregate_tail, 5, 0, 0), + [1434] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 5, 0, 0), + [1436] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 5, 0, 0), + [1438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_type, 5, 0, 0), + [1440] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_type, 5, 0, 0), + [1442] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sum_type, 5, 0, 0), + [1444] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sum_type, 5, 0, 0), + [1446] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aggregate_tail, 2, 0, 0), + [1448] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_aggregate_tail, 2, 0, 0), + [1450] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_type, 5, 0, 0), + [1452] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bits_type, 5, 0, 0), + [1454] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_application, 5, 0, 31), + [1456] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_application, 5, 0, 31), + [1458] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 7, 0, 0), + [1460] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 7, 0, 0), + [1462] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_type, 7, 0, 0), + [1464] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_type, 7, 0, 0), + [1466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sum_type, 7, 0, 0), + [1468] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sum_type, 7, 0, 0), + [1470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_type, 7, 0, 0), + [1472] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bits_type, 7, 0, 0), + [1474] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_application, 7, 0, 31), + [1476] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_application, 7, 0, 31), + [1478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), + [1480] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_literal, 3, 0, 6), + [1482] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_literal, 3, 0, 6), + [1484] = {.entry = {.count = 1, .reusable = false}}, SHIFT(760), + [1486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1099), + [1488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(792), + [1490] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1145), + [1492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_literal, 2, 0, 2), + [1494] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_literal, 2, 0, 2), + [1496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_expression, 1, 0, 0), + [1498] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_expression, 1, 0, 0), + [1500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(349), + [1502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1087), + [1504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result_type, 3, 0, 30), + [1506] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_result_type, 3, 0, 30), + [1508] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_literal, 5, 0, 25), + [1510] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_literal, 5, 0, 25), + [1512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), + [1514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pipeline_stage, 1, 0, 0), + [1516] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pipeline_stage, 1, 0, 0), + [1518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inline_pipeline_stage, 1, 0, 0), + [1520] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inline_pipeline_stage, 1, 0, 0), + [1522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type, 3, 0, 29), + [1524] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type, 3, 0, 29), + [1526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), + [1528] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1096), + [1530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1067), + [1532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1012), + [1534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(550), + [1536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(552), + [1538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1048), + [1540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1032), + [1542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(547), + [1544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(927), + [1546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(554), + [1548] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_pattern, 7, 0, 0), + [1550] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_pattern, 7, 0, 0), + [1552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 8, 0, 0), + [1554] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 8, 0, 0), + [1556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 7, 0, 0), + [1558] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 7, 0, 0), + [1560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_expression, 1, 0, 0), + [1562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1124), + [1564] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 5, 0, 0), + [1566] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 5, 0, 0), + [1568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 6, 0, 0), + [1570] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 6, 0, 0), + [1572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [1574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(373), + [1576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(575), + [1578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 9, 0, 0), + [1580] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 9, 0, 0), + [1582] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_pattern, 4, 0, 0), + [1584] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_pattern, 4, 0, 0), + [1586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(569), + [1588] = {.entry = {.count = 1, .reusable = true}}, SHIFT(576), + [1590] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 10, 0, 0), + [1592] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 10, 0, 0), + [1594] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_pattern, 3, 0, 0), + [1596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_pattern, 6, 0, 0), + [1598] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_pattern, 6, 0, 0), + [1600] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_pattern, 5, 0, 0), + [1602] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_product_pattern, 5, 0, 0), + [1604] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration, 3, 0, 11), + [1606] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_expression, 2, 0, 0), + [1608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1145), + [1610] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_expression, 2, 0, 0), + [1612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration, 5, 0, 32), + [1614] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_definition, 1, 0, 0), + [1616] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0), + [1618] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_expression, 3, 0, 0), + [1620] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration, 3, 0, 8), + [1622] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_definition, 2, 0, 0), + [1624] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unit_pattern, 2, 0, 0), + [1626] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 2, 0, 0), + [1628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), + [1630] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_pattern_repeat1, 2, 0, 0), + [1632] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(411), + [1635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration, 3, 0, 9), + [1637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), + [1639] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), + [1641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), + [1643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), + [1645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), + [1647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(521), + [1649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(401), + [1651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1101), + [1653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(520), + [1655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1111), + [1657] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_pattern, 6, 0, 0), + [1659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), + [1661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [1663] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 2, 0, 0), + [1665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), + [1667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1054), + [1669] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_pattern, 5, 0, 0), + [1671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510), + [1673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(512), + [1675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(513), + [1677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1085), + [1679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_pattern, 7, 0, 0), + [1681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), + [1683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), + [1685] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_pattern, 6, 0, 0), + [1687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(527), + [1689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(528), + [1691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(951), + [1693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1119), + [1695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(928), + [1697] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_pattern, 7, 0, 0), + [1699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_pattern, 4, 0, 0), + [1701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(496), + [1703] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sum_pattern, 4, 0, 16), + [1705] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_pattern, 8, 0, 0), + [1707] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_atom, 1, 0, 0), + [1709] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_pattern, 9, 0, 0), + [1711] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_pattern, 10, 0, 0), + [1713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), + [1715] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 3, 0, 0), + [1717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), + [1719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), + [1721] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_type_expression, 1, 0, 0), SHIFT(345), + [1724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), + [1726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(494), + [1728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), + [1730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1047), + [1732] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_pattern, 3, 0, 0), + [1734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_pattern, 5, 0, 0), + [1736] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sum_pattern, 5, 0, 24), + [1738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), + [1740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(422), + [1742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(468), + [1744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), + [1746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(458), + [1748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463), + [1750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(465), + [1752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), + [1754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), + [1756] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_pattern, 4, 0, 0), + [1758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), + [1760] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_pattern, 2, 0, 0), + [1762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [1764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), + [1766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), + [1768] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_product_type_repeat1, 2, 0, 0), + [1770] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_product_type_repeat1, 2, 0, 0), SHIFT_REPEAT(884), + [1773] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_product_type_repeat1, 2, 0, 0), SHIFT_REPEAT(1111), + [1776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [1778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(815), + [1780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(990), + [1782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), + [1784] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_sum_type_repeat1, 2, 0, 0), + [1786] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_sum_type_repeat1, 2, 0, 0), SHIFT_REPEAT(884), + [1789] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_sum_type_repeat1, 2, 0, 0), SHIFT_REPEAT(1101), + [1792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), + [1794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), + [1796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [1798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(866), + [1800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), + [1802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1104), + [1804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), + [1806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(883), + [1808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), + [1810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551), + [1812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1059), + [1814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(760), + [1816] = {.entry = {.count = 1, .reusable = false}}, SHIFT(918), + [1818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(918), + [1820] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_qualified_name, 2, 0, 0), SHIFT(1150), + [1823] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_type_repeat1, 2, 0, 0), SHIFT_REPEAT(330), + [1826] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_type_repeat1, 2, 0, 0), + [1828] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_type_repeat1, 2, 0, 0), SHIFT_REPEAT(326), + [1831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307), + [1833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), + [1835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), + [1837] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2, 0, 0), + [1839] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2, 0, 0), SHIFT_REPEAT(365), + [1842] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2, 0, 0), SHIFT_REPEAT(139), + [1845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(782), + [1847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(573), + [1849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(851), + [1851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), + [1853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(798), + [1855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(565), + [1857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), + [1859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [1861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), + [1863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(772), + [1865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [1867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [1869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [1871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(779), + [1873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(926), + [1875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(822), + [1877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(626), + [1879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372), + [1881] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat2, 2, 0, 0), + [1883] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat2, 2, 0, 0), SHIFT_REPEAT(365), + [1886] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat2, 2, 0, 0), SHIFT_REPEAT(50), + [1889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(888), + [1891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), + [1893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [1895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [1897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [1899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(548), + [1901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [1903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(437), + [1905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(732), + [1907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [1909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [1911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(553), + [1913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(842), + [1915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), + [1917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), + [1919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(560), + [1921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [1923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [1925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), + [1927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309), + [1929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(743), + [1931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(865), + [1933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(448), + [1935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(806), + [1937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(944), + [1939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(391), + [1941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [1943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(390), + [1945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(873), + [1947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(457), + [1949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(886), + [1951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), + [1953] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_pub_declaration_repeat1, 2, 0, 0), + [1955] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_pub_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(884), + [1958] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_pub_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(1119), + [1961] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [1963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(892), + [1965] = {.entry = {.count = 1, .reusable = true}}, SHIFT(619), + [1967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(877), + [1969] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464), + [1971] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_product_constructor_repeat1, 2, 0, 0), + [1973] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_product_constructor_repeat1, 2, 0, 0), SHIFT_REPEAT(884), + [1976] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_product_constructor_repeat1, 2, 0, 0), SHIFT_REPEAT(1054), + [1979] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [1981] = {.entry = {.count = 1, .reusable = true}}, SHIFT(837), + [1983] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), + [1985] = {.entry = {.count = 1, .reusable = true}}, SHIFT(880), + [1987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(425), + [1989] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_type_name, 1, 0, 0), SHIFT(1150), + [1992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(828), + [1994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), + [1996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311), + [1998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(833), + [2000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(612), + [2002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(817), + [2004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(571), + [2006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(549), + [2008] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_expression_repeat1, 2, 0, 0), + [2010] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(365), + [2013] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(409), + [2016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), + [2018] = {.entry = {.count = 1, .reusable = false}}, SHIFT(162), + [2020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378), + [2022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [2024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(687), + [2026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), + [2028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(519), + [2030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(899), + [2032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), + [2034] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_bits_type_repeat1, 2, 0, 0), + [2036] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_bits_type_repeat1, 2, 0, 0), SHIFT_REPEAT(884), + [2039] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_bits_type_repeat1, 2, 0, 0), SHIFT_REPEAT(1085), + [2042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(860), + [2044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(814), + [2046] = {.entry = {.count = 1, .reusable = true}}, SHIFT(863), + [2048] = {.entry = {.count = 1, .reusable = true}}, SHIFT(572), + [2050] = {.entry = {.count = 1, .reusable = true}}, SHIFT(808), + [2052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(996), + [2054] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_declaration, 2, 0, 0), + [2056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1120), + [2058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1134), + [2060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(595), + [2062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(816), + [2064] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_array_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(387), + [2067] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_array_pattern_repeat1, 2, 0, 0), + [2069] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_array_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(386), + [2072] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_path, 1, 0, 0), + [2074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1112), + [2076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(791), + [2078] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_typed_tuple_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(566), + [2081] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_typed_tuple_pattern_repeat1, 2, 0, 0), + [2083] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_typed_tuple_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(557), + [2086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(802), + [2088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1121), + [2090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(507), + [2092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(801), + [2094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(511), + [2096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(803), + [2098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), + [2100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1123), + [2102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523), + [2104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(810), + [2106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1113), + [2108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(991), + [2110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(780), + [2112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(781), + [2114] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_bits_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(982), + [2117] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_bits_pattern_repeat1, 2, 0, 0), + [2119] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_bits_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1076), + [2122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_path, 2, 0, 0), + [2124] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sum_variant, 1, 0, 23), + [2126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(961), + [2128] = {.entry = {.count = 1, .reusable = false}}, SHIFT(351), + [2130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(790), + [2132] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_collection_literal_repeat1, 2, 0, 0), SHIFT_REPEAT(67), + [2135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_collection_literal_repeat1, 2, 0, 0), + [2137] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_collection_literal_repeat1, 2, 0, 0), SHIFT_REPEAT(77), + [2140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(807), + [2142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(555), + [2144] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_use_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(861), + [2147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_use_declaration_repeat1, 2, 0, 0), + [2149] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_use_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(836), + [2152] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_aggregate_tail_repeat1, 2, 0, 0), SHIFT_REPEAT(128), + [2155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_aggregate_tail_repeat1, 2, 0, 0), + [2157] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_aggregate_tail_repeat1, 2, 0, 0), SHIFT_REPEAT(129), + [2160] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_aggregate_tail_repeat2, 2, 0, 0), SHIFT_REPEAT(65), + [2163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_aggregate_tail_repeat2, 2, 0, 0), + [2165] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_aggregate_tail_repeat2, 2, 0, 0), SHIFT_REPEAT(74), + [2168] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(399), + [2171] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_pattern_repeat1, 2, 0, 0), + [2173] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(403), + [2176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1056), + [2178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(783), + [2180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(797), + [2182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), + [2184] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_product_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(823), + [2187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_product_pattern_repeat1, 2, 0, 0), + [2189] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_product_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(870), + [2192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(972), + [2194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1046), + [2196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(835), + [2198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(838), + [2200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_type_repeat1, 3, 0, 0), + [2202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(878), + [2204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(717), + [2206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(847), + [2208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), + [2210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(889), + [2212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(776), + [2214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), + [2216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(896), + [2218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(633), + [2220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(845), + [2222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(713), + [2224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(727), + [2226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253), + [2228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(829), + [2230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(875), + [2232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_tuple_pattern, 2, 0, 0), + [2234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(634), + [2236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aggregate_pipeline_callable, 1, 0, 0), + [2238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(698), + [2240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(734), + [2242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(438), + [2244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(854), + [2246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1102), + [2248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), + [2250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(832), + [2252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), + [2254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(745), + [2256] = {.entry = {.count = 1, .reusable = true}}, SHIFT(867), + [2258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), + [2260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding_pattern, 1, 0, 0), + [2262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(646), + [2264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1133), + [2266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_member, 1, 0, 23), + [2268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(825), + [2270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), + [2272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(872), + [2274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(850), + [2276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(754), + [2278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(763), + [2280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_collection_entry, 1, 0, 0), + [2282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), + [2284] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aggregate_pipeline_callable, 2, 0, 0), + [2286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(876), + [2288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(765), + [2290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(667), + [2292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(890), + [2294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(879), + [2296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), + [2298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(429), + [2300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(881), + [2302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), + [2304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(826), + [2306] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), + [2308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(862), + [2310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1088), + [2312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(864), + [2314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(755), + [2316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(839), + [2318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(821), + [2320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), + [2322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1149), + [2324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(689), + [2326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(868), + [2328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(625), + [2330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(983), + [2332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(859), + [2334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(882), + [2336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [2338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [2340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), + [2342] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_tail_entry, 2, 0, 0), + [2344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_tuple_component, 3, 0, 17), + [2346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), + [2348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402), + [2350] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_declaration, 4, 0, 15), + [2352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_member, 3, 0, 36), + [2354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_collection_literal_repeat1, 3, 0, 0), + [2356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_pattern_repeat1, 3, 0, 0), + [2358] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_pattern_field, 3, 0, 0), + [2360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [2362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), + [2364] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 4, 0, 0), + [2366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(950), + [2368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(333), + [2370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), + [2372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_declaration, 7, 0, 0), + [2374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_tuple_pattern, 8, 0, 0), + [2376] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pub_declaration, 4, 0, 0), + [2378] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signed_integer_literal, 1, 0, 0), + [2380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_collection_entry, 3, 0, 0), + [2382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(398), + [2384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(400), + [2386] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sum_variant, 3, 0, 37), + [2388] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_tail_entry, 1, 0, 0), + [2390] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sum_variant, 3, 0, 38), + [2392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_pattern_entry, 2, 0, 0), + [2394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(563), + [2396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(567), + [2398] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_declaration, 6, 0, 0), + [2400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_collection_entry, 2, 0, 0), + [2402] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(950), + [2405] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pub_declaration, 6, 0, 0), + [2407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(971), + [2409] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_array_pattern_repeat1, 3, 0, 0), + [2411] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_field, 5, 0, 40), + [2413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1141), + [2415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(931), + [2417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495), + [2419] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bits_member, 3, 0, 0), + [2421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_parameter, 3, 0, 17), + [2423] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pub_declaration, 7, 0, 0), + [2425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_bits_pattern_repeat1, 3, 0, 0), + [2427] = {.entry = {.count = 1, .reusable = false}}, SHIFT(475), + [2429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(475), + [2431] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_item, 1, 0, 0), + [2433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1037), + [2435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pub_declaration, 3, 0, 0), + [2437] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_product_pattern_repeat1, 3, 0, 0), + [2439] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_declaration, 8, 0, 0), + [2441] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_declaration, 5, 0, 0), + [2443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_use_declaration_repeat1, 3, 0, 0), + [2445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(416), + [2447] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_declaration, 10, 0, 0), + [2449] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_aggregate_tail_repeat2, 3, 0, 0), + [2451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), + [2453] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_tuple_pattern, 9, 0, 0), + [2455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_entry, 3, 0, 0), + [2457] = {.entry = {.count = 1, .reusable = false}}, SHIFT(584), + [2459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584), + [2461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), + [2463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_tuple_pattern, 6, 0, 0), + [2465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502), + [2467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(423), + [2469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), + [2471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_pattern_entry, 1, 0, 0), + [2473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(568), + [2475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(574), + [2477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), + [2479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(329), + [2481] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pub_declaration, 5, 0, 0), + [2483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_tuple_pattern, 10, 0, 0), + [2485] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_product_entry, 2, 0, 0), + [2487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_declaration, 9, 0, 0), + [2489] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_continue_expression, 1, 0, 0), SHIFT(1124), + [2492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_tuple_pattern, 5, 0, 0), + [2494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(526), + [2496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_arm, 3, 0, 33), + [2498] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_tuple_pattern, 7, 0, 0), + [2500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_typed_tuple_pattern_repeat1, 3, 0, 0), + [2502] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signed_integer_literal, 2, 0, 0), + [2504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [2506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [2508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [2510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [2512] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_aggregate_tail_repeat1, 3, 0, 0), + [2514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), + [2516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [2518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_arm, 5, 0, 39), + [2520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), + [2522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [2524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(840), + [2526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(426), + [2528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(848), + [2530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), + [2532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [2534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(830), + [2536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), + [2538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), + [2540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), + [2542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), + [2544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(855), + [2546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), + [2548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(834), + [2550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [2552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369), + [2554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(874), + [2556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), + [2558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), + [2560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(891), + [2562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), + [2564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(897), + [2566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), + [2568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(705), + [2570] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unsigned_integer_type, 1, 0, 0), + [2572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(794), + [2574] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [2576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(733), + [2578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), + [2580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), + [2582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1041), + [2584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(909), + [2586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), + [2588] = {.entry = {.count = 1, .reusable = true}}, SHIFT(913), + [2590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1142), + [2592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(578), + [2594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(804), + [2596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1092), + [2598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(492), + [2600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1146), + [2602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(795), + [2604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), + [2606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), + [2608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), + [2610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(910), + [2612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(796), + [2614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), + [2616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(898), + [2618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1105), + [2620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1116), + [2622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), + [2624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1069), + [2626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(964), + [2628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(354), + [2630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), + [2632] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer_type, 1, 0, 0), + [2634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(774), + [2636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), + [2638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), + [2640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(724), + [2642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), + [2644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(469), + [2646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1098), + [2648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(474), + [2650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1108), + [2652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), +}; + +enum ts_external_scanner_symbol_identifiers { + ts_external_token__and_continuation = 0, + ts_external_token__or_continuation = 1, + ts_external_token__trailing_dot_float = 2, +}; + +static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { + [ts_external_token__and_continuation] = sym__and_continuation, + [ts_external_token__or_continuation] = sym__or_continuation, + [ts_external_token__trailing_dot_float] = sym__trailing_dot_float, +}; + +static const bool ts_external_scanner_states[4][EXTERNAL_TOKEN_COUNT] = { + [1] = { + [ts_external_token__and_continuation] = true, + [ts_external_token__or_continuation] = true, + [ts_external_token__trailing_dot_float] = true, + }, + [2] = { + [ts_external_token__trailing_dot_float] = true, + }, + [3] = { + [ts_external_token__and_continuation] = true, + [ts_external_token__or_continuation] = true, + }, +}; + +#ifdef __cplusplus +extern "C" { +#endif +void *tree_sitter_lscript_external_scanner_create(void); +void tree_sitter_lscript_external_scanner_destroy(void *); +bool tree_sitter_lscript_external_scanner_scan(void *, TSLexer *, const bool *); +unsigned tree_sitter_lscript_external_scanner_serialize(void *, char *); +void tree_sitter_lscript_external_scanner_deserialize(void *, const char *, unsigned); + +#ifdef TREE_SITTER_HIDE_SYMBOLS +#define TS_PUBLIC +#elif defined(_WIN32) +#define TS_PUBLIC __declspec(dllexport) +#else +#define TS_PUBLIC __attribute__((visibility("default"))) +#endif + +TS_PUBLIC const TSLanguage *tree_sitter_lscript(void) { + static const TSLanguage language = { + .abi_version = LANGUAGE_VERSION, + .symbol_count = SYMBOL_COUNT, + .alias_count = ALIAS_COUNT, + .token_count = TOKEN_COUNT, + .external_token_count = EXTERNAL_TOKEN_COUNT, + .state_count = STATE_COUNT, + .large_state_count = LARGE_STATE_COUNT, + .production_id_count = PRODUCTION_ID_COUNT, + .supertype_count = SUPERTYPE_COUNT, + .field_count = FIELD_COUNT, + .max_alias_sequence_length = MAX_ALIAS_SEQUENCE_LENGTH, + .parse_table = &ts_parse_table[0][0], + .small_parse_table = ts_small_parse_table, + .small_parse_table_map = ts_small_parse_table_map, + .parse_actions = ts_parse_actions, + .symbol_names = ts_symbol_names, + .field_names = ts_field_names, + .field_map_slices = ts_field_map_slices, + .field_map_entries = ts_field_map_entries, + .supertype_map_slices = ts_supertype_map_slices, + .supertype_map_entries = ts_supertype_map_entries, + .supertype_symbols = ts_supertype_symbols, + .symbol_metadata = ts_symbol_metadata, + .public_symbol_map = ts_symbol_map, + .alias_map = ts_non_terminal_alias_map, + .alias_sequences = &ts_alias_sequences[0][0], + .lex_modes = (const void*)ts_lex_modes, + .lex_fn = ts_lex, + .keyword_lex_fn = ts_lex_keywords, + .keyword_capture_token = sym_identifier, + .external_scanner = { + &ts_external_scanner_states[0][0], + ts_external_scanner_symbol_map, + tree_sitter_lscript_external_scanner_create, + tree_sitter_lscript_external_scanner_destroy, + tree_sitter_lscript_external_scanner_scan, + tree_sitter_lscript_external_scanner_serialize, + tree_sitter_lscript_external_scanner_deserialize, + }, + .primary_state_ids = ts_primary_state_ids, + .name = "lscript", + .reserved_words = &ts_reserved_words[0][0], + .max_reserved_word_set_size = 35, + .metadata = { + .major_version = 0, + .minor_version = 1, + .patch_version = 0, + }, + }; + return &language; +} +#ifdef __cplusplus +} +#endif diff --git a/src/scanner.c b/src/scanner.c new file mode 100644 index 0000000..c565b8a --- /dev/null +++ b/src/scanner.c @@ -0,0 +1,129 @@ +#include "tree_sitter/parser.h" + +#include +#include + +enum TokenType { + AND_CONTINUATION, + OR_CONTINUATION, + TRAILING_DOT_FLOAT, +}; + +static bool is_identifier_character(int32_t character) { + return (character >= 'a' && character <= 'z') || + (character >= 'A' && character <= 'Z') || + (character >= '0' && character <= '9') || character == '_'; +} + +static bool scan_word_continuation(TSLexer *lexer, enum TokenType symbol, + const char *word) { + for (const char *character = word; *character != '\0'; character++) { + if (lexer->lookahead != *character) { + return false; + } + lexer->advance(lexer, false); + } + if (is_identifier_character(lexer->lookahead)) { + return false; + } + lexer->mark_end(lexer); + lexer->result_symbol = symbol; + return true; +} + +void *tree_sitter_lscript_external_scanner_create(void) { return NULL; } + +void tree_sitter_lscript_external_scanner_destroy(void *payload) { + (void)payload; +} + +unsigned tree_sitter_lscript_external_scanner_serialize(void *payload, + char *buffer) { + (void)payload; + (void)buffer; + return 0; +} + +void tree_sitter_lscript_external_scanner_deserialize(void *payload, + const char *buffer, + unsigned length) { + (void)payload; + (void)buffer; + (void)length; +} + +bool tree_sitter_lscript_external_scanner_scan(void *payload, TSLexer *lexer, + const bool *valid_symbols) { + (void)payload; + + while (lexer->lookahead == ' ' || lexer->lookahead == '\t') { + lexer->advance(lexer, true); + } + + if (lexer->lookahead == '\n' || lexer->lookahead == '\r') { + if (lexer->lookahead == '\r') { + lexer->advance(lexer, false); + if (lexer->lookahead != '\n') { + return false; + } + } + lexer->advance(lexer, false); + while (lexer->lookahead == ' ' || lexer->lookahead == '\t') { + lexer->advance(lexer, false); + } + if (valid_symbols[AND_CONTINUATION] && lexer->lookahead == 'a') { + return scan_word_continuation(lexer, AND_CONTINUATION, "and"); + } + if (valid_symbols[OR_CONTINUATION] && lexer->lookahead == 'o') { + return scan_word_continuation(lexer, OR_CONTINUATION, "or"); + } + return false; + } + if (!valid_symbols[TRAILING_DOT_FLOAT]) { + return false; + } + if (lexer->lookahead < '0' || lexer->lookahead > '9') { + return false; + } + + bool previous_was_digit = false; + while ((lexer->lookahead >= '0' && lexer->lookahead <= '9') || + lexer->lookahead == '_') { + if (lexer->lookahead == '_' && !previous_was_digit) { + return false; + } + previous_was_digit = lexer->lookahead != '_'; + lexer->advance(lexer, false); + } + if (!previous_was_digit) { + return false; + } + + if (lexer->lookahead != '.') { + return false; + } + lexer->advance(lexer, false); + if (lexer->lookahead == '.' || + (lexer->lookahead >= '0' && lexer->lookahead <= '9')) { + return false; + } + + lexer->mark_end(lexer); + if (lexer->lookahead == 'e' || lexer->lookahead == 'E') { + lexer->advance(lexer, false); + if (lexer->lookahead == '+' || lexer->lookahead == '-') { + lexer->advance(lexer, false); + } + if (lexer->lookahead < '0' || lexer->lookahead > '9') { + return false; + } + while ((lexer->lookahead >= '0' && lexer->lookahead <= '9') || + lexer->lookahead == '_') { + lexer->advance(lexer, false); + } + lexer->mark_end(lexer); + } + + lexer->result_symbol = TRAILING_DOT_FLOAT; + return true; +} diff --git a/src/tree_sitter/alloc.h b/src/tree_sitter/alloc.h new file mode 100644 index 0000000..1abdd12 --- /dev/null +++ b/src/tree_sitter/alloc.h @@ -0,0 +1,54 @@ +#ifndef TREE_SITTER_ALLOC_H_ +#define TREE_SITTER_ALLOC_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include +#include + +// Allow clients to override allocation functions +#ifdef TREE_SITTER_REUSE_ALLOCATOR + +extern void *(*ts_current_malloc)(size_t size); +extern void *(*ts_current_calloc)(size_t count, size_t size); +extern void *(*ts_current_realloc)(void *ptr, size_t size); +extern void (*ts_current_free)(void *ptr); + +#ifndef ts_malloc +#define ts_malloc ts_current_malloc +#endif +#ifndef ts_calloc +#define ts_calloc ts_current_calloc +#endif +#ifndef ts_realloc +#define ts_realloc ts_current_realloc +#endif +#ifndef ts_free +#define ts_free ts_current_free +#endif + +#else + +#ifndef ts_malloc +#define ts_malloc malloc +#endif +#ifndef ts_calloc +#define ts_calloc calloc +#endif +#ifndef ts_realloc +#define ts_realloc realloc +#endif +#ifndef ts_free +#define ts_free free +#endif + +#endif + +#ifdef __cplusplus +} +#endif + +#endif // TREE_SITTER_ALLOC_H_ diff --git a/src/tree_sitter/array.h b/src/tree_sitter/array.h new file mode 100644 index 0000000..eba3da4 --- /dev/null +++ b/src/tree_sitter/array.h @@ -0,0 +1,336 @@ +#ifndef TREE_SITTER_ARRAY_H_ +#define TREE_SITTER_ARRAY_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include "./alloc.h" + +#include +#include +#include +#include +#include + +#ifdef _MSC_VER +#pragma warning(push) +#pragma warning(disable : 4101) +#elif defined(__GNUC__) || defined(__clang__) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wunused-variable" +#endif + +#define Array(T) \ + struct { \ + T *contents; \ + uint32_t size; \ + uint32_t capacity; \ + } + +/// Initialize an array. +#define array_init(self) \ + ((self)->size = 0, (self)->capacity = 0, (self)->contents = NULL) + +/// Create an empty array. +#define array_new() \ + { NULL, 0, 0 } + +/// Get a pointer to the element at a given `index` in the array. +#define array_get(self, _index) \ + (assert((uint32_t)(_index) < (self)->size), &(self)->contents[_index]) + +/// Get a pointer to the first element in the array. +#define array_front(self) array_get(self, 0) + +/// Get a pointer to the last element in the array. +#define array_back(self) array_get(self, (self)->size - 1) + +/// Clear the array, setting its size to zero. Note that this does not free any +/// memory allocated for the array's contents. +#define array_clear(self) ((self)->size = 0) + +#ifdef __cplusplus +#define _array__cast(self, expr) (decltype((self)->contents))(expr) +#else +#define _array__cast(self, expr) (expr) +#endif + +/// 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) \ + ((self)->contents = _array__cast(self, _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) \ + do { \ + if ((self)->contents) ts_free((self)->contents); \ + (self)->contents = NULL; \ + (self)->size = 0; \ + (self)->capacity = 0; \ + } while (0) + +/// Push a new `element` onto the end of the array. +#define array_push(self, element) \ + do { \ + (self)->contents = _array__cast(self, _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; \ + (self)->contents = _array__cast(self, _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); \ + } while (0) + +/// Append all elements from one array to the end of another. +#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, other_contents) \ + ((self)->contents = _array__cast(self, _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) \ + ((self)->contents = _array__cast(self, _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) \ + ((self)->contents = _array__cast(self, _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((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) \ + ((self)->contents = _array__cast(self, _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) \ + do { \ + void *_array_swap_tmp = (void *)(self)->contents; \ + (self)->contents = (other)->contents; \ + (other)->contents = _array__cast(other, _array_swap_tmp); \ + _array__swap(&(self)->size, &(self)->capacity, \ + &(other)->size, &(other)->capacity); \ + } while (0) + +/// Get the size of the array contents +#define array_elem_size(self) (sizeof *(self)->contents) + +/// Search a sorted array for a given `needle` value, using the given `compare` +/// callback to determine the order. +/// +/// If an existing element is found to be equal to `needle`, then the `index` +/// out-parameter is set to the existing value's index, and the `exists` +/// out-parameter is set to true. Otherwise, `index` is set to an index where +/// `needle` should be inserted in order to preserve the sorting, and `exists` +/// is set to false. +#define array_search_sorted_with(self, compare, needle, _index, _exists) \ + _array__search_sorted(self, 0, compare, , needle, _index, _exists) + +/// Search a sorted array for a given `needle` value, using integer comparisons +/// of a given struct field (specified with a leading dot) to determine the order. +/// +/// See also `array_search_sorted_with`. +#define array_search_sorted_by(self, field, needle, _index, _exists) \ + _array__search_sorted(self, 0, _compare_int, field, needle, _index, _exists) + +/// Insert a given `value` into a sorted array, using the given `compare` +/// callback to determine the order. +#define array_insert_sorted_with(self, compare, value) \ + do { \ + unsigned _index, _exists; \ + array_search_sorted_with(self, compare, &(value), &_index, &_exists); \ + if (!_exists) array_insert(self, _index, value); \ + } while (0) + +/// Insert a given `value` into a sorted array, using integer comparisons of +/// a given struct field (specified with a leading dot) to determine the order. +/// +/// See also `array_search_sorted_by`. +#define array_insert_sorted_by(self, field, value) \ + do { \ + unsigned _index, _exists; \ + array_search_sorted_by(self, field, (value) field, &_index, &_exists); \ + if (!_exists) array_insert(self, _index, value); \ + } while (0) + +// Private + +// 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_erase`. +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, + (*size - index - 1) * element_size); + (*size)--; +} + +/// This is not what you're looking for, see `array_reserve`. +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 { + new_contents = ts_malloc(new_capacity * element_size); + } + *capacity = new_capacity; + } + return new_contents; +} + +/// This is not what you're looking for, see `array_assign`. +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; +} + +/// This is not what you're looking for, see `array_swap`. +static inline void _array__swap(uint32_t *self_size, uint32_t *self_capacity, + uint32_t *other_size, uint32_t *other_capacity) { + uint32_t tmp_size = *self_size; + uint32_t tmp_capacity = *self_capacity; + *self_size = *other_size; + *self_capacity = *other_capacity; + *other_size = tmp_size; + *other_capacity = tmp_capacity; +} + +/// This is not what you're looking for, see `array_push` or `array_grow_by`. +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; + 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(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 = *size + new_count - old_count; + uint32_t old_end = index + old_count; + uint32_t new_end = index + new_count; + assert(old_end <= *size); + + void *new_contents = _array__reserve(self_contents, capacity, element_size, new_size); + + char *contents = (char *)new_contents; + if (*size > old_end) { + memmove( + contents + new_end * element_size, + contents + old_end * element_size, + (*size - old_end) * element_size + ); + } + if (new_count > 0) { + if (elements) { + memcpy( + (contents + index * element_size), + elements, + new_count * element_size + ); + } else { + memset( + (contents + index * element_size), + 0, + new_count * element_size + ); + } + } + *size += new_count - old_count; + + return new_contents; +} + +/// A binary search routine, based on Rust's `std::slice::binary_search_by`. +/// This is not what you're looking for, see `array_search_sorted_with` or `array_search_sorted_by`. +#define _array__search_sorted(self, start, compare, suffix, needle, _index, _exists) \ + do { \ + *(_index) = start; \ + *(_exists) = false; \ + uint32_t size = (self)->size - *(_index); \ + if (size == 0) break; \ + int comparison; \ + while (size > 1) { \ + uint32_t half_size = size / 2; \ + uint32_t mid_index = *(_index) + half_size; \ + comparison = compare(&((self)->contents[mid_index] suffix), (needle)); \ + if (comparison <= 0) *(_index) = mid_index; \ + size -= half_size; \ + } \ + comparison = compare(&((self)->contents[*(_index)] suffix), (needle)); \ + if (comparison == 0) *(_exists) = true; \ + else if (comparison < 0) *(_index) += 1; \ + } while (0) + +/// Helper macro for the `_sorted_by` routines below. This takes the left (existing) +/// parameter by reference in order to work with the generic sorting function above. +#define _compare_int(a, b) ((int)*(a) - (int)(b)) + +#ifdef _MSC_VER +#pragma warning(pop) +#elif defined(__GNUC__) || defined(__clang__) +#pragma GCC diagnostic pop +#endif + +#ifdef __cplusplus +} +#endif + +#endif // TREE_SITTER_ARRAY_H_ diff --git a/src/tree_sitter/parser.h b/src/tree_sitter/parser.h new file mode 100644 index 0000000..858107d --- /dev/null +++ b/src/tree_sitter/parser.h @@ -0,0 +1,286 @@ +#ifndef TREE_SITTER_PARSER_H_ +#define TREE_SITTER_PARSER_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include +#include + +#define ts_builtin_sym_error ((TSSymbol)-1) +#define ts_builtin_sym_end 0 +#define TREE_SITTER_SERIALIZATION_BUFFER_SIZE 1024 + +#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 { + TSFieldId field_id; + uint8_t child_index; + bool inherited; +} TSFieldMapEntry; + +// Used to index the field and supertype maps. +typedef struct { + uint16_t index; + uint16_t length; +} TSMapSlice; + +typedef struct { + bool visible; + bool named; + bool supertype; +} TSSymbolMetadata; + +typedef struct TSLexer TSLexer; + +struct TSLexer { + int32_t lookahead; + TSSymbol result_symbol; + void (*advance)(TSLexer *, bool); + void (*mark_end)(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 { + TSParseActionTypeShift, + TSParseActionTypeReduce, + TSParseActionTypeAccept, + TSParseActionTypeRecover, +} TSParseActionType; + +typedef union { + struct { + uint8_t type; + TSStateId state; + bool extra; + bool repetition; + } shift; + struct { + uint8_t type; + uint8_t child_count; + TSSymbol symbol; + int16_t dynamic_precedence; + uint16_t production_id; + } reduce; + uint8_t type; +} TSParseAction; + +typedef struct { + uint16_t lex_state; + 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 { + uint8_t count; + bool reusable; + } entry; +} TSParseActionEntry; + +typedef struct { + int32_t start; + int32_t end; +} TSCharacterRange; + +struct TSLanguage { + uint32_t abi_version; + uint32_t symbol_count; + uint32_t alias_count; + uint32_t token_count; + uint32_t external_token_count; + uint32_t state_count; + uint32_t large_state_count; + uint32_t production_id_count; + uint32_t field_count; + uint16_t max_alias_sequence_length; + const uint16_t *parse_table; + const uint16_t *small_parse_table; + const uint32_t *small_parse_table_map; + const TSParseActionEntry *parse_actions; + const char * const *symbol_names; + const char * const *field_names; + 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 TSLexerMode *lex_modes; + bool (*lex_fn)(TSLexer *, TSStateId); + bool (*keyword_lex_fn)(TSLexer *, TSStateId); + TSSymbol keyword_capture_token; + struct { + const bool *states; + const TSSymbol *symbol_map; + void *(*create)(void); + void (*destroy)(void *); + bool (*scan)(void *, TSLexer *, const bool *symbol_whitelist); + 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; \ + next_state: \ + lexer->advance(lexer, skip); \ + start: \ + skip = false; \ + lookahead = lexer->lookahead; + +#define ADVANCE(state_value) \ + { \ + state = state_value; \ + 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; \ + state = state_value; \ + goto next_state; \ + } + +#define ACCEPT_TOKEN(symbol_value) \ + result = true; \ + lexer->result_symbol = symbol_value; \ + lexer->mark_end(lexer); + +#define END_STATE() return result; + +/* + * Parse Table Macros + */ + +#define SMALL_STATE(id) ((id) - LARGE_STATE_COUNT) + +#define STATE(id) id + +#define ACTIONS(id) id + +#define SHIFT(state_value) \ + {{ \ + .shift = { \ + .type = TSParseActionTypeShift, \ + .state = (state_value) \ + } \ + }} + +#define SHIFT_REPEAT(state_value) \ + {{ \ + .shift = { \ + .type = TSParseActionTypeShift, \ + .state = (state_value), \ + .repetition = true \ + } \ + }} + +#define SHIFT_EXTRA() \ + {{ \ + .shift = { \ + .type = TSParseActionTypeShift, \ + .extra = true \ + } \ + }} + +#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() \ + {{ \ + .type = TSParseActionTypeRecover \ + }} + +#define ACCEPT_INPUT() \ + {{ \ + .type = TSParseActionTypeAccept \ + }} + +#ifdef __cplusplus +} +#endif + +#endif // TREE_SITTER_PARSER_H_ diff --git a/test/corpus/basics.txt b/test/corpus/basics.txt new file mode 100644 index 0000000..e83e7ca --- /dev/null +++ b/test/corpus/basics.txt @@ -0,0 +1,235 @@ +================== +Declarations +================== + +immutable :: 1 +mutable := 2 +typed: i32: 3 +deferred: i32 + +--- + +(source_file + (declaration + (identifier) + (signed_numeric_literal + (integer_literal))) + (declaration + (identifier) + (signed_numeric_literal + (integer_literal))) + (declaration + (identifier) + (primitive_type) + (signed_numeric_literal + (integer_literal))) + (declaration + (identifier) + (primitive_type))) + +================== +Types and constructors +================== + +Point :: &{ + x: i32: + y: i32 = 0 +} +point := &Point.{ x: 1; y = 2 } +maybe: []{i32?}: [nil, 1->|.some] + +--- + +(source_file + (declaration + (identifier) + (type_definition + (product_type + (product_field + (identifier) + (primitive_type)) + (product_field + (identifier) + (primitive_type) + (signed_numeric_literal + (integer_literal)))))) + (declaration + (identifier) + (product_constructor + (identifier) + (product_entry + (identifier) + (signed_numeric_literal + (integer_literal))) + (product_entry + (identifier) + (signed_numeric_literal + (integer_literal))))) + (declaration + (identifier) + (array_type + (grouped_type + (optional_type + (primitive_type)))) + (collection_literal + (collection_entry + (nil_literal)) + (collection_entry + (pipeline_expression + (signed_numeric_literal + (integer_literal)) + (direct_pipeline_stage + (pipeline_callable + (sum_constructor + (identifier))))))))) + +================== +Control flow and patterns +================== + +describe: []i32 -> str: @ values: []i32 { match values { + [] => 'empty' + [first, ...rest] if first > 0 => 'positive' + _ => 'other' +} } + +--- + +(source_file + (declaration + (identifier) + (function_type + (array_type + (primitive_type)) + (primitive_type)) + (function_literal + (typed_parameter + (identifier) + (array_type + (primitive_type))) + (block + (match_expression + (identifier) + (match_arm + (pattern + (array_pattern)) + (string_literal)) + (match_arm + (pattern + (array_pattern + (array_pattern_entry + (pattern + (identifier))) + (array_pattern_entry + (identifier)))) + (binary_expression + (identifier) + (signed_numeric_literal + (integer_literal))) + (string_literal)) + (match_arm + (pattern) + (string_literal))))))) + +================== +Physical-line continuations +================== + +value := 'text' # the newline remains significant +->reverse_chrs + +ready :: first + and second + +--- + +(source_file + (declaration + (identifier) + (pipeline_expression + (string_literal) + (comment) + (continuation_pipeline_stage + (pipeline_callable + (identifier))))) + (declaration + (identifier) + (binary_expression + (identifier) + (identifier)))) +================== +Compact range after an integer +================== + +slice :: (source,0.. i32 { value * value } +add :: @ (left: i32, right: i32) { left + right } +unit :: @ { () } + +--- + +(source_file + (declaration + (identifier) + (function_literal + (typed_parameter + (identifier) + (primitive_type)) + (block + (binary_expression + (identifier) + (signed_numeric_literal + (integer_literal)))))) + (declaration + (identifier) + (function_literal + (typed_parameter + (identifier) + (primitive_type)) + (primitive_type) + (block + (binary_expression + (identifier) + (identifier))))) + (declaration + (identifier) + (function_literal + (typed_tuple_pattern + (typed_tuple_component + (identifier) + (primitive_type)) + (typed_tuple_component + (identifier) + (primitive_type))) + (block + (binary_expression + (identifier) + (identifier))))) + (declaration + (identifier) + (function_literal + (block + (unit_literal))))) diff --git a/test/fixtures/invalid/adjacent_equal_minus.ls b/test/fixtures/invalid/adjacent_equal_minus.ls new file mode 100644 index 0000000..b08e1f9 --- /dev/null +++ b/test/fixtures/invalid/adjacent_equal_minus.ls @@ -0,0 +1,2 @@ +value := 0 +value=-1 diff --git a/test/fixtures/invalid/anonymous_without_input.ls b/test/fixtures/invalid/anonymous_without_input.ls new file mode 100644 index 0000000..75a352a --- /dev/null +++ b/test/fixtures/invalid/anonymous_without_input.ls @@ -0,0 +1 @@ +identity :: @ value { value } diff --git a/test/fixtures/invalid/bad_escape.ls b/test/fixtures/invalid/bad_escape.ls new file mode 100644 index 0000000..0b43f40 --- /dev/null +++ b/test/fixtures/invalid/bad_escape.ls @@ -0,0 +1 @@ +text :: 'bad\qescape' diff --git a/test/fixtures/invalid/bang_inequality.ls b/test/fixtures/invalid/bang_inequality.ls new file mode 100644 index 0000000..164b2f6 --- /dev/null +++ b/test/fixtures/invalid/bang_inequality.ls @@ -0,0 +1 @@ +different :: left != right diff --git a/test/fixtures/invalid/bare_arrow.ls b/test/fixtures/invalid/bare_arrow.ls new file mode 100644 index 0000000..8ff8c55 --- /dev/null +++ b/test/fixtures/invalid/bare_arrow.ls @@ -0,0 +1 @@ +->initialize diff --git a/test/fixtures/invalid/comma_in_product.ls b/test/fixtures/invalid/comma_in_product.ls new file mode 100644 index 0000000..63ec594 --- /dev/null +++ b/test/fixtures/invalid/comma_in_product.ls @@ -0,0 +1 @@ +Point :: &{ x: i32:, y: i32: } diff --git a/test/fixtures/invalid/const_missing_initializer.ls b/test/fixtures/invalid/const_missing_initializer.ls new file mode 100644 index 0000000..04e9cda --- /dev/null +++ b/test/fixtures/invalid/const_missing_initializer.ls @@ -0,0 +1 @@ +value: i32: diff --git a/test/fixtures/invalid/declaration_chain.ls b/test/fixtures/invalid/declaration_chain.ls new file mode 100644 index 0000000..bc43e4f --- /dev/null +++ b/test/fixtures/invalid/declaration_chain.ls @@ -0,0 +1 @@ +outer := inner := 1 diff --git a/test/fixtures/invalid/double_quoted_string.ls b/test/fixtures/invalid/double_quoted_string.ls new file mode 100644 index 0000000..7a839e4 --- /dev/null +++ b/test/fixtures/invalid/double_quoted_string.ls @@ -0,0 +1 @@ +text :: "double quoted" diff --git a/test/fixtures/invalid/empty_list_entry.ls b/test/fixtures/invalid/empty_list_entry.ls new file mode 100644 index 0000000..06b69db --- /dev/null +++ b/test/fixtures/invalid/empty_list_entry.ls @@ -0,0 +1 @@ +values := [1,, 2] diff --git a/test/fixtures/invalid/explicit_destructuring_type.ls b/test/fixtures/invalid/explicit_destructuring_type.ls new file mode 100644 index 0000000..a9c294a --- /dev/null +++ b/test/fixtures/invalid/explicit_destructuring_type.ls @@ -0,0 +1 @@ +(left, right): (i32, i32): (1, 2) diff --git a/test/fixtures/invalid/function_body_newline.ls b/test/fixtures/invalid/function_body_newline.ls new file mode 100644 index 0000000..e75ea1a --- /dev/null +++ b/test/fixtures/invalid/function_body_newline.ls @@ -0,0 +1,2 @@ +identity :: @ value: i32 +{ value } diff --git a/test/fixtures/invalid/keyword_identifier.ls b/test/fixtures/invalid/keyword_identifier.ls new file mode 100644 index 0000000..f0f20aa --- /dev/null +++ b/test/fixtures/invalid/keyword_identifier.ls @@ -0,0 +1 @@ +in := 1 diff --git a/test/fixtures/invalid/legacy_expression_body.ls b/test/fixtures/invalid/legacy_expression_body.ls new file mode 100644 index 0000000..c84badd --- /dev/null +++ b/test/fixtures/invalid/legacy_expression_body.ls @@ -0,0 +1 @@ +answer: () -> i32: @ 42 diff --git a/test/fixtures/invalid/legacy_initializer_newline.ls b/test/fixtures/invalid/legacy_initializer_newline.ls new file mode 100644 index 0000000..366c4ce --- /dev/null +++ b/test/fixtures/invalid/legacy_initializer_newline.ls @@ -0,0 +1,2 @@ +identity: i32 -> i32: +@ value: i32 { value } diff --git a/test/fixtures/invalid/legacy_parameter_before_at.ls b/test/fixtures/invalid/legacy_parameter_before_at.ls new file mode 100644 index 0000000..ba4d1ee --- /dev/null +++ b/test/fixtures/invalid/legacy_parameter_before_at.ls @@ -0,0 +1 @@ +identity: i32 -> i32: value@ value diff --git a/test/fixtures/invalid/match_arm_newline.ls b/test/fixtures/invalid/match_arm_newline.ls new file mode 100644 index 0000000..77f696c --- /dev/null +++ b/test/fixtures/invalid/match_arm_newline.ls @@ -0,0 +1,9 @@ +Choice :: |{ + one +} + +describe :: @ choice: Choice -> str { match choice { + |.one => + 'one' +} +} diff --git a/test/fixtures/invalid/nested_product_pattern.ls b/test/fixtures/invalid/nested_product_pattern.ls new file mode 100644 index 0000000..495f995 --- /dev/null +++ b/test/fixtures/invalid/nested_product_pattern.ls @@ -0,0 +1 @@ +{start as {line}} :: value diff --git a/test/fixtures/invalid/numeric_separator.ls b/test/fixtures/invalid/numeric_separator.ls new file mode 100644 index 0000000..f03efe5 --- /dev/null +++ b/test/fixtures/invalid/numeric_separator.ls @@ -0,0 +1 @@ +value :: 1__000 diff --git a/test/fixtures/invalid/numeric_suffix.ls b/test/fixtures/invalid/numeric_suffix.ls new file mode 100644 index 0000000..feab288 --- /dev/null +++ b/test/fixtures/invalid/numeric_suffix.ls @@ -0,0 +1 @@ +value :: 1.0f diff --git a/test/fixtures/invalid/old_type_application.ls b/test/fixtures/invalid/old_type_application.ls new file mode 100644 index 0000000..172d33b --- /dev/null +++ b/test/fixtures/invalid/old_type_application.ls @@ -0,0 +1 @@ +StringIterator :: Iter(str) diff --git a/test/fixtures/invalid/optional_result_left.ls b/test/fixtures/invalid/optional_result_left.ls new file mode 100644 index 0000000..80251aa --- /dev/null +++ b/test/fixtures/invalid/optional_result_left.ls @@ -0,0 +1,2 @@ +Error :: |{ failed } +Bad :: i32? ! Error diff --git a/test/fixtures/invalid/optional_result_right.ls b/test/fixtures/invalid/optional_result_right.ls new file mode 100644 index 0000000..9ec85f4 --- /dev/null +++ b/test/fixtures/invalid/optional_result_right.ls @@ -0,0 +1,2 @@ +Error :: |{ failed } +Bad :: i32 ! Error? diff --git a/test/fixtures/invalid/parenthesized_group.ls b/test/fixtures/invalid/parenthesized_group.ls new file mode 100644 index 0000000..304064f --- /dev/null +++ b/test/fixtures/invalid/parenthesized_group.ls @@ -0,0 +1 @@ +value :: (1 + 2) diff --git a/test/fixtures/invalid/pipeline_blank_line.ls b/test/fixtures/invalid/pipeline_blank_line.ls new file mode 100644 index 0000000..d59881a --- /dev/null +++ b/test/fixtures/invalid/pipeline_blank_line.ls @@ -0,0 +1,3 @@ +value := 1 + +->to_str diff --git a/test/fixtures/invalid/pipeline_comment_line.ls b/test/fixtures/invalid/pipeline_comment_line.ls new file mode 100644 index 0000000..01f23ae --- /dev/null +++ b/test/fixtures/invalid/pipeline_comment_line.ls @@ -0,0 +1,3 @@ +value := 1 +# this line terminates the preceding expression +->to_str diff --git a/test/fixtures/invalid/pipeline_mixed_infix.ls b/test/fixtures/invalid/pipeline_mixed_infix.ls new file mode 100644 index 0000000..db27c96 --- /dev/null +++ b/test/fixtures/invalid/pipeline_mixed_infix.ls @@ -0,0 +1 @@ +value :: 1 + 2->to_str diff --git a/test/fixtures/invalid/repeated_result.ls b/test/fixtures/invalid/repeated_result.ls new file mode 100644 index 0000000..20151ab --- /dev/null +++ b/test/fixtures/invalid/repeated_result.ls @@ -0,0 +1,3 @@ +FirstError :: |{ failed } +SecondError :: |{ failed } +Bad :: i32 ! FirstError ! SecondError diff --git a/test/fixtures/invalid/scope_separator_overlap.ls b/test/fixtures/invalid/scope_separator_overlap.ls new file mode 100644 index 0000000..d3e62ea --- /dev/null +++ b/test/fixtures/invalid/scope_separator_overlap.ls @@ -0,0 +1,4 @@ +value := { + first; + second +} diff --git a/test/fixtures/invalid/shift_assignment.ls b/test/fixtures/invalid/shift_assignment.ls new file mode 100644 index 0000000..a43bbed --- /dev/null +++ b/test/fixtures/invalid/shift_assignment.ls @@ -0,0 +1,2 @@ +value := 1 +value >>= 1 diff --git a/test/fixtures/invalid/shift_operator.ls b/test/fixtures/invalid/shift_operator.ls new file mode 100644 index 0000000..d648dfd --- /dev/null +++ b/test/fixtures/invalid/shift_operator.ls @@ -0,0 +1 @@ +value :: 1 << 2 diff --git a/test/fixtures/invalid/single_parameter_parentheses.ls b/test/fixtures/invalid/single_parameter_parentheses.ls new file mode 100644 index 0000000..c8a33c0 --- /dev/null +++ b/test/fixtures/invalid/single_parameter_parentheses.ls @@ -0,0 +1 @@ +identity :: @ (value: i32) { value } diff --git a/test/fixtures/invalid/single_parameter_trailing_comma.ls b/test/fixtures/invalid/single_parameter_trailing_comma.ls new file mode 100644 index 0000000..55c6f94 --- /dev/null +++ b/test/fixtures/invalid/single_parameter_trailing_comma.ls @@ -0,0 +1 @@ +identity :: @ (value: i32,) -> i32 { value } diff --git a/test/fixtures/invalid/singleton_tuple.ls b/test/fixtures/invalid/singleton_tuple.ls new file mode 100644 index 0000000..53b189c --- /dev/null +++ b/test/fixtures/invalid/singleton_tuple.ls @@ -0,0 +1 @@ +value :: (1,) diff --git a/test/fixtures/invalid/then_conditional.ls b/test/fixtures/invalid/then_conditional.ls new file mode 100644 index 0000000..9bf3797 --- /dev/null +++ b/test/fixtures/invalid/then_conditional.ls @@ -0,0 +1 @@ +value :: if true then 1 else 2 diff --git a/test/fixtures/invalid/trailing_arrow.ls b/test/fixtures/invalid/trailing_arrow.ls new file mode 100644 index 0000000..2dc1864 --- /dev/null +++ b/test/fixtures/invalid/trailing_arrow.ls @@ -0,0 +1,2 @@ +value := 1-> +to_str diff --git a/test/fixtures/invalid/trailing_equals_declaration.ls b/test/fixtures/invalid/trailing_equals_declaration.ls new file mode 100644 index 0000000..fd4ecd9 --- /dev/null +++ b/test/fixtures/invalid/trailing_equals_declaration.ls @@ -0,0 +1 @@ +value: i32 = diff --git a/test/fixtures/invalid/trailing_semicolon.ls b/test/fixtures/invalid/trailing_semicolon.ls new file mode 100644 index 0000000..6be87c4 --- /dev/null +++ b/test/fixtures/invalid/trailing_semicolon.ls @@ -0,0 +1 @@ +value := { 1; } diff --git a/test/fixtures/invalid/type_application_close_assignment.ls b/test/fixtures/invalid/type_application_close_assignment.ls new file mode 100644 index 0000000..debdba7 --- /dev/null +++ b/test/fixtures/invalid/type_application_close_assignment.ls @@ -0,0 +1 @@ +iterator: Iter= diff --git a/test/fixtures/invalid/typed_tuple_singleton.ls b/test/fixtures/invalid/typed_tuple_singleton.ls new file mode 100644 index 0000000..0691201 --- /dev/null +++ b/test/fixtures/invalid/typed_tuple_singleton.ls @@ -0,0 +1 @@ +Bad :: (i32,) diff --git a/test/fixtures/invalid/untyped_deferred.ls b/test/fixtures/invalid/untyped_deferred.ls new file mode 100644 index 0000000..9c4f5b1 --- /dev/null +++ b/test/fixtures/invalid/untyped_deferred.ls @@ -0,0 +1 @@ +value := diff --git a/test/fixtures/invalid/wildcard_import.ls b/test/fixtures/invalid/wildcard_import.ls new file mode 100644 index 0000000..5d861b9 --- /dev/null +++ b/test/fixtures/invalid/wildcard_import.ls @@ -0,0 +1 @@ +use module.* diff --git a/test/fixtures/valid/containers.ls b/test/fixtures/valid/containers.ls new file mode 100644 index 0000000..5b5c94f --- /dev/null +++ b/test/fixtures/valid/containers.ls @@ -0,0 +1,19 @@ +numbers := [1, 2, 3] +more_numbers := [0, ...numbers, 4] + +codes := ['ok' => 200, 'missing' => 404] +more_codes := [...codes, 'failed' => 500] + +empty_numbers: []i32: [] +empty_codes: [str]i32: [] +optional_numbers: []i32?: nil +optional_elements: []{i32?}: [nil, 1->|.some] + +Options :: &{ + name: str: 'default' + count: i32 = 0 +} + +defaults := &Options.{} +overridden := &Options.{ ...defaults; count = 2 } +anonymous := &.{ label: 'value'; count = 1 } diff --git a/test/fixtures/valid/control.ls b/test/fixtures/valid/control.ls new file mode 100644 index 0000000..7336e1a --- /dev/null +++ b/test/fixtures/valid/control.ls @@ -0,0 +1,28 @@ +choose: (bit, i32, i32) -> i32: @ (condition: bit, when_true: i32, when_false: i32) { if condition { when_true } else { when_false } } + +choose_block: (bit, i32, i32) -> i32: @ (condition: bit, when_true: i32, when_false: i32) { if condition { + when_true +} else if not condition { + when_false +} else { + 0 +} } + +first_positive: []i32 -> i32?: @ values: []i32 { + for value in values { + if value > 0 { + return value->|.some + } + } + nil +} + +labelled_search: []i32 -> i32: @ values: []i32 { loop `outer { + for value in values `items { + if value > 0 { + break `outer value + } + continue `items + } + break 0 +} } diff --git a/test/fixtures/valid/declarations.ls b/test/fixtures/valid/declarations.ls new file mode 100644 index 0000000..05735b2 --- /dev/null +++ b/test/fixtures/valid/declarations.ls @@ -0,0 +1,18 @@ +immutable :: 1 +mutable := 2 +typed_immutable: i32: 3 +typed_mutable: i32 = 4 +deferred: i32 +deferred = 5 +then :: 6 + +(left, right) :: (1, 2) +(mutable_left, mutable_right) := (3, 4) + +Point :: &{ + x: i32: + y: i32 = +} + +point := &Point.{ x: 10; y = 20 } +{x as horizontal, y} :: point diff --git a/test/fixtures/valid/functions.ls b/test/fixtures/valid/functions.ls new file mode 100644 index 0000000..4abe1f9 --- /dev/null +++ b/test/fixtures/valid/functions.ls @@ -0,0 +1,18 @@ +double: i32 -> i32: @ value: i32 { value * 2 } + +square: i32 => i32: @ value: i32 { value * value } + +add: (i32, i32) -> i32: @ (left: i32, right: i32) { left + right } + +normalize: i32 -> i32: @ value: i32 { + adjusted := value + 1 + adjusted->double +} + +apply: (i32, i32 -> i32) -> i32: @ (value, operation): {(i32, i32 -> i32)} { value->operation } + +factory: i32 => i32 -> i32: @ offset: i32 { @ value: i32 { value + offset } } + +initialize: () -> i32: @ () { 1 } + +computed := (4, @ value: i32 { value + 1 })->apply diff --git a/test/fixtures/valid/layouts.ls b/test/fixtures/valid/layouts.ls new file mode 100644 index 0000000..3d77f09 --- /dev/null +++ b/test/fixtures/valid/layouts.ls @@ -0,0 +1,18 @@ +inline_array := [1, 2, 3] + +newline_array := [ + 1 + 2 + 3 +] + +comma_array := [ + 1, + 2, + 3, +] + +inline_block := { first := 1; second := 2; first + second } + +InlinePoint :: &{ x: i32:; y: i32: } +inline_point := &InlinePoint.{ x: 1; y: 2 } diff --git a/test/fixtures/valid/literals.ls b/test/fixtures/valid/literals.ls new file mode 100644 index 0000000..04e46f8 --- /dev/null +++ b/test/fixtures/valid/literals.ls @@ -0,0 +1,17 @@ +decimal :: 1_000_000 +binary :: 0b1010_0101 +octal :: 0o755 +hexadecimal :: 0xCAFE_beef +leading_zeroes :: 007 + +fraction_without_integer :: .5 +fraction_without_digits :: 1. +scientific :: 1.25e-10 +scientific_integer :: 1E+4 +negative_minimum: i8: -128 +spaced_negative: i8: - 127 + +text :: 'can\'t\nstop' +letter :: c'é' +escaped_letter :: c'\u{1f642}' +nul :: c'\0' diff --git a/test/fixtures/valid/modules.ls b/test/fixtures/valid/modules.ls new file mode 100644 index 0000000..169aa9b --- /dev/null +++ b/test/fixtures/valid/modules.ls @@ -0,0 +1,14 @@ +use math +use math as arithmetic +use math.{pi, sqrt as square_root} + +ExportedType :: distinct i32 +exported :: 1 +circle: f64: pi +root: f64: 4.0->square_root +qualified_root: f64: 9.0->arithmetic.sqrt + +pub { + ExportedType + exported +} diff --git a/test/fixtures/valid/operator_continuations.ls b/test/fixtures/valid/operator_continuations.ls new file mode 100644 index 0000000..28a9da6 --- /dev/null +++ b/test/fixtures/valid/operator_continuations.ls @@ -0,0 +1,27 @@ +ready: bit: true +connected: bit: true +busy: bit: false + +can_run :: ready + and connected + and not busy + +one: i32: 1 +two: i32: 2 +three: i32: 3 +sum :: one + + two + * three + +eight: i32: 8 +five: i32: 5 +difference :: eight - + five + +first_mask: u8: 1 +second_mask: u8: 2 +mask :: first_mask | + second_mask + +is_ordered :: sum + > difference diff --git a/test/fixtures/valid/patterns.ls b/test/fixtures/valid/patterns.ls new file mode 100644 index 0000000..fea6bb7 --- /dev/null +++ b/test/fixtures/valid/patterns.ls @@ -0,0 +1,26 @@ +Location :: |{ + unknown + known: (f32, f32) +} + +describe: Location -> str: @ location: Location { match location { + |.unknown => 'unknown' + |.known (latitude, longitude) if latitude >= 0.0 => 'known' + |.known (_, _) => 'known' +} } + +Point :: &{ + x: i32: + y: i32: +} + +sum_point: Point -> i32: @ point: Point { + {x as horizontal, y as vertical} :: point + horizontal + vertical +} + +classify_array: []i32 -> str: @ values: []i32 { match values { + [] => 'empty' + [only] => 'one' + [first, ...rest] => 'many' +} } diff --git a/test/fixtures/valid/pipelines.ls b/test/fixtures/valid/pipelines.ls new file mode 100644 index 0000000..b1f679f --- /dev/null +++ b/test/fixtures/valid/pipelines.ls @@ -0,0 +1,23 @@ +Error :: distinct |{ + failed +} + +reversed := 'value'->reverse_chrs +sum_text := {1 + 2}->to_str + +continued := 'value' +->reverse_chrs +->reverse_chrs + +commented := 'value' # an inline comment preserves continuation +->reverse_chrs + +computed := 1 + 2 +->to_str + +fallible: i32 -> i32 ! Error: @ value: i32 { value! } + +propagate: i32 -> i32 ! Error: @ value: i32 { + result := {value->fallible}? + result! +} diff --git a/test/fixtures/valid/typed_functions.ls b/test/fixtures/valid/typed_functions.ls new file mode 100644 index 0000000..e75ce0d --- /dev/null +++ b/test/fixtures/valid/typed_functions.ls @@ -0,0 +1,21 @@ +double :: @ value: i32 { value * 2 } +add :: @ (a: i32, b: i32) { a + b } +square :: @ value: i32 => i32 { value * value } +constant :: @ () -> i32 { 42 } +unit :: @ { () } + +apply :: @ (value: i32, callback: i32 -> i32) { + value->callback +} + +sum :: @ (left: i32, right: i32) { left + right } + +multiline :: @ ( + first: i32 + second: i32 +) -> i32 { first + second } + +explicit: i32 -> i32: @ value: i32 { value + 1 } +mutable := @ value: i32 { value + 1 } +run_callback :: @ callback: {() -> i32} { ()->callback } +callback_result := @ () -> i32 { 42 }->run_callback diff --git a/test/fixtures/valid/types.ls b/test/fixtures/valid/types.ls new file mode 100644 index 0000000..a1c627b --- /dev/null +++ b/test/fixtures/valid/types.ls @@ -0,0 +1,22 @@ +Error :: distinct |{ + failed +} + +OptionalArray :: []u8? +OptionalElements :: []{u8?} +OptionalMap :: [str]i32? +OptionalValues :: [str]{i32?} + +OptionalSuccessResult :: {i32?} ! Error +OptionalResult :: {i32 ! Error}? +OptionalErrorResult :: i32 ! {Error?} + +Curried :: i32 -> str -> bit +PureTransform :: str => str +MixedTransform :: i32 => str -> bit +ReturningResult :: str -> i32 ! Error + +IntegerRange :: Range +StringIterator :: Iter +NestedIterator :: Iter> +TupleIterator :: Iter<(i32, str)> diff --git a/tree-sitter.json b/tree-sitter.json new file mode 100644 index 0000000..8c69187 --- /dev/null +++ b/tree-sitter.json @@ -0,0 +1,27 @@ +{ + "grammars": [ + { + "name": "lscript", + "camelcase": "LScript", + "scope": "source.lscript", + "path": ".", + "file-types": [ + "ls" + ], + "highlights": "queries/highlights.scm" + } + ], + "metadata": { + "version": "0.1.0", + "license": "UNLICENSED", + "description": "LScript grammar for Tree-sitter" + }, + "bindings": { + "c": true, + "go": false, + "node": false, + "python": false, + "rust": true, + "swift": false + } +}